Add new and remove old gamerules gamedata for numerous games.

This commit is contained in:
Nicholas Hastings 2014-12-23 11:04:05 -05:00
parent 3edaac9bd7
commit ad9de71ac9
32 changed files with 106 additions and 589 deletions

View File

@ -60,36 +60,6 @@
}
}
/* General GameRules */
"#default"
{
"Offsets"
{
/* Offset into CreateGameRulesObject */
"g_pGameRules"
{
"windows" "2"
}
}
"Signatures"
{
/* 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
* CreateGameRulesObject function and sometimes it is in the middle
* of an entirely different function. This depends on the game.
*/
"CreateGameRulesObject"
{
"library" "server"
"windows" "\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x2A\x8B\x01\x8B\x50\x2A\x6A\x01\xFF\xD2"
}
}
}
/* IServer interface pointer */
"#default"
{
@ -231,5 +201,11 @@
"windows" "377"
}
}
"Keys"
{
"GameRulesProxy" "CPMGameRulesProxy"
"GameRulesDataTable" "pm_gamerules_data"
}
}
}

View File

@ -99,42 +99,6 @@
}
}
/* General GameRules */
"#default"
{
"Offsets"
{
/* Offset into CreateGameRulesObject */
"g_pGameRules"
{
"windows" "2"
}
}
"Signatures"
{
/* 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
* CreateGameRulesObject function and sometimes it is in the middle
* of an entirely different function. This depends on the game.
*/
"CreateGameRulesObject"
{
"library" "server"
"windows" "\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x2A\x8B\x01\x8B\x50\x2A\x6A\x01\xFF\xD2"
}
"g_pGameRules"
{
"library" "server"
"linux" "@g_pGameRules"
"mac" "@g_pGameRules"
}
}
}
/* IServer interface pointer */
"#default"
{
@ -291,6 +255,7 @@
"Keys"
{
"GameRulesProxy" "CTerrorGameRulesProxy"
"GameRulesDataTable" "contagion_gamerules_data"
}
}
}

View File

@ -91,38 +91,7 @@
"Keys"
{
"GameRulesProxy" "CCSGameRulesProxy"
}
"Offsets"
{
/* Offset into CreateGameRulesObject */
"g_pGameRules"
{
"windows" "2"
}
}
"Signatures"
{
/* 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
* CreateGameRulesObject function and sometimes it is in the middle
* of an entirely different function. This depends on the game.
*/
"CreateGameRulesObject"
{
"library" "server"
"windows" "\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x2A\x8B\x01\x6A\x01\xFF\x50"
}
"g_pGameRules"
{
"library" "server"
"linux" "@g_pGameRules"
"mac" "@g_pGameRules"
}
"GameRulesDataTable" "cs_gamerules_data"
}
}

View File

@ -73,42 +73,6 @@
}
}
/* General GameRules */
"#default"
{
"Offsets"
{
/* Offset into CreateGameRulesObject */
"g_pGameRules"
{
"windows" "5"
}
}
"Signatures"
{
/* 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
* CreateGameRulesObject function and sometimes it is in the middle
* of an entirely different function. This depends on the game.
*/
"CreateGameRulesObject"
{
"library" "server"
"windows" "\x55\x8B\xEC\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x07"
}
"g_pGameRules"
{
"library" "server"
"linux" "@g_pGameRules"
"mac" "@g_pGameRules"
}
}
}
/* IServer interface pointer */
"#default"
{

View File

@ -117,41 +117,6 @@
}
}
/* General GameRules */
"#default"
{
"#supported"
{
"game" "!Might and Magic Multiplayer"
}
"Offsets"
{
/* Offset into CreateGameRulesObject */
"g_pGameRules"
{
"windows" "2"
}
}
"Signatures"
{
/* 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
* CreateGameRulesObject function and sometimes it is in the middle
* of an entirely different function. This depends on the game.
*/
"CreateGameRulesObject"
{
"library" "server"
"windows" "\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x2A\x8B\x01\x6A\x01\xFF\x50"
}
}
}
/* IServer interface pointer */
"#default"
{
@ -307,5 +272,11 @@
"windows" "\x83\xEC\x44\x56\x8B\xF1\x8B\x8E\x2A\x00\x00\x00\x85\xC9"
}
}
"Keys"
{
"GameRulesProxy" "CHL2MPGameRulesProxy"
"GameRulesDataTable" "hl2mp_gamerules_data"
}
}
}

View File

