gamedata/sdktools.games/engine.eye.txt
author Asher Baker <asherkin@gmail.com>
Wed Aug 22 23:23:31 2012 +0100 (2012-08-22)
changeset 3623 3fd87cb487f8
parent 3373 c6463cdc2180
permissions -rw-r--r--
Updated cstrike gamedata.
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
}