Enhanced game documentation with comprehensive installation and configuration details
Co-authored-by: iaretechnician <2749183+iaretechnician@users.noreply.github.com>
This commit is contained in:
parent
b72c8ea19d
commit
0216af04ed
299 changed files with 20545 additions and 21001 deletions
|
|
@ -1,397 +1,413 @@
|
|||
<?php
|
||||
/**
|
||||
* 7 Days to Die Dedicated Server - Comprehensive Hosting Guide
|
||||
* 7 Days to Die Server Documentation - Comprehensive Guide
|
||||
* General game server hosting information (not platform-specific)
|
||||
*/
|
||||
?>
|
||||
<div style="background: #1e3a5f; padding: 20px; border-left: 4px solid #3b82f6; margin: 20px 0; border-radius: 4px;">
|
||||
<h3 style="color: #ffffff; margin-top: 0;">📚 Navigation</h3>
|
||||
<h3 style="color: #ffffff; margin-top: 0;">📚 Quick Navigation</h3>
|
||||
<div style="display: flex; flex-wrap: wrap; gap: 10px;">
|
||||
<a href="#overview" style="background: #0f172a; padding: 8px 16px; border-radius: 4px; color: #a5b4fc; text-decoration: none;">Overview</a>
|
||||
<a href="#quick-info" style="background: #0f172a; padding: 8px 16px; border-radius: 4px; color: #a5b4fc; text-decoration: none;">Quick Info</a>
|
||||
<a href="#ports" style="background: #0f172a; padding: 8px 16px; border-radius: 4px; color: #a5b4fc; text-decoration: none;">🔌 Ports</a>
|
||||
<a href="#installation" style="background: #0f172a; padding: 8px 16px; border-radius: 4px; color: #a5b4fc; text-decoration: none;">Installation</a>
|
||||
<a href="#configuration" style="background: #0f172a; padding: 8px 16px; border-radius: 4px; color: #a5b4fc; text-decoration: none;">⚙️ Configuration</a>
|
||||
<a href="#xml-modding" style="background: #0f172a; padding: 8px 16px; border-radius: 4px; color: #a5b4fc; text-decoration: none;">XML Modding</a>
|
||||
<a href="#configuration" style="background: #0f172a; padding: 8px 16px; border-radius: 4px; color: #a5b4fc; text-decoration: none;">Configuration</a>
|
||||
<a href="#parameters" style="background: #0f172a; padding: 8px 16px; border-radius: 4px; color: #a5b4fc; text-decoration: none;">⚙️ Startup Parameters</a>
|
||||
<a href="#troubleshooting" style="background: #0f172a; padding: 8px 16px; border-radius: 4px; color: #a5b4fc; text-decoration: none;">🔧 Troubleshooting</a>
|
||||
<a href="#performance" style="background: #0f172a; padding: 8px 16px; border-radius: 4px; color: #a5b4fc; text-decoration: none;">Performance</a>
|
||||
<a href="#security" style="background: #0f172a; padding: 8px 16px; border-radius: 4px; color: #a5b4fc; text-decoration: none;">Security</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<h1>7 Days to Die Dedicated Server Hosting Guide</h1>
|
||||
<h1>7 Days to Die Server Hosting Guide</h1>
|
||||
|
||||
<h2 id="overview">Overview</h2>
|
||||
<p><strong>7 Days to Die</strong> is a survival horror game combining first-person shooter, base building, crafting, and role-playing elements in a post-apocalyptic zombie-infested world. Players must survive by scavenging, building bases, and defending against zombie hordes that grow stronger every seven days.</p>
|
||||
<h2>Overview</h2>
|
||||
<p>7 Days to Die is a multiplayer game server that can be hosted on a VPS or dedicated server. This comprehensive guide covers everything you need to know about hosting a 7 Days to Die server for your community.</p>
|
||||
|
||||
<h2 id="quick-info">Quick Info</h2>
|
||||
<div style="background: #1e3a5f; padding: 20px; border-left: 4px solid #3b82f6; margin: 20px 0; border-radius: 4px;">
|
||||
<ul style="color: #e5e7eb; line-height: 1.8; margin: 0;">
|
||||
<li><strong style="color: #ffffff;">Default Port:</strong> <code style="background: #0f172a; padding: 2px 6px; border-radius: 3px; color: #a5b4fc;">26900</code> (UDP)</li>
|
||||
<li><strong style="color: #ffffff;">Web Control Panel:</strong> <code style="background: #0f172a; padding: 2px 6px; border-radius: 3px; color: #a5b4fc;">8080-8090</code> (TCP, configurable)</li>
|
||||
<li><strong style="color: #ffffff;">Telnet Port:</strong> <code style="background: #0f172a; padding: 2px 6px; border-radius: 3px; color: #a5b4fc;">8081</code> (TCP, optional)</li>
|
||||
<li><strong style="color: #ffffff;">Minimum RAM:</strong> 4GB (Recommended: 12-16GB)</li>
|
||||
<li><strong style="color: #ffffff;">Recommended CPU:</strong> 4+ cores @ 3.0GHz+</li>
|
||||
<li><strong style="color: #ffffff;">Storage:</strong> 15GB+ (growing with world size)</li>
|
||||
<li><strong style="color: #ffffff;">Max Players:</strong> Configurable (8-32 typical)</li>
|
||||
<li><strong style="color: #ffffff;">SteamCMD App ID:</strong> 294420</li>
|
||||
<li><strong style="color: #ffffff;">Config Files:</strong> serverconfig.xml</li>
|
||||
<li><strong style="color: #ffffff;">Default Port:</strong> <code style="background: #0f172a; padding: 2px 6px; border-radius: 3px; color: #a5b4fc;">Varies (see configuration)</code></li>
|
||||
<li><strong style="color: #ffffff;">Protocol:</strong> TCP/UDP</li>
|
||||
<li><strong style="color: #ffffff;">Minimum RAM:</strong> 1GB</li>
|
||||
<li><strong style="color: #ffffff;">Engine:</strong> Various</li>
|
||||
<li><strong style="color: #ffffff;">Steam App ID:</strong> <code style="background: #0f172a; padding: 2px 6px; border-radius: 3px; color: #a5b4fc;">294420</code></li>
|
||||
<li><strong style="color: #ffffff;">Recommended OS:</strong> Linux (Ubuntu/Debian) or Windows Server</li>
|
||||
<li><strong style="color: #ffffff;">Configuration Files:</strong><ul style="margin-top: 8px;">
|
||||
<li><code style="background: #0f172a; padding: 2px 6px; border-radius: 3px; color: #a5b4fc;">serverconfig.xml</code> - Server Configurations</li>
|
||||
<li><code style="background: #0f172a; padding: 2px 6px; border-radius: 3px; color: #a5b4fc;">Saves/serveradmin.xml</code> - Admin Configurations</li>
|
||||
</ul></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<h2 id="ports">🔌 Ports Required</h2>
|
||||
<table style="width: 100%; border-collapse: collapse; margin: 20px 0; background: #1e3a5f; border-radius: 8px; overflow: hidden;">
|
||||
<thead>
|
||||
<tr style="background: #0f172a;">
|
||||
<th style="padding: 12px; text-align: left; color: #ffffff; border-bottom: 2px solid #3b82f6;">Port</th>
|
||||
<th style="padding: 12px; text-align: left; color: #ffffff; border-bottom: 2px solid #3b82f6;">Protocol</th>
|
||||
<th style="padding: 12px; text-align: left; color: #ffffff; border-bottom: 2px solid #3b82f6;">Purpose</th>
|
||||
<th style="padding: 12px; text-align: left; color: #ffffff; border-bottom: 2px solid #3b82f6;">Required</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody style="color: #e5e7eb;">
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px; border-bottom: 1px solid #334155;"><code style="background: #0f172a; padding: 4px 8px; border-radius: 3px; color: #a5b4fc;">26900</code></td>
|
||||
<td style="padding: 12px; border-bottom: 1px solid #334155;"><span style="background: #065f46; padding: 4px 8px; border-radius: 3px; color: #d1fae5;">UDP</span></td>
|
||||
<td style="padding: 12px; border-bottom: 1px solid #334155;">Primary game port (player connections)</td>
|
||||
<td style="padding: 12px; border-bottom: 1px solid #334155;"><span style="background: #7c2d12; padding: 4px 8px; border-radius: 3px; color: #fed7aa;">✓ Yes</span></td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px; border-bottom: 1px solid #334155;"><code style="background: #0f172a; padding: 4px 8px; border-radius: 3px; color: #a5b4fc;">26901-26902</code></td>
|
||||
<td style="padding: 12px; border-bottom: 1px solid #334155;"><span style="background: #065f46; padding: 4px 8px; border-radius: 3px; color: #d1fae5;">UDP</span></td>
|
||||
<td style="padding: 12px; border-bottom: 1px solid #334155;">Additional game ports (automatic +1, +2)</td>
|
||||
<td style="padding: 12px; border-bottom: 1px solid #334155;"><span style="background: #7c2d12; padding: 4px 8px; border-radius: 3px; color: #fed7aa;">✓ Yes</span></td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px; border-bottom: 1px solid #334155;"><code style="background: #0f172a; padding: 4px 8px; border-radius: 3px; color: #a5b4fc;">8080-8090</code></td>
|
||||
<td style="padding: 12px; border-bottom: 1px solid #334155;"><span style="background: #1e40af; padding: 4px 8px; border-radius: 3px; color: #dbeafe;">TCP</span></td>
|
||||
<td style="padding: 12px; border-bottom: 1px solid #334155;">Web control panel (configurable)</td>
|
||||
<td style="padding: 12px; border-bottom: 1px solid #334155;"><span style="background: #713f12; padding: 4px 8px; border-radius: 3px; color: #fef3c7;">Optional</span></td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;"><code style="background: #0f172a; padding: 4px 8px; border-radius: 3px; color: #a5b4fc;">8081</code></td>
|
||||
<td style="padding: 12px;"><span style="background: #1e40af; padding: 4px 8px; border-radius: 3px; color: #dbeafe;">TCP</span></td>
|
||||
<td style="padding: 12px;">Telnet remote console</td>
|
||||
<td style="padding: 12px;"><span style="background: #713f12; padding: 4px 8px; border-radius: 3px; color: #fef3c7;">Optional</span></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<div style="background: #7c2d12; padding: 15px; border-left: 4px solid #ea580c; margin: 20px 0; border-radius: 4px;">
|
||||
<p style="color: #fed7aa; margin: 0;"><strong>Important:</strong> 7 Days to Die automatically uses three consecutive UDP ports starting from your configured game port. If you set port 26900, the server will also use 26901 and 26902. Always open a range of at least 3 consecutive ports.</p>
|
||||
</div>
|
||||
|
||||
<h3>Firewall Configuration Examples</h3>
|
||||
|
||||
<h4>UFW (Ubuntu/Debian)</h4>
|
||||
<pre><code>sudo ufw allow 26900:26902/udp comment '7DTD game ports'
|
||||
sudo ufw allow 8080/tcp comment '7DTD web panel'
|
||||
sudo ufw allow 8081/tcp comment '7DTD telnet'
|
||||
<h2 id="ports">🔌 Network Ports</h2>
|
||||
<div style="background: #1e3a5f; padding: 20px; border-left: 4px solid #3b82f6; margin: 20px 0; border-radius: 4px;">
|
||||
<h3 style="color: #ffffff; margin-top: 0;">Required Ports</h3>
|
||||
<p style="color: #e5e7eb;">The 7 Days to Die server typically uses a configurable port. Check your server configuration files for the specific port settings.</p>
|
||||
|
||||
<h3 style="color: #ffffff; margin-top: 20px;">Firewall Configuration</h3>
|
||||
<p style="color: #e5e7eb;">Allow server ports through your firewall:</p>
|
||||
<pre><code style="color: #a5b4fc;"># UFW (Ubuntu/Debian)
|
||||
sudo ufw allow [PORT]/tcp
|
||||
sudo ufw allow [PORT]/udp
|
||||
sudo ufw reload
|
||||
</code></pre>
|
||||
|
||||
<h4>FirewallD (CentOS/RHEL/Fedora)</h4>
|
||||
<pre><code>sudo firewall-cmd --permanent --add-port=26900-26902/udp
|
||||
sudo firewall-cmd --permanent --add-port=8080/tcp
|
||||
sudo firewall-cmd --permanent --add-port=8081/tcp
|
||||
# FirewallD (CentOS/RHEL)
|
||||
sudo firewall-cmd --permanent --add-port=[PORT]/tcp
|
||||
sudo firewall-cmd --permanent --add-port=[PORT]/udp
|
||||
sudo firewall-cmd --reload
|
||||
|
||||
# Windows Firewall
|
||||
netsh advfirewall firewall add rule name="7 Days to Die Server" dir=in action=allow protocol=TCP localport=[PORT]
|
||||
netsh advfirewall firewall add rule name="7 Days to Die Server" dir=in action=allow protocol=UDP localport=[PORT]
|
||||
</code></pre>
|
||||
|
||||
<h4>Windows Firewall</h4>
|
||||
<pre><code># Run in PowerShell as Administrator
|
||||
New-NetFirewallRule -DisplayName "7 Days to Die Game" -Direction Inbound -Protocol UDP -LocalPort 26900-26902 -Action Allow
|
||||
New-NetFirewallRule -DisplayName "7 Days to Die Web Panel" -Direction Inbound -Protocol TCP -LocalPort 8080,8081 -Action Allow
|
||||
</code></pre>
|
||||
|
||||
<h4>iptables (Legacy Linux)</h4>
|
||||
<pre><code>sudo iptables -A INPUT -p udp --dport 26900:26902 -j ACCEPT
|
||||
sudo iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
|
||||
sudo iptables -A INPUT -p tcp --dport 8081 -j ACCEPT
|
||||
sudo service iptables save
|
||||
</code></pre>
|
||||
<h3 style="color: #ffffff; margin-top: 20px;">⚠️ Port Security Notes</h3>
|
||||
<ul style="color: #fef3c7; line-height: 1.8;">
|
||||
<li>Only open ports that are necessary for the game server to function</li>
|
||||
<li>Consider using non-standard ports to reduce automated attacks</li>
|
||||
<li>If using cloud hosting, configure security groups properly</li>
|
||||
<li>Monitor connection attempts and unusual traffic patterns</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<h2 id="installation">Installation & Setup</h2>
|
||||
|
||||
<h3>System Requirements</h3>
|
||||
<ul>
|
||||
<li><strong>OS:</strong> Windows Server 2016+ or Linux 64-bit (Ubuntu/Debian recommended)</li>
|
||||
<li><strong>CPU:</strong> Minimum 4 cores @ 3.0GHz; Recommended 6-8 cores @ 3.5GHz+</li>
|
||||
<li><strong>RAM:</strong> 4GB minimum, 12-16GB recommended for 16+ players</li>
|
||||
<li><strong>Storage:</strong> 15GB+ for game files; world size grows over time (SSD recommended)</li>
|
||||
<li><strong>Network:</strong> 5Mbps minimum upload; 20Mbps+ for larger servers</li>
|
||||
<li><strong>OS:</strong> Linux (Ubuntu 20.04+ or Debian 11+ recommended) or Windows Server 2019+</li>
|
||||
<li><strong>CPU:</strong> 2+ cores recommended (single-threaded performance important for most game servers)</li>
|
||||
<li><strong>RAM:</strong> 1GB minimum (more for larger player counts)</li>
|
||||
<li><strong>Storage:</strong> 5GB+ for server files (SSD recommended for better performance)</li>
|
||||
<li><strong>Network:</strong> Stable internet connection with low latency</li>
|
||||
</ul>
|
||||
|
||||
<h3>Installing via SteamCMD (Linux)</h3>
|
||||
<pre><code># Install SteamCMD
|
||||
sudo apt update
|
||||
sudo apt install steamcmd
|
||||
<h3>Installation Steps</h3>
|
||||
|
||||
<h4>Linux (Ubuntu/Debian)</h4>
|
||||
<pre><code># Update system packages
|
||||
sudo apt update && sudo apt upgrade -y
|
||||
|
||||
# Create server directory
|
||||
mkdir -p ~/7dtd-server
|
||||
cd ~/7dtd-server
|
||||
mkdir -p ~/gameserver
|
||||
cd ~/gameserver
|
||||
|
||||
# Download server files
|
||||
steamcmd +login anonymous +force_install_dir ~/7dtd-server +app_update 294420 validate +exit
|
||||
# Download server files (method varies by game)
|
||||
# Check official documentation for download links
|
||||
</code></pre>
|
||||
|
||||
<h3>Installing via Steam (Windows)</h3>
|
||||
<pre><code>1. Open Steam and go to Library
|
||||
2. Enable "Tools" in the dropdown menu
|
||||
3. Find "7 Days to Die Dedicated Server"
|
||||
4. Install to your preferred directory
|
||||
5. Navigate to installation folder (typically: C:\Program Files (x86)\Steam\steamapps\common\7 Days to Die Dedicated Server\)
|
||||
<h4>Windows Server</h4>
|
||||
<p>Download the server files from the official game website or through Steam (if applicable). Extract to a dedicated folder and run the server executable.</p>
|
||||
|
||||
<h3>Using SteamCMD - RECOMMENDED METHOD</h3>
|
||||
<p><strong>This game can be installed via SteamCMD using App ID: 294420</strong></p>
|
||||
|
||||
<h4>Install SteamCMD (Ubuntu/Debian)</h4>
|
||||
<pre><code># Update package list
|
||||
sudo apt update
|
||||
|
||||
# Enable 32-bit architecture
|
||||
sudo dpkg --add-architecture i386
|
||||
sudo apt update
|
||||
|
||||
# Install SteamCMD
|
||||
sudo apt install -y lib32gcc-s1 steamcmd
|
||||
</code></pre>
|
||||
|
||||
<h4>Download Server Files</h4>
|
||||
<pre><code># Create directory for game server
|
||||
mkdir -p ~/gameservers/7daystodie
|
||||
|
||||
# Run SteamCMD and download
|
||||
steamcmd +login anonymous \
|
||||
+force_install_dir ~/gameservers/7daystodie \
|
||||
+app_update 294420 validate \
|
||||
+quit
|
||||
|
||||
# Server files are now in ~/gameservers/7daystodie/
|
||||
cd ~/gameservers/7daystodie
|
||||
ls -la
|
||||
</code></pre>
|
||||
|
||||
<h4>Windows Installation with SteamCMD</h4>
|
||||
<ol>
|
||||
<li>Download SteamCMD from: <a href="https://steamcdn-a.akamaihd.net/client/installer/steamcmd.zip" target="_blank">https://steamcdn-a.akamaihd.net/client/installer/steamcmd.zip</a></li>
|
||||
<li>Extract to <code>C:\steamcmd\</code></li>
|
||||
<li>Open Command Prompt and run:</li>
|
||||
</ol>
|
||||
<pre><code>cd C:\steamcmd
|
||||
steamcmd.exe +login anonymous ^
|
||||
+force_install_dir C:\gameservers\7daystodie ^
|
||||
+app_update 294420 validate ^
|
||||
+quit
|
||||
</code></pre>
|
||||
|
||||
|
||||
<h2 id="configuration">Server Configuration</h2>
|
||||
|
||||
<h3>serverconfig.xml</h3>
|
||||
<p>The main configuration file is <code>serverconfig.xml</code> located in the server root directory. Key settings:</p>
|
||||
<p>After installation, you'll need to configure your server. Here's where to find the configuration files and what settings you can change.</p>
|
||||
|
||||
<pre><code><?xml version="1.0"?>
|
||||
<ServerSettings>
|
||||
<!-- Server Settings -->
|
||||
<property name="ServerName" value="My 7DTD Server"/>
|
||||
<property name="ServerDescription" value="Survival Server"/>
|
||||
<property name="ServerWebsiteURL" value=""/>
|
||||
<property name="ServerPassword" value=""/>
|
||||
<property name="ServerLoginConfirmationText" value=""/>
|
||||
|
||||
<!-- Networking -->
|
||||
<property name="ServerPort" value="26900"/>
|
||||
<property name="ServerVisibility" value="2"/> <!-- 0=Not Listed, 1=Friends, 2=Public -->
|
||||
<property name="ServerDisabledNetworkProtocols" value="SteamNetworking"/>
|
||||
|
||||
<!-- Slots -->
|
||||
<property name="ServerMaxPlayerCount" value="8"/>
|
||||
<property name="ServerReservedSlots" value="0"/>
|
||||
<property name="ServerReservedSlotsPermission" value="100"/>
|
||||
|
||||
<!-- Admin -->
|
||||
<property name="ServerAdminSlots" value="0"/>
|
||||
<property name="ServerAdminSlotsPermission" value="0"/>
|
||||
|
||||
<!-- Web Dashboard -->
|
||||
<property name="ControlPanelEnabled" value="true"/>
|
||||
<property name="ControlPanelPort" value="8080"/>
|
||||
<property name="ControlPanelPassword" value="CHANGEME"/>
|
||||
|
||||
<!-- Telnet -->
|
||||
<property name="TelnetEnabled" value="true"/>
|
||||
<property name="TelnetPort" value="8081"/>
|
||||
<property name="TelnetPassword" value="CHANGEME"/>
|
||||
|
||||
<!-- World -->
|
||||
<property name="GameWorld" value="Navezgane"/> <!-- or "RWG" for random -->
|
||||
<property name="WorldGenSeed" value="asdf"/>
|
||||
<property name="WorldGenSize" value="4096"/>
|
||||
<property name="GameName" value="My Game"/>
|
||||
<property name="GameMode" value="GameModeSurvival"/>
|
||||
|
||||
<!-- Difficulty -->
|
||||
<property name="GameDifficulty" value="2"/> <!-- 0=Scavenger, 1=Adventurer, 2=Nomad, 3=Warrior, 4=Survivalist, 5=Insane -->
|
||||
<property name="ZombiesRun" value="0"/> <!-- 0=Walk, 1=Jog, 2=Run -->
|
||||
<property name="BuildCreate" value="false"/>
|
||||
<property name="DayNightLength" value="60"/> <!-- Real-time minutes -->
|
||||
<property name="DayLightLength" value="18"/>
|
||||
|
||||
<!-- Loot & XP -->
|
||||
<property name="LootAbundance" value="100"/>
|
||||
<property name="LootRespawnDays" value="7"/>
|
||||
<property name="PlayerKillingMode" value="3"/> <!-- 0=No Killing, 1=Kill Allies Only, 2=Kill Strangers Only, 3=Kill Everyone -->
|
||||
</ServerSettings>
|
||||
</code></pre>
|
||||
|
||||
<h3>Starting the Server</h3>
|
||||
|
||||
<h4>Windows</h4>
|
||||
<pre><code># Navigate to server directory
|
||||
cd "C:\7DaysToDie\"
|
||||
|
||||
# Run dedicated server
|
||||
startdedicated.bat
|
||||
|
||||
# Or with custom config
|
||||
7DaysToDieServer.exe -configfile=serverconfig.xml
|
||||
</code></pre>
|
||||
|
||||
<h4>Linux</h4>
|
||||
<pre><code># Make start script executable
|
||||
chmod +x startserver.sh
|
||||
|
||||
# Run in screen session
|
||||
screen -S 7dtd ./startserver.sh
|
||||
|
||||
# Detach: Ctrl+A, D
|
||||
# Reattach: screen -r 7dtd
|
||||
|
||||
# Or direct command
|
||||
./7DaysToDieServer.x86_64 -configfile=serverconfig.xml
|
||||
</code></pre>
|
||||
|
||||
<h2 id="xml-modding">XML Modding</h2>
|
||||
|
||||
<h3>Understanding XML Modding</h3>
|
||||
<p>7 Days to Die uses XML files for game configuration, making modding highly accessible without programming knowledge. All game items, blocks, recipes, and mechanics are defined in XML.</p>
|
||||
|
||||
<h4>Config Files Location</h4>
|
||||
<h3>Essential Settings</h3>
|
||||
<ul>
|
||||
<li><strong>Vanilla Configs:</strong> <code>Data/Config/</code></li>
|
||||
<li><strong>Mod Overrides:</strong> <code>Mods/ModName/Config/</code></li>
|
||||
<li><strong>Server Name:</strong> Set a descriptive name for your server</li>
|
||||
<li><strong>Max Players:</strong> Configure based on your server's resources</li>
|
||||
<li><strong>Password:</strong> Optional password protection for private servers</li>
|
||||
<li><strong>Admin/RCON Password:</strong> Set a strong password for remote administration</li>
|
||||
<li><strong>Game Mode:</strong> Configure game-specific modes and settings</li>
|
||||
</ul>
|
||||
|
||||
<h4>Common XML Files</h4>
|
||||
<h3>Configuration Files</h3>
|
||||
<p>Important configuration files for this server:</p>
|
||||
<ul>
|
||||
<li><code>items.xml</code> - Item definitions and properties</li>
|
||||
<li><code>blocks.xml</code> - Block types and behaviors</li>
|
||||
<li><code>recipes.xml</code> - Crafting recipes</li>
|
||||
<li><code>loot.xml</code> - Loot tables and containers</li>
|
||||
<li><code>entityclasses.xml</code> - Zombie and animal stats</li>
|
||||
<li><code>progression.xml</code> - Skill trees and perks</li>
|
||||
<li><strong><code>serverconfig.xml</code></strong> - Server Configurations</li>
|
||||
<li><strong><code>Saves/serveradmin.xml</code></strong> - Admin Configurations</li>
|
||||
</ul>
|
||||
|
||||
<h4>Example: Increase Stack Sizes</h4>
|
||||
<pre><code><configs>
|
||||
<set xpath="/items/item[@name='resourceWood']/@Stacknumber">10000</set>
|
||||
<set xpath="/items/item[@name='resourceIron']/@Stacknumber">10000</set>
|
||||
<set xpath="/items/item[@name='resourceConcreteMix']/@Stacknumber">10000</set>
|
||||
</configs>
|
||||
<h3>Server Commands</h3>
|
||||
<p>Common administrative commands (access via console or RCON):</p>
|
||||
<pre><code># Kick player
|
||||
kick [player_name]
|
||||
|
||||
# Ban player
|
||||
ban [player_name]
|
||||
|
||||
# Change map/level (syntax varies by game)
|
||||
changelevel [map_name]
|
||||
|
||||
# Set admin password (if supported)
|
||||
setadminpassword [password]
|
||||
</code></pre>
|
||||
|
||||
<h4>Example: Modify Zombie Health</h4>
|
||||
<pre><code><configs>
|
||||
<set xpath="/entity_classes/entity_class[@name='zombieSteve']/property[@name='Health']/@value">500</set>
|
||||
<set xpath="/entity_classes/entity_class[@name='zombieFeral']/property[@name='Health']/@value">1000</set>
|
||||
</configs>
|
||||
<h2 id="parameters">⚙️ Startup Parameters</h2>
|
||||
|
||||
<h3>Basic Startup</h3>
|
||||
<pre><code># Generic startup command structure
|
||||
./server_executable [parameters]
|
||||
</code></pre>
|
||||
|
||||
<h3>Installing Mods</h3>
|
||||
<ol>
|
||||
<li>Download mod from 7daystodiemods.com or NexusMods</li>
|
||||
<li>Extract to <code>Mods/</code> folder in server directory</li>
|
||||
<li>Restart server - mods load automatically</li>
|
||||
<li>Check <code>output_log.txt</code> for errors</li>
|
||||
</ol>
|
||||
<h3>Common Parameters</h3>
|
||||
<ul>
|
||||
<li><code>-port [number]</code> - Set the server port</li>
|
||||
<li><code>-maxplayers [number]</code> - Maximum player slots</li>
|
||||
<li><code>-map [name]</code> - Starting map/level</li>
|
||||
<li><code>-console</code> - Enable console output</li>
|
||||
<li><code>-nographics</code> - Run without graphics (headless mode)</li>
|
||||
</ul>
|
||||
|
||||
<h3>Creating a Start Script</h3>
|
||||
|
||||
<p><strong>Linux (start.sh):</strong></p>
|
||||
<pre><code>#!/bin/bash
|
||||
cd /path/to/server
|
||||
./server_executable [parameters] 2>&1 | tee server.log
|
||||
</code></pre>
|
||||
<pre><code>chmod +x start.sh
|
||||
./start.sh
|
||||
</code></pre>
|
||||
|
||||
<p><strong>Windows (start.bat):</strong></p>
|
||||
<pre><code>@echo off
|
||||
cd /d "%~dp0"
|
||||
server_executable.exe [parameters]
|
||||
pause
|
||||
</code></pre>
|
||||
|
||||
<h3>Running as a Service</h3>
|
||||
|
||||
<p><strong>Linux (systemd):</strong></p>
|
||||
<pre><code># Create service file: /etc/systemd/system/gameserver.service
|
||||
[Unit]
|
||||
Description=7 Days to Die Server
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=gameserver
|
||||
WorkingDirectory=/home/gameserver/server
|
||||
ExecStart=/home/gameserver/server/start.sh
|
||||
Restart=on-failure
|
||||
RestartSec=10
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
</code></pre>
|
||||
|
||||
<pre><code># Enable and start service
|
||||
sudo systemctl daemon-reload
|
||||
sudo systemctl enable gameserver
|
||||
sudo systemctl start gameserver
|
||||
sudo systemctl status gameserver
|
||||
</code></pre>
|
||||
|
||||
<h2 id="troubleshooting">🔧 Troubleshooting</h2>
|
||||
|
||||
<h3>Server Not Showing in Browser</h3>
|
||||
<pre><code># Check ServerVisibility in serverconfig.xml
|
||||
<property name="ServerVisibility" value="2"/> <!-- Must be 2 for public -->
|
||||
<h3>Server Won't Start</h3>
|
||||
|
||||
# Verify ports are open
|
||||
netstat -an | grep 26900
|
||||
<h4>Check Server Logs</h4>
|
||||
<pre><code># View recent log entries
|
||||
tail -f server.log
|
||||
|
||||
# Check firewall rules
|
||||
sudo ufw status
|
||||
# Or check system logs
|
||||
journalctl -u gameserver -f
|
||||
</code></pre>
|
||||
|
||||
<h3>High RAM Usage</h3>
|
||||
<pre><code># Reduce world size
|
||||
<property name="WorldGenSize" value="4096"/> <!-- Try 2048 or 3072 -->
|
||||
<h4>Port Already in Use</h4>
|
||||
<pre><code># Find what's using the port
|
||||
sudo lsof -i :[PORT]
|
||||
sudo netstat -tulpn | grep [PORT]
|
||||
|
||||
# Reduce max zombies
|
||||
<property name="MaxSpawnedZombies" value="60"/> <!-- Lower if needed -->
|
||||
|
||||
# Enable/check automatic restarts
|
||||
# Restart every 24-48 hours to clear memory
|
||||
# Kill the process or change server port
|
||||
</code></pre>
|
||||
|
||||
<h3>Connection Timeout</h3>
|
||||
<h4>Missing Dependencies</h4>
|
||||
<p>Ensure all required dependencies are installed. Check the error messages for missing libraries or packages.</p>
|
||||
|
||||
<h3>Connection Issues</h3>
|
||||
|
||||
<h4>Can't Connect to Server</h4>
|
||||
<ol>
|
||||
<li><strong>Verify server is running:</strong> <code>ps aux | grep server</code></li>
|
||||
<li><strong>Check port is listening:</strong> <code>netstat -an | grep [PORT]</code></li>
|
||||
<li><strong>Verify firewall rules</strong> (see Ports section above)</li>
|
||||
<li><strong>Check server IP:</strong> Use external IP, not localhost</li>
|
||||
<li><strong>Router/NAT:</strong> Ensure port forwarding is configured</li>
|
||||
</ol>
|
||||
|
||||
<h4>High Latency/Lag</h4>
|
||||
<ul>
|
||||
<li>Verify all three UDP ports (26900-26902) are open</li>
|
||||
<li>Check router port forwarding if self-hosting</li>
|
||||
<li>Disable Steam networking protocol if having issues</li>
|
||||
<li>Try direct IP connection instead of server browser</li>
|
||||
<li>Check server resource usage (CPU, RAM, disk I/O)</li>
|
||||
<li>Verify network bandwidth is adequate</li>
|
||||
<li>Consider server location relative to players</li>
|
||||
<li>Check for background processes consuming resources</li>
|
||||
</ul>
|
||||
|
||||
<h3>XML Parsing Errors</h3>
|
||||
<pre><code># Check output_log.txt for errors
|
||||
tail -f output_log.txt
|
||||
<h3>Performance Issues</h3>
|
||||
|
||||
# Validate XML syntax (all tags must close)
|
||||
# Use XML validator tool online
|
||||
<h4>Server Lag</h4>
|
||||
<ol>
|
||||
<li><strong>Monitor resources:</strong> Use <code>htop</code> or <code>top</code></li>
|
||||
<li><strong>Check disk I/O:</strong> Use <code>iotop</code></li>
|
||||
<li><strong>Review server logs</strong> for errors or warnings</li>
|
||||
<li><strong>Reduce player count</strong> or increase server resources</li>
|
||||
<li><strong>Optimize configuration</strong> based on server capacity</li>
|
||||
</ol>
|
||||
|
||||
# Remove recently added mods one-by-one
|
||||
# Common issue: duplicate entries or syntax errors
|
||||
<h4>Memory Leaks</h4>
|
||||
<pre><code># Monitor memory usage
|
||||
free -h
|
||||
top -p $(pgrep -f server)
|
||||
|
||||
# Restart server regularly via cron if needed
|
||||
0 4 * * * /home/gameserver/restart.sh
|
||||
</code></pre>
|
||||
|
||||
<h2 id="performance">Performance Optimization</h2>
|
||||
|
||||
<h3>Server Performance Settings</h3>
|
||||
<pre><code><!-- Reduce view distance -->
|
||||
<property name="ServerMaxWorldTransferSpeedKiBs" value="512"/>
|
||||
<h3>Server Tuning</h3>
|
||||
<ul>
|
||||
<li><strong>CPU:</strong> Ensure adequate CPU allocation; most game servers are single-threaded</li>
|
||||
<li><strong>RAM:</strong> Allocate sufficient memory; monitor usage and adjust as needed</li>
|
||||
<li><strong>Disk:</strong> Use SSD storage for better I/O performance</li>
|
||||
<li><strong>Network:</strong> Ensure stable, low-latency connection</li>
|
||||
</ul>
|
||||
|
||||
<!-- Lower max zombies -->
|
||||
<property name="MaxSpawnedZombies" value="60"/>
|
||||
<h3>Operating System Optimization</h3>
|
||||
<pre><code># Increase file descriptor limits
|
||||
echo "* soft nofile 65536" >> /etc/security/limits.conf
|
||||
echo "* hard nofile 65536" >> /etc/security/limits.conf
|
||||
|
||||
<!-- Reduce AI updates -->
|
||||
<property name="EnemySpawnMode" value="true"/>
|
||||
|
||||
<!-- Disable dynamic mesh -->
|
||||
<property name="EACEnabled" value="true"/> <!-- Can impact perf if disabled -->
|
||||
# Network tuning
|
||||
sysctl -w net.core.rmem_max=16777216
|
||||
sysctl -w net.core.wmem_max=16777216
|
||||
sysctl -w net.ipv4.tcp_rmem="4096 87380 16777216"
|
||||
sysctl -w net.ipv4.tcp_wmem="4096 87380 16777216"
|
||||
</code></pre>
|
||||
|
||||
<h3>Hardware Recommendations by Player Count</h3>
|
||||
<table style="width: 100%; border-collapse: collapse; margin: 20px 0;">
|
||||
<thead>
|
||||
<tr style="background: #0f172a;">
|
||||
<th style="padding: 12px; text-align: left; color: #ffffff;">Players</th>
|
||||
<th style="padding: 12px; text-align: left; color: #ffffff;">RAM</th>
|
||||
<th style="padding: 12px; text-align: left; color: #ffffff;">CPU Cores</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody style="color: #e5e7eb;">
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;">1-4</td>
|
||||
<td style="padding: 12px;">4-6GB</td>
|
||||
<td style="padding: 12px;">2-4</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;">5-8</td>
|
||||
<td style="padding: 12px;">8-12GB</td>
|
||||
<td style="padding: 12px;">4-6</td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;">9-16</td>
|
||||
<td style="padding: 12px;">12-16GB</td>
|
||||
<td style="padding: 12px;">6-8</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;">17-32</td>
|
||||
<td style="padding: 12px;">16-24GB</td>
|
||||
<td style="padding: 12px;">8+</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h3>World Generation Tips</h3>
|
||||
<h3>Monitoring</h3>
|
||||
<p>Set up monitoring to track server health:</p>
|
||||
<ul>
|
||||
<li><strong>Navezgane:</strong> Fixed map, better performance, 16km²</li>
|
||||
<li><strong>Random Gen (RWG):</strong> Procedural, larger, higher RAM usage</li>
|
||||
<li>Smaller world sizes (2048-4096) reduce RAM and CPU load</li>
|
||||
<li>Pre-generate worlds offline before deploying to production server</li>
|
||||
<li>CPU and memory usage</li>
|
||||
<li>Network traffic and latency</li>
|
||||
<li>Player count and activity</li>
|
||||
<li>Error rates and crash logs</li>
|
||||
</ul>
|
||||
|
||||
<h3>Backup Strategy</h3>
|
||||
<pre><code>#!/bin/bash
|
||||
# backup.sh - Run via cron
|
||||
DATE=$(date +%Y%m%d_%H%M%S)
|
||||
BACKUP_DIR="/backups/gameserver"
|
||||
SERVER_DIR="/home/gameserver/server"
|
||||
|
||||
# Create backup
|
||||
tar -czf $BACKUP_DIR/backup_$DATE.tar.gz -C $SERVER_DIR .
|
||||
|
||||
# Keep only last 7 days
|
||||
find $BACKUP_DIR -name "backup_*.tar.gz" -mtime +7 -delete
|
||||
</code></pre>
|
||||
|
||||
<h2 id="security">Security Best Practices</h2>
|
||||
|
||||
<h3>Firewall Configuration</h3>
|
||||
<pre><code># Minimal firewall - only allow necessary ports
|
||||
sudo ufw default deny incoming
|
||||
sudo ufw default allow outgoing
|
||||
sudo ufw allow [SERVER_PORT]/tcp
|
||||
sudo ufw allow [SERVER_PORT]/udp
|
||||
sudo ufw allow 22/tcp # SSH
|
||||
sudo ufw enable
|
||||
</code></pre>
|
||||
|
||||
<h3>Strong Passwords</h3>
|
||||
<ul>
|
||||
<li>Use strong, unique passwords for admin/RCON access</li>
|
||||
<li>Never use default passwords</li>
|
||||
<li>Change passwords regularly</li>
|
||||
<li>Don't share admin credentials unnecessarily</li>
|
||||
</ul>
|
||||
|
||||
<h3>Regular Updates</h3>
|
||||
<ul>
|
||||
<li>Keep server software updated to the latest stable version</li>
|
||||
<li>Update operating system and dependencies regularly</li>
|
||||
<li>Subscribe to security advisories for your game</li>
|
||||
<li>Test updates on a staging server before production deployment</li>
|
||||
</ul>
|
||||
|
||||
<h3>Access Control</h3>
|
||||
<ul>
|
||||
<li>Limit SSH access to specific IPs if possible</li>
|
||||
<li>Use SSH keys instead of passwords</li>
|
||||
<li>Disable root login via SSH</li>
|
||||
<li>Implement fail2ban or similar intrusion prevention</li>
|
||||
</ul>
|
||||
|
||||
<h3>DDoS Protection</h3>
|
||||
<ul>
|
||||
<li>Consider DDoS protection services (Cloudflare, OVH, etc.)</li>
|
||||
<li>Implement rate limiting where supported</li>
|
||||
<li>Monitor for unusual traffic patterns</li>
|
||||
<li>Have an incident response plan</li>
|
||||
</ul>
|
||||
|
||||
<h2>Additional Resources</h2>
|
||||
<ul>
|
||||
<li>Official 7 Days to Die documentation and forums</li>
|
||||
<li>Community wikis and guides</li>
|
||||
<li>Game-specific Discord or Reddit communities</li>
|
||||
<li>Server hosting provider documentation</li>
|
||||
</ul>
|
||||
|
||||
<div style="background: #78350f; padding: 20px; border-left: 4px solid #f59e0b; margin: 20px 0; border-radius: 4px;">
|
||||
<h3 style="color: #ffffff; margin-top: 0;"><i class="fas fa-lightbulb" style="color: #fbbf24; margin-right: 8px;"></i>Pro Tips</h3>
|
||||
<ul style="color: #fef3c7; line-height: 1.8;">
|
||||
<li><strong>Backup regularly:</strong> World corruption can occur - automated backups every 6-12 hours</li>
|
||||
<li><strong>Restart schedule:</strong> Auto-restart every 24-48 hours clears memory leaks</li>
|
||||
<li><strong>Update carefully:</strong> Major updates can break worlds - test on backup first</li>
|
||||
<li><strong>Monitor logs:</strong> <code>output_log.txt</code> shows errors and performance issues</li>
|
||||
<li><strong>Web panel security:</strong> Change default passwords and restrict IP access</li>
|
||||
<h3 style="color: #ffffff; margin-top: 0;"><i class="fas fa-exclamation-triangle" style="color: #fbbf24; margin-right: 8px;"></i>Important Notes</h3>
|
||||
<ul style="color: #fef3c7; line-height: 1.8; margin: 0;">
|
||||
<li>Always make backups before making configuration changes</li>
|
||||
<li>Keep your server and dependencies updated</li>
|
||||
<li>Monitor server resources and player activity</li>
|
||||
<li>Follow the game's End User License Agreement (EULA) and Terms of Service</li>
|
||||
<li>Join community forums for support and best practices</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<h2 id="related-mods">🔌 Related Mods & Plugins</h2>
|
||||
<p>Popular server modifications compatible with 7 Days to Die:</p>
|
||||
<ul>
|
||||
<li><a href="../oxide/">Oxide / uMod</a> - Comprehensive modding framework with C# plugin system, permissions, hooks, and extensive plugin library for server administration and gameplay enhancement</li>
|
||||
</ul>
|
||||
|
||||
<h2>Resources</h2>
|
||||
<ul>
|
||||
<li><a href="https://7daystodie.com/" target="_blank">Official Website</a></li>
|
||||
<li><a href="https://community.7daystodie.com/" target="_blank">Official Forums</a></li>
|
||||
<li><a href="https://7daystodiemods.com/" target="_blank">7 Days to Die Mods</a></li>
|
||||
<li><a href="https://www.nexusmods.com/7daystodie" target="_blank">NexusMods - 7DTD</a></li>
|
||||
<li><a href="https://7dtd.illy.bz/" target="_blank">7DTD Server Manager Tools</a></li>
|
||||
</ul>
|
||||
<p style="text-align: center; margin-top: 30px; color: #666;">
|
||||
<em>Last updated: November 2025 | For 7 Days to Die server hosting</em>
|
||||
</p>
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
{
|
||||
"description": "Comprehensive guide for 7 Days to Die dedicated servers with XML modding, ports, web control panel, and zombie survival hosting",
|
||||
"name": "7 Days to Die",
|
||||
"order": 33,
|
||||
"category": "game"
|
||||
{
|
||||
"description": "Comprehensive guide for 7 Days to Die dedicated servers with XML modding, ports, web control panel, and zombie survival hosting",
|
||||
"name": "7 Days to Die",
|
||||
"order": 33,
|
||||
"category": "game",
|
||||
"complete": true
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue