2025-07-14 17:54:55 +03:00

18 KiB
Raw Blame History

id, title, sidebar_position, description, slug
id title sidebar_position description slug
metamod-r-troubbleshouting Troubbleshouting 4 Metamod-r is an optimized version of the original Metamod, enhancing performance and compatibility for Half-Life 1 servers. /metamod-r/troubbleshouting

Troubbleshouting

How to report about the problem correctly:

If you want to make an offer, register a mistake, your fail or you need "live" help and assistance-you can always apply here. Just press the green New issue button and fill out the form.

Developers will be grateful if the description of the problem be as much detail as possible:

  • The version of your operating system; The version (build number) HLDS server (either ReHLDS);
  • The version of your game (or mod);
  • Metamod-r version (build number or build date) ;
    • You can optionally specify a list of modules (by typing meta list in the server console).
  • Attach the logs;
  • Apply crashdumps;

This will help for a more thorough analysis and possibly correction of your problems in the future.


Getting HLDS\reHLDS crash dumps

Main source (rus). Mirror (rus).

Don't just post dumps on the Internet, as they often contain full information about the server, including rcon and so on. For transmission, you can archive them with a password, which is also useful because they compress very well.

Windows

Using WER (Windows Error Reporting):

  • Enable WER (error reports):
  • Before Vista:
  • Run drwtsn32.exe and select "Full" next to Crash Dump File. Here you can also see (or configure) where the dumps will be stored.
  • On Vista and above:
  • Editing the registry, a convenient method from s1lent:

A detailed and quick way to configure the registry to receive dumps for beginners.

  • Settings:
  • NAME_APP - hlds.exe
  • name of the application that will need to create dumps in case of a crash.
  • REG_LINK - HKLM\Software\Microsoft\Windows\Windows Error Reporting
  • path to the Windows Error Reporting section (This setting most likely does not need to be changed, I think the paths are the same in all Windows)
  • DumpType - 2
  • 0 - Normal dump
  • 1 - Minimum dump
  • 2 - Full dump
  • DumpCount - 15
  • number of dumps to create, if the number of dumps in the folder is greater than the specified value, the old dump will be deleted to create a new dump.
  • DumpFolder - C:\CrashDumps
  • path to the folder where the dumps will be stored.
  • (to avoid any problems, do not use spaces or Cyrillic in the paths)
  • Installation:
  • Download the archive and unzip it.

  • Run add_RegistryDumps.bat

  • After writing to the registry, you must make sure that you have enabled the Windows Error Reporting service.

  • Then press the hotkey Windows + R (the Windows button is between ctrl and alt) or you can call cmd.exe or Start - Run, immediately after that you need to enter gpedit.msc, then see the screenshot.

Computer Configuration -> Administrative Templates -> Windows Components -> Windows Error Reporting

Using the userdumps utility

  • Instructions from unKn0wn:

Method for obtaining dumps using the utility from MicroSoft: UserModeProcessDumper \ mirror for "UserModeProcessDumper8_1_2929_5.zip".

Thanks to Lev for the settings.

1. Installation

Unzip the archive you downloaded (by default C:\kktools\userdump8.1).

  • Run the setup.exe file from the directory:
  • If you are using 32-bit Windows XP/2003, then C:\kktools\userdump8.1\x86.
  • If you are using 64-bit Windows XP/2003, then C:\kktools\userdump8.1\x64.
  • In the Installation Wizard window, click Next.
  • (Only for 32-bit OS) In the Terminate Mode window, select Disable "Dump on Process Termination" feature and click Next.

  • Click Finish and wait for the installation to complete. In the User Mode Process Dump Setup window, click the YES button (If for some reason you do not know how to enter the userdump settings menu, you can always find them in Control Panel - Process Dumper).
2. Adding an application

In the Properties: User Mode Process Dumper Setup window that opens, click New and add the name of the program we need, for example: hlds.exe (the extension is required!) and click OK

3. Settings

In the Properties: User Mode Process Dumper Setup window, find the application rule you just created, select it and click the Rules button In the Process Monitoring Ruless for hlds.exe window that opens

  1. Select Use custom rules.
  2. If necessary, change the folder for storing the created dumps.
  3. In Exception Codes, select (by left-clicking) the following codes: "Access Violation, Overflow, Illegal Instruction, Stack overflow."
  4. Set the Save Mode parameter to Cyclic saving (5 times). It should look something like this:

PS: I recommend using it together with Dr Watson with the "Brief" dump type, since the doctor can keep logs in text format, which will allow you to select the necessary dumps. And userdump will make full dumps.

Linux

The server must be started with the -debug key.

If gdb is installed on the system, then clear information about the error will be automatically written to the debug.log file. So it is recommended to install it (the command depends on the system used, on Debian\Ubuntu it is apt install gdb). Although this is not required to create dumps, it is actually necessary to do this if possible, since the crash location will be written to debug.log, which will allow you to immediately say something about the error. Getting the same information on another system from a dump file will require all the binaries from the server.

By default, the dump file is called core, is written to the working folder, and, accordingly, will be overwritten. To avoid this, you can add the process ID to the name:

echo 1 > /proc/sys/kernel/core_uses_pid

or dump the dumps to /tmp:

echo /tmp/%e-%t-%p-%c.dmp > /proc/sys/kernel/core_pattern More information here.

Launch without sudo (as root, otherwise the general system settings should be set to unlimited):

ulimit -c unlimited && ./hlds_run -debug ...

Launch with sudo (as user hlds):

ulimit -Hc unlimited && sudo -u hlds sh -c "ulimit -Sc unlimited && ./hlds_run -debug ..."

