Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Server crashes when second player connects #6

Closed
johnally opened this issue Dec 30, 2015 · 10 comments
Closed

Server crashes when second player connects #6

johnally opened this issue Dec 30, 2015 · 10 comments

Comments

@johnally
Copy link

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:

screenshot_80

screenshot_81

screenshot_82

screenshot_83

screenshot_84

Your help is greatly appreciated :)

@johnally
Copy link
Author

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)

screenshot_85

@s1lentq
Copy link
Owner

s1lentq commented Dec 30, 2015

  1. check on a clean server without metamod.
    have a any crashes?
  2. why use mmtimer if you running with rehlds?

@johnally
Copy link
Author

  1. I will do that as soon as I'm over with dishes. (But I can already fore-tell that that amxmodx is the cause. I can't disable the whole metamod plugin as I need 'Reunion'; I need a way to get in the server sadly)
  2. Good question. I will remove it. When I run it with rehlds, I get 2000fps. Without it I get 1000fps. But 1000fps is enough. I don't know why I keep leaving it there.

Thank you,

@johnally
Copy link
Author

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)

@s1lentq
Copy link
Owner

s1lentq commented Dec 30, 2015

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.

@johnally
Copy link
Author

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)

@s1lentq
Copy link
Owner

s1lentq commented Dec 30, 2015

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.

@johnally
Copy link
Author

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.

screenshot_86

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)

@coolmans
Copy link

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

@johnally
Copy link
Author

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?

@johnally johnally closed this as completed Jan 3, 2016
dystopm added a commit to dystopm/ReGameDLL_CS that referenced this issue Jul 12, 2023
commit fc17009
Author: Sergey Shorokhov <wopox1337@ya.ru>
Date:   Sun Jul 3 09:34:27 2022 +0300

    DYING_TIME -> DEATH_ANIMATION_TIME

commit 73bb0ec
Merge: 1400a4e 1081301
Author: Sergey Shorokhov <wopox1337@ya.ru>
Date:   Sun Jul 3 09:31:07 2022 +0300

    Merge remote-tracking branch 'origin' into death_cam_time

commit 1400a4e
Author: Sergey Shorokhov <wopox1337@ya.ru>
Date:   Fri Mar 11 18:51:08 2022 +0300

    remove death animation skip

commit f8ff803
Author: Sergey Shorokhov <wopox1337@ya.ru>
Date:   Thu Mar 10 07:37:26 2022 +0300

    lil order fixes & indent

commit cf39535
Merge: f2d29a8 972e14a
Author: Sergey Shorokhov <wopox1337@ya.ru>
Date:   Thu Mar 10 07:33:02 2022 +0300

    Merge remote-tracking branch 'origin/master' into death_cam_time

commit f2d29a8
Author: Shorokhov Sergey <wopox1337@ya.ru>
Date:   Thu Jan 16 15:44:03 2020 +0300

    resolve conflicts

commit bad3024
Merge: ee475c9 2694a92
Author: Shorokhov Sergey <wopox1337@ya.ru>
Date:   Thu Jan 16 15:40:28 2020 +0300

    Merge branch 'master' into death_cam_time

    # Conflicts:
    #	README.md
    #	dist/game.cfg

commit 2694a92
Merge: 44e7758 2eba3b1
Author: Shorokhov Sergey <wopox1337@ya.ru>
Date:   Thu Jan 16 15:37:16 2020 +0300

    Merge branch 'master' of https://github.com/s1lentq/ReGameDLL_CS

commit ee475c9
Author: Shorokhov Sergey <wopox1337@ya.ru>
Date:   Thu Jan 16 15:05:58 2020 +0300

    a better description

commit b8e9693
Author: Shorokhov Sergey <wopox1337@ya.ru>
Date:   Thu Jan 16 14:58:03 2020 +0300

    update description

commit 44f5abe
Author: Shorokhov Sergey <wopox1337@ya.ru>
Date:   Thu Dec 26 14:49:04 2019 +0300

    cvar value handling

commit a903680
Author: Shorokhov Sergey <wopox1337@ya.ru>
Date:   Thu Dec 26 14:48:09 2019 +0300

    magic numbers to named const (№2)

commit 652af47
Author: Shorokhov Sergey <wopox1337@ya.ru>
Date:   Thu Dec 26 14:46:03 2019 +0300

    magic numbers to named const

commit b1e12d6
Author: Shorokhov Sergey <wopox1337@ya.ru>
Date:   Thu Dec 26 14:43:46 2019 +0300

    Add description

commit d04f4ce
Author: Shorokhov Sergey <wopox1337@ya.ru>
Date:   Thu Dec 26 14:43:01 2019 +0300

    Add new CVar: mp_dying_time < 0 .. 999>

commit 44e7758
Merge: eaaa3fd fd06d65
Author: Shorohov Sergey <wopox1337@ya.ru>
Date:   Mon Dec 2 16:04:42 2019 +0300

    Merge pull request s1lentq#7 from s1lentq/master

    update

commit eaaa3fd
Merge: 5307bb7 46624d9
Author: Shorohov Sergey <wopox1337@ya.ru>
Date:   Wed Oct 2 16:43:33 2019 +0300

    Merge pull request s1lentq#6 from s1lentq/master

    Up

commit 5307bb7
Merge: e51af43 3aa9872
Author: Shorohov Sergey <wopox1337@ya.ru>
Date:   Tue Sep 3 15:58:57 2019 +0300

    Merge pull request s1lentq#5 from s1lentq/master

    update

commit e51af43
Merge: 411a028 4d8a1b9
Author: Shorokhov Sergey <wopox1337@ya.ru>
Date:   Mon Sep 2 11:59:43 2019 +0300

    Merge branch 'master' of https://github.com/wopox1337/ReGameDLL_CS

commit 4d8a1b9
Merge: feae856 75bdc26
Author: Shorohov Sergey <wopox1337@ya.ru>
Date:   Mon Jul 29 16:40:36 2019 +0300

    Merge pull request s1lentq#4 from s1lentq/master

    uptodate

commit feae856
Merge: a5283cf b669a39
Author: Shorohov Sergey <wopox1337@ya.ru>
Date:   Mon Jul 8 14:06:12 2019 +0300

    Merge pull request s1lentq#3 from s1lentq/master

    uptodate

commit a5283cf
Merge: c8a6a4a cee63d9
Author: Shorohov Sergey <wopox1337@ya.ru>
Date:   Sun Jun 9 12:58:36 2019 +0300

    Merge pull request s1lentq#2 from s1lentq/master

    up

commit c8a6a4a
Merge: 94f0fdb 935064c
Author: Shorohov Sergey <wopox1337@ya.ru>
Date:   Thu Jun 6 01:04:50 2019 +0300

    Merge pull request s1lentq#1 from s1lentq/master

    update
dystopm pushed a commit to dystopm/ReGameDLL_CS that referenced this issue Jul 12, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants