Skip to content

Commit 3668340

Browse files
authored
Merge branch 'SirPlease:master' into master
2 parents c48e7c5 + f99907d commit 3668340

File tree

18 files changed

+503
-5
lines changed

18 files changed

+503
-5
lines changed

.github/workflows/check_plugins.yml

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,9 +47,20 @@ jobs:
4747

4848
- name: Compile plugins
4949
run: |
50+
errors=0
5051
for file in *.sp
5152
do
5253
echo -e "\nCompiling $file..."
53-
spcomp -E -w234 -w217 -O2 -v2 -i $SCRIPTS_PATH/include $file
54+
spcomp -E -w234 -w217 -O2 -v2 -i $SCRIPTS_PATH/include $file || {
55+
errors=$((errors + 1))
56+
continue
57+
}
5458
done
59+
if [ "$errors" -gt 0 ]; then
60+
echo -e "\n$errors plugin(s) failed to compile."
61+
exit 1
62+
else
63+
echo -e "\nAll plugins compiled successfully."
64+
exit 0
65+
fi
5566
working-directory: ${{ env.SCRIPTS_PATH }}/
Lines changed: 231 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,231 @@
1+
"Games"
2+
{
3+
"#default"
4+
{
5+
"Functions"
6+
{
7+
"PhysicsDamage::operator()"
8+
{
9+
"signature" "PhysicsDamage::operator()"
10+
"callconv" "thiscall"
11+
"return" "int"
12+
"this" "ignore"
13+
"arguments"
14+
{
15+
"pPlayer"
16+
{
17+
"type" "cbaseentity"
18+
}
19+
}
20+
}
21+
}
22+
}
23+
24+
"left4dead"
25+
{
26+
"MemPatches"
27+
{
28+
"prop_moveaway_mass_thres"
29+
{
30+
"signature" "PhysicsDamage::operator()"
31+
"linux"
32+
{
33+
"offset" "4EFh"
34+
"verify" "\x2A\x2A\xD9\x83" // D9 83 C8 0D D9 FF fld ds:(flt_953DBC - 0BC2FF4h)[ebx] ; 900.0
35+
"preserve" "\xFF\xFF\x00\x00\xFF\xFF\xFF\xFF"
36+
"patch" "\x90\x90\xD9\x05\x90\x90\x90\x90" // D9 05
37+
}
38+
"windows"
39+
{
40+
"offset" "373h"
41+
"verify" "\x2A\x2A\xD8\x1D" // D8 1D 5C D1 46 10 fcomp ds:flt_1046D15C ; 900.0
42+
"preserve" "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF"
43+
"patch" "\x90\x90\x90\x90\x90\x90\x90\x90"
44+
}
45+
}
46+
47+
"prop_medium_touching_moveaway"
48+
{
49+
"signature" "PhysicsDamage::operator()"
50+
"linux"
51+
{
52+
"offset" "518h"
53+
54+
// 89 74 24 04 mov [esp+18Ch+lpstype], esi ; CBasePlayer *
55+
// 89 3C 24 mov [esp+18Ch+lpsrc], edi ; CBaseEntity *
56+
// E8 C4 AB FF FF call _Z12MovePropAwayP11CBaseEntityP11CBasePlayer ; MovePropAway(CBaseEntity *,CBasePlayer *)
57+
"verify" "\x89\x74\x24\x04\x89\x3C\x24\xE8"
58+
59+
// B0 01 mov al, 1
60+
// EB 08 jmp short after_call_to_MovePropAway
61+
"patch" "\xB0\x01\xEB\x08"
62+
}
63+
"windows"
64+
{
65+
"offset" "396h"
66+
67+
// 56 push esi
68+
// 57 push edi
69+
// E8 63 FA FF FF call _Z12MovePropAwayP11CBaseEntityP11CBasePlayer ; MovePropAway(CBaseEntity *,CBasePlayer *)
70+
// 83 C4 08 add esp, 8
71+
"verify" "\x89\x5C\x24\x04\x89\x34\x24\xE8"
72+
73+
// B0 01 mov al, 1
74+
// EB 06 jmp short after_call_to_MovePropAway
75+
"patch" "\xB0\x01\xEB\x06"
76+
}
77+
}
78+
79+
"prop_heavy_touching_move_above"
80+
{
81+
"signature" "PhysicsDamage::operator()"
82+
"linux"
83+
{
84+
"offset" "855h"
85+
86+
// D9 84 24 24 01 00 00 fld [esp+18Ch+var_68]
87+
// DD 5C 24 30 fstp [esp+18Ch+var_15C]
88+
// D9 84 24 20 01 00 00 fld [esp+18Ch+var_6C]
89+
// DD 5C 24 28 fstp [esp+18Ch+var_164]
90+
// D9 84 24 1C 01 00 00 fld [esp+18Ch+var_70]
91+
// DD 5C 24 20 fstp [esp+18Ch+var_16C]
92+
// D9 44 24 60 fld [esp+18Ch+var_12C]
93+
// ...
94+
// E8 4D 30 0F 00 call _ZN11CBaseEntity12SetAbsOriginERK6Vector ; CBaseEntity::SetAbsOrigin(Vector const&)
95+
"verify" "\xD9\x84\x24\x2A\x2A\x2A\x2A\xDD\x5C\x24\x2A\xD9\x84\x24\x2A\x2A\x2A\x2A\xDD\x5C\x24\x2A\xD9\x84\x24\x2A\x2A\x2A\x2A\xDD\x5C\x24\x2A\xD9\x44\x24"
96+
97+
// EB 62 jmp short after_call_to_SetAbsOrigin
98+
"patch" "\xEB\x62"
99+
}
100+
"windows"
101+
{
102+
"offset" "557h"
103+
104+
// D9 84 24 A4 00 00 00 fld [esp+140h+var_9C]
105+
// 83 EC 30 sub esp, 30h
106+
// ...
107+
// E8 9B EA DD FF call _ZN11CBaseEntity12SetAbsOriginERK6Vector ; CBaseEntity::SetAbsOrigin(Vector const&)
108+
"verify" "\xD9\x84\x24\x2A\x2A\x2A\x2A\x83\xEC\x30"
109+
110+
// EB 5C jmp short after_call_to_SetAbsOrigin
111+
"patch" "\xEB\x5C"
112+
}
113+
}
114+
}
115+
116+
"Signatures"
117+
{
118+
"PhysicsDamage::operator()"
119+
{
120+
"library" "server"
121+
"linux" "@_ZN13PhysicsDamageclEP13CTerrorPlayer"
122+
"windows" "\x55\x8B\xEC\x83\xE4\xC0\x81\xEC\x34\x01\x00\x00\x53\x56\x8B\x75\x08"
123+
// 55 8B EC 83 E4 C0 81 EC 34 01 00 00 53 56 8B 75 08
124+
}
125+
}
126+
}
127+
128+
"left4dead2"
129+
{
130+
"MemPatches"
131+
{
132+
"prop_moveaway_mass_thres"
133+
{
134+
"signature" "PhysicsDamage::operator()"
135+
"linux"
136+
{
137+
"offset" "5D4h"
138+
"verify" "\x2A\x0F\x2F\x0D" // 0F 2F 0D 00 D0 BF 00 comiss xmm1, ds:dword_BFD000 ; 900.0
139+
"preserve" "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF"
140+
"patch" "\x90\x90\x90\x90\x90\x90\x90\x90"
141+
}
142+
"windows"
143+
{
144+
"offset" "4A6h"
145+
"verify" "\xF3\x0F\x10" // F3 0F 10 05 E0 DA 60 10 movss xmm0, ds:dword_1060DAE0 ; 900.0
146+
"preserve" "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF"
147+
"patch" "\x90\x90\x90\x90\x90\x90\x90\x90"
148+
}
149+
}
150+
151+
"prop_medium_touching_moveaway"
152+
{
153+
"signature" "PhysicsDamage::operator()"
154+
"linux"
155+
{
156+
"offset" "5F2h"
157+
158+
// 89 5C 24 04 mov [esp+4], ebx ; CBasePlayer *
159+
// 89 34 24 mov [esp], esi ; CBaseEntity *
160+
// E8 F2 73 FF FF call _Z12MovePropAwayP11CBaseEntityP11CBasePlayer ; MovePropAway(CBaseEntity *,CBasePlayer *)
161+
"verify" "\x89\x5C\x24\x04\x89\x34\x24\xE8"
162+
163+
// B0 01 mov al, 1
164+
// EB 08 jmp short after_call_to_MovePropAway
165+
"patch" "\xB0\x01\xEB\x08"
166+
}
167+
"windows"
168+
{
169+
"offset" "4C7h"
170+
171+
// 56 push esi
172+
// 57 push edi
173+
// E8 E2 F8 FF FF call _Z12MovePropAwayP11CBaseEntityP11CBasePlayer ; MovePropAway(CBaseEntity *,CBasePlayer *)
174+
// 83 C4 08 add esp, 8
175+
"verify" "\x89\x5C\x24\x04\x89\x34\x24\xE8"
176+
177+
// B0 01 mov al, 1
178+
// EB 06 jmp short after_call_to_MovePropAway
179+
"patch" "\xB0\x01\xEB\x06"
180+
}
181+
}
182+
183+
"prop_heavy_touching_move_above"
184+
{
185+
"signature" "PhysicsDamage::operator()"
186+
"linux"
187+
{
188+
"offset" "9FFh"
189+
190+
// 8B 03 mov eax, [ebx]
191+
// F3 0F 10 95 48 FF FF FF movss xmm2, [ebp+var_CC.endpos.z]
192+
// F3 0F 10 8D 44 FF FF FF movss xmm1, [ebp+var_CC.endpos.y]
193+
// F3 0F 10 85 40 FF FF FF movss xmm0, [ebp+var_CC.endpos.x]
194+
// 0F 5A D2 cvtps2pd xmm2, xmm2
195+
// ...
196+
// E8 1E DE 0F 00 call _ZN11CBaseEntity12SetAbsOriginERK6Vector ; CBaseEntity::SetAbsOrigin(Vector const&)
197+
"verify" "\x8B\x03\xF3\x0F\x10\x2A\x2A\x2A\x2A\x2A\xF3\x0F\x10\x2A\x2A\x2A\x2A\x2A\xF3\x0F\x10\x2A\x2A\x2A\x2A\x2A\x0F"
198+
199+
// E9 BE 00 00 00 jmp after_call_to_SetAbsOrigin
200+
"patch" "\xE9\xBE\x00\x00\x00"
201+
}
202+
"windows"
203+
{
204+
"offset" "58Fh"
205+
206+
// D9 45 BC fld [ebp+var_44]
207+
// 8B 06 mov eax, [esi]
208+
// 8B 90 B4 00 00 00 mov edx, [eax+0B4h]
209+
// 83 EC 30 sub esp, 30h
210+
// ...
211+
// E8 1E DE 0F 00 call _ZN11CBaseEntity12SetAbsOriginERK6Vector ; CBaseEntity::SetAbsOrigin(Vector const&)
212+
"verify" "\xD9\x45\x2A\x8B\x06\x8B\x2A\x2A\x2A\x2A\x2A\x83\xEC\x30"
213+
214+
// EB 4F jmp short after_call_to_SetAbsOrigin
215+
"patch" "\xEB\x4F"
216+
}
217+
}
218+
}
219+
220+
"Signatures"
221+
{
222+
"PhysicsDamage::operator()"
223+
{
224+
"library" "server"
225+
"linux" "@_ZN13PhysicsDamageclEP13CTerrorPlayer"
226+
"windows" "\x55\x8B\xEC\x81\xEC\x34\x01\x00\x00\xA1\x2A\x2A\x2A\x2A\x33\xC5\x89\x45\xFC\x56\x8B\x75\x08"
227+
// 55 8B EC 81 EC 34 01 00 00 A1 ? ? ? ? 33 C5 89 45 FC 56 8B 75 08
228+
}
229+
}
230+
}
231+
}
6.31 KB
Binary file not shown.
301 Bytes
Binary file not shown.

