| author | Matt Woodrow <pred@alliedmods.net> |
| Thu Apr 17 02:46:31 2008 +0000 (2008-04-17) | |
| changeset 2008 | e1b17bd44390 |
| parent 1958 | 4ad91ad970ac |
| child 2031 | 6f141bd82d73 |
| permissions | -rw-r--r-- |
1 "Games"
2 {
3 /* Sounds */
4 "#default"
5 {
6 "Keys"
7 {
8 "SlapSoundCount" "3"
9 "SlapSound1" "player/pl_fallpain1.wav"
10 "SlapSound2" "player/pl_fallpain3.wav"
11 "SlapSound3" "player/pl_pain5.wav"
12 "m_iFrags" "m_iFrags"
13 }
14 "Offsets"
15 {
16 "m_iHealth"
17 {
18 "class" "CBasePlayer"
19 "prop" "m_iHealth"
20 }
21 "m_lifeState"
22 {
23 "class" "CBasePlayer"
24 "prop" "m_lifeState"
25 }
26 }
27 }
29 /* General Temp Entities */
30 "#default"
31 {
32 "#supported"
33 {
34 "game" "tf"
35 }
37 "Offsets"
38 {
39 /* Offset into CBaseTempEntity constructor */
40 "s_pTempEntities"
41 {
42 "windows" "17"
43 }
44 "GetTEName"
45 {
46 "windows" "4"
47 "linux" "4"
48 }
49 "GetTENext"
50 {
51 "windows" "8"
52 "linux" "8"
53 }
54 "TE_GetServerClass"
55 {
56 "windows" "0"
57 "linux" "0"
58 }
59 }
61 "Signatures"
62 {
63 "CBaseTempEntity"
64 {
65 "library" "server"
66 "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"
67 }
68 "s_pTempEntities"
69 {
70 "library" "server"
71 "linux" "@_ZN15CBaseTempEntity15s_pTempEntitiesE"
72 }
73 }
74 }
76 /* Create Entity Signatures */
77 "#default"
78 {
79 "#supported"
80 {
81 "game" "tf"
82 }
84 "Signatures"
85 {
86 "DispatchSpawn"
87 {
88 "library" "server"
89 "linux" "@_Z13DispatchSpawnP11CBaseEntity"
90 "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\x50\x64\x8B\xCB"
91 }
92 "CreateEntityByName"
93 {
94 "library" "server"
95 "linux" "@_Z18CreateEntityByNamePKci"
96 "windows" "\x56\x8B\x74\x24\x0C\x83\xFE\xFF\x57\x8B\x7C\x24\x0C\x74\x27\x8B\x0D\x2A\x2A\x2A\x2A\x8B\x01\x8B\x50\x54\x56\xFF\xD2"
97 }
98 }
99 }
101 /* CGlobalEntityList */
102 "#default"
103 {
104 "#supported"
105 {
106 "game" "tf"
107 }
109 "Offsets"
110 {
111 /* Offset into LevelShutdown */
112 "gEntList"
113 {
114 "windows" "11"
115 }
116 }
118 "Signatures"
119 {
120 "LevelShutdown"
121 {
122 "library" "server"
123 "windows" "\xE8\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\xB9\x2A\x2A\x2A\x2A\xE8\x2A\x2A\x2A\x2A\xE8"
124 }
125 "gEntList"
126 {
127 "library" "server"
128 "linux" "@gEntList"
129 }
131 /* Functions in CGlobalEntityList */
132 "FindEntityByClassname"
133 {
134 "library" "server"
135 "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"
136 "linux" "@_ZN17CGlobalEntityList21FindEntityByClassnameEP11CBaseEntityPKc"
137 }
138 }
139 }
141 /* General GameRules */
142 "#default"
143 {
144 "#supported"
145 {
146 "game" "tf"
147 }
149 "Offsets"
150 {
151 /* Offset into CreateGameRulesObject */
152 "g_pGameRules"
153 {
154 "windows" "2"
155 }
156 }
158 "Signatures"
159 {
160 /* This signature sometimes has multiple matches, but this
161 * does not matter as g_pGameRules is involved in all of them.
162 * The same g_pGameRules offset applies to each match.
163 *
164 * Sometimes this block of bytes is at the beginning of the static
165 * CreateGameRulesObject function and sometimes it is in the middle
166 * of an entirely different function. This depends on the game.
167 */
168 "CreateGameRulesObject"
169 {
170 "library" "server"
171 "windows" "\x8B\x0D\x2A\x2A\x2A\x2A\x85\xC9\x74\x2A\x8B\x01\x8B\x50\x2A\x6A\x01\xFF\xD2"
172 }
173 "g_pGameRules"
174 {
175 "library" "server"
176 "linux" "@g_pGameRules"
177 }
178 }
179 }
181 /* IServer interface pointer */
182 "#default"
183 {
184 "Offsets"
185 {
186 /* Offset into IVEngineServer::CreateFakeClient */
187 "sv"
188 {
189 "windows" "6"
190 }
191 }
193 "Signatures"
194 {
195 /* CBaseServer object for IServer interface */
196 "sv"
197 {
198 "library" "engine"
199 "linux" "@sv"
200 }
201 }
202 }
204 /* Team Fortress 2 Offsets */
205 "tf"
206 {
207 "Offsets"
208 {
209 "GiveNamedItem"
210 {
211 "windows" "348"
212 "linux" "349"
213 }
214 "RemovePlayerItem"
215 {
216 "windows" "236"
217 "linux" "237"
218 }
219 "Weapon_GetSlot"
220 {
221 "windows" "234"
222 "linux" "235"
223 }
224 "Ignite"
225 {
226 "windows" "191"
227 "linux" "192"
228 }
229 "Extinguish"
230 {
231 "windows" "195"
232 "linux" "196"
233 }
234 "Teleport"
235 {
236 "windows" "99"
237 "linux" "100"
238 }
239 "CommitSuicide"
240 {
241 "windows" "385"
242 "linux" "385"
243 }
244 "GetVelocity"
245 {
246 "windows" "128"
247 "linux" "129"
248 }
249 "EyeAngles"
250 {
251 "windows" "120"
252 "linux" "121"
253 }
254 "DispatchKeyValue"
255 {
256 "windows" "29"
257 "linux" "28"
258 }
259 "DispatchKeyValueFloat"
260 {
261 "windows" "28"
262 "linux" "29"
263 }
264 "DispatchKeyValueVector"
265 {
266 "windows" "27"
267 "linux" "30"
268 }
269 "SetEntityModel"
270 {
271 "windows" "23"
272 "linux" "24"
273 }
274 "AcceptInput"
275 {
276 "windows" "34"
277 "linux" "35"
278 }
279 "WeaponEquip"
280 {
281 "windows" "227"
282 "linux" "228"
283 }
284 "Activate"
285 {
286 "windows" "31"
287 "linux" "32"
288 }
289 }
290 }
291 /* EntityFactoryDictionary function */
292 "#default"
293 {
294 "Signatures"
295 {
296 "EntityFactory"
297 {
298 "library" "server"
299 "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"
300 "linux" "@_Z23EntityFactoryDictionaryv"
301 }
302 }
303 }
304 /* CBaseEntityOutput::FireOutput */
305 "#default"
306 {
307 "#supported"
308 {
309 "game" "tf"
310 }
311 "Signatures"
312 {
313 "FireOutput"
314 {
315 "library" "server"
316 "windows" "\x81\xEC\x1C\x01\x00\x00\x53\x55\x56\x8B\x71\x14\x85\xF6"
317 "linux" "@_ZN17CBaseEntityOutput10FireOutputE9variant_tP11CBaseEntityS2_f"
318 }
319 }
320 "Offsets"
321 {
322 "FireOutputBackup"
323 {
324 "windows" "6"
325 "linux" "10"
326 }
327 }
328 }
329 }