Skip to content

2. Modules and Plugins

Jonathan Linat edited this page Apr 29, 2024 · 4 revisions

This section is dedicated to guiding you through enhancing your Day of Defeat server by incorporating the legacy version of the game and installing performance and security upgrades like ReHLDS, Metamod-r, and AMX Mod X.

These steps are crucial for server administrators to utilize these advanced features to improve the gaming experience.

💬 Do You Need Support?

2.1 Transition to the Legacy Version

Before installing the tools, revert your server to a version of Day of Defeat before the 25th update due to compatibility issues.

Stop the Server

Ensure the server is not running:

./dodserver stop

Note

This is what you should get.

[  OK  ] Stopping dodserver: Graceful: sending "quit": 3: OK
[  OK  ] Stopping dodserver: [DoD 1.3 Community] US (https://discord.gg/dodcommunity)

Clear Existing Server Files

Warning

It is highly recommended that you back up your serverfiles/dod/dodserver.cfg file before proceeding with the next steps.

Prepare for the legacy version installation by removing current server files:

rm -rf serverfiles/

Download the Legacy Version Using SteamCMD

Execute the following command line to download the legacy version using SteamCMD:

steamcmd +force_install_dir "/home/dodserver/serverfiles" +login anonymous +app_set_config 90 mod dod +app_update 90 -beta steam_legacy validate +quit

Note

This is what you should get.

...
 Update state (0x61) downloading, progress: 90.65 (1113837187 / 1228657887)
 Update state (0x61) downloading, progress: 91.25 (1121193009 / 1228657887)
 Update state (0x61) downloading, progress: 91.99 (1130250810 / 1228657887)
 Update state (0x61) downloading, progress: 92.33 (1134417759 / 1228657887)
 Update state (0x61) downloading, progress: 93.99 (1154876595 / 1228657887)
 Update state (0x61) downloading, progress: 98.18 (1206256819 / 1228657887)
 Update state (0x61) downloading, progress: 99.36 (1220853167 / 1228657887)
 Update state (0x81) verifying update, progress: 83.35 (1024098049 / 1228657887)
 Update state (0x81) verifying update, progress: 89.40 (1098368741 / 1228657887)
 Update state (0x81) verifying update, progress: 85.73 (1053353948 / 1228657887)
 Update state (0x101) committing, progress: 94.21 (1063715047 / 1129139501)
Success! App '90' fully installed.

2.2 Install ReHLDS, Metamod-r, and AMX Mod X

Enhance server performance and security by installing the enhancers.

Install ReHLDS

ReHLDS offers stability and performance improvements.

Download and Extract

Obtain the ReHLDS package and install the binaries:

mkdir -p tmp && wget -O tmp/rehlds-bin-3.13.0.788.zip https://github.com/dreamstalker/rehlds/releases/download/3.13.0.788/rehlds-bin-3.13.0.788.zip && unzip tmp/rehlds-bin-3.13.0.788.zip -d tmp/rehlds/ && cp -rf tmp/rehlds/bin/linux32/* serverfiles/ && rm -rf tmp/

Install Metamod-r

Metamod-r facilitates extensive server customization through plugins.

Download and Set Up

Install Metamod-r on your server:

mkdir -p tmp && wget -O tmp/metamod-bin-1.3.0.149.zip https://github.com/theAsmodai/metamod-r/releases/download/1.3.0.149/metamod-bin-1.3.0.149.zip && unzip tmp/metamod-bin-1.3.0.149.zip -d tmp/metamod/ && mkdir -p serverfiles/dod/addons/ && cp -rf tmp/metamod/addons/* serverfiles/dod/addons/metamod/ && rm -rf tmp/

Configure liblist.gam

Update the game configuration to use Metamod-r:

nano serverfiles/dod/liblist.gam

Change the game DLL setting:

gamedll_linux "addons/metamod/metamod_i386.so"

Install AMX Mod X

AMX Mod X allows for advanced server management and customization through plugins and scripting.

Download and Extract

Download and prepare AMX Mod X for installation:

mkdir -p tmp/amxmodx/ && wget -O tmp/amxmodx-1.10.0-git5467-base-linux.tar.gz https://www.amxmodx.org/amxxdrop/1.10/amxmodx-1.10.0-git5467-base-linux.tar.gz && tar -xvzf tmp/amxmodx-1.10.0-git5467-base-linux.tar.gz -C tmp/amxmodx/ && wget -O tmp/amxmodx-1.10.0-git5467-dod-linux.tar.gz https://www.amxmodx.org/amxxdrop/1.10/amxmodx-1.10.0-git5467-dod-linux.tar.gz && tar -xvzf tmp/amxmodx-1.10.0-git5467-dod-linux.tar.gz -C tmp/amxmodx/ && cp -rf tmp/amxmodx/addons/* serverfiles/dod/addons/amxmodx/ && rm -rf tmp/

Update Metamod-r's Plugin List

Add AMX Mod X to Metamod-r's plugins:

nano serverfiles/dod/addons/metamod/plugins.ini

Insert the line to load AMX Mod X:

linux addons/amxmodx/dlls/amxmodx_mm_i386.so

2.3 Set User Admins, Modules and Plugins

Add Server Admins

AMX Mod X allows you to set a list of user admins based on their Steam's ID.

Update AMX Mod X Admins List

Edit the amxmodx/configs/users.ini file:

nano serverfiles/dod/addons/amxmodx/configs/users.ini

Add the desired user admins at the end of the file:

"STEAM_0:0:123456" "" "abcdefghijklmnopqrstu" "ce"

Save the changes.

Activate Server Modules

It is also recommended to enable some included modules for a better Day of Defeat gaming experience.

Enable AMX Mod X Modules

Edit the amxmodx/configs/modules.ini file:

nano serverfiles/dod/addons/amxmodx/configs/modules.ini

Delete the ; character from the modules of the last list that you want to activate.

The recommended ones are:

  • fun
  • fakemeta
  • dodfun
  • dodx

Apply your modifications.

Add Additional Server Plugins

You can also extend some of the server features with plenty of included plugins.

Add AMX Mod X Plugins

Modify the amxmodx/configs/plugins.ini file:

nano serverfiles/dod/addons/amxmodx/configs/plugins.ini

Delete the ; character from the plugins of the lists that you want to add.

The recommended ones are:

  • stats.amxx
  • statssounds.amxx
  • stats_logging.amxx

Save all your changes.

--

2.4 Restart the Server

Important

You can now restore the dodserver.cfg file you saved earlier into the serverfiles/dod/ directory.

If you do not have any saved dodserver.cfg, you must edit it from scratch to adjust your server's settings.

Verify Configuration Success

Conduct a pre-launch test to confirm your configurations:

./dodserver start && ./dodserver monitor

Note

This is what you should get.

[  OK  ] Starting dodserver: LinuxGSM
[  OK  ] Monitoring dodserver: Checking session: OK
[  OK  ] Monitoring dodserver: Querying port: gsquery: 0.0.0.0:27015 : 0/1: OK

Access the Server Console

Enter the server console to confirm Metamod-r and AMX Mod X are active:

./dodserver console

Note

This is what you should get.

Auto-restarting the server on crash

Console initialized.
Using breakpad crash handler
Setting breakpad minidump AppID = 30
Forcing breakpad minidump interfaces to load
tid(56440) burning pthread_key_t == 0 so we never use it
Looking up breakpad interfaces from steamclient
Calling BreakpadMiniDumpSystemInit
Protocol version 48
Exe version 1.1.2.6/Stdio (dod)
Exe build: 07:36:33 Jul 12 2023 (3378)
STEAM Auth Server
Server IP address 0.0.0.0:27015

   Metamod-r version 1.3.0.138 Copyright (c) 2016-2018 ReHLDS Team (rebuild of original Metamod by Will Day and Jussi Kivilinna)
   Metamod-r comes with ABSOLUTELY NO WARRANTY; for details type `meta gpl'.
   This is free software, and you are welcome to redistribute it
   under certain conditions; type `meta gpl' for details.

Metamod-r v1.3.0.138, API (5:13)
Metamod-r build: 11:50:36 Nov 28 2023
Metamod-r from: https://github.com/theAsmodai/metamod-r/commit/5179c25

   AMX Mod X version 1.10.0.5467 Copyright (c) 2004-2015 AMX Mod X Development Team
   AMX Mod X comes with ABSOLUTELY NO WARRANTY; for details type `amxx gpl'.
   This is free software and you are welcome to redistribute it under
   certain conditions; type 'amxx gpl' for details.

L 03/11/2024 - 21:17:14: -------- Mapchange to dod_anzio --------
L 03/11/2024 - 21:17:14: [DODX] Could not load stats file: dod/addons/amxmodx/data/dodstats.dat
[AMXX] Loaded 1 admin from file
[S_API FAIL] SteamAPI_Init() failed; SteamAPI_IsSteamRunning() failed.
CAppInfoCacheReadFromDiskThread took 23 milliseconds to initialize
dlmopen steamservice.so failed: steamservice.so: cannot open shared object file: No such file or directory
Looking up breakpad interfaces from steamclient
Calling BreakpadMiniDumpSystemInit

Executing AMX Mod X Configuration File
Scrolling message displaying frequency: 10:00 minutes
Server logging data to file logs/L0311000.log
L 03/11/2024 - 21:17:15: Log file started (file "logs/L0311000.log") (game "dod") (version "48/1.1.2.6/Stdio/3378")
L 03/11/2024 - 21:17:15: Server cvar "sv_aim" = "0"
L 03/11/2024 - 21:17:15: Server cvar "pausable" = "0"
L 03/11/2024 - 21:17:15: Server cvar "sv_maxspeed" = "320"
L 03/11/2024 - 21:17:15: Server cvar "mp_timelimit" = "20"
couldn't exec listip.cfg
couldn't exec banned.cfg
Connection to Steam servers successful.
   VAC secure mode is activated.

image

With these enhancements, your Day of Defeat server now boasts improved performance, security, and customization capabilities, ready to offer your community a stable and enriched gaming experience.