@ -96,39 +96,7 @@
"Keys"
{
"GameRulesProxy" "CDOTAGamerulesProxy"
}
"Offsets"
{
/* Offset into CreateGameRulesObject */
"g_pGameRules"
{
"windows" "3"
"linux" "9"
}
}
"Signatures"
{
/* 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
* CreateGameRulesObject function and sometimes it is in the middle
* of an entirely different function. This depends on the game.
*/
"CreateGameRulesObject"
{
"library" "server"
"windows" "\x51\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x06\x8B\x01\x6A\x01\xFF\x10\xC7\x05\x2A\x2A\x2A\x2A\x00\x00\x00\x00\xE8"
"linux" "\x55\x89\xE5\x56\x53\x83\xEC\x2A\xA1\x2A\x2A\x2A\x2A\x8B\x5D\x08\x85\xC0\x74\x08\x8B"
}
"g_pGameRules"
{
"library" "server"
"mac" "@g_pGameRules"
}
"GameRulesDataTable" "dota_gamerules_data"
}
}

View File

@ -88,50 +88,6 @@
}
}
/* General GameRules */
"#default"
{
"#supported"
{
"game" "dod"
"game" "tf"
"game" "garrysmod"
"game" "hl2mp"
}
"Offsets"
{
/* Offset into CreateGameRulesObject */
"g_pGameRules"
{
"windows" "5"
}
}
"Signatures"
{
/* 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
* CreateGameRulesObject function and sometimes it is in the middle
* of an entirely different function. This depends on the game.
*/
"CreateGameRulesObject"
{
"library" "server"
"windows" "\x55\x8B\xEC\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x07"
}
"g_pGameRules"
{
"library" "server"
"linux" "@g_pGameRules"
"mac" "@g_pGameRules"
}
}
}
/* IServer interface pointer */
"#default"
{

View File

@ -16,6 +16,7 @@
"Keys"
{
"GameRulesProxy" "CHL2MPGameRulesProxy"
"GameRulesDataTable" "hl2mp_gamerules_data"
}
}
@ -77,41 +78,6 @@
}
}
/* General GameRules */
"#default"
{
"#supported"
{
"game" "eye"
}
"Offsets"
{
/* Offset into CreateGameRulesObject */
"g_pGameRules"
{
"windows" "2"
}
}
"Signatures"
{
/* 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
* CreateGameRulesObject function and sometimes it is in the middle
* of an entirely different function. This depends on the game.
*/
"CreateGameRulesObject"
{
"library" "server"
"windows" "\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x2A\x8B\x01\x8B\x50\x2A\x6A\x01\xFF\xD2"
}
}
}
/* IServer interface pointer */
"#default"
{

View File

@ -21,6 +21,7 @@
"SlapSound2" "player/damage2.wav"
"GameRulesProxy" "CTerrorGameRulesProxy"
"GameRulesDataTable" "terror_gamerules_data"
}
}
@ -96,47 +97,6 @@
}
}
/* General GameRules */
"#default"
{
"#supported"
{
"game" "left4dead"
}
"Offsets"
{
/* Offset into CreateGameRulesObject */
"g_pGameRules"
{
"windows" "2"
}
}
"Signatures"
{
/* 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
* CreateGameRulesObject function and sometimes it is in the middle
* of an entirely different function. This depends on the game.
*/
"CreateGameRulesObject"
{
"library" "server"
"windows" "\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x2A\x8B\x01\x8B\x50\x2A\x6A\x01\xFF\xD2"
}
"g_pGameRules"
{
"library" "server"
"linux" "@g_pGameRules"
"mac" "@g_pGameRules"
}
}
}
/* IServer interface pointer */
"#default"
{

View File

@ -22,48 +22,6 @@
}
}
/* General GameRules */
"#default"
{
"#supported"
{
"game" "left4dead2"
"game" "nucleardawn"
}
"Offsets"
{
/* Offset into CreateGameRulesObject */
"g_pGameRules"
{
"windows" "2"
}
}
"Signatures"
{
/* 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
* CreateGameRulesObject function and sometimes it is in the middle
* of an entirely different function. This depends on the game.
*/
"CreateGameRulesObject"
{
"library" "server"
"windows" "\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x2A\x8B\x01\x8B\x50\x2A\x6A\x01\xFF\xD2"
}
"g_pGameRules"
{
"library" "server"
"linux" "@g_pGameRules"
"mac" "@g_pGameRules"
}
}
}
/* EntityFactoryDictionary function */
"#default"
{

View File

@ -71,42 +71,6 @@
}
}
/* General GameRules */
"#default"
{
"#supported"
{
"game" "swarm"
"game" "dinodday"
}
"Offsets"
{
/* Offset into CreateGameRulesObject */
"g_pGameRules"
{
"windows" "2"
}
}
"Signatures"
{
/* 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
* CreateGameRulesObject function and sometimes it is in the middle
* of an entirely different function. This depends on the game.
*/
"CreateGameRulesObject"
{
"library" "server"
"windows" "\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x2A\x8B\x01\x8B\x50\x2A\x6A\x01\xFF\xD2"
}
}
}
/* IServer interface pointer */
"#default"
{

View File

@ -46,6 +46,7 @@
"Keys"
{
"GameRulesProxy" "CAlienSwarmProxy"
"GameRulesDataTable" "asw_gamerules_data"
}
}
}