addons/sourcemod/scripting/checkpoint-rage-control.sp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ Action SetSaferoomFrustrationTickdown(int args)
8080
GetCmdArg(1, sMap, sizeof(sMap));
8181

8282
g_smTickdownMaps.SetValue(sMap, true);
83-
return Plugin_Continue;
83+
return Plugin_Handled;
8484
}
8585

8686
public void OnPluginEnd()
@@ -354,4 +354,4 @@ void LoadTranslation(const char[] translation)
354354
SetFailState("Missing translation file %s.txt", translation);
355355

356356
LoadTranslations(translation);
357-
}
357+
}

addons/sourcemod/scripting/holdout_bonus.sp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -626,7 +626,7 @@ void KV_Load()
626626
return;
627627
}
628628

629-
PrintDebug("Holdout data loaded from file: %s.", sNameBuff);
629+
PrintDebug("Holdout data loaded from file: %s", sNameBuff);
630630
}
631631

632632
bool KV_UpdateHoldoutMapInfo()
@@ -723,7 +723,7 @@ int GetPlayerCharacter(int client)
723723
void PrintDebug(const char[] Message, any ...)
724724
{
725725
char DebugBuff[256];
726-
VFormat(DebugBuff, sizeof(DebugBuff), Message, 3);
726+
VFormat(DebugBuff, sizeof(DebugBuff), Message, 2);
727727
LogMessage(DebugBuff);
728728
//PrintToServer(DebugBuff);
729729
}

0 commit comments

Comments
 (0)