Add a warning to not edit SM's gamedata files; switched to UNIX line endings (bug 3728, r=dvander)

This commit is contained in:
Fyren 2009-04-07 09:59:21 -07:00
parent c9ff6be881
commit a4295d1e93
27 changed files with 3697 additions and 3400 deletions

View File

@ -1,183 +1,194 @@
"Games" /**
{ * Do not edit this file. Any changes will be overwritten by the gamedata
"#default" * updater or by upgrading your SourceMod install.
{ *
"Offsets" * To override data in this file, create a subdirectory named "custom" and
{ * place your own gamedata file(s) inside of it. Such files will be parsed
"m_lifeState" * after SM's own.
{ *
"class" "CBasePlayer" * For more information, see http://wiki.alliedmods.net/Gamedata_Updating_(SourceMod)
"prop" "m_lifeState" */
}
} "Games"
} {
"#default"
/* Send properties and datamaps used by stocks in entity_prop_stocks.inc */ {
"#default" "Offsets"
{ {
"Keys" "m_lifeState"
{ {
"m_fFlags" "m_fFlags" "class" "CBasePlayer"
"m_MoveType" "m_MoveType" "prop" "m_lifeState"
"m_nRenderMode" "m_nRenderMode" }
"m_nRenderFX" "m_nRenderFX" }
"m_clrRender" "m_clrRender" }
"m_flGravity" "m_flGravity"
"m_iHealth" "m_iHealth" /* Send properties and datamaps used by stocks in entity_prop_stocks.inc */
"m_nButtons" "m_nButtons" "#default"
} {
} "Keys"
{
/* Original engine specifics */ "m_fFlags" "m_fFlags"
"#default" "m_MoveType" "m_MoveType"
{ "m_nRenderMode" "m_nRenderMode"
"#supported" "m_nRenderFX" "m_nRenderFX"
{ "m_clrRender" "m_clrRender"
"engine" "original" "m_flGravity" "m_flGravity"
} "m_iHealth" "m_iHealth"
"m_nButtons" "m_nButtons"
"Offsets" }
{ }
"GetDataDescMap"
{ /* Original engine specifics */
"windows" "13" "#default"
"linux" "14" {
} "#supported"
} {
} "engine" "original"
}
/* Dark Messiah engine specifics */
"#default" "Offsets"
{ {
"#supported" "GetDataDescMap"
{ {
"engine" "darkmessiah" "windows" "13"
} "linux" "14"
}
"Keys" }
{ }
"m_iHealth" "m_fHealth"
"HintTextPreByte" "yes" /* Dark Messiah engine specifics */
"ChatSayText" "yes" "#default"
} {
"#supported"
"Offsets" {
{ "engine" "darkmessiah"
"GetDataDescMap" }
{
"windows" "12" "Keys"
} {
} "m_iHealth" "m_fHealth"
} "HintTextPreByte" "yes"
"ChatSayText" "yes"
/* OB/L4D engine specifics */ }
"#default"
{ "Offsets"
"#supported" {
{ "GetDataDescMap"
"engine" "orangebox" {
"engine" "left4dead" "windows" "12"
} }
}
"Offsets" }
{
"GetDataDescMap" /* OB/L4D engine specifics */
{ "#default"
"windows" "11" {
"linux" "12" "#supported"
} {
} "engine" "orangebox"
} "engine" "left4dead"
}
/* The Ship is completely different */
"ship" "Offsets"
{ {
"Offsets" "GetDataDescMap"
{ {
"GetDataDescMap" "windows" "11"
{ "linux" "12"
"windows" "18" }
"linux" "19" }
} }
}
} /* The Ship is completely different */
"ship"
/* Which games support ShowMenu? */ {
"#default" "Offsets"
{ {
"#supported" "GetDataDescMap"
{ {
"game" "cstrike" "windows" "18"
"game" "dod" "linux" "19"
"game" "sourceforts" }
"game" "insurgency" }
"game" "tf" }
"game" "pvkii"
"game" "diprip" /* Which games support ShowMenu? */
"game" "synergy" "#default"
"game" "FortressForever" {
"game" "left4dead" "#supported"
"game" "obsidian" {
"game" "ageofchivalry" "game" "cstrike"
} "game" "dod"
"game" "sourceforts"
"Keys" "game" "insurgency"
{ "game" "tf"
"HudRadioMenuMsg" "ShowMenu" "game" "pvkii"
} "game" "diprip"
} "game" "synergy"
"game" "FortressForever"
/* Which games need a radio menu timeout? */ "game" "left4dead"
"#default" "game" "obsidian"
{ "game" "ageofchivalry"
"#supported" }
{
"game" "tf" "Keys"
"game" "synergy" {
"game" "dod" "HudRadioMenuMsg" "ShowMenu"
"game" "ageofchivalry" }
} }
"Keys" /* Which games need a radio menu timeout? */
{ "#default"
"RadioMenuTimeout" "4" {
} "#supported"
} {
"game" "tf"
/** "game" "synergy"
* Which games support HudMsg? "game" "dod"
*/ "game" "ageofchivalry"
"#default" }
{
"#supported" "Keys"
{ {
"game" "hl2mp" "RadioMenuTimeout" "4"
"game" "sourceforts" }
"game" "tf" }
"game" "ageofchivalry"
"game" "obsidian" /**
} * Which games support HudMsg?
*/
"Keys" "#default"
{ {
"HudTextMsg" "HudMsg" "#supported"
} {
} "game" "hl2mp"
"game" "sourceforts"
"cstrike" "game" "tf"
{ "game" "ageofchivalry"
"Keys" "game" "obsidian"
{ }
"HintTextPreByte" "yes"
"GameExtension" "game.cstrike" "Keys"
} {
} "HudTextMsg" "HudMsg"
}
"tf" }
{
"Keys" "cstrike"
{ {
"GameExtension" "game.tf2" "Keys"
} {
} "HintTextPreByte" "yes"
} "GameExtension" "game.cstrike"
}
}
"tf"
{
"Keys"
{
"GameExtension" "game.tf2"
}
}
}

View File

@ -1,6 +1,17 @@
"Game Master" /**
{ * Do not edit this file. Any changes will be overwritten by the gamedata
"common.games.txt" * updater or by upgrading your SourceMod install.
{ *
} * To override data in this file, create a subdirectory named "custom" and
} * place your own gamedata file(s) inside of it. Such files will be parsed
* after SM's own.
*
* For more information, see http://wiki.alliedmods.net/Gamedata_Updating_(SourceMod)
*/
"Game Master"
{
"common.games.txt"
{
}
}

View File