Checking launch under sudo:

ulimit -Hc unlimited && sudo -u hlds sh -c "ulimit -Sc unlimited && whoami && ulimit -Sc && ./hlds_run -debug ..."

displays the user name under which the launch will take place and the limit on creating dumps, after which it starts the server.

To test dump settings, you can use a specially developed module: FixItAll \ FixItAll mirror or Crash.sma*.


Summary table:

Folder - the directory of your mod or game. In columns and the names of the executable files from the folder 'dlls, which is located in the directoryyour mod or game'.

- platform version does not exist

Game \ Mod Folder
Action Half-Life action ahl.dll ahl.so
Adrenaline Gamer ag ag.dll ag.so
openAG ag ag.dll ag.so
Azure Sheep asheep hl.dll
Base Defense bdef server.dll server.so
The Battle Grounds bg bg.dll bg.so
Brutal Half-Life bhl bhl.dll
Brain Bread brainbread bb.dll
Half-Life: Blue Shift bshift hl.dll bshift.so
Bumper Cars bumpercars hl.dll
BuzzyBots buzzybots bb.dll
Chicken Fortress 3 ckf3 mp.dll
Counter-Strike 1.0 cs10 mp.dll
Counter-Strike 1.5 csv15 mp.dll
Counter-Strike 1.6 cstrike mp.dll cs.so
Counter-Strike:Condition Zero czero mp.dll cs.so
Counter-Strike:Condition Zero Deleted Scenes czeror cz.dll cz.so
Desert Crisis dcrisis dc.dll dc.so
Half-Life: Decay decay decay.dll
Deathmatch Classic dmc dmc.dll dmc.so
Day of Defeat dod dod.dll dod.so
Digital Paintball dpb pb.dll pb.i386.so
Earth's Special Forces (Old) esf hl.dll hl.so (лежит не в dlls каталоге, а в linuxdll)
Earth's Special Forces esf hl.dll hl.so
Existence existence existence.dll
Firearms firearms firearms.dll
Frontline Force frontline frontline.dll front.so
Gangsta Wars gangstawars gwars27.dll
Gangwars gangwars mp.dll
Opposing Force gearbox opfor.dll opfor.so
Global Warfare globalwarfare mp.dll gw.so
Goldeneye goldeneye mp.dll
Headcrab Frenzy hcfrenzy hcfrenzy.dll hcfrenzy.so
Half-Life 1.5: Weapon Edition hl15we hl.dll hl.so
HL-Rally hlrally hlrally.dll hlr.so
Holy Wars holywars holywars.dll hl.so
Hostile Intent hostileintent hl.dll hl.so
International Online Soccer ios ios.dll ios.so
Judgement judgedm mp.dll judge.so
Kanonball kanonball kanonball.dll hl.so
Monkeystrike monkeystrike monkey.dll ms.so
Morbid Inclination MorbidPR morbid.dll morbid.so
Move In! movein hl.dll hl.so
Master Sword Continued msc ms.dll
Natural Selection ns ns.dll ns.so
Natural Selection Beta nsp ns.dll ns.so
Over Ground og og.dll og.so
Outlawsmod ol hl.dll ol.so
Operations 1942 ops1942 spirit.dll spirit.so
Open-Source Jailbreak osjb jail.dll osjb.so
Out Break outbreak hl.dll
Oz Deathmatch oz mp.dll mp.so
Paintball paintball mp.dll pb.so
Public Enemy penemy pe.dll pe.so
Point of No Return ponreturn mp.dll ponr.so
Pirates, Vikings and Knights pvk hl.dll hl.so
Rocket Crowbar 2 rc2 rc2.dll rc2.so
Resident Evil : Cold Blood recbb2 recb.dll recb.so
Gunman Chronicles rewolf gunman.dll
Ricochet ricochet mp.dll ricochet.so
Rocket Crowbar rockcrowbar rc.dll rc.so
Rival Species rspecies hl.dll hl.so
Scientist Hunt scihunt shunt.dll shunt.so
The Ship ship ship.dll ship.so
Science & Industry si si.dll si.so
Snow-War snow snow.dll snow.so
StargateTC (Old, 1.x) stargatetc hl.dll hl.so
StargateTC (Updated, 2.x) stargatetc hl.dll stc.so
StargateTC (Updated, 2.x) stargatetc hl.dll stc_i386_opt.so
Sven Coop (Old) svencoop hl.dll hl.so
Sven Coop (Steam) svencoop server.dll server.so
Swarm swarm swarm.dll swarm.so
Team Fortress Classic tfc tfc.dll tfc.so
The Wastes thewastes thewastes.dll thewastes.so
Project Timeless timeless timeless.dll pt.so
Tour of Duty tod hl.dll hl.so
Train Hunters trainhunters th.dll th.so
The Specialists ts mp.dll ts.so
The Trenches tt tt.dll tt.so
Underworld Bloodline underworld uw.dll uw.so
Half-Life valve hl.dll hl.so
VampireSlayer vs mp.dll vs.so
Wanted! wantedhl wanted.dll hl.so
Wizard Wars (Steam) wizardwars wizardwars.dll wizardwars.so
Wizard Wars Beta (Steam) wizardwars_beta wizardwars.dll wizardwars.so
Wizard Wars (Old) wizwars mp.so hl.dll
WormsHL wormshl wormshl.dll wormshl.so
Zombie Panic zp mp.dll hl.so

Any assistance and contribution to the project is welcome. The more tests and feedback, the stronger the development of Metamod-r and other related products. Goodluck!