View File

@ -119,5 +119,10 @@
"linux" "@_ZN17CBaseEntityOutput10FireOutputE9variant_tP11CBaseEntityS2_f"
}
}
"Keys"
{
"GameRulesProxy" "CHL2MPGameRulesProxy"
"GameRulesDataTable" "hl2mp_gamerules_data"
}
}
}

View File

@ -76,5 +76,11 @@
"linux" "376"
}
}
"Keys"
{
"GameRulesProxy" "CSP_GameRulesProxy"
"GameRulesDataTable" "csp_gamerules_data"
}
}
}

View File

@ -22,6 +22,7 @@
"SlapSound3" "player/damage3.wav"
"GameRulesProxy" "CCSGameRulesProxy"
"GameRulesDataTable" "cs_gamerules_data"
}
"Offsets"

View File

@ -66,6 +66,7 @@
"Keys"
{
"GameRulesProxy" "CDDDGameRulesProxy"
"GameRulesDataTable" "ddd_gamerules_data"
}
}
}

View File

@ -111,6 +111,7 @@
"Keys"
{
"GameRulesProxy" "CDODGameRulesProxy"
"GameRulesDataTable" "dod_gamerules_data"
}
}
}

View File

@ -104,18 +104,12 @@
"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"
}
/* 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"
}
"Keys"
{
"GameRulesProxy" "CDYSGameRulesProxy"
"GameRulesDataTable" "dys_gamerules_data"
}
}
}

View File

@ -74,43 +74,6 @@
}
}
/* General GameRules */
"#default"
{
"Offsets"
{
/* Offset into CreateGameRulesObject */
"g_pGameRules"
{
"windows" "2"
"linux" "1"
}
}
"Signatures"
{
/* 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
* CreateGameRulesObject function and sometimes it is in the middle
* of an entirely different function. This depends on the game.
*/
"CreateGameRulesObject"
{
"library" "server"
"windows" "\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x2A\x8B\x01\x8B\x50\x2A\x6A\x01\xFF\xD2"
"linux" "\xA1\x2A\x2A\x2A\x2A\x8B\x5D\x08\x85\xC0\x74\x08\x8B\x10\x89"
}
"g_pGameRules"
{
"library" "server"
"mac" "@g_pGameRules"
}
}
}
/* CBaseEntityOutput::FireOutput */
"#default"
{
@ -195,6 +158,7 @@
"Keys"
{
"GameRulesProxy" "CEmpGameRulesProxy"
"GameRulesDataTable" "sdk_gamerules_data"
}
}
}

View File

@ -110,11 +110,6 @@
"Signatures"
{
"CreateGameRulesObject"
{
"library" "server"
"windows" "\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x09\x8B\x01\x8B\x50\x2C\x6A\x01"
}
"FindEntityByClassname"
{
"library" "server"
@ -141,6 +136,7 @@
"Keys"
{
"GameRulesProxy" "CFFGameRulesProxy"
"GameRulesDataTable" "ff_gamerules_data"
}
}
}

View File

@ -73,42 +73,6 @@
}
}
/* General GameRules */
"#default"
{
"Offsets"
{
/* Offset into CreateGameRulesObject */
"g_pGameRules"
{
"windows" "5"
}
}
"Signatures"
{
/* 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
* CreateGameRulesObject function and sometimes it is in the middle
* of an entirely different function. This depends on the game.
*/
"CreateGameRulesObject"
{
"library" "server"
"windows" "\x55\x8B\xEC\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x07"
}
"g_pGameRules"
{
"library" "server"
"linux" "@g_pGameRules"
"mac" "@g_pGameRules"
}
}
}
/* CBaseEntityOutput::FireOutput */
"#default"
{
@ -220,5 +184,11 @@
"mac" "253"
}
}
"Keys"
{
"GameRulesProxy" "CHL2MPGameRulesProxy"
"GameRulesDataTable" "hl2mp_gamerules_data"
}
}
}

View File

@ -105,5 +105,10 @@
"linux" "@_ZN17CBaseEntityOutput10FireOutputE9variant_tP11CBaseEntityS2_f"
}
}
"Keys"
{
"GameRulesProxy" "CGEMPGameRulesProxy"
"GameRulesDataTable" "gemp_gamerules_data"
}
}
}

View File

@ -107,5 +107,11 @@
"mac" "252"
}
}
"Keys"
{
"GameRulesProxy" "CHL2MPGameRulesProxy"
"GameRulesDataTable" "hl2mp_gamerules_data"
}
}
}

View File

@ -103,5 +103,11 @@
"linux" "347"
}
}
"Keys"
{
"GameRulesProxy" "CSDKGameRulesProxy"
"GameRulesDataTable" "sdk_gamerules_data"
}
}
}

View File

@ -215,6 +215,7 @@
"Keys"
{
"GameRulesProxy" "CTerrorGameRulesProxy"
"GameRulesDataTable" "terror_gamerules_data"
}
}
}

View File

@ -81,5 +81,10 @@
"windows" "\xE8\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\xB9\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\x6A\x00"
}
}
"Keys"
{
"GameRulesProxy" "CNEOGameRulesProxy"
"GameRulesDataTable" "neo_gamerules_data"
}
}
}

View File

@ -235,6 +235,7 @@
"Keys"
{
"GameRulesProxy" "CNuclearDawnRulesProxy"
"GameRulesDataTable" "nd_gamerules_data"
}
"Signatures"

View File

@ -13,42 +13,7 @@
{
/* Pirates, Vikings and Knights II */
/* GameRules */
"#default"
{
"Offsets"
{
/* Offset into CreateGameRulesObject */
"g_pGameRules"
{
"windows" "5"
"linux" "9"
}
}
"Signatures"
{
/* 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
* CreateGameRulesObject function and sometimes it is in the middle
* of an entirely different function. This depends on the game.
*/
"CreateGameRulesObject"
{
"library" "server"
"windows" "\x55\x8B\xEC\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x07"
"linux" "\x55\x89\xE5\x56\x53\x83\xEC\x2A\xA1\x2A\x2A\x2A\x2A\x8B\x5D\x08\x85\xC0\x74\x08\x8B\x10\x89"
}
"g_pGameRules"
{
"library" "server"
"mac" "@g_pGameRules"
}
}
}
/* CBaseEntityOutput::FireOutput */
"pvkii"
@ -165,6 +130,7 @@
"Keys"
{
"GameRulesProxy" "CPVK2GameRulesProxy"
"GameRulesDataTable" "pvk2_gamerules_data"
}
"Signatures"

View File

@ -102,5 +102,10 @@
"windows" "\x81\xEC\x1C\x01\x00\x00\x53\x55\x56\x8B\x71\x14\x85\xF6"
}
}
"Keys"
{
"GameRulesProxy" "CRnLGameRulesProxy"
"GameRulesDataTable" "rnl_gamerules_data"
}
}
}

View File

@ -103,5 +103,10 @@
"linux" "347"
}
}
"Keys"
{
"GameRulesProxy" "CHL2MPGameRulesProxy"
"GameRulesDataTable" "hl2mp_gamerules_data"
}
}
}

View File

@ -74,43 +74,6 @@
}
}
/* General GameRules */
"#default"
{
"Offsets"
{
/* Offset into CreateGameRulesObject */
"g_pGameRules"
{
"windows" "5"
"linux" "1"
}
}
"Signatures"
{
/* 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
* CreateGameRulesObject function and sometimes it is in the middle
* of an entirely different function. This depends on the game.
*/
"CreateGameRulesObject"
{
"library" "server"
"windows" "\x55\x8B\xEC\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x07"
"linux" "\xA1\x2A\x2A\x2A\x2A\x8B\x5D\x08\x85\xC0\x74\x08\x8B\x10\x89"
}
"g_pGameRules"
{
"library" "server"
"mac" "@g_pGameRules"
}
}
}
/* CBaseEntityOutput::FireOutput */
"#default"
{
@ -222,5 +185,11 @@
"mac" "425"
}
}
"Keys"
{
"GameRulesProxy" "CNHL2MPGameRulesProxy"
"GameRulesDataTable" "hl2mp_gamerules_data"
}
}
}

View File

@ -87,10 +87,6 @@
"windows" "25"
"linux" "26"
}
"g_pGameRules"
{
"windows" "7"
}
"WeaponEquip"
{
"windows" "198"
@ -108,6 +104,12 @@
}
}
"Keys"
{
"GameRulesProxy" "CHL2MPGameRulesProxy"
"GameRulesDataTable" "hl2mp_gamerules_data"
}
"Signatures"
{
"DispatchSpawn"
@ -128,16 +130,6 @@
"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\x04\x00\x01\x00\x85\xFF\x74\x3A\x8B\x5C\x24\x18\x8B\x2D\x6C\xE5\x73\x22\x8D\x9B\x00\x00\x00\x00\x8B\x37\x85\xF6\x75\x0C\x68\xFC\xFB\x56\x22\xFF\xD5\x83\xC4\x04\xEB\x11\x39"
"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"
}
}
}
}