@ -1,322 +1,333 @@
"Games" /**
{ * Do not edit this file. Any changes will be overwritten by the gamedata
/* Sounds */ * updater or by upgrading your SourceMod install.
"#default" *
{ * To override data in this file, create a subdirectory named "custom" and
"Keys" * place your own gamedata file(s) inside of it. Such files will be parsed
{ * after SM's own.
"SlapSoundCount" "3" *
"SlapSound1" "default/player/sword_on_flesh_std01.wav" * For more information, see http://wiki.alliedmods.net/Gamedata_Updating_(SourceMod)
"SlapSound2" "default/player/sword_on_flesh_std05.wav" */
"SlapSound3" "default/player/bone_breaking03.wav"
} "Games"
} {
/* Sounds */
/* Properties */ "#default"
"#default" {
{ "Keys"
"Offsets" {
{ "SlapSoundCount" "3"
"m_iHealth" "SlapSound1" "default/player/sword_on_flesh_std01.wav"
{ "SlapSound2" "default/player/sword_on_flesh_std05.wav"
"class" "CBasePlayer" "SlapSound3" "default/player/bone_breaking03.wav"
"prop" "m_fHealth" }
} }
}
} /* Properties */
"#default"
/* General Temp Entities */ {
"#default" "Offsets"
{ {
"#supported" "m_iHealth"
{ {
"game" "!Might and Magic Multiplayer" "class" "CBasePlayer"
} "prop" "m_fHealth"
}
"Offsets" }
{ }
/* Offset into CBaseTempEntity constructor */
"s_pTempEntities" /* General Temp Entities */
{ "#default"
"windows" "17" {
} "#supported"
"GetTEName" {
{ "game" "!Might and Magic Multiplayer"
"windows" "4" }
}
"GetTENext" "Offsets"
{ {
"windows" "8" /* Offset into CBaseTempEntity constructor */
} "s_pTempEntities"
"TE_GetServerClass" {
{ "windows" "17"
"windows" "0" }
} "GetTEName"
} {
"windows" "4"
"Signatures" }
{ "GetTENext"
"CBaseTempEntity" {
{ "windows" "8"
"library" "server" }
"windows" "\x8B\xC1\x8B\x4C\x24\x04\xC7\x00\x2A\x2A\x2A\x2A\x89\x48\x04\x8B\x15\x2A\x2A\x2A\x2A\x89\x50\x08\xA3\x2A\x2A\x2A\x2A\xC2\x04\x00" "TE_GetServerClass"
} {
} "windows" "0"
} }
}
/* Create Entity Signatures */
"#default" "Signatures"
{ {
"#supported" "CBaseTempEntity"
{ {
"game" "!Might and Magic Multiplayer" "library" "server"
} "windows" "\x8B\xC1\x8B\x4C\x24\x04\xC7\x00\x2A\x2A\x2A\x2A\x89\x48\x04\x8B\x15\x2A\x2A\x2A\x2A\x89\x50\x08\xA3\x2A\x2A\x2A\x2A\xC2\x04\x00"
}
"Signatures" }
{ }
"DispatchSpawn"
{ /* Create Entity Signatures */
"library" "server" "#default"
"windows" "\x53\x56\x8B\x74\x24\x0C\x85\xF6\x57\x0F\x84\x2A\x2A\x2A\x2A\x8B\x1D\x2A\x2A\x2A\x2A\x8B\x03\x8B\xCB\xFF\x50\x60\x8B\x16" {
} "#supported"
"CreateEntityByName" {
{ "game" "!Might and Magic Multiplayer"
"library" "server" }
"windows" "\x56\x8B\x74\x24\x0C\x83\xFE\xFF\x57\x8B\x7C\x24\x0C\x74\x25\x8B\x0D\x2A\x2A\x2A\x2A\x8B\x01\x56\xFF\x50\x2A\x85\xC0"
} "Signatures"
} {
} "DispatchSpawn"
{
/* CGlobalEntityList */ "library" "server"
"#default" "windows" "\x53\x56\x8B\x74\x24\x0C\x85\xF6\x57\x0F\x84\x2A\x2A\x2A\x2A\x8B\x1D\x2A\x2A\x2A\x2A\x8B\x03\x8B\xCB\xFF\x50\x60\x8B\x16"
{ }
"#supported" "CreateEntityByName"
{ {
"game" "!Might and Magic Multiplayer" "library" "server"
} "windows" "\x56\x8B\x74\x24\x0C\x83\xFE\xFF\x57\x8B\x7C\x24\x0C\x74\x25\x8B\x0D\x2A\x2A\x2A\x2A\x8B\x01\x56\xFF\x50\x2A\x85\xC0"
}
"Offsets" }
{ }
/* Offset into LevelShutdown */
"gEntList" /* CGlobalEntityList */
{ "#default"
"windows" "11" {
} "#supported"
} {
"game" "!Might and Magic Multiplayer"
"Signatures" }
{
"LevelShutdown" "Offsets"
{ {
"library" "server" /* Offset into LevelShutdown */
"windows" "\xE8\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\xB9\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\xE8" "gEntList"
} {
"windows" "11"
/* Functions in CGlobalEntityList */ }
"FindEntityByClassname" }
{
"library" "server" "Signatures"
"windows" "\x53\x55\x56\x8B\xF1\x8B\x4C\x24\x10\x85\xC9\x57\x74\x18\x8B\x01\xFF\x50\x08\x8B\x08\x81\xE1\xFF\x0F\x00\x00\x83\xC1\x01\xC1\xE1\x04\x8B\x3C\x31\xEB\x06\x8B\xBE\x2A\x2A\x2A\x2A\x85\xFF\x74\x3A\x8B\x5C\x24\x18\x8B\x2D\x2A\x2A\x2A\x2A\x8D" {
} "LevelShutdown"
} {
} "library" "server"
"windows" "\xE8\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\xB9\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\xE8"
/* General GameRules */ }
"#default"
{ /* Functions in CGlobalEntityList */
"#supported" "FindEntityByClassname"
{ {
"game" "!Might and Magic Multiplayer" "library" "server"
} "windows" "\x53\x55\x56\x8B\xF1\x8B\x4C\x24\x10\x85\xC9\x57\x74\x18\x8B\x01\xFF\x50\x08\x8B\x08\x81\xE1\xFF\x0F\x00\x00\x83\xC1\x01\xC1\xE1\x04\x8B\x3C\x31\xEB\x06\x8B\xBE\x2A\x2A\x2A\x2A\x85\xFF\x74\x3A\x8B\x5C\x24\x18\x8B\x2D\x2A\x2A\x2A\x2A\x8D"
}
"Offsets" }
{ }
/* Offset into CreateGameRulesObject */
"g_pGameRules" /* General GameRules */
{ "#default"
"windows" "2" {
} "#supported"
} {
"game" "!Might and Magic Multiplayer"
"Signatures" }
{
/* This signature sometimes has multiple matches, but this "Offsets"
* does not matter as g_pGameRules is involved in all of them. {
* The same g_pGameRules offset applies to each match. /* Offset into CreateGameRulesObject */
* "g_pGameRules"
* Sometimes this block of bytes is at the beginning of the static {
* CreateGameRulesObject function and sometimes it is in the middle "windows" "2"
* of an entirely different function. This depends on the game. }
*/ }
"CreateGameRulesObject"
{ "Signatures"
"library" "server" {
"windows" "\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x2A\x8B\x01\x6A\x01\xFF\x50" /* This signature sometimes has multiple matches, but this
} * does not matter as g_pGameRules is involved in all of them.
} * The same g_pGameRules offset applies to each match.
} *
* Sometimes this block of bytes is at the beginning of the static
/* IServer interface pointer */ * CreateGameRulesObject function and sometimes it is in the middle
"#default" * of an entirely different function. This depends on the game.
{ */
"Keys" "CreateGameRulesObject"
{ {
/* Signature for the beginning of IVEngineServer::CreateFakeClient. "library" "server"
* "windows" "\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x2A\x8B\x01\x6A\x01\xFF\x50"
* The engine binary is not actually scanned in order to look for }
* this. SourceHook is used to used to determine the address of the }
* function and this signature is used to verify that it contains }
* the expected code. A pointer to sv (IServer interface) is used
* here. /* IServer interface pointer */
*/ "#default"
"CreateFakeClient_Windows" "\x8B\x44\x24\x2A\x50\xB9\x2A\x2A\x2A\x2A\xE8" {
} "Keys"
{
"Offsets" /* Signature for the beginning of IVEngineServer::CreateFakeClient.
{ *
/* Offset into IVEngineServer::CreateFakeClient */ * The engine binary is not actually scanned in order to look for
"sv" * this. SourceHook is used to used to determine the address of the
{ * function and this signature is used to verify that it contains
"windows" "6" * the expected code. A pointer to sv (IServer interface) is used
} * here.
} */
} "CreateFakeClient_Windows" "\x8B\x44\x24\x2A\x50\xB9\x2A\x2A\x2A\x2A\xE8"
}
/* EntityFactoryDictionary function */
"#default" "Offsets"
{ {
"Signatures" /* Offset into IVEngineServer::CreateFakeClient */
{ "sv"
"EntityFactory" {
{ "windows" "6"
"library" "server" }
"windows" "\xB8\x01\x00\x00\x00\x84\x2A\x2A\x2A\x2A\x2A\x75\x1D\x09\x2A\x2A\x2A\x2A\x2A\xB9\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\x68\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\x83\xC4\x04\xB8\x2A\x2A\x2A\x2A\xC3" }
} }
}
} /* EntityFactoryDictionary function */
"#default"
/* CBaseEntityOutput::FireOutput */ {
"#default" "Signatures"
{ {
"#supported" "EntityFactory"
{ {
"game" "!Might and Magic Multiplayer" "library" "server"
} "windows" "\xB8\x01\x00\x00\x00\x84\x2A\x2A\x2A\x2A\x2A\x75\x1D\x09\x2A\x2A\x2A\x2A\x2A\xB9\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\x68\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\x83\xC4\x04\xB8\x2A\x2A\x2A\x2A\xC3"
"Signatures" }
{ }
"FireOutput" }
{
"library" "server" /* CBaseEntityOutput::FireOutput */
"windows" "\x83\xEC\x1C\x53\x55\x56\x8B\x71\x14" "#default"
"linux" "@_ZN17CBaseEntityOutput10FireOutputE9variant_tP11CBaseEntityS2_f" {
} "#supported"
} {
"Offsets" "game" "!Might and Magic Multiplayer"
{ }
"FireOutputBackup" "Signatures"
{ {
"windows" "6" "FireOutput"
} {
} "library" "server"
} "windows" "\x83\xEC\x1C\x53\x55\x56\x8B\x71\x14"
"linux" "@_ZN17CBaseEntityOutput10FireOutputE9variant_tP11CBaseEntityS2_f"
/* SetUserInfo data */ }
"#default" }
{ "Offsets"
"Offsets" {
{ "FireOutputBackup"
/** {
* CBaseClient::SetUserCVar(char const*,char const*); "windows" "6"
* Linux offset straight from VTable dump. }
* Windows offset is crazy. Found the windows 'SetName' function using string "(%d)%-0.*s" }
* Cross referenced back to the vtable and counted manually (SetUserCvar is 1 higher, offsets start from 1) }
*/
"SetUserCvar" /* SetUserInfo data */
{ "#default"
"windows" "17" {
} "Offsets"
{
"UpdateUserSettings" /**
{ * CBaseClient::SetUserCVar(char const*,char const*);
"windows" "7" * Linux offset straight from VTable dump.
} * Windows offset is crazy. Found the windows 'SetName' function using string "(%d)%-0.*s"
} * Cross referenced back to the vtable and counted manually (SetUserCvar is 1 higher, offsets start from 1)
} */
"SetUserCvar"
/* Dark Messiah */ {
"!Might and Magic Multiplayer" "windows" "17"
{ }
"Offsets"
{ "UpdateUserSettings"
"GiveNamedItem" {
{ "windows" "7"
"windows" "309" }
} }
"RemovePlayerItem" }
{
"windows" "210" /* Dark Messiah */
} "!Might and Magic Multiplayer"
"Weapon_GetSlot" {
{ "Offsets"
"windows" "208" {
} "GiveNamedItem"
"Ignite" {
{ "windows" "309"
"windows" "172" }
} "RemovePlayerItem"
"Extinguish" {
{ "windows" "210"
"windows" "173" }
} "Weapon_GetSlot"
"Teleport" {
{ "windows" "208"
"windows" "92" }
} "Ignite"
"GetVelocity" {
{ "windows" "172"
"windows" "115" }
} "Extinguish"
"EyeAngles" {
{ "windows" "173"
"windows" "107" }
} "Teleport"
"AcceptInput" {
{ "windows" "92"
"windows" "34" }
} "GetVelocity"
"DispatchKeyValue" {
{ "windows" "115"
"windows" "30" }
} "EyeAngles"
"DispatchKeyValueFloat" {
{ "windows" "107"
"windows" "29" }
} "AcceptInput"
"DispatchKeyValueVector" {
{ "windows" "34"
"windows" "28" }
} "DispatchKeyValue"
"SetEntityModel" {
{ "windows" "30"
"windows" "25" }
} "DispatchKeyValueFloat"
"WeaponEquip" {
{ "windows" "29"
"windows" "202" }
} "DispatchKeyValueVector"
"Activate" {
{ "windows" "28"
"windows" "32" }
} "SetEntityModel"
} {
"windows" "25"
"Signatures" }
{ "WeaponEquip"
"CommitSuicide" {
{ "windows" "202"
"library" "server" }
"windows" "\x83\xEC\x44\x56\x8B\xF1\x8B\x8E\x2A\x00\x00\x00\x85\xC9" "Activate"
} {
} "windows" "32"
} }
} }
"Signatures"
{
"CommitSuicide"
{
"library" "server"
"windows" "\x83\xEC\x44\x56\x8B\xF1\x8B\x8E\x2A\x00\x00\x00\x85\xC9"
}
}
}
}

View File

@ -1,301 +1,312 @@
"Games" /**
{ * Do not edit this file. Any changes will be overwritten by the gamedata
/* General Temp Entities */ * updater or by upgrading your SourceMod install.
"#default" *
{ * To override data in this file, create a subdirectory named "custom" and
"#supported" * place your own gamedata file(s) inside of it. Such files will be parsed
{ * after SM's own.
"game" "cstrike" *
"game" "hl2mp" * For more information, see http://wiki.alliedmods.net/Gamedata_Updating_(SourceMod)
"game" "ship" */
"game" "!Dystopia"
"game" "insurgency" "Games"
"game" "pvkii" {
"game" "sourceforts" /* General Temp Entities */
"game" "FortressForever" "#default"
"game" "empires" {
"game" "synergy" "#supported"
"game" "hidden" {
"game" "zombie_master" "game" "cstrike"
} "game" "hl2mp"
"game" "ship"
"Offsets" "game" "!Dystopia"
{ "game" "insurgency"
/* Offset into CBaseTempEntity constructor */ "game" "pvkii"
"s_pTempEntities" "game" "sourceforts"
{ "game" "FortressForever"
"windows" "17" "game" "empires"
} "game" "synergy"
"GetTEName" "game" "hidden"
{ "game" "zombie_master"
"windows" "4" }
"linux" "4"
} "Offsets"
"GetTENext" {
{ /* Offset into CBaseTempEntity constructor */
"windows" "8" "s_pTempEntities"
"linux" "8" {
} "windows" "17"
"TE_GetServerClass" }
{ "GetTEName"
"windows" "1" {
"linux" "1" "windows" "4"
} "linux" "4"
} }
"GetTENext"
"Signatures" {
{ "windows" "8"
"CBaseTempEntity" "linux" "8"
{ }
"library" "server" "TE_GetServerClass"
"windows" "\x8B\xC1\x8B\x4C\x24\x04\xC7\x00\x2A\x2A\x2A\x2A\x89\x48\x04\x8B\x15\x2A\x2A\x2A\x2A\x89\x50\x08\xA3\x2A\x2A\x2A\x2A\xC2\x04\x00" {
} "windows" "1"
"s_pTempEntities" "linux" "1"
{ }
"library" "server" }
"linux" "@_ZN15CBaseTempEntity15s_pTempEntitiesE"
} "Signatures"
} {
} "CBaseTempEntity"
{
/* General GameRules */ "library" "server"
"#default" "windows" "\x8B\xC1\x8B\x4C\x24\x04\xC7\x00\x2A\x2A\x2A\x2A\x89\x48\x04\x8B\x15\x2A\x2A\x2A\x2A\x89\x50\x08\xA3\x2A\x2A\x2A\x2A\xC2\x04\x00"
{ }
"#supported" "s_pTempEntities"
{ {
"game" "cstrike" "library" "server"
"game" "garrysmod" "linux" "@_ZN15CBaseTempEntity15s_pTempEntitiesE"
"game" "hl2mp" }
"game" "ship" }
"game" "!Dystopia" }
"game" "insurgency"
"game" "pvkii" /* General GameRules */
"game" "sourceforts" "#default"
"game" "FortressForever" {
"game" "empires" "#supported"
"game" "synergy" {
"game" "hidden" "game" "cstrike"
} "game" "garrysmod"
"game" "hl2mp"
"Offsets" "game" "ship"
{ "game" "!Dystopia"
/* Offset into CreateGameRulesObject */ "game" "insurgency"
"g_pGameRules" "game" "pvkii"
{ "game" "sourceforts"
"windows" "2" "game" "FortressForever"
} "game" "empires"
} "game" "synergy"
"game" "hidden"
"Signatures" }
{
/* This signature sometimes has multiple matches, but this "Offsets"
* does not matter as g_pGameRules is involved in all of them. {
* The same g_pGameRules offset applies to each match. /* Offset into CreateGameRulesObject */
* "g_pGameRules"
* Sometimes this block of bytes is at the beginning of the static {
* CreateGameRulesObject function and sometimes it is in the middle "windows" "2"
* of an entirely different function. This depends on the game. }
*/ }
"CreateGameRulesObject"
{ "Signatures"
"library" "server" {
"windows" "\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x2A\x8B\x01\x6A\x01\xFF\x50" /* This signature sometimes has multiple matches, but this
} * does not matter as g_pGameRules is involved in all of them.
"g_pGameRules" * The same g_pGameRules offset applies to each match.
{ *
"library" "server" * Sometimes this block of bytes is at the beginning of the static
"linux" "@g_pGameRules" * CreateGameRulesObject function and sometimes it is in the middle
} * of an entirely different function. This depends on the game.
} */
} "CreateGameRulesObject"
{
/* CGlobalEntityList */ "library" "server"
"#default" "windows" "\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x2A\x8B\x01\x6A\x01\xFF\x50"
{ }
"#supported" "g_pGameRules"
{ {
"game" "cstrike" "library" "server"
"game" "garrysmod" "linux" "@g_pGameRules"
"game" "hl2mp" }
"game" "ship" }
"game" "insurgency" }
"game" "pvkii"
"game" "sourceforts" /* CGlobalEntityList */
"game" "FortressForever" "#default"
"game" "empires" {
"game" "synergy" "#supported"
"game" "hidden" {
"game" "zombie_master" "game" "cstrike"
} "game" "garrysmod"
"game" "hl2mp"
"Offsets" "game" "ship"
{ "game" "insurgency"
/* Offset into LevelShutdown */ "game" "pvkii"
"gEntList" "game" "sourceforts"
{ "game" "FortressForever"
"windows" "11" "game" "empires"
} "game" "synergy"
} "game" "hidden"
"game" "zombie_master"
"Signatures" }
{
"LevelShutdown" "Offsets"
{ {
"library" "server" /* Offset into LevelShutdown */
"windows" "\xE8\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\xB9\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\xE8" "gEntList"
} {
"gEntList" "windows" "11"
{ }
"library" "server" }
"linux" "@gEntList"
} "Signatures"
{
/* Functions in CGlobalEntityList */ "LevelShutdown"
"FindEntityByClassname" {
{ "library" "server"
"library" "server" "windows" "\xE8\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\xB9\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\xE8"
"windows" "\x53\x55\x56\x8B\xF1\x8B\x4C\x24\x2A\x85\xC9\x57\x74\x2A\x8B\x01\xFF\x50\x2A\x8B\x08\x81\xE1\x2A\x2A\x2A\x2A\x83\xC1\x2A\xC1\xE1\x2A\x8B\x3C\x31\xEB\x2A\x8B\xBE\x2A\x2A\x2A\x2A\x85\xFF\x74\x2A\x8B\x5C\x24\x2A\x8B\x2D\x2A\x2A\x2A\x2A\x8D\x9B\x00\x00\x00\x00\x8B\x37\x85\xF6\x75\x2A\x68\x2A\x2A\x2A\x2A\xFF\x2A\x83\xC4\x2A\xEB\x2A\x39" }
"linux" "@_ZN17CGlobalEntityList21FindEntityByClassnameEP11CBaseEntityPKc" "gEntList"
} {
} "library" "server"
} "linux" "@gEntList"
}
/* Create Entity Signatures */
"#default" /* Functions in CGlobalEntityList */
{ "FindEntityByClassname"
"#supported" {
{ "library" "server"
"game" "cstrike" "windows" "\x53\x55\x56\x8B\xF1\x8B\x4C\x24\x2A\x85\xC9\x57\x74\x2A\x8B\x01\xFF\x50\x2A\x8B\x08\x81\xE1\x2A\x2A\x2A\x2A\x83\xC1\x2A\xC1\xE1\x2A\x8B\x3C\x31\xEB\x2A\x8B\xBE\x2A\x2A\x2A\x2A\x85\xFF\x74\x2A\x8B\x5C\x24\x2A\x8B\x2D\x2A\x2A\x2A\x2A\x8D\x9B\x00\x00\x00\x00\x8B\x37\x85\xF6\x75\x2A\x68\x2A\x2A\x2A\x2A\xFF\x2A\x83\xC4\x2A\xEB\x2A\x39"
"game" "hl2mp" "linux" "@_ZN17CGlobalEntityList21FindEntityByClassnameEP11CBaseEntityPKc"
"game" "insurgency" }
"game" "pvkii" }
"game" "sourceforts" }
"game" "empires"
"game" "synergy" /* Create Entity Signatures */
"game" "hidden" "#default"
"game" "FortressForever" {
} "#supported"
{
"Signatures" "game" "cstrike"
{ "game" "hl2mp"
"DispatchSpawn" "game" "insurgency"
{ "game" "pvkii"
"library" "server" "game" "sourceforts"
"linux" "@_Z13DispatchSpawnP11CBaseEntity" "game" "empires"
"windows" "\x53\x55\x56\x8B\x74\x24\x10\x85\xF6\x57\x0F\x84\x2A\x2A\x2A\x2A\x8B\x1D\x2A\x2A\x2A\x2A\x8B\x03\x8B\xCB\xFF\x50\x60" "game" "synergy"
} "game" "hidden"
"CreateEntityByName" "game" "FortressForever"
{ }
"library" "server"
"linux" "@_Z18CreateEntityByNamePKci" "Signatures"
"windows" "\x56\x8B\x74\x24\x0C\x83\xFE\xFF\x57\x8B\x7C\x24\x0C\x74\x25\x8B\x0D\x2A\x2A\x2A\x2A\x8B\x01\x56\xFF\x50\x54\x85\xC0" {
} "DispatchSpawn"
} {
} "library" "server"
"linux" "@_Z13DispatchSpawnP11CBaseEntity"
/* IServer interface pointer */ "windows" "\x53\x55\x56\x8B\x74\x24\x10\x85\xF6\x57\x0F\x84\x2A\x2A\x2A\x2A\x8B\x1D\x2A\x2A\x2A\x2A\x8B\x03\x8B\xCB\xFF\x50\x60"
"#default" }
{ "CreateEntityByName"
"Keys" {
{ "library" "server"
/* Signature for the beginning of IVEngineServer::CreateFakeClient. "linux" "@_Z18CreateEntityByNamePKci"
* "windows" "\x56\x8B\x74\x24\x0C\x83\xFE\xFF\x57\x8B\x7C\x24\x0C\x74\x25\x8B\x0D\x2A\x2A\x2A\x2A\x8B\x01\x56\xFF\x50\x54\x85\xC0"
* The engine binary is not actually scanned in order to look for }
* this. SourceHook is used to used to determine the address of the }
* function and this signature is used to verify that it contains }
* the expected code. A pointer to sv (IServer interface) is used
* here. /* IServer interface pointer */
*/ "#default"
"CreateFakeClient_Windows" "\x8B\x44\x24\x2A\x50\xB9\x2A\x2A\x2A\x2A\xE8" {
} "Keys"
{
"Offsets" /* Signature for the beginning of IVEngineServer::CreateFakeClient.
{ *
/* Offset into IVEngineServer::CreateFakeClient */ * The engine binary is not actually scanned in order to look for
"sv" * this. SourceHook is used to used to determine the address of the
{ * function and this signature is used to verify that it contains
"windows" "6" * the expected code. A pointer to sv (IServer interface) is used
} * here.
} */
"CreateFakeClient_Windows" "\x8B\x44\x24\x2A\x50\xB9\x2A\x2A\x2A\x2A\xE8"
"Signatures" }
{
/* CBaseServer object for IServer interface */ "Offsets"
"sv" {
{ /* Offset into IVEngineServer::CreateFakeClient */
"library" "engine" "sv"
"linux" "@sv" {
} "windows" "6"
} }
} }
/* EntityFactoryDictionary function */ "Signatures"
"#default" {
{ /* CBaseServer object for IServer interface */
"Signatures" "sv"
{ {
"EntityFactory" "library" "engine"
{ "linux" "@sv"
"library" "server" }
"windows" "\xB8\x01\x00\x00\x00\x84\x2A\x2A\x2A\x2A\x2A\x75\x1D\x09\x2A\x2A\x2A\x2A\x2A\xB9\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\x68\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\x83\xC4\x04\xB8\x2A\x2A\x2A\x2A\xC3" }
"linux" "@_Z23EntityFactoryDictionaryv" }
}
} /* EntityFactoryDictionary function */
} "#default"
/* CBaseEntityOutput::FireOutput */ {
"#default" "Signatures"
{ {
"#supported" "EntityFactory"
{ {
"game" "cstrike" "library" "server"
"game" "hl2mp" "windows" "\xB8\x01\x00\x00\x00\x84\x2A\x2A\x2A\x2A\x2A\x75\x1D\x09\x2A\x2A\x2A\x2A\x2A\xB9\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\x68\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\x83\xC4\x04\xB8\x2A\x2A\x2A\x2A\xC3"
} "linux" "@_Z23EntityFactoryDictionaryv"
"Signatures" }
{ }
"FireOutput" }
{ /* CBaseEntityOutput::FireOutput */
"library" "server" "#default"
"windows" "\x81\xEC\x1C\x03\x00\x00\x53\x55\x56\x8B\x71\x14" {
"linux" "@_ZN17CBaseEntityOutput10FireOutputE9variant_tP11CBaseEntityS2_f" "#supported"
} {
} "game" "cstrike"
"Offsets" "game" "hl2mp"
{ }
"FireOutputBackup" "Signatures"
{ {
"windows" "6" "FireOutput"
"linux" "6" {
} "library" "server"
} "windows" "\x81\xEC\x1C\x03\x00\x00\x53\x55\x56\x8B\x71\x14"
} "linux" "@_ZN17CBaseEntityOutput10FireOutputE9variant_tP11CBaseEntityS2_f"
}
/* SetUserInfo data */ }
"#default" "Offsets"
{ {
"Offsets" "FireOutputBackup"
{ {
/** "windows" "6"
* CBaseClient::SetUserCVar(char const*,char const*); "linux" "6"
* Linux offset straight from VTable dump. }
* Windows offset is crazy. Found the windows 'SetName' function using string "(%d)%-0.*s" }
* Cross referenced back to the vtable and counted manually (SetUserCvar is 1 higher, offsets start from 1) }
*/
"SetUserCvar" /* SetUserInfo data */
{ "#default"
"windows" "17" {
"linux" "53" "Offsets"
} {
/** /**
* Offset into CBaseClient - Used by CBaseServer::UpdateUserSettings to determine when changes have been made. * CBaseClient::SetUserCVar(char const*,char const*);
* Find CBaseClient::UpdateUserSettings (strings "net_maxroutable", "cl_updaterate" etc) and the offset is set to 0 near the end. * Linux offset straight from VTable dump.
* Linux: mov byte ptr [esi+98h], 0 * Windows offset is crazy. Found the windows 'SetName' function using string "(%d)%-0.*s"
* Win: mov byte ptr [esi+0A4h], 0 * Cross referenced back to the vtable and counted manually (SetUserCvar is 1 higher, offsets start from 1)
*/ */
"InfoChanged" "SetUserCvar"
{ {
"windows" "164" "windows" "17"
"linux" "152" "linux" "53"
} }
} /**
} * Offset into CBaseClient - Used by CBaseServer::UpdateUserSettings to determine when changes have been made.
} * Find CBaseClient::UpdateUserSettings (strings "net_maxroutable", "cl_updaterate" etc) and the offset is set to 0 near the end.
* Linux: mov byte ptr [esi+98h], 0
* Win: mov byte ptr [esi+0A4h], 0
*/
"InfoChanged"
{
"windows" "164"
"linux" "152"
}
}
}
}

View File

@ -1,274 +1,285 @@
"Games" /**
{ * Do not edit this file. Any changes will be overwritten by the gamedata
/* General Temp Entities */ * updater or by upgrading your SourceMod install.
"#default" *
{ * To override data in this file, create a subdirectory named "custom" and
"#supported" * place your own gamedata file(s) inside of it. Such files will be parsed
{ * after SM's own.
"game" "dod" *
"game" "tf" * For more information, see http://wiki.alliedmods.net/Gamedata_Updating_(SourceMod)
"game" "ageofchivalry" */
"game" "ZPS"
} "Games"
{
"Offsets" /* General Temp Entities */
{ "#default"
/* Offset into CBaseTempEntity constructor */ {
"s_pTempEntities" "#supported"
{ {
"windows" "17" "game" "dod"
} "game" "tf"
"GetTEName" "game" "ageofchivalry"
{ "game" "ZPS"
"windows" "4" }
"linux" "4"
} "Offsets"
"GetTENext" {
{ /* Offset into CBaseTempEntity constructor */
"windows" "8" "s_pTempEntities"
"linux" "8" {
} "windows" "17"
"TE_GetServerClass" }
{ "GetTEName"
"windows" "0" {
"linux" "0" "windows" "4"
} "linux" "4"
} }
"GetTENext"
"Signatures" {
{ "windows" "8"
"CBaseTempEntity" "linux" "8"
{ }
"library" "server" "TE_GetServerClass"
"windows" "\x8B\xC1\x8B\x4C\x24\x04\xC7\x00\x2A\x2A\x2A\x2A\x89\x48\x04\x8B\x15\x2A\x2A\x2A\x2A\x89\x50\x08\xA3\x2A\x2A\x2A\x2A\xC2\x04\x00" {
} "windows" "0"
"s_pTempEntities" "linux" "0"
{ }
"library" "server" }
"linux" "@_ZN15CBaseTempEntity15s_pTempEntitiesE"
} "Signatures"
} {
} "CBaseTempEntity"
{
/* Create Entity Signatures */ "library" "server"
"#default" "windows" "\x8B\xC1\x8B\x4C\x24\x04\xC7\x00\x2A\x2A\x2A\x2A\x89\x48\x04\x8B\x15\x2A\x2A\x2A\x2A\x89\x50\x08\xA3\x2A\x2A\x2A\x2A\xC2\x04\x00"
{ }
"#supported" "s_pTempEntities"
{ {
"game" "dod" "library" "server"
"game" "tf" "linux" "@_ZN15CBaseTempEntity15s_pTempEntitiesE"
"game" "ageofchivalry" }
"game" "ZPS" }
} }
"Signatures" /* Create Entity Signatures */
{ "#default"
"DispatchSpawn" {
{ "#supported"
"library" "server" {
"linux" "@_Z13DispatchSpawnP11CBaseEntity" "game" "dod"
"windows" "\x53\x55\x56\x8B\x74\x24\x10\x85\xF6\x57\x0F\x84\x2A\x2A\x2A\x2A\x8B\x1D\x2A\x2A\x2A\x2A\x8B\x03\x8B\x50\x64\x8B\xCB" "game" "tf"
} "game" "ageofchivalry"
"CreateEntityByName" "game" "ZPS"
{ }
"library" "server"
"linux" "@_Z18CreateEntityByNamePKci" "Signatures"
"windows" "\x56\x8B\x74\x24\x0C\x83\xFE\xFF\x57\x8B\x7C\x24\x0C\x74\x27\x8B\x0D\x2A\x2A\x2A\x2A\x8B\x01\x8B\x50\x54\x56\xFF\xD2" {
} "DispatchSpawn"
} {
} "library" "server"
"linux" "@_Z13DispatchSpawnP11CBaseEntity"
/* CGlobalEntityList */ "windows" "\x53\x55\x56\x8B\x74\x24\x10\x85\xF6\x57\x0F\x84\x2A\x2A\x2A\x2A\x8B\x1D\x2A\x2A\x2A\x2A\x8B\x03\x8B\x50\x64\x8B\xCB"
"#default" }
{ "CreateEntityByName"
"#supported" {
{ "library" "server"
"game" "dod" "linux" "@_Z18CreateEntityByNamePKci"
"game" "tf" "windows" "\x56\x8B\x74\x24\x0C\x83\xFE\xFF\x57\x8B\x7C\x24\x0C\x74\x27\x8B\x0D\x2A\x2A\x2A\x2A\x8B\x01\x8B\x50\x54\x56\xFF\xD2"
"game" "ageofchivalry" }
"game" "ZPS" }
} }
"Offsets" /* CGlobalEntityList */
{ "#default"
/* Offset into LevelShutdown */ {
"gEntList" "#supported"
{ {
"windows" "11" "game" "dod"
} "game" "tf"
} "game" "ageofchivalry"
"game" "ZPS"
"Signatures" }
{
"LevelShutdown" "Offsets"
{ {
"library" "server" /* Offset into LevelShutdown */
"windows" "\xE8\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\xB9\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\xE8" "gEntList"
} {
"gEntList" "windows" "11"
{ }
"library" "server" }
"linux" "@gEntList"
} "Signatures"
{
/* Functions in CGlobalEntityList */ "LevelShutdown"
"FindEntityByClassname" {
{ "library" "server"
"library" "server" "windows" "\xE8\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\xB9\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\xE8"
"windows" "\x53\x55\x56\x8B\xF1\x8B\x4C\x24\x10\x85\xC9\x57\x74\x19\x8B\x01\x8B\x50\x08\xFF\xD2\x8B\x00\x25\xFF\x0F\x00\x00\x83\xC0\x01\xC1\xE0\x04\x8B\x3C\x30\xEB\x06\x8B\xBE\x2A\x2A\x2A\x2A\x85\xFF\x74\x39\x8B\x5C\x24\x18\x8B\x2D\x2A\x2A\x2A\x2A\xEB\x03" }
"linux" "@_ZN17CGlobalEntityList21FindEntityByClassnameEP11CBaseEntityPKc" "gEntList"
} {
} "library" "server"
} "linux" "@gEntList"
}
/* General GameRules */
"#default" /* Functions in CGlobalEntityList */
{ "FindEntityByClassname"
"#supported" {
{ "library" "server"
"game" "dod" "windows" "\x53\x55\x56\x8B\xF1\x8B\x4C\x24\x10\x85\xC9\x57\x74\x19\x8B\x01\x8B\x50\x08\xFF\xD2\x8B\x00\x25\xFF\x0F\x00\x00\x83\xC0\x01\xC1\xE0\x04\x8B\x3C\x30\xEB\x06\x8B\xBE\x2A\x2A\x2A\x2A\x85\xFF\x74\x39\x8B\x5C\x24\x18\x8B\x2D\x2A\x2A\x2A\x2A\xEB\x03"
"game" "tf" "linux" "@_ZN17CGlobalEntityList21FindEntityByClassnameEP11CBaseEntityPKc"
"game" "ageofchivalry" }
"game" "ZPS" }
} }
"Offsets" /* General GameRules */
{ "#default"
/* Offset into CreateGameRulesObject */ {
"g_pGameRules" "#supported"
{ {
"windows" "2" "game" "dod"
} "game" "tf"
} "game" "ageofchivalry"
"game" "ZPS"
"Signatures" }
{
/* This signature sometimes has multiple matches, but this "Offsets"
* does not matter as g_pGameRules is involved in all of them. {
* The same g_pGameRules offset applies to each match. /* Offset into CreateGameRulesObject */
* "g_pGameRules"
* Sometimes this block of bytes is at the beginning of the static {
* CreateGameRulesObject function and sometimes it is in the middle "windows" "2"
* of an entirely different function. This depends on the game. }
*/ }
"CreateGameRulesObject"
{ "Signatures"
"library" "server" {
"windows" "\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x2A\x8B\x01\x8B\x50\x2A\x6A\x01\xFF\xD2" /* This signature sometimes has multiple matches, but this
} * does not matter as g_pGameRules is involved in all of them.
"g_pGameRules" * The same g_pGameRules offset applies to each match.
{ *
"library" "server" * Sometimes this block of bytes is at the beginning of the static
"linux" "@g_pGameRules" * CreateGameRulesObject function and sometimes it is in the middle
} * of an entirely different function. This depends on the game.
} */
} "CreateGameRulesObject"
{
/* IServer interface pointer */ "library" "server"
"#default" "windows" "\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x2A\x8B\x01\x8B\x50\x2A\x6A\x01\xFF\xD2"
{ }
"Keys" "g_pGameRules"
{ {
/* Signature for the beginning of IVEngineServer::CreateFakeClient. "library" "server"
* "linux" "@g_pGameRules"
* The engine binary is not actually scanned in order to look for }
* this. SourceHook is used to used to determine the address of the }
* function and this signature is used to verify that it contains }
* the expected code. A pointer to sv (IServer interface) is used
* here. /* IServer interface pointer */
*/ "#default"
"CreateFakeClient_Windows" "\x8B\x44\x24\x2A\x50\xB9\x2A\x2A\x2A\x2A\xE8" {
} "Keys"
{
"Offsets" /* Signature for the beginning of IVEngineServer::CreateFakeClient.
{ *
/* Offset into IVEngineServer::CreateFakeClient */ * The engine binary is not actually scanned in order to look for
"sv" * this. SourceHook is used to used to determine the address of the
{ * function and this signature is used to verify that it contains
"windows" "6" * the expected code. A pointer to sv (IServer interface) is used
} * here.
} */
"CreateFakeClient_Windows" "\x8B\x44\x24\x2A\x50\xB9\x2A\x2A\x2A\x2A\xE8"
"Signatures" }
{
/* CBaseServer object for IServer interface */ "Offsets"
"sv" {
{ /* Offset into IVEngineServer::CreateFakeClient */
"library" "engine" "sv"
"linux" "@sv" {
} "windows" "6"
} }
} }
/* EntityFactoryDictionary function */ "Signatures"
"#default" {
{ /* CBaseServer object for IServer interface */
"Signatures" "sv"
{ {
"EntityFactory" "library" "engine"
{ "linux" "@sv"
"library" "server" }
"windows" "\xB8\x01\x00\x00\x00\x84\x2A\x2A\x2A\x2A\x2A\x75\x1D\x09\x2A\x2A\x2A\x2A\x2A\xB9\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\x68\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\x83\xC4\x04\xB8\x2A\x2A\x2A\x2A\xC3" }
"linux" "@_Z23EntityFactoryDictionaryv" }
}
} /* EntityFactoryDictionary function */
} "#default"
{
/* CBaseEntityOutput::FireOutput */ "Signatures"
"#default" {
{ "EntityFactory"
"#supported" {
{ "library" "server"
"game" "dod" "windows" "\xB8\x01\x00\x00\x00\x84\x2A\x2A\x2A\x2A\x2A\x75\x1D\x09\x2A\x2A\x2A\x2A\x2A\xB9\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\x68\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\x83\xC4\x04\xB8\x2A\x2A\x2A\x2A\xC3"
"game" "tf" "linux" "@_Z23EntityFactoryDictionaryv"
"game" "ageofchivalry" }
} }
"Signatures" }
{
"FireOutput" /* CBaseEntityOutput::FireOutput */
{ "#default"
"library" "server" {
"windows" "\x81\xEC\x1C\x01\x00\x00\x53\x55\x56\x8B\x71\x14\x85\xF6" "#supported"
"linux" "@_ZN17CBaseEntityOutput10FireOutputE9variant_tP11CBaseEntityS2_f" {
} "game" "dod"
} "game" "tf"
"Offsets" "game" "ageofchivalry"
{ }
"FireOutputBackup" "Signatures"
{ {
"windows" "6" "FireOutput"
"linux" "10" {
} "library" "server"
} "windows" "\x81\xEC\x1C\x01\x00\x00\x53\x55\x56\x8B\x71\x14\x85\xF6"
} "linux" "@_ZN17CBaseEntityOutput10FireOutputE9variant_tP11CBaseEntityS2_f"
}
/* SetUserInfo data */ }
"#default" "Offsets"
{ {
"Offsets" "FireOutputBackup"
{ {
/** "windows" "6"
* CBaseClient::SetUserCVar(char const*,char const*); "linux" "10"
* Linux offset straight from VTable dump. }
* Windows offset is crazy. Found the windows 'SetName' function using string "(%d)%-0.*s" }
* Cross referenced back to the vtable and counted manually (SetUserCvar is 1 higher, offsets start from 1) }
*/
"SetUserCvar" /* SetUserInfo data */
{ "#default"
"windows" "17" {
"linux" "55" "Offsets"
} {
/** /**
* Offset into CBaseClient - Used by CBaseServer::UpdateUserSettings to determine when changes have been made. * CBaseClient::SetUserCVar(char const*,char const*);
* Find CBaseClient::UpdateUserSettings (strings "net_maxroutable", "cl_updaterate" etc) and the offset is set to 0 near the end. * Linux offset straight from VTable dump.
* Linux: mov byte ptr [esi+98h], 0 * Windows offset is crazy. Found the windows 'SetName' function using string "(%d)%-0.*s"
* Win: mov byte ptr [esi+0A4h], 0 * Cross referenced back to the vtable and counted manually (SetUserCvar is 1 higher, offsets start from 1)
*/ */
"InfoChanged" "SetUserCvar"
{ {
"windows" "140" "windows" "17"
"linux" "140" "linux" "55"
} }
} /**
} * Offset into CBaseClient - Used by CBaseServer::UpdateUserSettings to determine when changes have been made.
} * Find CBaseClient::UpdateUserSettings (strings "net_maxroutable", "cl_updaterate" etc) and the offset is set to 0 near the end.
* Linux: mov byte ptr [esi+98h], 0
* Win: mov byte ptr [esi+0A4h], 0
*/
"InfoChanged"
{
"windows" "140"
"linux" "140"
}
}
}
}

View File

@ -1,359 +1,370 @@
"Games" /**
{ * Do not edit this file. Any changes will be overwritten by the gamedata
/* Sounds */ * updater or by upgrading your SourceMod install.
"#default" *
{ * To override data in this file, create a subdirectory named "custom" and
"Keys" * place your own gamedata file(s) inside of it. Such files will be parsed
{ * after SM's own.
"SlapSoundCount" "2" *
"SlapSound1" "player/damage1.wav" * For more information, see http://wiki.alliedmods.net/Gamedata_Updating_(SourceMod)
"SlapSound2" "player/damage2.wav" */
}
} "Games"
{
/* General Temp Entities */ /* Sounds */
"#default" "#default"
{ {
"#supported" "Keys"
{ {
"game" "left4dead" "SlapSoundCount" "2"
} "SlapSound1" "player/damage1.wav"
"SlapSound2" "player/damage2.wav"
"Offsets" }
{ }
/* Offset into CBaseTempEntity constructor */
"s_pTempEntities" /* General Temp Entities */
{ "#default"
"windows" "17" {
} "#supported"
"GetTEName" {
{ "game" "left4dead"
"windows" "4" }
"linux" "4"
} "Offsets"
"GetTENext" {
{ /* Offset into CBaseTempEntity constructor */
"windows" "8" "s_pTempEntities"
"linux" "8" {
} "windows" "17"
"TE_GetServerClass" }
{ "GetTEName"
"windows" "0" {
"linux" "0" "windows" "4"
} "linux" "4"
} }
"GetTENext"
"Signatures" {
{ "windows" "8"
"CBaseTempEntity" "linux" "8"
{ }
"library" "server" "TE_GetServerClass"
"windows" "\x8B\xC1\x8B\x4C\x24\x04\xC7\x00\x2A\x2A\x2A\x2A\x89\x48\x04\x8B\x15\x2A\x2A\x2A\x2A\x89\x50\x08\xA3\x2A\x2A\x2A\x2A\xC2\x04\x00" {
} "windows" "0"
"s_pTempEntities" "linux" "0"
{ }
"library" "server" }
"linux" "@_ZN15CBaseTempEntity15s_pTempEntitiesE"
} "Signatures"
} {
} "CBaseTempEntity"
{
/* Create Entity Signatures */ "library" "server"
"#default" "windows" "\x8B\xC1\x8B\x4C\x24\x04\xC7\x00\x2A\x2A\x2A\x2A\x89\x48\x04\x8B\x15\x2A\x2A\x2A\x2A\x89\x50\x08\xA3\x2A\x2A\x2A\x2A\xC2\x04\x00"
{ }
"#supported" "s_pTempEntities"
{ {
"game" "left4dead" "library" "server"
} "linux" "@_ZN15CBaseTempEntity15s_pTempEntitiesE"
}
"Signatures" }
{ }
"DispatchSpawn"
{ /* Create Entity Signatures */
"library" "server" "#default"
"linux" "@_Z13DispatchSpawnP11CBaseEntity" {
"windows" "\x53\x55\x56\x8B\x74\x24\x10\x85\xF6\x57\x0F\x84\x2A\x2A\x2A\x2A\x8B\x1D\x2A\x2A\x2A\x2A\x8B\x03\x8B\x50\x64\x8B\xCB" "#supported"
} {
"CreateEntityByName" "game" "left4dead"
{ }
"library" "server"
"linux" "@_Z18CreateEntityByNamePKcib" "Signatures"
"windows" "\x56\x8B\x74\x24\x0C\x83\xFE\xFF\x57\x8B\x7C\x24\x0C\x74\x27\x8B\x0D\x2A\x2A\x2A\x2A\x8B\x01\x8B\x50\x54\x56\xFF\xD2" {
} "DispatchSpawn"
} {
} "library" "server"
"linux" "@_Z13DispatchSpawnP11CBaseEntity"
/* CGlobalEntityList */ "windows" "\x53\x55\x56\x8B\x74\x24\x10\x85\xF6\x57\x0F\x84\x2A\x2A\x2A\x2A\x8B\x1D\x2A\x2A\x2A\x2A\x8B\x03\x8B\x50\x64\x8B\xCB"
"#default" }
{ "CreateEntityByName"
"#supported" {
{ "library" "server"
"game" "left4dead" "linux" "@_Z18CreateEntityByNamePKcib"
} "windows" "\x56\x8B\x74\x24\x0C\x83\xFE\xFF\x57\x8B\x7C\x24\x0C\x74\x27\x8B\x0D\x2A\x2A\x2A\x2A\x8B\x01\x8B\x50\x54\x56\xFF\xD2"
}
"Offsets" }
{ }
/* Offset into LevelShutdown */
"gEntList" /* CGlobalEntityList */
{ "#default"
"windows" "11" {
} "#supported"
} {
"game" "left4dead"
"Signatures" }
{
"LevelShutdown" "Offsets"
{ {
"library" "server" /* Offset into LevelShutdown */
"windows" "\xE8\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\xB9\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\xE8" "gEntList"
} {
"gEntList" "windows" "11"
{ }
"library" "server" }
"linux" "@gEntList"
} "Signatures"
{
/* Functions in CGlobalEntityList */ "LevelShutdown"
"FindEntityByClassname" {
{ "library" "server"
"library" "server" "windows" "\xE8\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\xB9\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\xE8"
"windows" "\x53\x55\x56\x8B\xF1\x8B\x4C\x24\x10\x85\xC9\x57\x74\x19\x8B\x01\x8B\x50\x08\xFF\xD2\x8B\x00\x25\xFF\x0F\x00\x00\x83\xC0\x01\xC1\xE0\x04\x8B\x3C\x30\xEB\x06\x8B\xBE\x2A\x2A\x2A\x2A\x85\xFF\x74\x39\x8B\x5C\x24\x18\x8B\x2D\x2A\x2A\x2A\x2A\xEB\x03" }
"linux" "@_ZN17CGlobalEntityList21FindEntityByClassnameEP11CBaseEntityPKc" "gEntList"
} {
} "library" "server"
} "linux" "@gEntList"
}
/* General GameRules */
"#default" /* Functions in CGlobalEntityList */
{ "FindEntityByClassname"
"#supported" {
{ "library" "server"
"game" "left4dead" "windows" "\x53\x55\x56\x8B\xF1\x8B\x4C\x24\x10\x85\xC9\x57\x74\x19\x8B\x01\x8B\x50\x08\xFF\xD2\x8B\x00\x25\xFF\x0F\x00\x00\x83\xC0\x01\xC1\xE0\x04\x8B\x3C\x30\xEB\x06\x8B\xBE\x2A\x2A\x2A\x2A\x85\xFF\x74\x39\x8B\x5C\x24\x18\x8B\x2D\x2A\x2A\x2A\x2A\xEB\x03"
} "linux" "@_ZN17CGlobalEntityList21FindEntityByClassnameEP11CBaseEntityPKc"
}
"Offsets" }
{ }
/* Offset into CreateGameRulesObject */
"g_pGameRules" /* General GameRules */
{ "#default"
"windows" "2" {
} "#supported"
} {
"game" "left4dead"
"Signatures" }
{
/* This signature sometimes has multiple matches, but this "Offsets"
* does not matter as g_pGameRules is involved in all of them. {
* The same g_pGameRules offset applies to each match. /* Offset into CreateGameRulesObject */
* "g_pGameRules"
* Sometimes this block of bytes is at the beginning of the static {
* CreateGameRulesObject function and sometimes it is in the middle "windows" "2"
* of an entirely different function. This depends on the game. }
*/ }
"CreateGameRulesObject"
{ "Signatures"
"library" "server" {
"windows" "\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x2A\x8B\x01\x8B\x50\x2A\x6A\x01\xFF\xD2" /* This signature sometimes has multiple matches, but this
} * does not matter as g_pGameRules is involved in all of them.
"g_pGameRules" * The same g_pGameRules offset applies to each match.
{ *
"library" "server" * Sometimes this block of bytes is at the beginning of the static
"linux" "@g_pGameRules" * CreateGameRulesObject function and sometimes it is in the middle
} * of an entirely different function. This depends on the game.
} */
} "CreateGameRulesObject"
{
/* IServer interface pointer */ "library" "server"
"#default" "windows" "\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x2A\x8B\x01\x8B\x50\x2A\x6A\x01\xFF\xD2"
{ }
"Keys" "g_pGameRules"
{ {
/* Signature for the beginning of IVEngineServer::CreateFakeClient. "library" "server"
* "linux" "@g_pGameRules"
* The engine binary is not actually scanned in order to look for }
* this. SourceHook is used to used to determine the address of the }
* function and this signature is used to verify that it contains }
* the expected code. A pointer to sv (IServer interface) is used
* here. /* IServer interface pointer */
*/ "#default"
"CreateFakeClient_Windows" "\x55\x8B\xEC\x83\xEC\x08\x89\x4D\xF8\x8B\x45\x08\x50\xB9\x2A\x2A\x2A\x2A\xE8" {
} "Keys"
{
"Offsets" /* Signature for the beginning of IVEngineServer::CreateFakeClient.
{ *
/* Offset into IVEngineServer::CreateFakeClient */ * The engine binary is not actually scanned in order to look for
"sv" * this. SourceHook is used to used to determine the address of the
{ * function and this signature is used to verify that it contains
"windows" "14" * the expected code. A pointer to sv (IServer interface) is used
} * here.
} */
"CreateFakeClient_Windows" "\x55\x8B\xEC\x83\xEC\x08\x89\x4D\xF8\x8B\x45\x08\x50\xB9\x2A\x2A\x2A\x2A\xE8"
"Signatures" }
{
/* CBaseServer object for IServer interface */ "Offsets"
"sv" {
{ /* Offset into IVEngineServer::CreateFakeClient */
"library" "engine" "sv"
"linux" "@sv" {
} "windows" "14"
} }
} }
/* EntityFactoryDictionary function */ "Signatures"
"#default" {
{ /* CBaseServer object for IServer interface */
"Signatures" "sv"
{ {
"EntityFactory" "library" "engine"
{ "linux" "@sv"
"library" "server" }
"windows" "\xB8\x01\x00\x00\x00\x84\x2A\x2A\x2A\x2A\x2A\x75\x1D\x09\x2A\x2A\x2A\x2A\x2A\xB9\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\x68\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\x83\xC4\x04\xB8\x2A\x2A\x2A\x2A\xC3" }
"linux" "@_Z23EntityFactoryDictionaryv" }
}
} /* EntityFactoryDictionary function */
} "#default"
{
/* CBaseEntityOutput::FireOutput */ "Signatures"
"#default" {
{ "EntityFactory"
"#supported" {
{ "library" "server"
"game" "left4dead" "windows" "\xB8\x01\x00\x00\x00\x84\x2A\x2A\x2A\x2A\x2A\x75\x1D\x09\x2A\x2A\x2A\x2A\x2A\xB9\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\x68\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\x83\xC4\x04\xB8\x2A\x2A\x2A\x2A\xC3"
} "linux" "@_Z23EntityFactoryDictionaryv"
"Signatures" }
{ }
"FireOutput" }
{
"library" "server" /* CBaseEntityOutput::FireOutput */
"windows" "\x81\xEC\x1C\x01\x00\x00\x53\x55\x56\x8B\x71\x14\x85\xF6" "#default"
"linux" "@_ZN17CBaseEntityOutput10FireOutputE9variant_tP11CBaseEntityS2_f" {
} "#supported"
} {
"Offsets" "game" "left4dead"
{ }
"FireOutputBackup" "Signatures"
{ {
"windows" "6" "FireOutput"
"linux" "10" {
} "library" "server"
} "windows" "\x81\xEC\x1C\x01\x00\x00\x53\x55\x56\x8B\x71\x14\x85\xF6"
} "linux" "@_ZN17CBaseEntityOutput10FireOutputE9variant_tP11CBaseEntityS2_f"
}
/* SetUserInfo data */ }
"#default" "Offsets"
{ {
"Offsets" "FireOutputBackup"
{ {
/** "windows" "6"
* CBaseClient::SetUserCVar(char const*,char const*); "linux" "10"
* Linux offset straight from VTable dump. }
* Windows offset is crazy. Found the windows 'SetName' function using string "(%d)%-0.*s" }
* Cross referenced back to the vtable and counted manually (SetUserCvar is 1 higher, offsets start from 1) }
*/
"SetUserCvar" /* SetUserInfo data */
{ "#default"
"windows" "17" {
"linux" "62" "Offsets"
} {
/** /**
* Offset into CBaseClient - Used by CBaseServer::UpdateUserSettings to determine when changes have been made. * CBaseClient::SetUserCVar(char const*,char const*);
* Find CBaseClient::UpdateUserSettings (strings "net_maxroutable", "cl_updaterate" etc) and the offset is set to 0 near the end. * Linux offset straight from VTable dump.
* Linux: mov byte ptr [esi+0B0h], 0 * Windows offset is crazy. Found the windows 'SetName' function using string "(%d)%-0.*s"
* Win: mov byte ptr [esi+0B0h], 0 * Cross referenced back to the vtable and counted manually (SetUserCvar is 1 higher, offsets start from 1)
*/ */
"InfoChanged" "SetUserCvar"
{ {
"windows" "176" "windows" "17"
"linux" "176" "linux" "62"
} }
} /**
} * Offset into CBaseClient - Used by CBaseServer::UpdateUserSettings to determine when changes have been made.
* Find CBaseClient::UpdateUserSettings (strings "net_maxroutable", "cl_updaterate" etc) and the offset is set to 0 near the end.
/* Left 4 Dead */ * Linux: mov byte ptr [esi+0B0h], 0
"left4dead" * Win: mov byte ptr [esi+0B0h], 0
{ */
"Offsets" "InfoChanged"
{ {
"GiveNamedItem" "windows" "176"
{ "linux" "176"
"windows" "480" }
"linux" "481" }
} }
"RemovePlayerItem"
{ /* Left 4 Dead */
"windows" "269" "left4dead"
"linux" "270" {
} "Offsets"
"Weapon_GetSlot" {
{ "GiveNamedItem"
"windows" "267" {
"linux" "268" "windows" "480"
} "linux" "481"
"Ignite" }
{ "RemovePlayerItem"
"windows" "206" {
"linux" "207" "windows" "269"
} "linux" "270"
"Extinguish" }
{ "Weapon_GetSlot"
"windows" "210" {
"linux" "211" "windows" "267"
} "linux" "268"
"Teleport" }
{ "Ignite"
"windows" "105" {
"linux" "106" "windows" "206"
} "linux" "207"
"CommitSuicide" }
{ "Extinguish"
"windows" "449" {
"linux" "449" "windows" "210"
} "linux" "211"
"GetVelocity" }
{ "Teleport"
"windows" "136" {
"linux" "137" "windows" "105"
} "linux" "106"
"EyeAngles" }
{ "CommitSuicide"
"windows" "127" {
"linux" "128" "windows" "449"
} "linux" "449"
"AcceptInput" }
{ "GetVelocity"
"windows" "37" {
"linux" "38" "windows" "136"
} "linux" "137"
"DispatchKeyValue" }
{ "EyeAngles"
"windows" "29" {
"linux" "28" "windows" "127"
} "linux" "128"
"DispatchKeyValueFloat" }
{ "AcceptInput"
"windows" "28" {
"linux" "29" "windows" "37"
} "linux" "38"
"DispatchKeyValueVector" }
{ "DispatchKeyValue"
"windows" "27" {
"linux" "30" "windows" "29"
} "linux" "28"
"SetEntityModel" }
{ "DispatchKeyValueFloat"
"windows" "23" {
"linux" "24" "windows" "28"
} "linux" "29"
"WeaponEquip" }
{ "DispatchKeyValueVector"
"windows" "260" {
"linux" "261" "windows" "27"
} "linux" "30"
"Activate" }
{ "SetEntityModel"
"windows" "31" {
"linux" "32" "windows" "23"
} "linux" "24"
} }
} "WeaponEquip"
} {
"windows" "260"
"linux" "261"
}
"Activate"
{
"windows" "31"
"linux" "32"
}
}
}
}

View File

@ -1,90 +1,101 @@
"Games" /**
{ * Do not edit this file. Any changes will be overwritten by the gamedata
/* Age of Chivalry */ * updater or by upgrading your SourceMod install.
"ageofchivalry" *
{ * To override data in this file, create a subdirectory named "custom" and
"Offsets" * place your own gamedata file(s) inside of it. Such files will be parsed
{ * after SM's own.
"GiveNamedItem" *
{ * For more information, see http://wiki.alliedmods.net/Gamedata_Updating_(SourceMod)
"windows" "351" */
"linux" "352"
} "Games"
"RemovePlayerItem" {
{ /* Age of Chivalry */
"windows" "239" "ageofchivalry"
"linux" "240" {
} "Offsets"
"Weapon_GetSlot" {
{ "GiveNamedItem"
"windows" "237" {
"linux" "238" "windows" "351"
} "linux" "352"
"Ignite" }
{ "RemovePlayerItem"
"windows" "194" {
"linux" "195" "windows" "239"
} "linux" "240"
"Extinguish" }
{ "Weapon_GetSlot"
"windows" "198" {
"linux" "199" "windows" "237"
} "linux" "238"
"Teleport" }
{ "Ignite"
"windows" "101" {
"linux" "102" "windows" "194"
} "linux" "195"
"CommitSuicide" }
{ "Extinguish"
"windows" "389" {
"linux" "389" "windows" "198"
} "linux" "199"
"GetVelocity" }
{ "Teleport"
"windows" "130" {
"linux" "131" "windows" "101"
} "linux" "102"
"EyeAngles" }
{ "CommitSuicide"
"windows" "122" {
"linux" "123" "windows" "389"
} "linux" "389"
"AcceptInput" }
{ "GetVelocity"
"windows" "34" {
"linux" "35" "windows" "130"
} "linux" "131"
"DispatchKeyValue" }
{ "EyeAngles"
"windows" "29" {
"linux" "28" "windows" "122"
} "linux" "123"
"DispatchKeyValueFloat" }
{ "AcceptInput"
"windows" "28" {
"linux" "29" "windows" "34"
} "linux" "35"
"DispatchKeyValueVector" }
{ "DispatchKeyValue"
"windows" "27" {
"linux" "30" "windows" "29"
} "linux" "28"
"SetEntityModel" }
{ "DispatchKeyValueFloat"
"windows" "23" {
"linux" "24" "windows" "28"
} "linux" "29"
"WeaponEquip" }
{ "DispatchKeyValueVector"
"windows" "230" {
"linux" "231" "windows" "27"
} "linux" "30"
"Activate" }
{ "SetEntityModel"
"windows" "31" {
"linux" "32" "windows" "23"
} "linux" "24"
} }
} "WeaponEquip"
} {
"windows" "230"
"linux" "231"
}
"Activate"
{
"windows" "31"
"linux" "32"
}
}
}
}

View File

@ -1,98 +1,109 @@
"Games" /**
{ * Do not edit this file. Any changes will be overwritten by the gamedata
/* Counter-Strike: Source */ * updater or by upgrading your SourceMod install.
"cstrike" *
{ * To override data in this file, create a subdirectory named "custom" and
"Keys" * place your own gamedata file(s) inside of it. Such files will be parsed
{ * after SM's own.
"SlapSoundCount" "3" *
"SlapSound1" "player/damage1.wav" * For more information, see http://wiki.alliedmods.net/Gamedata_Updating_(SourceMod)
"SlapSound2" "player/damage2.wav" */
"SlapSound3" "player/damage3.wav"
} "Games"
{
"Offsets" /* Counter-Strike: Source */
{ "cstrike"
"GiveNamedItem" {
{ "Keys"
"windows" "329" {
"linux" "330" "SlapSoundCount" "3"
} "SlapSound1" "player/damage1.wav"
"RemovePlayerItem" "SlapSound2" "player/damage2.wav"
{ "SlapSound3" "player/damage3.wav"
"windows" "226" }
"linux" "227"
} "Offsets"
"Weapon_GetSlot" {
{ "GiveNamedItem"
"windows" "224" {
"linux" "225" "windows" "329"
} "linux" "330"
"Ignite" }
{ "RemovePlayerItem"
"windows" "188" {
"linux" "189" "windows" "226"
} "linux" "227"
"Extinguish" }
{ "Weapon_GetSlot"
"windows" "189" {
"linux" "190" "windows" "224"
} "linux" "225"
"Teleport" }
{ "Ignite"
"windows" "98" {
"linux" "99" "windows" "188"
} "linux" "189"
"CommitSuicide" }
{ "Extinguish"
"windows" "357" {
"linux" "358" "windows" "189"
} "linux" "190"
"GetVelocity" }
{ "Teleport"
"windows" "126" {
"linux" "127" "windows" "98"
} "linux" "99"
"EyeAngles" }
{ "CommitSuicide"
"windows" "118" {
"linux" "119" "windows" "357"
} "linux" "358"
"AcceptInput" }
{ "GetVelocity"
"windows" "35" {
"linux" "36" "windows" "126"
} "linux" "127"
"DispatchKeyValue" }
{ "EyeAngles"
"windows" "31" {
"linux" "30" "windows" "118"
} "linux" "119"
"DispatchKeyValueFloat" }
{ "AcceptInput"
"windows" "30" {
"linux" "31" "windows" "35"
} "linux" "36"
"DispatchKeyValueVector" }
{ "DispatchKeyValue"
"windows" "29" {
"linux" "32" "windows" "31"
} "linux" "30"
"SetEntityModel" }
{ "DispatchKeyValueFloat"
"windows" "25" {
"linux" "26" "windows" "30"
} "linux" "31"
"WeaponEquip" }
{ "DispatchKeyValueVector"
"windows" "217" {
"linux" "218" "windows" "29"
} "linux" "32"
"Activate" }
{ "SetEntityModel"
"windows" "32" {
"linux" "33" "windows" "25"
} "linux" "26"
} }
} "WeaponEquip"
{
"windows" "217"
"linux" "218"
}
"Activate"
{
"windows" "32"
"linux" "33"
}
}
}
} }

View File

@ -1,90 +1,101 @@
"Games" /**
{ * Do not edit this file. Any changes will be overwritten by the gamedata
/* Day of Defeat: Source */ * updater or by upgrading your SourceMod install.
"dod" *
{ * To override data in this file, create a subdirectory named "custom" and
"Offsets" * place your own gamedata file(s) inside of it. Such files will be parsed
{ * after SM's own.
"GiveNamedItem" *
{ * For more information, see http://wiki.alliedmods.net/Gamedata_Updating_(SourceMod)
"windows" "350" */
"linux" "351"
} "Games"
"RemovePlayerItem" {
{ /* Day of Defeat: Source */
"windows" "238" "dod"
"linux" "239" {
} "Offsets"
"Weapon_GetSlot" {
{ "GiveNamedItem"
"windows" "236" {
"linux" "237" "windows" "350"
} "linux" "351"
"Ignite" }
{ "RemovePlayerItem"
"windows" "193" {
"linux" "194" "windows" "238"
} "linux" "239"
"Extinguish" }
{ "Weapon_GetSlot"
"windows" "197" {
"linux" "198" "windows" "236"
} "linux" "237"
"Teleport" }
{ "Ignite"
"windows" "100" {
"linux" "101" "windows" "193"
} "linux" "194"
"CommitSuicide" }
{ "Extinguish"
"windows" "390" {
"linux" "390" "windows" "197"
} "linux" "198"
"GetVelocity" }
{ "Teleport"
"windows" "130" {
"linux" "131" "windows" "100"
} "linux" "101"
"EyeAngles" }
{ "CommitSuicide"
"windows" "122" {
"linux" "123" "windows" "390"
} "linux" "390"
"AcceptInput" }
{ "GetVelocity"
"windows" "34" {
"linux" "35" "windows" "130"
} "linux" "131"
"DispatchKeyValue" }
{ "EyeAngles"
"windows" "29" {
"linux" "28" "windows" "122"
} "linux" "123"
"DispatchKeyValueFloat" }
{ "AcceptInput"
"windows" "28" {
"linux" "29" "windows" "34"
} "linux" "35"
"DispatchKeyValueVector" }
{ "DispatchKeyValue"
"windows" "27" {
"linux" "30" "windows" "29"
} "linux" "28"
"SetEntityModel" }
{ "DispatchKeyValueFloat"
"windows" "23" {
"linux" "24" "windows" "28"
} "linux" "29"
"WeaponEquip" }
{ "DispatchKeyValueVector"
"windows" "229" {
"linux" "230" "windows" "27"
} "linux" "30"
"Activate" }
{ "SetEntityModel"
"windows" "31" {
"linux" "32" "windows" "23"
} "linux" "24"
} }
} "WeaponEquip"
} {
"windows" "229"
"linux" "230"
}
"Activate"
{
"windows" "31"
"linux" "32"
}
}
}
}

View File

@ -1,125 +1,136 @@
"Games" /**
{ * Do not edit this file. Any changes will be overwritten by the gamedata
/* Dsytopia */ * updater or by upgrading your SourceMod install.
"!Dystopia" *
{ * To override data in this file, create a subdirectory named "custom" and
* place your own gamedata file(s) inside of it. Such files will be parsed
"Offsets" * after SM's own.
{ *
/* CBasePlayer */ * For more information, see http://wiki.alliedmods.net/Gamedata_Updating_(SourceMod)
"GiveNamedItem" */
{
"windows" "331" "Games"
"linux" "332" {
} /* Dsytopia */
"RemovePlayerItem" "!Dystopia"
{ {
"windows" "229"
"linux" "230" "Offsets"
} {
"Weapon_GetSlot" /* CBasePlayer */
{ "GiveNamedItem"
"windows" "227" {
"linux" "228" "windows" "331"
} "linux" "332"
"Ignite" }
{ "RemovePlayerItem"
"windows" "191" {
"linux" "192" "windows" "229"
} "linux" "230"
"Extinguish" }
{ "Weapon_GetSlot"
"windows" "192" {
"linux" "193" "windows" "227"
} "linux" "228"
"Teleport" }
{ "Ignite"
"windows" "100" {
"linux" "101" "windows" "191"
} "linux" "192"
"CommitSuicide" }
{ "Extinguish"
"windows" "360" {
"linux" "361" "windows" "192"
} "linux" "193"
"GetVelocity" }
{ "Teleport"
"windows" "128" {
"linux" "129" "windows" "100"
} "linux" "101"
"EyeAngles" }
{ "CommitSuicide"
"windows" "120" {
"linux" "121" "windows" "360"
} "linux" "361"
"AcceptInput" }
{ "GetVelocity"
"windows" "35" {
"linux" "36" "windows" "128"
} "linux" "129"
"DispatchKeyValue" }
{ "EyeAngles"
"windows" "31" {
"linux" "30" "windows" "120"
} "linux" "121"
"DispatchKeyValueFloat" }
{ "AcceptInput"
"windows" "30" {
"linux" "31" "windows" "35"
} "linux" "36"
"DispatchKeyValueVector" }
{ "DispatchKeyValue"
"windows" "29" {
"linux" "32" "windows" "31"
} "linux" "30"
"SetEntityModel" }
{ "DispatchKeyValueFloat"
"windows" "25" {
"linux" "26" "windows" "30"
} "linux" "31"
"WeaponEquip" }
{ "DispatchKeyValueVector"
"windows" "220" {
"linux" "221" "windows" "29"
} "linux" "32"
"Activate" }
{ "SetEntityModel"
"windows" "32" {
"linux" "33" "windows" "25"
} "linux" "26"
}
/* Offset into CBaseTempEntity constructor. "WeaponEquip"
* On Windows Dsytopia is heavily inlined; we use the function {
* surrounding "aCouldnTFindTem" in IDA instead. "windows" "220"
*/ "linux" "221"
"s_pTempEntities" }
{ "Activate"
"windows" "70" {
} "windows" "32"
} "linux" "33"
}
"Signatures"
{ /* Offset into CBaseTempEntity constructor.
/* On Windows Dsytopia is heavily inlined; we use the function * On Windows Dsytopia is heavily inlined; we use the function
* surrounding "aCouldnTFindTem" in IDA instead. * surrounding "aCouldnTFindTem" in IDA instead.
*/ */
"CBaseTempEntity" "s_pTempEntities"
{ {
"library" "server" "windows" "70"
"windows" "\x81\xEC\x84\x00\x00\x00\x56\x8B\xF1\x8B\x46\x6C\x57\x8D\x7E\x6C\x8D\x4C\x24\x08\x83\xC8\x20\x51\x89\x44\x24\x0C\xE8\x2A\x2A\x2A" }
} }
/* Dystopia always has to be different, doesn't it "Signatures"
* {
* This is very similar to the general signature, except that /* On Windows Dsytopia is heavily inlined; we use the function
* it does "mov edx, [eax+2Ch]" before making a call rather than * surrounding "aCouldnTFindTem" in IDA instead.
* doing "call dword ptr [eax+2Ch]" */
*/ "CBaseTempEntity"
"CreateGameRulesObject" {
{ "library" "server"
"library" "server" "windows" "\x81\xEC\x84\x00\x00\x00\x56\x8B\xF1\x8B\x46\x6C\x57\x8D\x7E\x6C\x8D\x4C\x24\x08\x83\xC8\x20\x51\x89\x44\x24\x0C\xE8\x2A\x2A\x2A"
"windows" "\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x2A\x8B\x01\x8B\x50\x2A\x6A\x01\xFF\xD2" }
}
} /* Dystopia always has to be different, doesn't it
} *
* This is very similar to the general signature, except that
* it does "mov edx, [eax+2Ch]" before making a call rather than
* doing "call dword ptr [eax+2Ch]"
*/
"CreateGameRulesObject"
{
"library" "server"
"windows" "\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x2A\x8B\x01\x8B\x50\x2A\x6A\x01\xFF\xD2"
}
}
}
} }

View File

@ -1,106 +1,117 @@
"Games" /**
{ * Do not edit this file. Any changes will be overwritten by the gamedata
/* Empires 2 */ * updater or by upgrading your SourceMod install.
"empires" *
{ * To override data in this file, create a subdirectory named "custom" and
* place your own gamedata file(s) inside of it. Such files will be parsed
"Offsets" * after SM's own.
{ *
"GiveNamedItem" * For more information, see http://wiki.alliedmods.net/Gamedata_Updating_(SourceMod)
{ */
"windows" "332"
"linux" "333" "Games"
} {
"RemovePlayerItem" /* Empires 2 */
{ "empires"
"windows" "230" {
"linux" "231"
} "Offsets"
"Weapon_GetSlot" {
{ "GiveNamedItem"
"windows" "228" {
"linux" "229" "windows" "332"
} "linux" "333"
"Ignite" }
{ "RemovePlayerItem"
"windows" "192" {
"linux" "193" "windows" "230"
} "linux" "231"
"Extinguish" }
{ "Weapon_GetSlot"
"windows" "193" {
"linux" "194" "windows" "228"
} "linux" "229"
"Teleport" }
{ "Ignite"
"windows" "102" {
"linux" "103" "windows" "192"
} "linux" "193"
"CommitSuicide" }
{ "Extinguish"
"windows" "360" {
"linux" "361" "windows" "193"
} "linux" "194"
"GetVelocity" }
{ "Teleport"
"windows" "130" {
"linux" "131" "windows" "102"
} "linux" "103"
"EyeAngles" }
{ "CommitSuicide"
"windows" "122" {
"linux" "123" "windows" "360"
} "linux" "361"
"AcceptInput" }
{ "GetVelocity"
"windows" "36" {
"linux" "37" "windows" "130"
} "linux" "131"
"DispatchKeyValue" }
{ "EyeAngles"
"windows" "31" {
"linux" "30" "windows" "122"
} "linux" "123"
"DispatchKeyValueFloat" }
{ "AcceptInput"
"windows" "30" {
"linux" "31" "windows" "36"
} "linux" "37"
"DispatchKeyValueVector" }
{ "DispatchKeyValue"
"windows" "29" {
"linux" "32" "windows" "31"
} "linux" "30"
"SetEntityModel" }
{ "DispatchKeyValueFloat"
"windows" "25" {
"linux" "26" "windows" "30"
} "linux" "31"
"WeaponEquip" }
{ "DispatchKeyValueVector"
"windows" "221" {
"linux" "222" "windows" "29"
} "linux" "32"
"Activate" }
{ "SetEntityModel"
"windows" "32" {
"linux" "33" "windows" "25"
} "linux" "26"
}
/* Offset into LevelShutdown for CGlobalEntList */ "WeaponEquip"
"gEntList" {
{ "windows" "221"
"windows" "64" "linux" "222"
} }
} "Activate"
{
"Signatures" "windows" "32"
{ "linux" "33"
"LevelShutdown" }
{
"library" "server" /* Offset into LevelShutdown for CGlobalEntList */
"windows" "\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x2B\x56\xE8\x2A\x2A\x2A\x2A\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x8B\xF1\x74\x0E" "gEntList"
} {
} "windows" "64"
} }
}
"Signatures"
{
"LevelShutdown"
{
"library" "server"
"windows" "\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x2B\x56\xE8\x2A\x2A\x2A\x2A\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x8B\xF1\x74\x0E"
}
}
}
} }

View File

@ -1,114 +1,125 @@
"Games" /**
{ * Do not edit this file. Any changes will be overwritten by the gamedata
/* Fortress Forever */ * updater or by upgrading your SourceMod install.
"FortressForever" *
{ * To override data in this file, create a subdirectory named "custom" and
"Offsets" * place your own gamedata file(s) inside of it. Such files will be parsed
{ * after SM's own.
"GiveNamedItem" *
{ * For more information, see http://wiki.alliedmods.net/Gamedata_Updating_(SourceMod)
"windows" "338" */
"linux" "339"
} "Games"
"RemovePlayerItem" {
{ /* Fortress Forever */
"windows" "236" "FortressForever"
"linux" "237" {
} "Offsets"
"Weapon_GetSlot" {
{ "GiveNamedItem"
"windows" "234" {
"linux" "235" "windows" "338"
} "linux" "339"
"Ignite" }
{ "RemovePlayerItem"
"windows" "198" {
"linux" "199" "windows" "236"
} "linux" "237"
"Extinguish" }
{ "Weapon_GetSlot"
"windows" "199" {
"linux" "200" "windows" "234"
} "linux" "235"
"Teleport" }
{ "Ignite"
"windows" "104" {
"linux" "105" "windows" "198"
} "linux" "199"
"CommitSuicide" }
{ "Extinguish"
"windows" "366" {
"linux" "367" "windows" "199"
} "linux" "200"
"GetVelocity" }
{ "Teleport"
"windows" "136" {
"linux" "137" "windows" "104"
} "linux" "105"
"EyeAngles" }
{ "CommitSuicide"
"windows" "128" {
"linux" "129" "windows" "366"
} "linux" "367"
"AcceptInput" }
{ "GetVelocity"
"windows" "39" {
"linux" "40" "windows" "136"
} "linux" "137"
"DispatchKeyValue" }
{ "EyeAngles"
"windows" "35" {
"linux" "34" "windows" "128"
} "linux" "129"
"DispatchKeyValueFloat" }
{ "AcceptInput"
"windows" "34" {
"linux" "35" "windows" "39"
} "linux" "40"
"DispatchKeyValueVector" }
{ "DispatchKeyValue"
"windows" "33" {
"linux" "36" "windows" "35"
} "linux" "34"
"SetEntityModel" }
{ "DispatchKeyValueFloat"
"windows" "27" {
"linux" "28" "windows" "34"
} "linux" "35"
"WeaponEquip" }
{ "DispatchKeyValueVector"
"windows" "227" {
"linux" "228" "windows" "33"
} "linux" "36"
"Activate" }
{ "SetEntityModel"
"windows" "36" {
"linux" "37" "windows" "27"
} "linux" "28"
} }
"WeaponEquip"
"Signatures" {
{ "windows" "227"
"CreateGameRulesObject" "linux" "228"
{ }
"library" "server" "Activate"
"windows" "8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x09\x8B\x01\x8B\x50\x2C\x6A\x01" {
} "windows" "36"
"FindEntityByClassname" "linux" "37"
{ }
"library" "server" }
"windows" "\x53\x55\x56\x8B\xF1\x8B\x4C\x24\x10\x85\xC9\x57\x74\x19\x8B\x01\x8B\x50\x08\xFF\xD2\x8B\x00\x25\xFF\x0F\x00\x00\x83\xC0\x01\xC1\xE0\x04\x8B\x3C\x30\xEB\x06\x8B\xBE\x04\x00\x01\x00\x85\xFF\x74\x39\x8B\x5C\x24\x18\x8B\x2D\x2A\x2A\x2A\x2A\xEB\x03"
} "Signatures"
"DispatchSpawn" {
{ "CreateGameRulesObject"
"library" "server" {
"windows" "\x53\x55\x56\x8B\x74\x24\x10\x85\xF6\x57\x0F\x84\x2A\x2A\x2A\x2A\x8B\x1D\x2A\x2A\x2A\x2A\x8B\x03\x8B\x50\x60\x8B\xCB" "library" "server"
} "windows" "8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x09\x8B\x01\x8B\x50\x2C\x6A\x01"
"CreateEntityByName" }
{ "FindEntityByClassname"
"library" "server" {
"windows" "\x56\x8B\x74\x24\x0C\x83\xFE\xFF\x57\x8B\x7C\x24\x0C\x74\x27\x8B\x0D\x2A\x2A\x2A\x2A\x8B\x01\x8B\x50\x54\x56\xFF\xD2" "library" "server"
} "windows" "\x53\x55\x56\x8B\xF1\x8B\x4C\x24\x10\x85\xC9\x57\x74\x19\x8B\x01\x8B\x50\x08\xFF\xD2\x8B\x00\x25\xFF\x0F\x00\x00\x83\xC0\x01\xC1\xE0\x04\x8B\x3C\x30\xEB\x06\x8B\xBE\x04\x00\x01\x00\x85\xFF\x74\x39\x8B\x5C\x24\x18\x8B\x2D\x2A\x2A\x2A\x2A\xEB\x03"
} }
} "DispatchSpawn"
{
"library" "server"
"windows" "\x53\x55\x56\x8B\x74\x24\x10\x85\xF6\x57\x0F\x84\x2A\x2A\x2A\x2A\x8B\x1D\x2A\x2A\x2A\x2A\x8B\x03\x8B\x50\x60\x8B\xCB"
}
"CreateEntityByName"
{
"library" "server"
"windows" "\x56\x8B\x74\x24\x0C\x83\xFE\xFF\x57\x8B\x7C\x24\x0C\x74\x27\x8B\x0D\x2A\x2A\x2A\x2A\x8B\x01\x8B\x50\x54\x56\xFF\xD2"
}
}
}
} }

View File

@ -1,66 +1,77 @@
"Games" /**
{ * Do not edit this file. Any changes will be overwritten by the gamedata
/* Garry's Mod 10 - Windows only * updater or by upgrading your SourceMod install.
* This mod is not officially supported, and the definitions are *
* for Garry's Mod pre-Orange Box. * To override data in this file, create a subdirectory named "custom" and
* (credits: Damaged Soul) * place your own gamedata file(s) inside of it. Such files will be parsed
*/ * after SM's own.
"garrysmod" *
{ * For more information, see http://wiki.alliedmods.net/Gamedata_Updating_(SourceMod)
"Offsets" */
{
"GiveNamedItem" "Games"
{ {
"windows" "366" /* Garry's Mod 10 - Windows only
} * This mod is not officially supported, and the definitions are
"RemovePlayerItem" * for Garry's Mod pre-Orange Box.
{ * (credits: Damaged Soul)
"windows" "264" */
} "garrysmod"
"Weapon_GetSlot" {
{ "Offsets"
"windows" "262" {
} "GiveNamedItem"
"Ignite" {
{ "windows" "366"
"windows" "220" }
} "RemovePlayerItem"
"Extinguish" {
{ "windows" "264"
"windows" "221" }
} "Weapon_GetSlot"
"Teleport" {
{ "windows" "262"
"windows" "99" }
} "Ignite"
"CommitSuicide" {
{ "windows" "220"
"windows" "394" }
} "Extinguish"
"GetVelocity" {
{ "windows" "221"
"windows" "127" }
} "Teleport"
"EyeAngles" {
{ "windows" "99"
"windows" "119" }
} "CommitSuicide"
"AcceptInput" {
{ "windows" "394"
"windows" "35" }
} "GetVelocity"
"DispatchKeyValue" {
{ "windows" "127"
"windows" "31" }
} "EyeAngles"
"DispatchKeyValueFloat" {
{ "windows" "119"
"windows" "30" }
} "AcceptInput"
"DispatchKeyValueVector" {
{ "windows" "35"
"windows" "29" }
} "DispatchKeyValue"
} {
} "windows" "31"
}
"DispatchKeyValueFloat"
{
"windows" "30"
}
"DispatchKeyValueVector"
{
"windows" "29"
}
}
}
} }

View File

@ -1,101 +1,112 @@
"Games" /**
{ * Do not edit this file. Any changes will be overwritten by the gamedata
/* Hidden:Source Beta 4b */ * updater or by upgrading your SourceMod install.
"hidden" *
{ * To override data in this file, create a subdirectory named "custom" and
"Offsets" * place your own gamedata file(s) inside of it. Such files will be parsed
{ * after SM's own.
/* CBasePlayer */ *
"GiveNamedItem" * For more information, see http://wiki.alliedmods.net/Gamedata_Updating_(SourceMod)
{ */
"windows" "348"
"linux" "349" "Games"
} {
"RemovePlayerItem" /* Hidden:Source Beta 4b */
{ "hidden"
"windows" "207" {
"linux" "208" "Offsets"
} {
"Weapon_GetSlot" /* CBasePlayer */
{ "GiveNamedItem"
"windows" "205" {
"linux" "206" "windows" "348"
} "linux" "349"
"Ignite" }
{ "RemovePlayerItem"
"windows" "170" {
"linux" "171" "windows" "207"
} "linux" "208"
"Extinguish" }
{ "Weapon_GetSlot"
"windows" "171" {
"linux" "172" "windows" "205"
} "linux" "206"
"Teleport" }
{ "Ignite"
"windows" "90" {
"linux" "91" "windows" "170"
} "linux" "171"
"GetVelocity" }
{ "Extinguish"
"windows" "114" {
"linux" "115" "windows" "171"
} "linux" "172"
"EyeAngles" }
{ "Teleport"
"windows" "106" {
"linux" "107" "windows" "90"
} "linux" "91"
"DispatchKeyValue" }
{ "GetVelocity"
"windows" "30" {
"linux" "29" "windows" "114"
} "linux" "115"
"DispatchKeyValueFloat" }
{ "EyeAngles"
"windows" "29" {
"linux" "30" "windows" "106"
} "linux" "107"
"DispatchKeyValueVector" }
{ "DispatchKeyValue"
"windows" "28" {
"linux" "31" "windows" "30"
} "linux" "29"
"AcceptInput" }
{ "DispatchKeyValueFloat"
"windows" "34" {
"linux" "35" "windows" "29"
} "linux" "30"
"SetEntityModel" }
{ "DispatchKeyValueVector"
"windows" "25" {
"linux" "26" "windows" "28"
} "linux" "31"
"Activate" }
{ "AcceptInput"
"windows" "32" {
"linux" "33" "windows" "34"
} "linux" "35"
"TE_GetServerClass" }
{ "SetEntityModel"
"windows" "0" {
"linux" "0" "windows" "25"
} "linux" "26"
"WeaponEquip" }
{ "Activate"
"windows" "198" {
"linux" "199" "windows" "32"
} "linux" "33"
} }
"TE_GetServerClass"
"Signatures" {
{ "windows" "0"
"DispatchSpawn" "linux" "0"
{ }
"library" "server" "WeaponEquip"
"linux" "@_Z13DispatchSpawnP11CBaseEntity" {
"windows" "\x53\x56\x8B\x74\x24\x0C\x85\xF6\x57\x0F\x84\x2A\x2A\x2A\x2A\x8B\x1D\x2A\x2A\x2A\x2A\x8B\x03\x8B\xCB\xFF\x50\x14" "windows" "198"
} "linux" "199"
} }
} }
"Signatures"
{
"DispatchSpawn"
{
"library" "server"
"linux" "@_Z13DispatchSpawnP11CBaseEntity"
"windows" "\x53\x56\x8B\x74\x24\x0C\x85\xF6\x57\x0F\x84\x2A\x2A\x2A\x2A\x8B\x1D\x2A\x2A\x2A\x2A\x8B\x03\x8B\xCB\xFF\x50\x14"
}
}
}
} }

View File

@ -1,90 +1,101 @@
"Games" /**
{ * Do not edit this file. Any changes will be overwritten by the gamedata
/* Half-Life 2: Deathmatch */ * updater or by upgrading your SourceMod install.
"hl2mp" *
{ * To override data in this file, create a subdirectory named "custom" and
"Offsets" * place your own gamedata file(s) inside of it. Such files will be parsed
{ * after SM's own.
"GiveNamedItem" *
{ * For more information, see http://wiki.alliedmods.net/Gamedata_Updating_(SourceMod)
"windows" "328" */
"linux" "329"
} "Games"
"RemovePlayerItem" {
{ /* Half-Life 2: Deathmatch */
"windows" "226" "hl2mp"
"linux" "227" {
} "Offsets"
"Weapon_GetSlot" {
{ "GiveNamedItem"
"windows" "224" {
"linux" "225" "windows" "328"
} "linux" "329"
"Ignite" }
{ "RemovePlayerItem"
"windows" "188" {
"linux" "189" "windows" "226"
} "linux" "227"
"Extinguish" }
{ "Weapon_GetSlot"
"windows" "189" {
"linux" "190" "windows" "224"
} "linux" "225"
"Teleport" }
{ "Ignite"
"windows" "98" {
"linux" "99" "windows" "188"
} "linux" "189"
"CommitSuicide" }
{ "Extinguish"
"windows" "356" {
"linux" "357" "windows" "189"
} "linux" "190"
"GetVelocity" }
{ "Teleport"
"windows" "126" {
"linux" "127" "windows" "98"
} "linux" "99"
"EyeAngles" }
{ "CommitSuicide"
"windows" "118" {
"linux" "119" "windows" "356"
} "linux" "357"
"AcceptInput" }
{ "GetVelocity"
"windows" "35" {
"linux" "36" "windows" "126"
} "linux" "127"
"DispatchKeyValue" }
{ "EyeAngles"
"windows" "31" {
"linux" "30" "windows" "118"
} "linux" "119"
"DispatchKeyValueFloat" }
{ "AcceptInput"
"windows" "30" {
"linux" "31" "windows" "35"
} "linux" "36"
"DispatchKeyValueVector" }
{ "DispatchKeyValue"
"windows" "29" {
"linux" "32" "windows" "31"
} "linux" "30"
"SetEntityModel" }
{ "DispatchKeyValueFloat"
"windows" "25" {
"linux" "26" "windows" "30"
} "linux" "31"
"WeaponEquip" }
{ "DispatchKeyValueVector"
"windows" "217" {
"linux" "218" "windows" "29"
} "linux" "32"
"Activate" }
{ "SetEntityModel"
"windows" "32" {
"linux" "33" "windows" "25"
} "linux" "26"
} }
} "WeaponEquip"
{
"windows" "217"
"linux" "218"
}
"Activate"
{
"windows" "32"
"linux" "33"
}
}
}
} }

View File

@ -1,76 +1,87 @@
"Games" /**
{ * Do not edit this file. Any changes will be overwritten by the gamedata
/* Insurgency */ * updater or by upgrading your SourceMod install.
"insurgency" *
{ * To override data in this file, create a subdirectory named "custom" and
"Offsets" * place your own gamedata file(s) inside of it. Such files will be parsed
{ * after SM's own.
/* CBasePlayer */ *
"Ignite" * For more information, see http://wiki.alliedmods.net/Gamedata_Updating_(SourceMod)
{ */
"windows" "174"
"linux" "175" "Games"
} {
"Extinguish" /* Insurgency */
{ "insurgency"
"windows" "175" {
"linux" "176" "Offsets"
} {
"Teleport" /* CBasePlayer */
{ "Ignite"
"windows" "90" {
"linux" "91" "windows" "174"
} "linux" "175"
"GetVelocity" }
{ "Extinguish"
"windows" "115" {
"linux" "116" "windows" "175"
} "linux" "176"
"EyeAngles" }
{ "Teleport"
"windows" "107" {
"linux" "108" "windows" "90"
} "linux" "91"
"AcceptInput" }
{ "GetVelocity"
"windows" "34" {
"linux" "35" "windows" "115"
} "linux" "116"
"DispatchKeyValue" }
{ "EyeAngles"
"windows" "30" {
"linux" "29" "windows" "107"
} "linux" "108"
"DispatchKeyValueFloat" }
{ "AcceptInput"
"windows" "29" {
"linux" "30" "windows" "34"
} "linux" "35"
"DispatchKeyValueVector" }
{ "DispatchKeyValue"
"windows" "28" {
"linux" "31" "windows" "30"
} "linux" "29"
"SetEntityModel" }
{ "DispatchKeyValueFloat"
"windows" "24" {
"linux" "25" "windows" "29"
} "linux" "30"
"WeaponEquip" }
{ "DispatchKeyValueVector"
"windows" "215" {
"linux" "216" "windows" "28"
} "linux" "31"
"Activate" }
{ "SetEntityModel"
"windows" "31" {
"linux" "32" "windows" "24"
} "linux" "25"
"CommitSuicide" }
{ "WeaponEquip"
"windows" "288" {
"linux" "289" "windows" "215"
} "linux" "216"
} }
} "Activate"
{
"windows" "31"
"linux" "32"
}
"CommitSuicide"
{
"windows" "288"
"linux" "289"
}
}
}
} }

View File

@ -1,90 +1,101 @@
"Games" /**
{ * Do not edit this file. Any changes will be overwritten by the gamedata
/* Obsidian Conflict 1.3 */ * updater or by upgrading your SourceMod install.
"obsidian" *
{ * To override data in this file, create a subdirectory named "custom" and
"Offsets" * place your own gamedata file(s) inside of it. Such files will be parsed
{ * after SM's own.
"GiveNamedItem" *
{ * For more information, see http://wiki.alliedmods.net/Gamedata_Updating_(SourceMod)
"windows" "350" */
"linux" "351"
} "Games"
"RemovePlayerItem" {
{ /* Obsidian Conflict 1.3 */
"windows" "237" "obsidian"
"linux" "238" {
} "Offsets"
"Weapon_GetSlot" {
{ "GiveNamedItem"
"windows" "235" {
"linux" "236" "windows" "350"
} "linux" "351"
"Ignite" }
{ "RemovePlayerItem"
"windows" "190" {
"linux" "191" "windows" "237"
} "linux" "238"
"Extinguish" }
{ "Weapon_GetSlot"
"windows" "194" {
"linux" "195" "windows" "235"
} "linux" "236"
"Teleport" }
{ "Ignite"
"windows" "100" {
"linux" "101" "windows" "190"
} "linux" "191"
"CommitSuicide" }
{ "Extinguish"
"windows" "395" {
"linux" "395" "windows" "194"
} "linux" "195"
"GetVelocity" }
{ "Teleport"
"windows" "127" {
"linux" "128" "windows" "100"
} "linux" "101"
"EyeAngles" }
{ "CommitSuicide"
"windows" "119" {
"linux" "120" "windows" "395"
} "linux" "395"
"AcceptInput" }
{ "GetVelocity"
"windows" "34" {
"linux" "35" "windows" "127"
} "linux" "128"
"DispatchKeyValue" }
{ "EyeAngles"
"windows" "29" {
"linux" "28" "windows" "119"
} "linux" "120"
"DispatchKeyValueFloat" }
{ "AcceptInput"
"windows" "28" {
"linux" "29" "windows" "34"
} "linux" "35"
"DispatchKeyValueVector" }
{ "DispatchKeyValue"
"windows" "27" {
"linux" "30" "windows" "29"
} "linux" "28"
"SetEntityModel" }
{ "DispatchKeyValueFloat"
"windows" "23" {
"linux" "24" "windows" "28"
} "linux" "29"
"WeaponEquip" }
{ "DispatchKeyValueVector"
"windows" "228" {
"linux" "229" "windows" "27"
} "linux" "30"
"Activate" }
{ "SetEntityModel"
"windows" "31" {
"linux" "32" "windows" "23"
} "linux" "24"
} }
} "WeaponEquip"
} {
"windows" "228"
"linux" "229"
}
"Activate"
{
"windows" "31"
"linux" "32"
}
}
}
}

View File

@ -1,91 +1,102 @@
"Games" /**
{ * Do not edit this file. Any changes will be overwritten by the gamedata
/* Pirates, Vikings and Knights II */ * updater or by upgrading your SourceMod install.
"pvkii" *
{ * To override data in this file, create a subdirectory named "custom" and
"Offsets" * place your own gamedata file(s) inside of it. Such files will be parsed
{ * after SM's own.
/* CBasePlayer */ *
"GiveNamedItem" * For more information, see http://wiki.alliedmods.net/Gamedata_Updating_(SourceMod)
{ */
"windows" "328"
"linux" "329" "Games"
} {
"RemovePlayerItem" /* Pirates, Vikings and Knights II */
{ "pvkii"
"windows" "226" {
"linux" "227" "Offsets"
} {
"Weapon_GetSlot" /* CBasePlayer */
{ "GiveNamedItem"
"windows" "224" {
"linux" "225" "windows" "328"
} "linux" "329"
"Ignite" }
{ "RemovePlayerItem"
"windows" "188" {
"linux" "189" "windows" "226"
} "linux" "227"
"Extinguish" }
{ "Weapon_GetSlot"
"windows" "189" {
"linux" "190" "windows" "224"
} "linux" "225"
"Teleport" }
{ "Ignite"
"windows" "98" {
"linux" "99" "windows" "188"
} "linux" "189"
"CommitSuicide" }
{ "Extinguish"
"windows" "356" {
"linux" "357" "windows" "189"
} "linux" "190"
"GetVelocity" }
{ "Teleport"
"windows" "126" {
"linux" "127" "windows" "98"
} "linux" "99"
"EyeAngles" }
{ "CommitSuicide"
"windows" "118" {
"linux" "119" "windows" "356"
} "linux" "357"
"AcceptInput" }
{ "GetVelocity"
"windows" "35" {
"linux" "36" "windows" "126"
} "linux" "127"
"DispatchKeyValue" }
{ "EyeAngles"
"windows" "31" {
"linux" "30" "windows" "118"
} "linux" "119"
"DispatchKeyValueFloat" }
{ "AcceptInput"
"windows" "30" {
"linux" "31" "windows" "35"
} "linux" "36"
"DispatchKeyValueVector" }
{ "DispatchKeyValue"
"windows" "29" {
"linux" "32" "windows" "31"
} "linux" "30"
"SetEntityModel" }
{ "DispatchKeyValueFloat"
"windows" "25" {
"linux" "26" "windows" "30"
} "linux" "31"
"WeaponEquip" }
{ "DispatchKeyValueVector"
"windows" "217" {
"linux" "218" "windows" "29"
} "linux" "32"
"Activate" }
{ "SetEntityModel"
"windows" "32" {
"linux" "33" "windows" "25"
} "linux" "26"
} }
} "WeaponEquip"
{
"windows" "217"
"linux" "218"
}
"Activate"
{
"windows" "32"
"linux" "33"
}
}
}
} }

View File

@ -1,114 +1,125 @@
"Games" /**
{ * Do not edit this file. Any changes will be overwritten by the gamedata
/* The Ship */ * updater or by upgrading your SourceMod install.
"ship" *
{ * To override data in this file, create a subdirectory named "custom" and
"Offsets" * place your own gamedata file(s) inside of it. Such files will be parsed
{ * after SM's own.
/* CBasePlayer */ *
"GiveNamedItem" * For more information, see http://wiki.alliedmods.net/Gamedata_Updating_(SourceMod)
{ */
"windows" "316"
"linux" "317" "Games"
} {
"RemovePlayerItem" /* The Ship */
{ "ship"
"windows" "220" {
"linux" "221" "Offsets"
} {
"Weapon_GetSlot" /* CBasePlayer */
{ "GiveNamedItem"
"windows" "218" {
"linux" "219" "windows" "316"
} "linux" "317"
"Ignite" }
{ "RemovePlayerItem"
"windows" "180" {
"linux" "181" "windows" "220"
} "linux" "221"
"Extinguish" }
{ "Weapon_GetSlot"
"windows" "181" {
"linux" "182" "windows" "218"
} "linux" "219"
"Teleport" }
{ "Ignite"
"windows" "100" {
"linux" "101" "windows" "180"
} "linux" "181"
"CommitSuicide" }
{ "Extinguish"
"windows" "343" {
"linux" "344" "windows" "181"
} "linux" "182"
"GetVelocity" }
{ "Teleport"
"windows" "124" {
"linux" "125" "windows" "100"
} "linux" "101"
"EyeAngles" }
{ "CommitSuicide"
"windows" "116" {
"linux" "117" "windows" "343"
} "linux" "344"
"DispatchKeyValue" }
{ "GetVelocity"
"windows" "35" {
"linux" "34" "windows" "124"
} "linux" "125"
"DispatchKeyValueFloat" }
{ "EyeAngles"
"windows" "34" {
"linux" "35" "windows" "116"
} "linux" "117"
"DispatchKeyValueVector" }
{ "DispatchKeyValue"
"windows" "33" {
"linux" "36" "windows" "35"
} "linux" "34"
"AcceptInput" }
{ "DispatchKeyValueFloat"
"windows" "39" {
"linux" "40" "windows" "34"
} "linux" "35"
"SetEntityModel" }
{ "DispatchKeyValueVector"
"windows" "30" {
"linux" "31" "windows" "33"
} "linux" "36"
"WeaponEquip" }
{ "AcceptInput"
"windows" "211" {
"linux" "212" "windows" "39"
} "linux" "40"
"Activate" }
{ "SetEntityModel"
"windows" "37" {
"linux" "38" "windows" "30"
} "linux" "31"
}
/* Temp Entities */ "WeaponEquip"
"TE_GetServerClass" {
{ "windows" "211"
"windows" "0" "linux" "212"
"linux" "0" }
} "Activate"
} {
"windows" "37"
"Signatures" "linux" "38"
{ }
"DispatchSpawn"
{ /* Temp Entities */
"library" "server" "TE_GetServerClass"
"linux" "@_Z13DispatchSpawnP11CBaseEntity" {
"windows" "\x53\x56\x8B\x74\x24\x0C\x85\xF6\x57\x0F\x84\x2A\x2A\x2A\x2A\x8B\x1D\x2A\x2A\x2A\x2A\x8B\x03\x8B\xCB\xFF\x50\x60\x8B\0x16" "windows" "0"
} "linux" "0"
"CreateEntityByName" }
{ }
"library" "server"
"linux" "@_Z18CreateEntityByNamePKci" "Signatures"
"windows" "\x56\x8B\x74\x24\x0C\x83\xFE\xFF\x57\x8B\x7C\x24\x0C\x74\x25\x8B\x0D\x2A\x2A\x2A\x2A\x8B\x01\x56\xFF\x50\x54\x85\xC0" {
} "DispatchSpawn"
} {
} "library" "server"
"linux" "@_Z13DispatchSpawnP11CBaseEntity"
"windows" "\x53\x56\x8B\x74\x24\x0C\x85\xF6\x57\x0F\x84\x2A\x2A\x2A\x2A\x8B\x1D\x2A\x2A\x2A\x2A\x8B\x03\x8B\xCB\xFF\x50\x60\x8B\0x16"
}
"CreateEntityByName"
{
"library" "server"
"linux" "@_Z18CreateEntityByNamePKci"
"windows" "\x56\x8B\x74\x24\x0C\x83\xFE\xFF\x57\x8B\x7C\x24\x0C\x74\x25\x8B\x0D\x2A\x2A\x2A\x2A\x8B\x01\x56\xFF\x50\x54\x85\xC0"
}
}
}
} }

View File

@ -1,91 +1,102 @@
"Games" /**
{ * Do not edit this file. Any changes will be overwritten by the gamedata
/* SourceForts */ * updater or by upgrading your SourceMod install.
"SourceForts" *
{ * To override data in this file, create a subdirectory named "custom" and
"Offsets" * place your own gamedata file(s) inside of it. Such files will be parsed
{ * after SM's own.
/* CBasePlayer */ *
"GiveNamedItem" * For more information, see http://wiki.alliedmods.net/Gamedata_Updating_(SourceMod)
{ */
"windows" "328"
"linux" "329" "Games"
} {
"RemovePlayerItem" /* SourceForts */
{ "SourceForts"
"windows" "226" {
"linux" "227" "Offsets"
} {
"Weapon_GetSlot" /* CBasePlayer */
{ "GiveNamedItem"
"windows" "224" {
"linux" "225" "windows" "328"
} "linux" "329"
"Ignite" }
{ "RemovePlayerItem"
"windows" "188" {
"linux" "189" "windows" "226"
} "linux" "227"
"Extinguish" }
{ "Weapon_GetSlot"
"windows" "189" {
"linux" "190" "windows" "224"
} "linux" "225"
"Teleport" }
{ "Ignite"
"windows" "98" {
"linux" "99" "windows" "188"
} "linux" "189"
"CommitSuicide" }
{ "Extinguish"
"windows" "356" {
"linux" "357" "windows" "189"
} "linux" "190"
"GetVelocity" }
{ "Teleport"
"windows" "126" {
"linux" "127" "windows" "98"
} "linux" "99"
"EyeAngles" }
{ "CommitSuicide"
"windows" "118" {
"linux" "119" "windows" "356"
} "linux" "357"
"DispatchKeyValue" }
{ "GetVelocity"
"windows" "31" {
"linux" "30" "windows" "126"
} "linux" "127"
"DispatchKeyValueFloat" }
{ "EyeAngles"
"windows" "30" {
"linux" "31" "windows" "118"
} "linux" "119"
"DispatchKeyValueVector" }
{ "DispatchKeyValue"
"windows" "29" {
"linux" "32" "windows" "31"
} "linux" "30"
"AcceptInput" }
{ "DispatchKeyValueFloat"
"windows" "35" {
"linux" "36" "windows" "30"
} "linux" "31"
"SetEntityModel" }
{ "DispatchKeyValueVector"
"windows" "25" {
"linux" "26" "windows" "29"
} "linux" "32"
"WeaponEquip" }
{ "AcceptInput"
"windows" "217" {
"linux" "218" "windows" "35"
} "linux" "36"
"Activate" }
{ "SetEntityModel"
"windows" "32" {
"linux" "33" "windows" "25"
} "linux" "26"
} }
} "WeaponEquip"
{
"windows" "217"
"linux" "218"
}
"Activate"
{
"windows" "32"
"linux" "33"
}
}
}
} }

View File

@ -1,91 +1,102 @@
"Games" /**
{ * Do not edit this file. Any changes will be overwritten by the gamedata
/* Synergy Release 1 */ * updater or by upgrading your SourceMod install.
"synergy" *
{ * To override data in this file, create a subdirectory named "custom" and
"Offsets" * place your own gamedata file(s) inside of it. Such files will be parsed
{ * after SM's own.
/* CBasePlayer */ *
"GiveNamedItem" * For more information, see http://wiki.alliedmods.net/Gamedata_Updating_(SourceMod)
{ */
"windows" "334"
"linux" "335" "Games"
} {
"RemovePlayerItem" /* Synergy Release 1 */
{ "synergy"
"windows" "226" {
"linux" "227" "Offsets"
} {
"Weapon_GetSlot" /* CBasePlayer */
{ "GiveNamedItem"
"windows" "224" {
"linux" "225" "windows" "334"
} "linux" "335"
"Ignite" }
{ "RemovePlayerItem"
"windows" "188" {
"linux" "189" "windows" "226"
} "linux" "227"
"Extinguish" }
{ "Weapon_GetSlot"
"windows" "189" {
"linux" "190" "windows" "224"
} "linux" "225"
"Teleport" }
{ "Ignite"
"windows" "98" {
"linux" "99" "windows" "188"
} "linux" "189"
"CommitSuicide" }
{ "Extinguish"
"windows" "362" {
"linux" "363" "windows" "189"
} "linux" "190"
"GetVelocity" }
{ "Teleport"
"windows" "126" {
"linux" "127" "windows" "98"
} "linux" "99"
"EyeAngles" }
{ "CommitSuicide"
"windows" "118" {
"linux" "119" "windows" "362"
} "linux" "363"
"DispatchKeyValue" }
{ "GetVelocity"
"windows" "31" {
"linux" "30" "windows" "126"
} "linux" "127"
"DispatchKeyValueFloat" }
{ "EyeAngles"
"windows" "30" {
"linux" "31" "windows" "118"
} "linux" "119"
"DispatchKeyValueVector" }
{ "DispatchKeyValue"
"windows" "29" {
"linux" "32" "windows" "31"
} "linux" "30"
"AcceptInput" }
{ "DispatchKeyValueFloat"
"windows" "35" {
"linux" "36" "windows" "30"
} "linux" "31"
"SetEntityModel" }
{ "DispatchKeyValueVector"
"windows" "25" {
"linux" "26" "windows" "29"
} "linux" "32"
"WeaponEquip" }
{ "AcceptInput"
"windows" "217" {
"linux" "218" "windows" "35"
} "linux" "36"
"Activate" }
{ "SetEntityModel"
"windows" "32" {
"linux" "33" "windows" "25"
} "linux" "26"
} }
} "WeaponEquip"
{
"windows" "217"
"linux" "218"
}
"Activate"
{
"windows" "32"
"linux" "33"
}
}
}
} }

View File

@ -1,90 +1,101 @@
"Games" /**
{ * Do not edit this file. Any changes will be overwritten by the gamedata
/* Team Fortress 2 */ * updater or by upgrading your SourceMod install.
"tf" *
{ * To override data in this file, create a subdirectory named "custom" and
"Offsets" * place your own gamedata file(s) inside of it. Such files will be parsed
{ * after SM's own.
"GiveNamedItem" *
{ * For more information, see http://wiki.alliedmods.net/Gamedata_Updating_(SourceMod)
"windows" "406" */
"linux" "410"
} "Games"
"RemovePlayerItem" {
{ /* Team Fortress 2 */
"windows" "238" "tf"
"linux" "239" {
} "Offsets"
"Weapon_GetSlot" {
{ "GiveNamedItem"
"windows" "236" {
"linux" "237" "windows" "406"
} "linux" "410"
"Ignite" }
{ "RemovePlayerItem"
"windows" "193" {
"linux" "194" "windows" "238"
} "linux" "239"
"Extinguish" }
{ "Weapon_GetSlot"
"windows" "197" {
"linux" "198" "windows" "236"
} "linux" "237"
"Teleport" }
{ "Ignite"
"windows" "100" {
"linux" "101" "windows" "193"
} "linux" "194"
"CommitSuicide" }
{ "Extinguish"
"windows" "390" {
"linux" "390" "windows" "197"
} "linux" "198"
"GetVelocity" }
{ "Teleport"
"windows" "130" {
"linux" "131" "windows" "100"
} "linux" "101"
"EyeAngles" }
{ "CommitSuicide"
"windows" "122" {
"linux" "123" "windows" "390"
} "linux" "390"
"DispatchKeyValue" }
{ "GetVelocity"
"windows" "29" {
"linux" "28" "windows" "130"
} "linux" "131"
"DispatchKeyValueFloat" }
{ "EyeAngles"
"windows" "28" {
"linux" "29" "windows" "122"
} "linux" "123"
"DispatchKeyValueVector" }
{ "DispatchKeyValue"
"windows" "27" {
"linux" "30" "windows" "29"
} "linux" "28"
"SetEntityModel" }
{ "DispatchKeyValueFloat"
"windows" "23" {
"linux" "24" "windows" "28"
} "linux" "29"
"AcceptInput" }
{ "DispatchKeyValueVector"
"windows" "34" {
"linux" "35" "windows" "27"
} "linux" "30"
"WeaponEquip" }
{ "SetEntityModel"
"windows" "229" {
"linux" "230" "windows" "23"
} "linux" "24"
"Activate" }
{ "AcceptInput"
"windows" "31" {
"linux" "32" "windows" "34"
} "linux" "35"
} }
} "WeaponEquip"
{
"windows" "229"
"linux" "230"
}
"Activate"
{
"windows" "31"
"linux" "32"
}
}
}
} }

View File

@ -1,136 +1,147 @@
"Games" /**
{ * Do not edit this file. Any changes will be overwritten by the gamedata
/* Zombie Master 1.1.3 */ * updater or by upgrading your SourceMod install.
"zombie_master" *
{ * To override data in this file, create a subdirectory named "custom" and
"Offsets" * place your own gamedata file(s) inside of it. Such files will be parsed
{ * after SM's own.
/* CBasePlayer */ *
"GiveNamedItem" * For more information, see http://wiki.alliedmods.net/Gamedata_Updating_(SourceMod)
{ */
"windows" "329"
"linux" "330" "Games"
} {
"RemovePlayerItem" /* Zombie Master 1.1.3 */
{ "zombie_master"
"windows" "226" {
"linux" "227" "Offsets"
} {
"Weapon_GetSlot" /* CBasePlayer */
{ "GiveNamedItem"
"windows" "224" {
"linux" "225" "windows" "329"
} "linux" "330"
"Ignite" }
{ "RemovePlayerItem"
"windows" "188" {
"linux" "189" "windows" "226"
} "linux" "227"
"Extinguish" }
{ "Weapon_GetSlot"
"windows" "189" {
"linux" "190" "windows" "224"
} "linux" "225"
"Teleport" }
{ "Ignite"
"windows" "98" {
"linux" "99" "windows" "188"
} "linux" "189"
"CommitSuicide" }
{ "Extinguish"
"windows" "357" {
"linux" "358" "windows" "189"
} "linux" "190"
"GetVelocity" }
{ "Teleport"
"windows" "126" {
"linux" "127" "windows" "98"
} "linux" "99"
"EyeAngles" }
{ "CommitSuicide"
"windows" "118" {
"linux" "119" "windows" "357"
} "linux" "358"
"DispatchKeyValue" }
{ "GetVelocity"
"windows" "31" {
"linux" "30" "windows" "126"
} "linux" "127"
"DispatchKeyValueFloat" }
{ "EyeAngles"
"windows" "30" {
"linux" "31" "windows" "118"
} "linux" "119"
"DispatchKeyValueVector" }
{ "DispatchKeyValue"
"windows" "29" {
"linux" "32" "windows" "31"
} "linux" "30"
"AcceptInput" }
{ "DispatchKeyValueFloat"
"windows" "35" {
"linux" "36" "windows" "30"
} "linux" "31"
"SetEntityModel" }
{ "DispatchKeyValueVector"
"windows" "25" {
"linux" "26" "windows" "29"
} "linux" "32"
"s_pTempEntities" }
{ "AcceptInput"
"windows" "30" {
} "windows" "35"
"g_pGameRules" "linux" "36"
{ }
"windows" "7" "SetEntityModel"
} {
"WeaponEquip" "windows" "25"
{ "linux" "26"
"windows" "198" }
"linux" "199" "s_pTempEntities"
} {
"Activate" "windows" "30"
{ }
"windows" "32" "g_pGameRules"
"linux" "33" {
} "windows" "7"
} }
"WeaponEquip"
"Signatures" {
{ "windows" "198"
"CBaseTempEntity" "linux" "199"
{ }
"library" "server" "Activate"
"windows" "\x55\x8B\xEC\x51\x89\x4D\xFC\x8B\x45\xFC\xC7\x00\x2A\x2A\x2A\x2A\x8B\x4D\xFC\x8B\x55\x08\x89\x51\x04\x8B\x45\xFC\x8B\x0D\x2A\x2A" {
} "windows" "32"
"DispatchSpawn" "linux" "33"
{ }
"library" "server" }
"linux" "@_Z13DispatchSpawnP11CBaseEntity"
"windows" "\x55\x8B\xEC\x83\xEC\x20\x83\x7D\x08\x00\x0F\x84\x95\x01\x00\x00\xA1\x2A\x2A\x2A\x2A\x50\x8D\x4D\xF0\xE8\x2A\x2A\x2A\x2A\x8D\x4D" "Signatures"
} {
"CreateEntityByName" "CBaseTempEntity"
{ {
"library" "server" "library" "server"
"linux" "@_Z18CreateEntityByNamePKci" "windows" "\x55\x8B\xEC\x51\x89\x4D\xFC\x8B\x45\xFC\xC7\x00\x2A\x2A\x2A\x2A\x8B\x4D\xFC\x8B\x55\x08\x89\x51\x04\x8B\x45\xFC\x8B\x0D\x2A\x2A"
"windows" "\x55\x8B\xEC\x83\xEC\x0C\x83\x7D\x0C\xFF\x74\x39\x8B\x45\x0C\x50\x8B\x0D\x2A\x2A\x2A\x2A\x8B\x11\x8B\x0D\x2A\x2A\x2A\x2A\xFF\x52" }
} "DispatchSpawn"
"FindEntityByClassname" {
{ "library" "server"
"library" "server" "linux" "@_Z13DispatchSpawnP11CBaseEntity"
"windows" "\x55\x8B\xEC\x83\xEC\x10\x89\x4D\xF4\x83\x7D\x08\x00\x74\x1C\x8B\x45\x08\x8B\x10\x8B\x4D\x08\xFF\x52\x08\x50\x8B\x4D\xF4\xE8\x2A\x2A\x2A\x2A\x8B\x40\x0C\x89\x45\x\xF0\xEB\x0B\x8B\x4D\xF4\xE8\x2A\x2A\x2A\x2A\x89\x45\xF0\x8B\x4D\xF0\x89\x4D\xFC\xEB\x09\x8B\x55\xFC\x8B\x42\x0C\x89\x45\xFC\x83\x7D\xFC\x00\x74\x38\x8B\x4D\xFC\x8B\x11\x89" "windows" "\x55\x8B\xEC\x83\xEC\x20\x83\x7D\x08\x00\x0F\x84\x95\x01\x00\x00\xA1\x2A\x2A\x2A\x2A\x50\x8D\x4D\xF0\xE8\x2A\x2A\x2A\x2A\x8D\x4D"
"linux" "@_ZN17CGlobalEntityList21FindEntityByClassnameEP11CBaseEntityPKc" }
} "CreateEntityByName"
"CreateGameRulesObject" {
{ "library" "server"
"library" "server" "linux" "@_Z18CreateEntityByNamePKci"
"windows" "\x55\x8B\xEC\x83\xEC\x10\xA1\x2A\x2A\x2A\x2A\x89\x45\xF4\x8B\x4D\xF4\x89\x4D\xF8\x83\x7D\xF8\x00" "windows" "\x55\x8B\xEC\x83\xEC\x0C\x83\x7D\x0C\xFF\x74\x39\x8B\x45\x0C\x50\x8B\x0D\x2A\x2A\x2A\x2A\x8B\x11\x8B\x0D\x2A\x2A\x2A\x2A\xFF\x52"
} }
"g_pGameRules" "FindEntityByClassname"
{ {
"library" "server" "library" "server"
"linux" "@g_pGameRules" "windows" "\x55\x8B\xEC\x83\xEC\x10\x89\x4D\xF4\x83\x7D\x08\x00\x74\x1C\x8B\x45\x08\x8B\x10\x8B\x4D\x08\xFF\x52\x08\x50\x8B\x4D\xF4\xE8\x2A\x2A\x2A\x2A\x8B\x40\x0C\x89\x45\x\xF0\xEB\x0B\x8B\x4D\xF4\xE8\x2A\x2A\x2A\x2A\x89\x45\xF0\x8B\x4D\xF0\x89\x4D\xFC\xEB\x09\x8B\x55\xFC\x8B\x42\x0C\x89\x45\xFC\x83\x7D\xFC\x00\x74\x38\x8B\x4D\xFC\x8B\x11\x89"
} "linux" "@_ZN17CGlobalEntityList21FindEntityByClassnameEP11CBaseEntityPKc"
} }
} "CreateGameRulesObject"
{
"library" "server"
"windows" "\x55\x8B\xEC\x83\xEC\x10\xA1\x2A\x2A\x2A\x2A\x89\x45\xF4\x8B\x4D\xF4\x89\x4D\xF8\x83\x7D\xF8\x00"
}
"g_pGameRules"
{
"library" "server"
"linux" "@g_pGameRules"
}
}
}
} }

View File

@ -1,120 +1,131 @@
"Games" /**
{ * Do not edit this file. Any changes will be overwritten by the gamedata
/* Zombie Panic! Source 1.2b * updater or by upgrading your SourceMod install.
* Note: This mod is not fully supported yet. *
* The definitions below were supplied by a third party. * To override data in this file, create a subdirectory named "custom" and
* (thanks "noob cannon lol") * place your own gamedata file(s) inside of it. Such files will be parsed
*/ * after SM's own.
"ZPS" *
{ * For more information, see http://wiki.alliedmods.net/Gamedata_Updating_(SourceMod)
"Offsets" */
{
"GiveNamedItem" "Games"
{ {
"windows" "333" /* Zombie Panic! Source 1.2b
"linux" "334" * Note: This mod is not fully supported yet.
} * The definitions below were supplied by a third party.
"RemovePlayerItem" * (thanks "noob cannon lol")
{ */
"windows" "230" "ZPS"
"linux" "231" {
} "Offsets"
"Weapon_GetSlot" {
{ "GiveNamedItem"
"windows" "226" {
"linux" "227" "windows" "333"
} "linux" "334"
"Ignite" }
{ "RemovePlayerItem"
"windows" "190" {
"linux" "191" "windows" "230"
} "linux" "231"
"Extinguish" }
{ "Weapon_GetSlot"
"windows" "191" {
"linux" "192" "windows" "226"
} "linux" "227"
"Teleport" }
{ "Ignite"
"windows" "100" {
"linux" "101" "windows" "190"
} "linux" "191"
"CommitSuicide" }
{ "Extinguish"
"windows" "361" {
"linux" "362" "windows" "191"
} "linux" "192"
"GetVelocity" }
{ "Teleport"
"windows" "128" {
"linux" "129" "windows" "100"
} "linux" "101"
"EyeAngles" }
{ "CommitSuicide"
"windows" "120" {
"linux" "121" "windows" "361"
} "linux" "362"
"AcceptInput" }
{ "GetVelocity"
"windows" "35" {
"linux" "36" "windows" "128"
} "linux" "129"
"DispatchKeyValue" }
{ "EyeAngles"
"windows" "31" {
"linux" "30" "windows" "120"
} "linux" "121"
"DispatchKeyValueFloat" }
{ "AcceptInput"
"windows" "30" {
"linux" "31" "windows" "35"
} "linux" "36"
"DispatchKeyValueVector" }
{ "DispatchKeyValue"
"windows" "29" {
"linux" "32" "windows" "31"
} "linux" "30"
"SetEntityModel" }
{ "DispatchKeyValueFloat"
"windows" "25" {
"linux" "26" "windows" "30"
} "linux" "31"
"WeaponEquip" }
{ "DispatchKeyValueVector"
"windows" "219" {
"linux" "220" "windows" "29"
} "linux" "32"
"Activate" }
{ "SetEntityModel"
"windows" "32" {
"linux" "33" "windows" "25"
} "linux" "26"
} }
"Signatures" "WeaponEquip"
{ {
"CreateGameRulesObject" "windows" "219"
{ "linux" "220"
"library" "server" }
"windows" "\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x2A\x8B\x01\x8B\x50\x2C\x6A\x01" "Activate"
} {
"FindEntityByClassname" "windows" "32"
{ "linux" "33"
"library" "server" }
"windows" "\x53\x55\x56\x8B\xF1\x8B\x4C\x24\x2A\x2A\x85\xC9\x74\x2A\x8B\x01\x8B\x50\x2A\x2A\x2A\x8B\x00\x25\xFF\x0F\x00\x00\x40\xC1\xC1\xE0\x04\x8B\x2A\x2A\xEB\x2A\x8B\xBE\x2A\x2A\x2A\x2A\x85\xFF\x74\x2A\x8B\x5C\x24\x2A\x8B\x2D\x2A\x2A\x2A\x2A\x8D\xA4\x24\x00\x00\x00\x00\x8B\x37\x85\xF6\x75\x2A\x68\x2A\x2A\x2A\x2A\xFF\x2A\x83\xC4\x2A\xEB\x2A\x39" }
"linux" "@_ZN17CGlobalEntityList21FindEntityByClassnameEP11CBaseEntityPKc" "Signatures"
} {
"CreateEntityByName" "CreateGameRulesObject"
{ {
"library" "server" "library" "server"
"linux" "@_Z18CreateEntityByNamePKci" "windows" "\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x2A\x8B\x01\x8B\x50\x2C\x6A\x01"
"windows" "\x56\x8B\x74\x24\x2A\x57\x8B\x7C\x24\x2A\x83\xFE\xFF\x74\x2A\x8B\x0D\x2A\x2A\x2A\x2A\x8B\x01\x8B\x50\x2A\x56\xFF\xD2" }
} "FindEntityByClassname"
"DispatchSpawn" {
{ "library" "server"
"library" "server" "windows" "\x53\x55\x56\x8B\xF1\x8B\x4C\x24\x2A\x2A\x85\xC9\x74\x2A\x8B\x01\x8B\x50\x2A\x2A\x2A\x8B\x00\x25\xFF\x0F\x00\x00\x40\xC1\xC1\xE0\x04\x8B\x2A\x2A\xEB\x2A\x8B\xBE\x2A\x2A\x2A\x2A\x85\xFF\x74\x2A\x8B\x5C\x24\x2A\x8B\x2D\x2A\x2A\x2A\x2A\x8D\xA4\x24\x00\x00\x00\x00\x8B\x37\x85\xF6\x75\x2A\x68\x2A\x2A\x2A\x2A\xFF\x2A\x83\xC4\x2A\xEB\x2A\x39"
"linux" "@_Z13DispatchSpawnP11CBaseEntity" "linux" "@_ZN17CGlobalEntityList21FindEntityByClassnameEP11CBaseEntityPKc"
"windows" "\x53\x55\x56\x8B\x74\x24\x10\x2A\x85\xF6\x0F\x84\x2A\x2A\x2A\x2A\x8B\x1D\x2A\x2A\x2A\x2A\x8B\x03\x8B\x50\x60\x8B\xCB" }
} "CreateEntityByName"
} {
} "library" "server"
} "linux" "@_Z18CreateEntityByNamePKci"
"windows" "\x56\x8B\x74\x24\x2A\x57\x8B\x7C\x24\x2A\x83\xFE\xFF\x74\x2A\x8B\x0D\x2A\x2A\x2A\x2A\x8B\x01\x8B\x50\x2A\x56\xFF\xD2"
}
"DispatchSpawn"
{
"library" "server"
"linux" "@_Z13DispatchSpawnP11CBaseEntity"
"windows" "\x53\x55\x56\x8B\x74\x24\x10\x2A\x85\xF6\x0F\x84\x2A\x2A\x2A\x2A\x8B\x1D\x2A\x2A\x2A\x2A\x8B\x03\x8B\x50\x60\x8B\xCB"
}
}
}
}

View File

@ -1,117 +1,128 @@
"Game Master" /**
{ * Do not edit this file. Any changes will be overwritten by the gamedata
"common.games.txt" * updater or by upgrading your SourceMod install.
{ *
} * To override data in this file, create a subdirectory named "custom" and
* place your own gamedata file(s) inside of it. Such files will be parsed
"engine.l4d.txt" * after SM's own.
{ *
"engine" "left4dead" * For more information, see http://wiki.alliedmods.net/Gamedata_Updating_(SourceMod)
} */
"engine.ep2.txt" "Game Master"
{ {
"engine" "orangebox" "common.games.txt"
} {
}
"engine.ep1.txt"
{ "engine.l4d.txt"
"engine" "original" {
} "engine" "left4dead"
}
"engine.darkm.txt"
{ "engine.ep2.txt"
"engine" "darkmessiah" {
} "engine" "orangebox"
}
"game.tf.txt"
{ "engine.ep1.txt"
"game" "tf" {
} "engine" "original"
}
"game.dod.txt"
{ "engine.darkm.txt"
"game" "dod" {
} "engine" "darkmessiah"
}
"game.cstrike.txt"
{ "game.tf.txt"
"game" "cstrike" {
} "game" "tf"
}
"game.hl2mp.txt"
{ "game.dod.txt"
"game" "hl2mp" {
} "game" "dod"
}
"game.ship.txt"
{ "game.cstrike.txt"
"game" "ship" {
} "game" "cstrike"
}
"game.dystopia.txt"
{ "game.hl2mp.txt"
"game" "!Dystopia" {
} "game" "hl2mp"
}
"game.insurgency.txt"
{ "game.ship.txt"
"game" "insurgency" {
} "game" "ship"
}
"game.pvkii.txt"
{ "game.dystopia.txt"
"game" "pvkii" {
} "game" "!Dystopia"
}
"game.ff.txt"
{ "game.insurgency.txt"
"game" "FortressForever" {
} "game" "insurgency"
}
"game.garrysmod.txt"
{ "game.pvkii.txt"
"engine" "original" {
"game" "garrysmod" "game" "pvkii"
} }
"game.empires.txt" "game.ff.txt"
{ {
"game" "empires" "game" "FortressForever"
} }
"game.sourceforts.txt" "game.garrysmod.txt"
{ {
"game" "sourceforts" "engine" "original"
} "game" "garrysmod"
}
"game.synergy.txt"
{ "game.empires.txt"
"game" "synergy" {
} "game" "empires"
}
"game.hidden.txt"
{ "game.sourceforts.txt"
"game" "hidden" {
} "game" "sourceforts"
}
"game.zm.txt"
{ "game.synergy.txt"
"game" "zombie_master" {
} "game" "synergy"
}
"game.zpanic.txt"
{ "game.hidden.txt"
"game" "ZPS" {
} "game" "hidden"
}
"game.obsidian.txt"
{ "game.zm.txt"
"game" "obsidian" {
} "game" "zombie_master"
}
"game.aoc.txt"
{ "game.zpanic.txt"
"game" "ageofchivalry" {
} "game" "ZPS"
} }
"game.obsidian.txt"
{
"game" "obsidian"
}
"game.aoc.txt"
{
"game" "ageofchivalry"
}
}

View File

@ -1,21 +1,32 @@
"Games" /**
{ * Do not edit this file. Any changes will be overwritten by the gamedata
"cstrike" * updater or by upgrading your SourceMod install.
{ *
"Signatures" * To override data in this file, create a subdirectory named "custom" and
{ * place your own gamedata file(s) inside of it. Such files will be parsed
"RoundRespawn" * after SM's own.
{ *
"library" "server" * For more information, see http://wiki.alliedmods.net/Gamedata_Updating_(SourceMod)
"windows" "\x56\x8B\xF1\x8B\x06\xFF\x90\x2A\x04\x00\x00\x8B\x86\x2A\x0D\x00" */
"linux" "@_ZN9CCSPlayer12RoundRespawnEv"
} "Games"
"SwitchTeam" {
{ "cstrike"
"library" "server" {
"windows" "\x83\xEC\x10\x56\x57\x8B\x7C\x24\x1C\x57\x8B\xF1\xE8\x2A\x2A\x2A\x2A\x83\xC4\x04\x85\xC0\x0F\x84\xEA\x00\x00\x00\x83\xFF\x03\x74\x09\x83\xFF\x02\x0F\x85\xDC\x00\x00\x00\x8B\xCE\xE8\x2A\x2A\x2A\x2A\x3B\xF8\x0F\x84\xDC\x00\x00\x00\x57\x8B\xCE\xC6\x86\x2A\x2A" "Signatures"
"linux" "@_ZN9CCSPlayer10SwitchTeamEi" {
} "RoundRespawn"
} {
} "library" "server"
"windows" "\x56\x8B\xF1\x8B\x06\xFF\x90\x2A\x04\x00\x00\x8B\x86\x2A\x0D\x00"
"linux" "@_ZN9CCSPlayer12RoundRespawnEv"
}
"SwitchTeam"
{
"library" "server"
"windows" "\x83\xEC\x10\x56\x57\x8B\x7C\x24\x1C\x57\x8B\xF1\xE8\x2A\x2A\x2A\x2A\x83\xC4\x04\x85\xC0\x0F\x84\xEA\x00\x00\x00\x83\xFF\x03\x74\x09\x83\xFF\x02\x0F\x85\xDC\x00\x00\x00\x8B\xCE\xE8\x2A\x2A\x2A\x2A\x3B\xF8\x0F\x84\xDC\x00\x00\x00\x57\x8B\xCE\xC6\x86\x2A\x2A"
"linux" "@_ZN9CCSPlayer10SwitchTeamEi"
}
}
}
} }

View File

@ -1,54 +1,65 @@
"Games" /**
{ * Do not edit this file. Any changes will be overwritten by the gamedata
"tf" * updater or by upgrading your SourceMod install.
{ *
"Signatures" * To override data in this file, create a subdirectory named "custom" and
{ * place your own gamedata file(s) inside of it. Such files will be parsed
"Burn" * after SM's own.
{ *
"library" "server" * For more information, see http://wiki.alliedmods.net/Gamedata_Updating_(SourceMod)
"windows" "\x56\x8B\xF1\x8B\x8E\x2A\x2A\x00\x00\x8B\x01\x8B\x90\x2A\x2A\x00\x00\xFF\xD2\x84\xC0" */
"linux" "@_ZN15CTFPlayerShared4BurnEP9CTFPlayerP13CTFWeaponBase"
} "Games"
"RemoveDisguise" {
{ "tf"
"library" "server" {
"windows" "\x51\x56\x8B\xF1\x8B\x46\x2A\x57\x8D\x7E\x2A\x8D\x4C\x24\x08\x83\xE0\xF7" "Signatures"
"linux" "@_ZN15CTFPlayerShared14RemoveDisguiseEv" {
} "Burn"
"Disguise" {
{ "library" "server"
"library" "server" "windows" "\x56\x8B\xF1\x8B\x8E\x2A\x2A\x00\x00\x8B\x01\x8B\x90\x2A\x2A\x00\x00\xFF\xD2\x84\xC0"
"windows" "\x56\x8B\xF1\x8B\x8E\x2A\x2A\x00\x00\xE8\x2A\x2A\x2A\x2A\x8B\x8E\x2A\x2A\x00\x00\x8B\x89\x2A\x2A\x00\x00" "linux" "@_ZN15CTFPlayerShared4BurnEP9CTFPlayerP13CTFWeaponBase"
"linux" "@_ZN15CTFPlayerShared8DisguiseEii" }
} "RemoveDisguise"
"CalcCritical" {
{ "library" "server"
"library" "server" "windows" "\x51\x56\x8B\xF1\x8B\x46\x2A\x57\x8D\x7E\x2A\x8D\x4C\x24\x08\x83\xE0\xF7"
"linux" "@_ZN13CTFWeaponBase26CalcIsAttackCriticalHelperEv" "linux" "@_ZN15CTFPlayerShared14RemoveDisguiseEv"
"windows" "\x83\xEC\x08\x53\x56\x6A\x00" }
} "Disguise"
"CalcCriticalMelee" {
{ "library" "server"
"library" "server" "windows" "\x56\x8B\xF1\x8B\x8E\x2A\x2A\x00\x00\xE8\x2A\x2A\x2A\x2A\x8B\x8E\x2A\x2A\x00\x00\x8B\x89\x2A\x2A\x00\x00"
"linux" "@_ZN18CTFWeaponBaseMelee26CalcIsAttackCriticalHelperEv" "linux" "@_ZN15CTFPlayerShared8DisguiseEii"
"windows" "\x83\xEC\x08\x53\x57\x8B\xF9\xE8\x2A\x2A\x2A\x2A\x8B\xD8" }
} "CalcCritical"
"CalcCriticalKnife" {
{ "library" "server"
"library" "server" "linux" "@_ZN13CTFWeaponBase26CalcIsAttackCriticalHelperEv"
"linux" "@_ZN8CTFKnife26CalcIsAttackCriticalHelperEv" "windows" "\x83\xEC\x08\x53\x56\x6A\x00"
"windows" "\x8B\x81\xF0\x13\x00\x00\x83\xF8\xFF\x74\x29\x8B\x15" }
} "CalcCriticalMelee"
{
} "library" "server"
"Offsets" "linux" "@_ZN18CTFWeaponBaseMelee26CalcIsAttackCriticalHelperEv"
{ "windows" "\x83\xEC\x08\x53\x57\x8B\xF9\xE8\x2A\x2A\x2A\x2A\x8B\xD8"
"ForceRespawn" }
{ "CalcCriticalKnife"
"windows" "281" {
"linux" "282" "library" "server"
} "linux" "@_ZN8CTFKnife26CalcIsAttackCriticalHelperEv"
} "windows" "\x8B\x81\xF0\x13\x00\x00\x83\xF8\xFF\x74\x29\x8B\x15"
} }
}
"Offsets"
{
"ForceRespawn"
{
"windows" "281"
"linux" "282"
}
}
}
} }