Closed johnally closed 8 years ago
For more information, I'm using the latest HLDS installed with "app_update 90 validate" (SteamCMD) (Command was run multiple times because they said there is a bug)
Thank you,
Amxmodx is NOT at fault. My bad. I disabled it alone to test and it still crashes. Right now people are playing in my server (8+ at the moment) with the following metamod/plugins.ini: win32 addons\reunion\reunion_mm.dll ;win32 addons\amxmodx\dlls\amxmodx_mm.dll ;win32 addons\revoice\revoice_mm.dll ;win32 addons\whblocker\whblocker.dll ;win32 addons\srdetector\srdetector.dll
When I disabled revoice, whblocker and srdetector, the server stopped crashing.
I renabled "revoice" and "srdetector" and the server stopped crashing :)
The final culprit is "whblocker". However, it is the same as http://www.dedicated-server.ru/vbb/showthread.php?t=25639 with default configuration file. Hmm..
P.S I re-read the thread and you said to specify the operating system which I did not do before. I'm running "Windows 10 Pro" (Build lab ex: 10586.17.amd64fre.th2_release.151121-2308)
try in whblocker setting "team" set to 1 this should your help.
P.S whblocker he can't find g_pGameRules in regamedll, for reason not binary compatibility.
Like you said, it worked indeed. However, I looked at what the "team" setting does and I'm baffled it solved the problem.
Can you explain why it worked? (I don't want to be the guy to remain ignorant in such situations lol)
setting "team" is 0 requires the presence of pointer g_pGameRules for to determine the enemy or teammate with using g_pGameRules->PlayerRelationship(object1, object2), but g_pGameRules we can't find in ReGameDLL_CS and call to a zero address we get crash.
Thank you a lot for your explanation. It makes more sense now. I did see that with ReGameDll that g_pGameRules was missing (From Fakemeta). However, I did not know WHBlocker was using it.
Hope to see a future version of WHBlocker with the error handling.
Thanks again. (You are free to close that issue as it was resolved from a ReGameDll point of view)
team = 1 server crash
Protocol version 48 Exe version 1.1.2.7/Stdio (cstrike) Exe build: 18:40:48 Dec 27 2015 (624) ReHLDS API version 2.5
[ 1] Reunion RUN - reunion_mm_i386. v0.1.57 ini Start Never
[ 2] WHBlocker RUN - whblocker_mm_i38 v1.5.620 ini Chlvl ANY
[ 3] AMX Mod X RUN - amxmodx_mm_i386. v1.8.3-d ini Start ANY
[ 4] MySQL RUN - mysql_amxx_i386. v1.8.3-d pl3 ANY ANY
[ 5] Fun RUN - fun_amxx_i386.so v1.8.3-d pl3 ANY ANY
[ 6] Engine RUN - engine_amxx_i386 v1.8.3-d pl3 ANY ANY
[ 7] FakeMeta RUN - fakemeta_amxx_i3 v1.8.3-d pl3 ANY ANY
[ 8] GeoIP RUN - geoip_amxx_i386. v1.8.3-d pl3 ANY ANY
[ 9] CStrike RUN - cstrike_amxx_i38 v1.8.3-d pl3 ANY ANY
[10] CSX RUN - csx_amxx_i386.so v1.8.3-d pl3 ANY ANY
[11] Ham Sandwich RUN - hamsandwich_amxx v1.8.3-d pl3 ANY ANY
Indeed. It was rather unexpected that WHBlocker would make the whole server crash. Don't have access to the source code to patch it though. Will have to wait for s1lentq to take care of it.
P.S I just re-read. Read it wrong the first time. Any plugin that make use of "g_pGameRules" can crash the whole server if there is not a case being handled where "g_pGameRules" might not be present. For instance, FAKEMETA took care of it and disabled any functionality that made used of "g_pGameRules".
However, some plugins won't do that and expect "g_pGameRules" to be present. Obviously, ReGameDll is not binary compatible and that's why there is that issue.
For now, my only guess would be that you have a plugin (other than WHBlocker) that relies on "g_pGameRules" but does not handle its absence.
Try clearing your "amxmodx/config/plugins.ini" and see what happens. (This should prevent most of the amxx modules from auto-loading)
If you completely disable "WHBlocker", does it crash and when does it crash? At server load or when a second player joins the game?
I downloaded the latest snapshot of ReGameDLL_CS from "http://nexus.rehlds.org/nexus/content/repositories/regamedll-snapshots/regamedll/regamedll/0.2-SNAPSHOT/". With both "bugfixed" and "pure", my server crashes as soon as a second player enters the servers. (Sometimes there's a small timelapse after the player entered and the server crashing)
I've cloned the repository and compiled the mp.dll myself. Still no luck!
I've disabled all custom plugins I've made and stripped my server to a point where debugging should be easier. Even with such changes, It was really hard to find the exact cause. At first, I thought it could have been the "cstrike_amxx" module but turns out even with the fix on dedicated-server.ru, it made no difference.
Here's some details about my server configuration:
Your help is greatly appreciated :)