-
Notifications
You must be signed in to change notification settings - Fork 101
what games are supported? #220
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
We should update those wiki pages. For the Supported Games page, it looks like the intent was to detail APIs that only work on a subset of games, and what those games are. For the only API listed, with usermessage manipulation, I think it should be changed to just be a list of what games it's not supported on. (The three or so Source 1 games that use Protobuf usermessages, and Source 2 games). On that same page, once MM:S 2.0 stabilizes a little more, we should probably note which ConVar APIs don't work on Source 2 (the ones dealing with ConCommandBase, as there's no such common class there) As for what games MM:S is expected to work on at all (the Required Versions page), we should probably list out all engine variants that we support with the hl2sdk-manifests, noting that those games and any mods running on those engines are supported. I didn't actually know offhand that either of those pages existed, but I can do a pass on updating them. While not completely related to this issue or your linked MR, this may be helpful. It's an excerpt from a script I have for downloading just bins or full games, with aliases to client and server (if applicable) app IDs for nearly all multiplayer Source and Source 2 games and mods on Steam, whether or not MM:S or SM currently supports them. class AppIds {
[uint]$Client
[uint]$Server
AppIds([uint]$client) {
$this.Client = $client
$this.Server = 0
}
AppIds([uint]$client, [uint]$server) {
$this.Client = $client
$this.Server = $server
}
}
$gameAliases = @{
cs2 = [AppIds]::new(730, 730)
dota = [AppIds]::new(570, 570)
deadlock = [AppIds]::new(1422450, 1422450)
underlords = [AppIds]::new(1046930, 1046930)
artifact = [AppIds]::new(583950, 583950)
foundry = [AppIds]::new(1269260, 1269260)
aoc = [AppIds]::new(17510, 17515)
swarm = [AppIds]::new(630, 635)
reactivedrop = [AppIds]::new(563560, 582400)
swarmsdk = [AppIds]::new(640)
bg3 = [AppIds]::new(1057700)
bms = [AppIds]::new(362890, 346680)
blade = [AppIds]::new(225600, 228780)
bgt = [AppIds]::new(2450, 2460)
brainbread = [AppIds]::new(346330, 475370)
cure = [AppIds]::new(355180, 383410)
contagion = [AppIds]::new(238430, 293030)
css = [AppIds]::new(240, 232330)
darkm = [AppIds]::new(2100, 2145)
dods = [AppIds]::new(300, 232290)
doi = [AppIds]::new(447820, 462310)
dinodday = [AppIds]::new(70000, 70010)
diprip = [AppIds]::new(17530, 17535)
dab = [AppIds]::new(317360, 317800)
dystopia = [AppIds]::new(17580, 17585)
empires = [AppIds]::new(17740, 460040)
es = [AppIds]::new(17550, 17555)
eye = [AppIds]::new(91700, 91720)
fof = [AppIds]::new(265630, 295230)
ff = [AppIds]::new(253530, 329710)
gmod = [AppIds]::new(4000, 4020)
hl2ctf = [AppIds]::new(285560, 294500)
hl2dm = [AppIds]::new(320, 232370)
hl1dm = [AppIds]::new(360, 255470)
insurgency = [AppIds]::new(222880, 237410)
insmod = [AppIds]::new(17700, 17705)
iosoccer = [AppIds]::new(673560, 673990)
jb3 = [AppIds]::new(869480, 869800)
jbmod = [AppIds]::new(2158860, 2181210)
kz = [AppIds]::new(626680, 638100)
lw = [AppIds]::new(270370, 319060)
l4d = [AppIds]::new(500, 222840)
l4d2 = [AppIds]::new(550, 222860)
mcv = [AppIds]::new(1012110, 1136190)
modcom = [AppIds]::new(349480, 366360)
mmod = [AppIds]::new(669270, 1802710)
neotokyo = [AppIds]::new(244630, 313600)
nmrih = [AppIds]::new(224260, 317670)
nd = [AppIds]::new(17710, 111710)
portal2 = [AppIds]::new(620)
pvkii = [AppIds]::new(17570, 17575)
rev2012 = [AppIds]::new(201070)
smashball = [AppIds]::new(17730)
sdk2006 = [AppIds]::new(215, 205)
sdk2007 = [AppIds]::new(218, 310)
sdk2013 = [AppIds]::new(243750, 244310)
synergy = [AppIds]::new(17520, 17525)
ti = [AppIds]::new(51100)
tf2 = [AppIds]::new(440, 232250)
ship = [AppIds]::new(2400, 2403)
titanfall = [AppIds]::new(1454890)
titanfall2 = [AppIds]::new(1237970)
zps = [AppIds]::new(17500, 17505)
} |
Yeah okay makes sense - I assumed a little more was implied because a few
popular mods/games use the same engine versions (and based on that list it
looks like the case).
Thanks, I'll take a look. Of course my patch is very Windows-y as that's
what I work with mostly but that looks like a good list.
…On Mon, 24 Mar 2025 at 03:46, Nicholas Hastings ***@***.***> wrote:
We should update those wiki pages.
For the Supported Games page, it looks like the intent was to detail APIs
that only work on a subset of games, and what those games are. For the only
API listed, with usermessage manipulation, I think it should be changed to
just be a list of what games it's not supported on. (The three or so Source
1 games that use Protobuf usermessages, and Source 2 games).
On that same page, once MM:S 2.0 stabilizes a little more, we should
probably note which ConVar APIs don't work on Source 2 (the ones dealing
with ConCommandBase, as there's no such common class there)
As for what games MM:S is expected to work on at all (the Required
Versions page), we should probably list out all engine variants that we
support with the hl2sdk-manifests, noting that those games and any mods
running on those engines are supported.
I didn't actually know offhand that either of those pages existed, but I
can do a pass on updating them.
While not completely related to this issue or your linked MR, this may be
helpful. It's an excerpt from a script I have for downloading just bins or
full games, with aliases to client and server (if applicable) app IDs for
nearly all multiplayer Source and Source 2 games on Steam, whether or not
MM:S or SM currently supports them.
class AppIds {
[uint]$Client
[uint]$Server
AppIds([uint]$client) {
$this.Client = $client
$this.Server = 0
}
AppIds([uint]$client, [uint]$server) {
$this.Client = $client
$this.Server = $server
}
}
$gameAliases = @{
cs2 = [AppIds]::new(730, 730)
dota = [AppIds]::new(570, 570)
deadlock = [AppIds]::new(1422450, 1422450)
underlords = [AppIds]::new(1046930, 1046930)
artifact = [AppIds]::new(583950, 583950)
foundry = [AppIds]::new(1269260, 1269260)
aoc = [AppIds]::new(17510, 17515)
swarm = [AppIds]::new(630, 635)
reactivedrop = [AppIds]::new(563560, 582400)
swarmsdk = [AppIds]::new(640)
bg3 = [AppIds]::new(1057700)
bms = [AppIds]::new(362890, 346680)
blade = [AppIds]::new(225600, 228780)
bgt = [AppIds]::new(2450, 2460)
brainbread = [AppIds]::new(346330, 475370)
cure = [AppIds]::new(355180, 383410)
contagion = [AppIds]::new(238430, 293030)
css = [AppIds]::new(240, 232330)
darkm = [AppIds]::new(2100, 2145)
dods = [AppIds]::new(300, 232290)
doi = [AppIds]::new(447820, 462310)
dinodday = [AppIds]::new(70000, 70010)
diprip = [AppIds]::new(17530, 17535)
dab = [AppIds]::new(317360, 317800)
dystopia = [AppIds]::new(17580, 17585)
empires = [AppIds]::new(17740, 460040)
es = [AppIds]::new(17550, 17555)
eye = [AppIds]::new(91700, 91720)
fof = [AppIds]::new(265630, 295230)
ff = [AppIds]::new(253530, 329710)
gmod = [AppIds]::new(4000, 4020)
hl2ctf = [AppIds]::new(285560, 294500)
hl2dm = [AppIds]::new(320, 232370)
hl1dm = [AppIds]::new(360, 255470)
insurgency = [AppIds]::new(222880, 237410)
insmod = [AppIds]::new(17700, 17705)
iosoccer = [AppIds]::new(673560, 673990)
jb3 = [AppIds]::new(869480, 869800)
jbmod = [AppIds]::new(2158860, 2181210)
kz = [AppIds]::new(626680, 638100)
lw = [AppIds]::new(270370, 319060)
l4d = [AppIds]::new(500, 222840)
l4d2 = [AppIds]::new(550, 222860)
mcv = [AppIds]::new(1012110, 1136190)
modcom = [AppIds]::new(349480, 366360)
mmod = [AppIds]::new(669270, 1802710)
neotokyo = [AppIds]::new(244630, 313600)
nmrih = [AppIds]::new(224260, 317670)
nd = [AppIds]::new(17710, 111710)
portal2 = [AppIds]::new(620)
pvkii = [AppIds]::new(17570, 17575)
rev2012 = [AppIds]::new(201070)
smashball = [AppIds]::new(17730)
sdk2006 = [AppIds]::new(215, 205)
sdk2007 = [AppIds]::new(218, 310)
sdk2013 = [AppIds]::new(243750, 244310)
synergy = [AppIds]::new(17520, 17525)
ti = [AppIds]::new(51100)
tf2 = [AppIds]::new(440, 232250)
ship = [AppIds]::new(2400, 2403)
titanfall = [AppIds]::new(1454890)
titanfall2 = [AppIds]::new(1237970)
zps = [AppIds]::new(17500, 17505)
}
—
Reply to this email directly, view it on GitHub
<#220 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AA34IYSJO7LIG5ZGD7GZKG32V3XP3AVCNFSM6AAAAABZSTWP6SVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDONBWGMZTKMRYG4>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
[image: psychonic]*psychonic* left a comment
(alliedmodders/metamod-source#220)
<#220 (comment)>
We should update those wiki pages.
For the Supported Games page, it looks like the intent was to detail APIs
that only work on a subset of games, and what those games are. For the only
API listed, with usermessage manipulation, I think it should be changed to
just be a list of what games it's not supported on. (The three or so Source
1 games that use Protobuf usermessages, and Source 2 games).
On that same page, once MM:S 2.0 stabilizes a little more, we should
probably note which ConVar APIs don't work on Source 2 (the ones dealing
with ConCommandBase, as there's no such common class there)
As for what games MM:S is expected to work on at all (the Required
Versions page), we should probably list out all engine variants that we
support with the hl2sdk-manifests, noting that those games and any mods
running on those engines are supported.
I didn't actually know offhand that either of those pages existed, but I
can do a pass on updating them.
While not completely related to this issue or your linked MR, this may be
helpful. It's an excerpt from a script I have for downloading just bins or
full games, with aliases to client and server (if applicable) app IDs for
nearly all multiplayer Source and Source 2 games on Steam, whether or not
MM:S or SM currently supports them.
class AppIds {
[uint]$Client
[uint]$Server
AppIds([uint]$client) {
$this.Client = $client
$this.Server = 0
}
AppIds([uint]$client, [uint]$server) {
$this.Client = $client
$this.Server = $server
}
}
$gameAliases = @{
cs2 = [AppIds]::new(730, 730)
dota = [AppIds]::new(570, 570)
deadlock = [AppIds]::new(1422450, 1422450)
underlords = [AppIds]::new(1046930, 1046930)
artifact = [AppIds]::new(583950, 583950)
foundry = [AppIds]::new(1269260, 1269260)
aoc = [AppIds]::new(17510, 17515)
swarm = [AppIds]::new(630, 635)
reactivedrop = [AppIds]::new(563560, 582400)
swarmsdk = [AppIds]::new(640)
bg3 = [AppIds]::new(1057700)
bms = [AppIds]::new(362890, 346680)
blade = [AppIds]::new(225600, 228780)
bgt = [AppIds]::new(2450, 2460)
brainbread = [AppIds]::new(346330, 475370)
cure = [AppIds]::new(355180, 383410)
contagion = [AppIds]::new(238430, 293030)
css = [AppIds]::new(240, 232330)
darkm = [AppIds]::new(2100, 2145)
dods = [AppIds]::new(300, 232290)
doi = [AppIds]::new(447820, 462310)
dinodday = [AppIds]::new(70000, 70010)
diprip = [AppIds]::new(17530, 17535)
dab = [AppIds]::new(317360, 317800)
dystopia = [AppIds]::new(17580, 17585)
empires = [AppIds]::new(17740, 460040)
es = [AppIds]::new(17550, 17555)
eye = [AppIds]::new(91700, 91720)
fof = [AppIds]::new(265630, 295230)
ff = [AppIds]::new(253530, 329710)
gmod = [AppIds]::new(4000, 4020)
hl2ctf = [AppIds]::new(285560, 294500)
hl2dm = [AppIds]::new(320, 232370)
hl1dm = [AppIds]::new(360, 255470)
insurgency = [AppIds]::new(222880, 237410)
insmod = [AppIds]::new(17700, 17705)
iosoccer = [AppIds]::new(673560, 673990)
jb3 = [AppIds]::new(869480, 869800)
jbmod = [AppIds]::new(2158860, 2181210)
kz = [AppIds]::new(626680, 638100)
lw = [AppIds]::new(270370, 319060)
l4d = [AppIds]::new(500, 222840)
l4d2 = [AppIds]::new(550, 222860)
mcv = [AppIds]::new(1012110, 1136190)
modcom = [AppIds]::new(349480, 366360)
mmod = [AppIds]::new(669270, 1802710)
neotokyo = [AppIds]::new(244630, 313600)
nmrih = [AppIds]::new(224260, 317670)
nd = [AppIds]::new(17710, 111710)
portal2 = [AppIds]::new(620)
pvkii = [AppIds]::new(17570, 17575)
rev2012 = [AppIds]::new(201070)
smashball = [AppIds]::new(17730)
sdk2006 = [AppIds]::new(215, 205)
sdk2007 = [AppIds]::new(218, 310)
sdk2013 = [AppIds]::new(243750, 244310)
synergy = [AppIds]::new(17520, 17525)
ti = [AppIds]::new(51100)
tf2 = [AppIds]::new(440, 232250)
ship = [AppIds]::new(2400, 2403)
titanfall = [AppIds]::new(1454890)
titanfall2 = [AppIds]::new(1237970)
zps = [AppIds]::new(17500, 17505)
}
—
Reply to this email directly, view it on GitHub
<#220 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AA34IYSJO7LIG5ZGD7GZKG32V3XP3AVCNFSM6AAAAABZSTWP6SVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDONBWGMZTKMRYG4>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
Do you know if any games still use And thanks again for that snippet - I didn't need the app IDs but I repurposed it. |
I don't think that Episode2Valve is used anymore for any supported case. Episode2 should match for Source SDK 2007 Base though. While many mods were later updated to use the 2013 SDK, there are still some 2007 ones around. A couple offhand that I believe are 2007 and on Steam, are Age of Chivalry and D.I.P.R.I.P. Warm Up. |
Ah yep - and |
Working on #219 I couldn't see a list of games that Metamod: Source supports.
loader/loader.h
gives a good idea but https://wiki.alliedmods.net/Required_Versions_(SourceMod) and https://wiki.alliedmods.net/Supported_Games_(Metamod:Source) both seem outdated.Anyway, the script in #219 gives the right answer for 11/20 so far with some obviously being wrong and others being a bit more obscure.
The text was updated successfully, but these errors were encountered: