| author | Nicholas Hastings <skamonkey@gmail.com> |
| Wed Aug 14 14:20:57 2013 -0400 (2013-08-14) | |
| changeset 4008 | 490b01aa0683 |
| parent 3395 | c32a00266a02 |
| permissions | -rw-r--r-- |
| fyrenmoo@2690 | 1 |
/** |
| fyrenmoo@2690 | 2 |
* Do not edit this file. Any changes will be overwritten by the gamedata |
| fyrenmoo@2690 | 3 |
* updater or by upgrading your SourceMod install. |
| fyrenmoo@2690 | 4 |
* |
| fyrenmoo@2690 | 5 |
* To override data in this file, create a subdirectory named "custom" and |
| fyrenmoo@2690 | 6 |
* place your own gamedata file(s) inside of it. Such files will be parsed |
| fyrenmoo@2690 | 7 |
* after SM's own. |
| fyrenmoo@2690 | 8 |
* |
| fyrenmoo@2690 | 9 |
* For more information, see http://wiki.alliedmods.net/Gamedata_Updating_(SourceMod) |
| fyrenmoo@2690 | 10 |
*/ |
| fyrenmoo@2690 | 11 |
|
| fyrenmoo@2690 | 12 |
"Games" |
| fyrenmoo@2690 | 13 |
{
|
| fyrenmoo@2690 | 14 |
/* General Temp Entities */ |
| fyrenmoo@2690 | 15 |
"#default" |
| fyrenmoo@2690 | 16 |
{
|
| fyrenmoo@2690 | 17 |
"#supported" |
| fyrenmoo@2690 | 18 |
{
|
| fyrenmoo@2690 | 19 |
"game" "ship" |
| fyrenmoo@2690 | 20 |
"game" "insurgency" |
| fyrenmoo@2690 | 21 |
"game" "sourceforts" |
| fyrenmoo@2690 | 22 |
"game" "FortressForever" |
| fyrenmoo@2690 | 23 |
"game" "hidden" |
| fyrenmoo@2690 | 24 |
"game" "zombie_master" |
| skamonkey@2873 | 25 |
"game" "NeotokyoSource" |
| skamonkey@3289 | 26 |
"game" "esmod" |
| skamonkey@3363 | 27 |
"game" "ios" |
| januk@3395 | 28 |
"game" "hl2ctf" |
| fyrenmoo@2690 | 29 |
} |
| fyrenmoo@2690 | 30 |
|
| fyrenmoo@2690 | 31 |
"Offsets" |
| fyrenmoo@2690 | 32 |
{
|
| fyrenmoo@2690 | 33 |
/* Offset into CBaseTempEntity constructor */ |
| fyrenmoo@2690 | 34 |
"s_pTempEntities" |
| fyrenmoo@2690 | 35 |
{
|
| fyrenmoo@2690 | 36 |
"windows" "17" |
| fyrenmoo@2690 | 37 |
} |
| fyrenmoo@2690 | 38 |
"GetTEName" |
| fyrenmoo@2690 | 39 |
{
|
| fyrenmoo@2690 | 40 |
"windows" "4" |
| fyrenmoo@2690 | 41 |
"linux" "4" |
| fyrenmoo@2690 | 42 |
} |
| fyrenmoo@2690 | 43 |
"GetTENext" |
| fyrenmoo@2690 | 44 |
{
|
| fyrenmoo@2690 | 45 |
"windows" "8" |
| fyrenmoo@2690 | 46 |
"linux" "8" |
| fyrenmoo@2690 | 47 |
} |
| fyrenmoo@2690 | 48 |
"TE_GetServerClass" |
| fyrenmoo@2690 | 49 |
{
|
| fyrenmoo@2690 | 50 |
"windows" "1" |
| fyrenmoo@2690 | 51 |
"linux" "1" |
| fyrenmoo@2690 | 52 |
} |
| fyrenmoo@2690 | 53 |
} |
| fyrenmoo@2690 | 54 |
|
| fyrenmoo@2690 | 55 |
"Signatures" |
| fyrenmoo@2690 | 56 |
{
|
| fyrenmoo@2690 | 57 |
"CBaseTempEntity" |
| fyrenmoo@2690 | 58 |
{
|
| fyrenmoo@2690 | 59 |
"library" "server" |
| fyrenmoo@2690 | 60 |
"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" |
| fyrenmoo@2690 | 61 |
} |
| fyrenmoo@2690 | 62 |
"s_pTempEntities" |
| fyrenmoo@2690 | 63 |
{
|
| fyrenmoo@2690 | 64 |
"library" "server" |
| fyrenmoo@2690 | 65 |
"linux" "@_ZN15CBaseTempEntity15s_pTempEntitiesE" |
| fyrenmoo@2690 | 66 |
} |
| fyrenmoo@2690 | 67 |
} |
| fyrenmoo@2690 | 68 |
} |
| fyrenmoo@2690 | 69 |
|
| fyrenmoo@2690 | 70 |
/* General GameRules */ |
| fyrenmoo@2690 | 71 |
"#default" |
| fyrenmoo@2690 | 72 |
{
|
| fyrenmoo@2690 | 73 |
"#supported" |
| fyrenmoo@2690 | 74 |
{
|
| fyrenmoo@2690 | 75 |
"game" "garrysmod" |
| fyrenmoo@2690 | 76 |
"game" "ship" |
| fyrenmoo@2690 | 77 |
"game" "sourceforts" |
| fyrenmoo@2690 | 78 |
"game" "FortressForever" |
| fyrenmoo@2690 | 79 |
"game" "hidden" |
| skamonkey@2873 | 80 |
"game" "NeotokyoSource" |
| skamonkey@3363 | 81 |
"game" "ios" |
| januk@3395 | 82 |
"game" "hl2ctf" |
| fyrenmoo@2690 | 83 |
} |
| fyrenmoo@2690 | 84 |
|
| fyrenmoo@2690 | 85 |
"Offsets" |
| fyrenmoo@2690 | 86 |
{
|
| fyrenmoo@2690 | 87 |
/* Offset into CreateGameRulesObject */ |
| fyrenmoo@2690 | 88 |
"g_pGameRules" |
| fyrenmoo@2690 | 89 |
{
|
| fyrenmoo@2690 | 90 |
"windows" "2" |
| fyrenmoo@2690 | 91 |
} |
| fyrenmoo@2690 | 92 |
} |
| fyrenmoo@2690 | 93 |
|
| fyrenmoo@2690 | 94 |
"Signatures" |
| fyrenmoo@2690 | 95 |
{
|
| fyrenmoo@2690 | 96 |
/* This signature sometimes has multiple matches, but this |
| fyrenmoo@2690 | 97 |
* does not matter as g_pGameRules is involved in all of them. |
| fyrenmoo@2690 | 98 |
* The same g_pGameRules offset applies to each match. |
| fyrenmoo@2690 | 99 |
* |
| fyrenmoo@2690 | 100 |
* Sometimes this block of bytes is at the beginning of the static |
| fyrenmoo@2690 | 101 |
* CreateGameRulesObject function and sometimes it is in the middle |
| fyrenmoo@2690 | 102 |
* of an entirely different function. This depends on the game. |
| fyrenmoo@2690 | 103 |
*/ |
| fyrenmoo@2690 | 104 |
"CreateGameRulesObject" |
| fyrenmoo@2690 | 105 |
{
|
| fyrenmoo@2690 | 106 |
"library" "server" |
| fyrenmoo@2690 | 107 |
"windows" "\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x2A\x8B\x01\x6A\x01\xFF\x50" |
| fyrenmoo@2690 | 108 |
} |
| fyrenmoo@2690 | 109 |
"g_pGameRules" |
| fyrenmoo@2690 | 110 |
{
|
| fyrenmoo@2690 | 111 |
"library" "server" |
| fyrenmoo@2690 | 112 |
"linux" "@g_pGameRules" |
| fyrenmoo@2690 | 113 |
} |
| fyrenmoo@2690 | 114 |
} |
| fyrenmoo@2690 | 115 |
} |
| fyrenmoo@2690 | 116 |
|
| fyrenmoo@2690 | 117 |
/* CGlobalEntityList */ |
| fyrenmoo@2690 | 118 |
"#default" |
| fyrenmoo@2690 | 119 |
{
|
| fyrenmoo@2690 | 120 |
"#supported" |
| fyrenmoo@2690 | 121 |
{
|
| fyrenmoo@2690 | 122 |
"game" "garrysmod" |
| fyrenmoo@2690 | 123 |
"game" "ship" |
| fyrenmoo@2690 | 124 |
"game" "sourceforts" |
| fyrenmoo@2690 | 125 |
"game" "FortressForever" |
| fyrenmoo@2690 | 126 |
"game" "hidden" |
| fyrenmoo@2690 | 127 |
"game" "zombie_master" |
| skamonkey@2873 | 128 |
"game" "NeotokyoSource" |
| skamonkey@3363 | 129 |
"game" "ios" |
| januk@3395 | 130 |
"game" "hl2ctf" |
| fyrenmoo@2690 | 131 |
} |
| fyrenmoo@2690 | 132 |
|
| fyrenmoo@2690 | 133 |
"Signatures" |
| pred@2746 | 134 |
{
|
| fyrenmoo@2690 | 135 |
/* Functions in CGlobalEntityList */ |
| fyrenmoo@2690 | 136 |
"FindEntityByClassname" |
| fyrenmoo@2690 | 137 |
{
|
| fyrenmoo@2690 | 138 |
"library" "server" |
| fyrenmoo@2690 | 139 |
"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" |
| fyrenmoo@2690 | 140 |
"linux" "@_ZN17CGlobalEntityList21FindEntityByClassnameEP11CBaseEntityPKc" |
| fyrenmoo@2690 | 141 |
} |
| fyrenmoo@2690 | 142 |
} |
| fyrenmoo@2690 | 143 |
} |
| fyrenmoo@2690 | 144 |
|
| fyrenmoo@2690 | 145 |
/* Create Entity Signatures */ |
| fyrenmoo@2690 | 146 |
"#default" |
| fyrenmoo@2690 | 147 |
{
|
| fyrenmoo@2690 | 148 |
"#supported" |
| fyrenmoo@2690 | 149 |
{
|
| fyrenmoo@2690 | 150 |
"game" "sourceforts" |
| fyrenmoo@2690 | 151 |
"game" "hidden" |
| fyrenmoo@2690 | 152 |
"game" "FortressForever" |
| skamonkey@2873 | 153 |
"game" "NeotokyoSource" |
| skamonkey@3363 | 154 |
"game" "ios" |
| fyrenmoo@2690 | 155 |
} |
| fyrenmoo@2690 | 156 |
|
| fyrenmoo@2690 | 157 |
"Signatures" |
| fyrenmoo@2690 | 158 |
{
|
| fyrenmoo@2690 | 159 |
"DispatchSpawn" |
| fyrenmoo@2690 | 160 |
{
|
| fyrenmoo@2690 | 161 |
"library" "server" |
| fyrenmoo@2690 | 162 |
"linux" "@_Z13DispatchSpawnP11CBaseEntity" |
| fyrenmoo@2690 | 163 |
"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" |
| fyrenmoo@2690 | 164 |
} |
| fyrenmoo@2690 | 165 |
"CreateEntityByName" |
| fyrenmoo@2690 | 166 |
{
|
| fyrenmoo@2690 | 167 |
"library" "server" |
| fyrenmoo@2690 | 168 |
"linux" "@_Z18CreateEntityByNamePKci" |
| fyrenmoo@2690 | 169 |
"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" |
| fyrenmoo@2690 | 170 |
} |
| fyrenmoo@2690 | 171 |
} |
| fyrenmoo@2690 | 172 |
} |
| fyrenmoo@2690 | 173 |
|
| fyrenmoo@2690 | 174 |
/* IServer interface pointer */ |
| fyrenmoo@2690 | 175 |
"#default" |
| fyrenmoo@2690 | 176 |
{
|
| fyrenmoo@2690 | 177 |
"Keys" |
| fyrenmoo@2690 | 178 |
{
|
| fyrenmoo@2690 | 179 |
/* Signature for the beginning of IVEngineServer::CreateFakeClient. |
| fyrenmoo@2690 | 180 |
* |
| fyrenmoo@2690 | 181 |
* The engine binary is not actually scanned in order to look for |
| fyrenmoo@2690 | 182 |
* this. SourceHook is used to used to determine the address of the |
| fyrenmoo@2690 | 183 |
* function and this signature is used to verify that it contains |
| fyrenmoo@2690 | 184 |
* the expected code. A pointer to sv (IServer interface) is used |
| fyrenmoo@2690 | 185 |
* here. |
| fyrenmoo@2690 | 186 |
*/ |
| fyrenmoo@2690 | 187 |
"CreateFakeClient_Windows" "\x8B\x44\x24\x2A\x50\xB9\x2A\x2A\x2A\x2A\xE8" |
| fyrenmoo@2690 | 188 |
} |
| fyrenmoo@2690 | 189 |
|
| fyrenmoo@2690 | 190 |
"Offsets" |
| fyrenmoo@2690 | 191 |
{
|
| fyrenmoo@2690 | 192 |
/* Offset into IVEngineServer::CreateFakeClient */ |
| fyrenmoo@2690 | 193 |
"sv" |
| fyrenmoo@2690 | 194 |
{
|
| fyrenmoo@2690 | 195 |
"windows" "6" |
| fyrenmoo@2690 | 196 |
} |
| fyrenmoo@2690 | 197 |
} |
| fyrenmoo@2690 | 198 |
|
| fyrenmoo@2690 | 199 |
"Signatures" |
| fyrenmoo@2690 | 200 |
{
|
| fyrenmoo@2690 | 201 |
/* CBaseServer object for IServer interface */ |
| fyrenmoo@2690 | 202 |
"sv" |
| fyrenmoo@2690 | 203 |
{
|
| fyrenmoo@2690 | 204 |
"library" "engine" |
| fyrenmoo@2690 | 205 |
"linux" "@sv" |
| fyrenmoo@2690 | 206 |
} |
| fyrenmoo@2690 | 207 |
} |
| fyrenmoo@2690 | 208 |
} |
| fyrenmoo@2690 | 209 |
|
| fyrenmoo@2690 | 210 |
/* EntityFactoryDictionary function */ |
| fyrenmoo@2690 | 211 |
"#default" |
| fyrenmoo@2690 | 212 |
{
|
| fyrenmoo@2690 | 213 |
"Signatures" |
| fyrenmoo@2690 | 214 |
{
|
| fyrenmoo@2690 | 215 |
"EntityFactory" |
| fyrenmoo@2690 | 216 |
{
|
| fyrenmoo@2690 | 217 |
"library" "server" |
| fyrenmoo@2690 | 218 |
"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" |
| fyrenmoo@2690 | 219 |
"linux" "@_Z23EntityFactoryDictionaryv" |
| fyrenmoo@2690 | 220 |
} |
| fyrenmoo@2690 | 221 |
} |
| fyrenmoo@2690 | 222 |
} |
| fyrenmoo@2690 | 223 |
/* CBaseEntityOutput::FireOutput */ |
| fyrenmoo@2690 | 224 |
"#default" |
| fyrenmoo@2690 | 225 |
{
|
| fyrenmoo@2690 | 226 |
"#supported" |
| fyrenmoo@2690 | 227 |
{
|
| skamonkey@2873 | 228 |
"game" "NeotokyoSource" |
| skamonkey@3038 | 229 |
"game" "zombie_master" |
| skamonkey@3363 | 230 |
"game" "ios" |
| fyrenmoo@2690 | 231 |
} |
| fyrenmoo@2690 | 232 |
"Signatures" |
| fyrenmoo@2690 | 233 |
{
|
| fyrenmoo@2690 | 234 |
"FireOutput" |
| fyrenmoo@2690 | 235 |
{
|
| fyrenmoo@2690 | 236 |
"library" "server" |
| fyrenmoo@2690 | 237 |
"windows" "\x81\xEC\x1C\x03\x00\x00\x53\x55\x56\x8B\x71\x14" |
| fyrenmoo@2690 | 238 |
"linux" "@_ZN17CBaseEntityOutput10FireOutputE9variant_tP11CBaseEntityS2_f" |
| fyrenmoo@2690 | 239 |
} |
| fyrenmoo@2690 | 240 |
} |
| fyrenmoo@2690 | 241 |
} |
| fyrenmoo@2690 | 242 |
|
| fyrenmoo@2690 | 243 |
/* SetUserInfo data */ |
| fyrenmoo@2690 | 244 |
"#default" |
| fyrenmoo@2690 | 245 |
{
|
| fyrenmoo@2690 | 246 |
"Offsets" |
| fyrenmoo@2690 | 247 |
{
|
| fyrenmoo@2690 | 248 |
/** |
| fyrenmoo@2690 | 249 |
* CBaseClient::SetUserCVar(char const*,char const*); |
| fyrenmoo@2690 | 250 |
* Linux offset straight from VTable dump. |
| pred@2746 | 251 |
* Windows offset is crazy. Found the windows SetName function using string "(%d)%-0.*s" |
| fyrenmoo@2690 | 252 |
* Cross referenced back to the vtable and counted manually (SetUserCvar is 1 higher, offsets start from 1) |
| fyrenmoo@2690 | 253 |
*/ |
| fyrenmoo@2690 | 254 |
"SetUserCvar" |
| fyrenmoo@2690 | 255 |
{
|
| fyrenmoo@2690 | 256 |
"windows" "17" |
| fyrenmoo@2690 | 257 |
"linux" "53" |
| fyrenmoo@2690 | 258 |
} |
| fyrenmoo@2690 | 259 |
/** |
| fyrenmoo@2690 | 260 |
* Offset into CBaseClient - Used by CBaseServer::UpdateUserSettings to determine when changes have been made. |
| fyrenmoo@2690 | 261 |
* Find CBaseClient::UpdateUserSettings (strings "net_maxroutable", "cl_updaterate" etc) and the offset is set to 0 near the end. |
| fyrenmoo@2690 | 262 |
* Linux: mov byte ptr [esi+98h], 0 |
| fyrenmoo@2690 | 263 |
* Win: mov byte ptr [esi+0A4h], 0 |
| fyrenmoo@2690 | 264 |
*/ |
| fyrenmoo@2690 | 265 |
"InfoChanged" |
| fyrenmoo@2690 | 266 |
{
|
| fyrenmoo@2690 | 267 |
"windows" "164" |
| fyrenmoo@2690 | 268 |
"linux" "152" |
| fyrenmoo@2690 | 269 |
} |
| fyrenmoo@2690 | 270 |
} |
| fyrenmoo@2690 | 271 |
} |
| fyrenmoo@2690 | 272 |
} |