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