gamedata/sdktools.games.txt
author Scott Ehlert <ds@alliedmods.net>
Sun Jul 08 09:46:27 2007 +0000 (2007-07-08)
changeset 1065 11756fc9fb63
parent 1062 c6fd62f429fc
child 1068 3dc3b1fd2796
permissions -rw-r--r--
Wowzers
-Added support for CGameRules calls to SDKTools
-Changed some game names in sdktools.games.txt to descriptions
dvander@945
     1
"Games"
dvander@945
     2
{
dvander@1056
     3
	/* General Temp Entities */
faluco@1031
     4
	"#default"
faluco@1031
     5
	{
faluco@1031
     6
		"#supported"
faluco@1031
     7
		{
faluco@1031
     8
			"game"		"cstrike"
faluco@1031
     9
			"game"		"dod"
faluco@1031
    10
			"game"		"hl2mp"
ds@1065
    11
			"game"		"!Dystopia"
ds@1065
    12
			"game"		"!Insurgency"
ds@1065
    13
			"game"		"!SourceForts v1.9.2"
faluco@1031
    14
		}
faluco@1031
    15
faluco@1031
    16
		"Offsets"
faluco@1031
    17
		{
faluco@1031
    18
			/* Offset into CBaseTempEntity constructor */
faluco@1031
    19
			"s_pTempEntities"
faluco@1031
    20
			{
faluco@1031
    21
				"windows"	"17"
faluco@1031
    22
				"linux"		"27"
faluco@1031
    23
			}
faluco@1031
    24
			"GetTEName"
faluco@1031
    25
			{
faluco@1031
    26
				"windows"	"4"
faluco@1031
    27
				"linux"		"4"
faluco@1031
    28
			}
faluco@1031
    29
			"GetTENext"
faluco@1031
    30
			{
faluco@1031
    31
				"windows"	"8"
faluco@1031
    32
				"linux"		"8"
faluco@1031
    33
			}
faluco@1031
    34
			"TE_GetServerClass"
faluco@1031
    35
			{
faluco@1031
    36
				"windows"	"1"
faluco@1031
    37
				"linux"		"1"
faluco@1031
    38
			}
faluco@1031
    39
		}
faluco@1031
    40
faluco@1031
    41
		"Signatures"
faluco@1031
    42
		{
faluco@1031
    43
			"CBaseTempEntity"
faluco@1031
    44
			{
faluco@1031
    45
				"library"	"server"
faluco@1031
    46
				"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"
faluco@1031
    47
				"linux"		"@_ZN15CBaseTempEntityC2EPKc"
faluco@1031
    48
			}
faluco@1031
    49
		}
faluco@1031
    50
	}
ds@1065
    51
	
ds@1065
    52
	/* General GameRules */
ds@1065
    53
	"#default"
dvander@1056
    54
	{
ds@1065
    55
		"#supported"
ds@1065
    56
		{
ds@1065
    57
			"game"		"cstrike"
ds@1065
    58
			"game"		"dod"
ds@1065
    59
			"game"		"garrysmod"
ds@1065
    60
			"game"		"hl2mp"
ds@1065
    61
			"game"		"ship"
ds@1065
    62
			"game"		"!Dystopia"
ds@1065
    63
			"game"		"!Insurgency"
ds@1065
    64
			"game"		"!SourceForts v1.9.2"
ds@1065
    65
		}
ds@1065
    66
		
dvander@1056
    67
		"Offsets"
dvander@1056
    68
		{
ds@1065
    69
			/* Offset into CreateGameRulesObject */
ds@1065
    70
			"g_pGameRules"
dvander@1056
    71
			{
ds@1065
    72
				"windows"	"2"
dvander@1056
    73
			}
ds@1065
    74
		}
ds@1065
    75
		
ds@1065
    76
		"Signatures"
ds@1065
    77
		{
ds@1065
    78
			/* This signature sometimes has multiple matches, but this
ds@1065
    79
			 * does not matter as g_pGameRules is involved in all of them.
ds@1065
    80
			 * The same g_pGameRules offset applies to each match.
ds@1065
    81
			 *
ds@1065
    82
			 * Sometimes this block of bytes is at the beginning of the static
ds@1065
    83
			 * CreateGameRulesObject function and sometimes it is in the middle
ds@1065
    84
			 * of an entirely different function. This depends on the game.
ds@1065
    85
			 */
ds@1065
    86
			"CreateGameRulesObject"
dvander@1056
    87
			{
ds@1065
    88
				"library"	"server"
ds@1065
    89
				"windows"	"\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x2A\x8B\x01\x6A\x01\xFF\x50"
dvander@1056
    90
			}
ds@1065
    91
			"g_pGameRules"
dvander@1056
    92
			{
ds@1065
    93
				"library"	"server"
ds@1065
    94
				"linux"		"@g_pGameRules"
dvander@1056
    95
			}
dvander@1056
    96
		}
dvander@1056
    97
	}
dvander@1056
    98
dvander@1056
    99
	/* Counter-Strike: Source */
dvander@1056
   100
	"cstrike"
dvander@1056
   101
	{
dvander@1056
   102
		"Offsets"
dvander@1056
   103
		{
dvander@1056
   104
			"GiveNamedItem"
dvander@1056
   105
			{
dvander@1056
   106
				"windows"	"329"
dvander@1056
   107
				"linux"		"330"
dvander@1056
   108
			}
dvander@1056
   109
			"RemovePlayerItem"
dvander@1056
   110
			{
dvander@1056
   111
				"windows"	"226"
dvander@1056
   112
				"linux"		"227"
dvander@1056
   113
			}
dvander@1056
   114
			"Weapon_GetSlot"
dvander@1056
   115
			{
dvander@1056
   116
				"windows"	"224"
dvander@1056
   117
				"linux"		"225"
dvander@1056
   118
			}
dvander@1056
   119
			"Ignite"
dvander@1056
   120
			{
dvander@1056
   121
				"windows"	"188"
dvander@1056
   122
				"linux"		"189"
dvander@1056
   123
			}
dvander@1056
   124
			"Extinguish"
dvander@1056
   125
			{
dvander@1056
   126
				"windows"	"189"
dvander@1056
   127
				"linux"		"190"
dvander@1056
   128
			}
dvander@1056
   129
			"Teleport"
dvander@1056
   130
			{
dvander@1056
   131
				"windows"	"98"
dvander@1056
   132
				"linux"		"99"
dvander@1056
   133
			}
dvander@1056
   134
		}
dvander@1056
   135
	}
dvander@1056
   136
dvander@1056
   137
	/* Day of Defeat */
dvander@1056
   138
	"dod"
dvander@1056
   139
	{
dvander@1056
   140
		"Offsets"
dvander@1056
   141
		{
dvander@1056
   142
			"GiveNamedItem"
dvander@1056
   143
			{
dvander@1056
   144
				"windows"	"328"
dvander@1056
   145
				"linux"		"330"
dvander@1056
   146
			}
dvander@1056
   147
			"RemovePlayerItem"
dvander@1056
   148
			{
dvander@1056
   149
				"windows"	"226"
dvander@1056
   150
				"linux"		"227"
dvander@1056
   151
			}
dvander@1056
   152
			"Weapon_GetSlot"
dvander@1056
   153
			{
dvander@1056
   154
				"windows"	"224"
dvander@1056
   155
				"linux"		"225"
dvander@1056
   156
			}
dvander@1056
   157
			"Ignite"
dvander@1056
   158
			{
dvander@1056
   159
				"windows"	"188"
dvander@1056
   160
				"linux"		"189"
dvander@1056
   161
			}
dvander@1056
   162
			"Extinguish"
dvander@1056
   163
			{
dvander@1056
   164
				"windows"	"189"
dvander@1056
   165
				"linux"		"190"
dvander@1056
   166
			}
dvander@1056
   167
			"Teleport"
dvander@1056
   168
			{
dvander@1056
   169
				"windows"	"98"
dvander@1056
   170
				"linux"		"99"
dvander@1056
   171
			}
dvander@1056
   172
		}
dvander@1056
   173
	}
ds@1065
   174
	
ds@1065
   175
	/* Half-Life 2: Deathmatch */
ds@1065
   176
	"hl2mp"
dvander@1062
   177
	{
dvander@1062
   178
		"Offsets"
dvander@1062
   179
		{
dvander@1062
   180
			"GiveNamedItem"
dvander@1062
   181
			{
ds@1065
   182
				"windows"	"327"
ds@1065
   183
				"linux"		"328"
dvander@1062
   184
			}
dvander@1062
   185
			"RemovePlayerItem"
dvander@1062
   186
			{
ds@1065
   187
				"windows"	"225"
ds@1065
   188
				"linux"		"226"
dvander@1062
   189
			}
dvander@1062
   190
			"Weapon_GetSlot"
dvander@1062
   191
			{
ds@1065
   192
				"windows"	"223"
ds@1065
   193
				"linux"		"224"
dvander@1062
   194
			}
dvander@1062
   195
			"Ignite"
dvander@1062
   196
			{
ds@1065
   197
				"windows"	"187"
ds@1065
   198
				"linux"		"188"
dvander@1062
   199
			}
dvander@1062
   200
			"Extinguish"
dvander@1062
   201
			{
ds@1065
   202
				"windows"	"188"
ds@1065
   203
				"linux"		"189"
dvander@1062
   204
			}
dvander@1062
   205
			"Teleport"
dvander@1062
   206
			{
ds@1065
   207
				"windows"	"97"
ds@1065
   208
				"linux"		"98"
dvander@1062
   209
			}
dvander@1062
   210
		}
dvander@1062
   211
	}
ds@1065
   212
	
dvander@1056
   213
	/* Dsytopia */
ds@1065
   214
	"!Dystopia"
dvander@1056
   215
	{
dvander@1056
   216
dvander@1056
   217
		"Offsets"
dvander@1056
   218
		{
dvander@1062
   219
			/* CBasePlayer */
dvander@1062
   220
			"GiveNamedItem"
dvander@1062
   221
			{
dvander@1062
   222
				"windows"	"331"
dvander@1062
   223
				"linux"		"332"
dvander@1062
   224
			}
dvander@1062
   225
			"RemovePlayerItem"
dvander@1062
   226
			{
dvander@1062
   227
				"windows"	"229"
dvander@1062
   228
				"linux"		"230"
dvander@1062
   229
			}
dvander@1062
   230
			"Weapon_GetSlot"
dvander@1062
   231
			{
dvander@1062
   232
				"windows"	"227"
dvander@1062
   233
				"linux"		"228"
dvander@1062
   234
			}
dvander@1062
   235
			"Ignite"
dvander@1062
   236
			{
dvander@1062
   237
				"windows"	"191"
dvander@1062
   238
				"linux"		"192"
dvander@1062
   239
			}
dvander@1062
   240
			"Extinguish"
dvander@1062
   241
			{
dvander@1062
   242
				"windows"	"192"
dvander@1062
   243
				"linux"		"193"
dvander@1062
   244
			}
dvander@1062
   245
			"Teleport"
dvander@1062
   246
			{
dvander@1062
   247
				"windows"	"100"
dvander@1062
   248
				"linux"		"101"
dvander@1062
   249
			}
dvander@1062
   250
dvander@1056
   251
			/* Offset into CBaseTempEntity constructor.
dvander@1056
   252
			 * On Windows Dsytopia is heavily inlined; we use the function 
dvander@1056
   253
			 * surrounding "aCouldnTFindTem" in IDA instead.
dvander@1056
   254
			 */
dvander@1056
   255
			"s_pTempEntities"
dvander@1056
   256
			{
dvander@1056
   257
				"windows"	"70"
dvander@1056
   258
				"linux"		"29"
dvander@1056
   259
			}
dvander@1056
   260
		}
dvander@1056
   261
dvander@1056
   262
		"Signatures"
dvander@1056
   263
		{
dvander@1062
   264
			/* On Windows Dsytopia is heavily inlined; we use the function 
dvander@1062
   265
			 * surrounding "aCouldnTFindTem" in IDA instead.
dvander@1062
   266
			 */
dvander@1056
   267
			"CBaseTempEntity"
dvander@1056
   268
			{
dvander@1056
   269
				"library"	"server"
dvander@1056
   270
				"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"
dvander@1056
   271
			}
ds@1065
   272
ds@1065
   273
			/* Dystopia always has to be different, doesn't it
ds@1065
   274
			 *
ds@1065
   275
			 * This is very similar to the general signature, except that
ds@1065
   276
			 * it does "mov edx, [eax+2Ch]" before making a call rather than
ds@1065
   277
			 * doing "call dword ptr [eax+2Ch]"
ds@1065
   278
			 */
ds@1065
   279
			"CreateGameRulesObject"
ds@1065
   280
			{
ds@1065
   281
				"library"	"server"
ds@1065
   282
				"windows"	"\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x2A\x8B\x01\x8B\x50\x2A\x6A\x01\xFF\xD2"
ds@1065
   283
			}
ds@1065
   284
		}
ds@1065
   285
	}
ds@1065
   286
ds@1065
   287
	/* Insurgency */
ds@1065
   288
	"!Insurgency"
ds@1065
   289
	{
ds@1065
   290
		"Offsets"
ds@1065
   291
		{
ds@1065
   292
			/* CBasePlayer */
ds@1065
   293
			"Ignite"
ds@1065
   294
			{
ds@1065
   295
				"windows"	"174"
ds@1065
   296
				"linux"		"175"
ds@1065
   297
			}
ds@1065
   298
			"Extinguish"
ds@1065
   299
			{
ds@1065
   300
				"windows"	"175"
ds@1065
   301
				"linux"		"176"
ds@1065
   302
			}
ds@1065
   303
			"Teleport"
ds@1065
   304
			{
ds@1065
   305
				"windows"	"90"
ds@1065
   306
				"linux"		"91"
ds@1065
   307
			}
ds@1065
   308
ds@1065
   309
			/* Temp Entities */
ds@1065
   310
			"s_pTempEntities"
ds@1065
   311
			{
ds@1065
   312
				"linux"		"28"
ds@1065
   313
			}
ds@1065
   314
		}
ds@1065
   315
	}
ds@1065
   316
ds@1065
   317
	/* SourceForts 1.9.2 */
ds@1065
   318
	"!SourceForts v1.9.2"
ds@1065
   319
	{
ds@1065
   320
		"Offsets"
ds@1065
   321
		{
ds@1065
   322
			/* CBasePlayer */
ds@1065
   323
			"GiveNamedItem"
ds@1065
   324
			{
ds@1065
   325
				"windows"	"294"
ds@1065
   326
				"linux"		"295"
ds@1065
   327
			}
ds@1065
   328
			"RemovePlayerItem"
ds@1065
   329
			{
ds@1065
   330
				"windows"	"207"
ds@1065
   331
				"linux"		"208"
ds@1065
   332
			}
ds@1065
   333
			"Weapon_GetSlot"
ds@1065
   334
			{
ds@1065
   335
				"windows"	"205"
ds@1065
   336
				"linux"		"206"
ds@1065
   337
			}
ds@1065
   338
			"Ignite"
ds@1065
   339
			{
ds@1065
   340
				"windows"	"170"
ds@1065
   341
				"linux"		"171"
ds@1065
   342
			}
ds@1065
   343
			"Extinguish"
ds@1065
   344
			{
ds@1065
   345
				"windows"	"171"
ds@1065
   346
				"linux"		"172"
ds@1065
   347
			}
ds@1065
   348
			"Teleport"
ds@1065
   349
			{
ds@1065
   350
				"windows"	"90"
ds@1065
   351
				"linux"		"91"
ds@1065
   352
			}
ds@1065
   353
ds@1065
   354
			/* Temp Entities */
ds@1065
   355
			"s_pTempEntities"
ds@1065
   356
			{
ds@1065
   357
				"linux"		"29"
ds@1065
   358
			}
ds@1065
   359
			"TE_GetServerClass"
ds@1065
   360
			{
ds@1065
   361
				"windows"	"0"
ds@1065
   362
				"linux"		"0"
ds@1065
   363
			}
dvander@1056
   364
		}
dvander@1056
   365
	}
dvander@945
   366
}