more game docs
This commit is contained in:
parent
42e65eace1
commit
1434929258
37 changed files with 3849 additions and 141 deletions
|
|
@ -381,6 +381,12 @@ tail -f output_log.txt
|
|||
</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>
|
||||
|
|
|
|||
570
modules/billing/docs/amxmodx/index.php
Normal file
570
modules/billing/docs/amxmodx/index.php
Normal file
|
|
@ -0,0 +1,570 @@
|
|||
<?php
|
||||
/**
|
||||
* AMX Mod X Documentation
|
||||
*/
|
||||
?>
|
||||
<h1>📚 AMX Mod X Server Guide</h1>
|
||||
<p style="font-size: 1.1em; color: rgba(255,255,255,0.8);">Powerful plugin framework for Counter-Strike servers</p>
|
||||
|
||||
<div style="background: #1e3a5f; padding: 20px; border-left: 4px solid #3b82f6; margin: 20px 0; border-radius: 4px;">
|
||||
<h3 style="color: #ffffff; margin-top: 0;">Quick Info</h3>
|
||||
<table style="width: 100%; color: #e5e7eb;">
|
||||
<tr><td><strong style="color: #ffffff;">Supported Games:</strong></td><td>Counter-Strike 1.6, CS:Source, CS:GO (limited)</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Language:</strong></td><td>Pawn scripting (.sma source, .amxx compiled)</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Requirement:</strong></td><td>MetaMod must be installed first</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Admin System:</strong></td><td>users.ini file-based or database</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Latest Version:</strong></td><td>1.10+ (actively maintained)</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Website:</strong></td><td>amxmodx.org</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Forum:</strong></td><td>forums.alliedmods.net</td></tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<h2>Navigation</h2>
|
||||
<ul style="list-style: none; padding: 0;">
|
||||
<li>📚 <a href="#overview">Overview</a></li>
|
||||
<li>⚙️ <a href="#installation">Installation</a></li>
|
||||
<li>👤 <a href="#admin">Admin System</a></li>
|
||||
<li>🔌 <a href="#plugins">Plugin Management</a></li>
|
||||
<li>💻 <a href="#scripting">Pawn Scripting Basics</a></li>
|
||||
<li>🎮 <a href="#gamemodes">Popular Game Modes</a></li>
|
||||
<li>🛠️ <a href="#compilation">Compiling Plugins</a></li>
|
||||
<li>🔧 <a href="#troubleshooting">Troubleshooting</a></li>
|
||||
<li>📖 <a href="#resources">Resources</a></li>
|
||||
</ul>
|
||||
|
||||
<h2 id="overview">Overview</h2>
|
||||
<p>AMX Mod X (AMXX) is a powerful server-side modification framework for Half-Life 1 engine games, particularly Counter-Strike. It allows server administrators to add custom functionality through plugins written in Pawn scripting language.</p>
|
||||
|
||||
<h3>Key Features</h3>
|
||||
<ul>
|
||||
<li><strong>Plugin System:</strong> Hot-load plugins without server restart</li>
|
||||
<li><strong>Admin Management:</strong> Comprehensive admin system with flags/permissions</li>
|
||||
<li><strong>Custom Commands:</strong> Create server-side commands and cvars</li>
|
||||
<li><strong>Event Hooks:</strong> Hook into game events (player death, spawn, etc.)</li>
|
||||
<li><strong>Database Support:</strong> MySQL, SQLite integration</li>
|
||||
<li><strong>Menu System:</strong> Create interactive menus for players</li>
|
||||
<li><strong>Game Modes:</strong> Enable custom game modes (Zombie Plague, Superhero, etc.)</li>
|
||||
</ul>
|
||||
|
||||
<h3>Game Compatibility</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;">Game</th>
|
||||
<th style="padding: 12px; text-align: left; color: #ffffff;">Support Level</th>
|
||||
<th style="padding: 12px; text-align: left; color: #ffffff;">Notes</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody style="color: #e5e7eb;">
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;">Counter-Strike 1.6</td>
|
||||
<td style="padding: 12px;"><span style="color: #10b981;">Full Support</span></td>
|
||||
<td style="padding: 12px;">Best compatibility, most plugins available</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;">CS:Source</td>
|
||||
<td style="padding: 12px;"><span style="color: #eab308;">Partial Support</span></td>
|
||||
<td style="padding: 12px;">Works but SourceMod preferred</td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;">CS:GO</td>
|
||||
<td style="padding: 12px;"><span style="color: #ef4444;">Limited</span></td>
|
||||
<td style="padding: 12px;">SourceMod strongly recommended</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;">Day of Defeat</td>
|
||||
<td style="padding: 12px;"><span style="color: #10b981;">Full Support</span></td>
|
||||
<td style="padding: 12px;">HL1 engine, full compatibility</td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;">TFC, NS, TS</td>
|
||||
<td style="padding: 12px;"><span style="color: #10b981;">Full Support</span></td>
|
||||
<td style="padding: 12px;">All HL1 mods supported</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h2 id="installation">⚙️ Installation</h2>
|
||||
|
||||
<h3>Prerequisites</h3>
|
||||
<p><strong>Critical:</strong> MetaMod must be installed before AMX Mod X!</p>
|
||||
<ul>
|
||||
<li>Counter-Strike dedicated server</li>
|
||||
<li>MetaMod 1.21+ (for CS 1.6) or MetaMod:Source (for Source games)</li>
|
||||
<li>Admin access to server files</li>
|
||||
</ul>
|
||||
|
||||
<h3>Step 1: Install MetaMod (CS 1.6)</h3>
|
||||
<pre><code># Download MetaMod from metamod.org
|
||||
wget https://www.metamod.org/files/metamod-1.21-am.tar.gz
|
||||
tar -xzf metamod-1.21-am.tar.gz
|
||||
|
||||
# Copy to server (Linux)
|
||||
cp metamod.so /path/to/cstrike/addons/metamod/dlls/
|
||||
|
||||
# Create metamod plugin config
|
||||
mkdir -p /path/to/cstrike/addons/metamod
|
||||
echo 'linux addons/metamod/dlls/metamod.so' > /path/to/cstrike/addons/metamod/metamod.so
|
||||
|
||||
# Update liblist.gam (CS 1.6 only)
|
||||
# Replace: gamedll_linux "dlls/cs.so"
|
||||
# With: gamedll_linux "addons/metamod/dlls/metamod.so"
|
||||
</code></pre>
|
||||
|
||||
<h4>Windows MetaMod Installation</h4>
|
||||
<pre><code># Download Windows version
|
||||
# Extract metamod.dll to cstrike\addons\metamod\dlls\
|
||||
|
||||
# Edit liblist.gam:
|
||||
# Replace: gamedll "dlls\mp.dll"
|
||||
# With: gamedll "addons\metamod\dlls\metamod.dll"
|
||||
</code></pre>
|
||||
|
||||
<h3>Step 2: Install AMX Mod X</h3>
|
||||
|
||||
<h4>Linux Installation</h4>
|
||||
<pre><code># Download latest AMXX from amxmodx.org
|
||||
cd /tmp
|
||||
wget https://www.amxmodx.org/amxxdrop/1.10/amxmodx-1.10.0-git5467-base-linux.tar.gz
|
||||
wget https://www.amxmodx.org/amxxdrop/1.10/amxmodx-1.10.0-git5467-cstrike-linux.tar.gz
|
||||
|
||||
# Extract to server root
|
||||
cd /path/to/cstrike
|
||||
tar -xzf /tmp/amxmodx-1.10.0-git5467-base-linux.tar.gz
|
||||
tar -xzf /tmp/amxmodx-1.10.0-git5467-cstrike-linux.tar.gz
|
||||
|
||||
# Set permissions
|
||||
chmod +x addons/amxmodx/dlls/amxmodx_mm_i386.so
|
||||
|
||||
# AMX Mod X automatically registers with MetaMod
|
||||
</code></pre>
|
||||
|
||||
<h4>Windows Installation</h4>
|
||||
<pre><code># Download Windows packages:
|
||||
# - amxmodx-1.10.0-git5467-base-windows.zip
|
||||
# - amxmodx-1.10.0-git5467-cstrike-windows.zip
|
||||
|
||||
# Extract both to cstrike\ folder
|
||||
# Folder structure should be:
|
||||
# cstrike\
|
||||
# addons\
|
||||
# amxmodx\
|
||||
# configs\
|
||||
# dlls\
|
||||
# plugins\
|
||||
# scripting\
|
||||
</code></pre>
|
||||
|
||||
<h3>Step 3: Verify Installation</h3>
|
||||
<pre><code># Start server and check console for:
|
||||
# "AMX Mod X version X.X.X loaded"
|
||||
|
||||
# In-game, type in console:
|
||||
amx_version
|
||||
|
||||
# Expected output:
|
||||
# AMX Mod X 1.10.0-git5467 (Counter-Strike 1.6)
|
||||
</code></pre>
|
||||
|
||||
<h2 id="admin">👤 Admin System</h2>
|
||||
|
||||
<h3>Admin Configuration (users.ini)</h3>
|
||||
<p>Located at: <code>addons/amxmodx/configs/users.ini</code></p>
|
||||
|
||||
<h4>Basic Admin Entry</h4>
|
||||
<pre><code>; Name or IP with flags
|
||||
"PlayerName" "" "abcdefghijklmnopqrstu" "ce"
|
||||
|
||||
; Admin by SteamID (recommended)
|
||||
"STEAM_0:1:12345678" "" "abcdefghijklmnopqrstu" "ce"
|
||||
|
||||
; Admin by IP address
|
||||
"192.168.1.100" "" "abcdefghijklmnopqrstu" "a"
|
||||
|
||||
; Password-based admin
|
||||
"" "mypassword" "abcdefghijklmnopqrstu" "a"
|
||||
</code></pre>
|
||||
|
||||
<h3>Admin Flags Explained</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;">Flag</th>
|
||||
<th style="padding: 12px; text-align: left; color: #ffffff;">Permission</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody style="color: #e5e7eb;">
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;"><code>a</code></td>
|
||||
<td style="padding: 12px;">Immunity (can't be kicked/banned)</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;"><code>b</code></td>
|
||||
<td style="padding: 12px;">Reservation (can join full server)</td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;"><code>c</code></td>
|
||||
<td style="padding: 12px;">amx_kick command</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;"><code>d</code></td>
|
||||
<td style="padding: 12px;">amx_ban and amx_unban</td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;"><code>e</code></td>
|
||||
<td style="padding: 12px;">amx_slay and amx_slap</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;"><code>f</code></td>
|
||||
<td style="padding: 12px;">amx_map command</td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;"><code>g</code></td>
|
||||
<td style="padding: 12px;">amx_cvar (change server cvars)</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;"><code>h</code></td>
|
||||
<td style="padding: 12px;">amx_cfg (execute configs)</td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;"><code>i</code></td>
|
||||
<td style="padding: 12px;">amx_chat and other chat commands</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;"><code>j</code></td>
|
||||
<td style="padding: 12px;">amx_vote commands</td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;"><code>k</code></td>
|
||||
<td style="padding: 12px;">Access to sv_password cvar</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;"><code>l</code></td>
|
||||
<td style="padding: 12px;">amx_rcon command</td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;"><code>m</code></td>
|
||||
<td style="padding: 12px;">Custom level A (defined by plugins)</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;"><code>z</code></td>
|
||||
<td style="padding: 12px;">User (no admin privileges)</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h3>Common Admin Commands</h3>
|
||||
<pre><code># Player management
|
||||
amx_kick <player> [reason]
|
||||
amx_ban <player> <minutes> [reason]
|
||||
amx_slay <player>
|
||||
amx_slap <player> [damage]
|
||||
|
||||
# Server management
|
||||
amx_map <mapname>
|
||||
amx_cvar <cvar> <value>
|
||||
amx_cfg <config file>
|
||||
amx_pausecfg
|
||||
|
||||
# Chat and communication
|
||||
amx_say <message>
|
||||
amx_chat <message> # Admin-only chat
|
||||
amx_psay <player> <message> # Private message
|
||||
|
||||
# Voting
|
||||
amx_vote <question>
|
||||
amx_votemap <map1> <map2> <map3>
|
||||
amx_votekick <player>
|
||||
|
||||
# Information
|
||||
amx_who # List online players with info
|
||||
amx_plugins # List loaded plugins
|
||||
amx_modules # List loaded modules
|
||||
</code></pre>
|
||||
|
||||
<h2 id="plugins">🔌 Plugin Management</h2>
|
||||
|
||||
<h3>Plugin Files Location</h3>
|
||||
<ul>
|
||||
<li><strong>Compiled plugins (.amxx):</strong> <code>addons/amxmodx/plugins/</code></li>
|
||||
<li><strong>Source code (.sma):</strong> <code>addons/amxmodx/scripting/</code></li>
|
||||
<li><strong>Plugin configuration:</strong> <code>addons/amxmodx/configs/plugins.ini</code></li>
|
||||
</ul>
|
||||
|
||||
<h3>plugins.ini Configuration</h3>
|
||||
<p>Located at: <code>addons/amxmodx/configs/plugins.ini</code></p>
|
||||
<pre><code>; Core plugins (required)
|
||||
admin.amxx
|
||||
adminhelp.amxx
|
||||
adminslots.amxx
|
||||
multilingual.amxx
|
||||
menufront.amxx
|
||||
cmdmenu.amxx
|
||||
plmenu.amxx
|
||||
mapchooser.amxx
|
||||
admincmd.amxx
|
||||
|
||||
; Counter-Strike plugins
|
||||
statsx.amxx
|
||||
restmenu.amxx
|
||||
scrollmsg.amxx
|
||||
|
||||
; Custom plugins (add your own)
|
||||
; myplugin.amxx
|
||||
; zombieplague.amxx
|
||||
|
||||
; Disable plugin with semicolon:
|
||||
; disabled_plugin.amxx
|
||||
</code></pre>
|
||||
|
||||
<h3>Installing New Plugins</h3>
|
||||
<pre><code># 1. Download .amxx file or .sma source
|
||||
# 2. If .amxx - copy to plugins/ folder
|
||||
cp myplugin.amxx /path/to/cstrike/addons/amxmodx/plugins/
|
||||
|
||||
# 3. Add to plugins.ini
|
||||
echo "myplugin.amxx" >> /path/to/cstrike/addons/amxmodx/configs/plugins.ini
|
||||
|
||||
# 4. Reload plugins without restart:
|
||||
# In-game: amx_plugins reload
|
||||
# Or restart server
|
||||
</code></pre>
|
||||
|
||||
<h3>Plugin Commands</h3>
|
||||
<pre><code># List all plugins
|
||||
amx_plugins
|
||||
|
||||
# Enable/disable specific plugin
|
||||
amx_pause <plugin name>
|
||||
amx_unpause <plugin name>
|
||||
|
||||
# Reload all plugins
|
||||
amx_plugins reload
|
||||
</code></pre>
|
||||
|
||||
<h2 id="scripting">💻 Pawn Scripting Basics</h2>
|
||||
|
||||
<h3>Simple Plugin Example</h3>
|
||||
<pre><code>/* hello_world.sma */
|
||||
#include <amxmodx>
|
||||
#include <amxmisc>
|
||||
|
||||
#define PLUGIN "Hello World"
|
||||
#define VERSION "1.0"
|
||||
#define AUTHOR "YourName"
|
||||
|
||||
public plugin_init() {
|
||||
register_plugin(PLUGIN, VERSION, AUTHOR)
|
||||
register_clcmd("say /hello", "cmd_hello")
|
||||
}
|
||||
|
||||
public cmd_hello(id) {
|
||||
client_print(id, print_chat, "Hello, %s!", get_user_name(id))
|
||||
return PLUGIN_HANDLED
|
||||
}
|
||||
</code></pre>
|
||||
|
||||
<h3>Common Includes</h3>
|
||||
<ul>
|
||||
<li><code>#include <amxmodx></code> - Core AMXX functions</li>
|
||||
<li><code>#include <amxmisc></code> - Miscellaneous utility functions</li>
|
||||
<li><code>#include <cstrike></code> - Counter-Strike specific functions</li>
|
||||
<li><code>#include <fun></code> - Fun commands (slap, godmode, etc.)</li>
|
||||
<li><code>#include <engine></code> - Engine entity manipulation</li>
|
||||
<li><code>#include <fakemeta></code> - Advanced entity control</li>
|
||||
</ul>
|
||||
|
||||
<h3>Event Hooking</h3>
|
||||
<pre><code>public plugin_init() {
|
||||
register_event("DeathMsg", "event_death", "a")
|
||||
register_event("CurWeapon", "event_curweapon", "be", "1=1")
|
||||
}
|
||||
|
||||
public event_death() {
|
||||
new killer = read_data(1)
|
||||
new victim = read_data(2)
|
||||
|
||||
client_print(killer, print_chat, "You killed %s!", get_user_name(victim))
|
||||
}
|
||||
|
||||
public event_curweapon(id) {
|
||||
new weaponid = read_data(2)
|
||||
// Do something when player switches weapon
|
||||
}
|
||||
</code></pre>
|
||||
|
||||
<h2 id="gamemodes">🎮 Popular Game Modes</h2>
|
||||
|
||||
<h3>Zombie Plague</h3>
|
||||
<p>Most popular zombie mod for CS 1.6:</p>
|
||||
<ul>
|
||||
<li><strong>Features:</strong> Zombies vs Humans, special classes, custom models</li>
|
||||
<li><strong>Download:</strong> forums.alliedmods.net</li>
|
||||
<li><strong>Installation:</strong> Extract to addons/amxmodx/, add to plugins.ini</li>
|
||||
<li><strong>Configuration:</strong> Edit zombieplague.cfg in configs/</li>
|
||||
</ul>
|
||||
|
||||
<h3>Superhero Mod</h3>
|
||||
<p>Players gain superhero powers:</p>
|
||||
<ul>
|
||||
<li><strong>Features:</strong> 20+ heroes (Superman, Flash, etc.), XP system</li>
|
||||
<li><strong>Heroes:</strong> Special abilities (speed, strength, invisibility)</li>
|
||||
<li><strong>Config:</strong> Extensive configuration in sh_heroes.cfg</li>
|
||||
</ul>
|
||||
|
||||
<h3>Jailbreak</h3>
|
||||
<p>Prison-themed game mode:</p>
|
||||
<ul>
|
||||
<li><strong>Teams:</strong> Guards (CTs) vs Prisoners (Ts)</li>
|
||||
<li><strong>Features:</strong> Simon says, games, last request system</li>
|
||||
<li><strong>Requirements:</strong> Special jailbreak maps</li>
|
||||
</ul>
|
||||
|
||||
<h3>Deathmatch</h3>
|
||||
<p>Instant respawn deathmatch:</p>
|
||||
<ul>
|
||||
<li><strong>Plugin:</strong> csdm.amxx (CS DeathMatch)</li>
|
||||
<li><strong>Features:</strong> Instant respawn, weapon menu, spawn protection</li>
|
||||
<li><strong>Config:</strong> csdm.cfg for spawn points and settings</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="compilation">🛠️ Compiling Plugins</h2>
|
||||
|
||||
<h3>Using Web Compiler (Easiest)</h3>
|
||||
<pre><code># Visit: https://www.amxmodx.org/websc.php
|
||||
# 1. Paste your .sma source code
|
||||
# 2. Click "Compile"
|
||||
# 3. Download resulting .amxx file
|
||||
# 4. Upload to plugins/ folder
|
||||
</code></pre>
|
||||
|
||||
<h3>Local Compilation (Linux)</h3>
|
||||
<pre><code># Navigate to scripting folder
|
||||
cd /path/to/cstrike/addons/amxmodx/scripting
|
||||
|
||||
# Compile single plugin
|
||||
./amxxpc myplugin.sma
|
||||
|
||||
# Result: myplugin.amxx in compiled/ folder
|
||||
# Copy to plugins/ folder
|
||||
cp compiled/myplugin.amxx ../plugins/
|
||||
</code></pre>
|
||||
|
||||
<h3>Local Compilation (Windows)</h3>
|
||||
<pre><code># Navigate to scripting folder
|
||||
cd cstrike\addons\amxmodx\scripting
|
||||
|
||||
# Compile using batch file
|
||||
compile.exe myplugin.sma
|
||||
|
||||
# Or double-click compile.bat and follow prompts
|
||||
# Compiled .amxx will be in compiled\ folder
|
||||
</code></pre>
|
||||
|
||||
<h3>Compilation Errors</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;">Error</th>
|
||||
<th style="padding: 12px; text-align: left; color: #ffffff;">Cause & Fix</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody style="color: #e5e7eb;">
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;">fatal error 100: cannot read from file</td>
|
||||
<td style="padding: 12px;">Missing include file - download required .inc file</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;">error 017: undefined symbol</td>
|
||||
<td style="padding: 12px;">Missing function or variable - check includes</td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;">error 021: symbol already defined</td>
|
||||
<td style="padding: 12px;">Duplicate variable/function name</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h2 id="troubleshooting">🔧 Troubleshooting</h2>
|
||||
|
||||
<h3>AMX Mod X Not Loading</h3>
|
||||
<pre><code># Check MetaMod is loaded first
|
||||
# In server console: meta list
|
||||
# Should show: AMX Mod X
|
||||
|
||||
# If not listed:
|
||||
# 1. Verify MetaMod installation
|
||||
# 2. Check addons/metamod/plugins.ini contains:
|
||||
linux addons/amxmodx/dlls/amxmodx_mm_i386.so
|
||||
# Or for Windows:
|
||||
win32 addons/amxmodx/dlls/amxmodx_mm.dll
|
||||
|
||||
# Check file permissions (Linux)
|
||||
chmod +x addons/amxmodx/dlls/amxmodx_mm_i386.so
|
||||
</code></pre>
|
||||
|
||||
<h3>Plugin Not Working</h3>
|
||||
<pre><code># Check plugin is enabled in plugins.ini
|
||||
cat addons/amxmodx/configs/plugins.ini | grep myplugin
|
||||
|
||||
# Verify plugin loaded
|
||||
# In-game: amx_plugins
|
||||
# Should list your plugin
|
||||
|
||||
# Check for compilation errors
|
||||
# Recompile plugin and check for errors
|
||||
|
||||
# Enable debug mode
|
||||
# In amxx.cfg: amx_debug 1
|
||||
# Check logs/L*.log files for errors
|
||||
</code></pre>
|
||||
|
||||
<h3>Admin Commands Not Working</h3>
|
||||
<ul>
|
||||
<li>Verify admin entry in users.ini is correct (check SteamID format)</li>
|
||||
<li>Ensure admin flags include required permission (e.g., 'd' for ban)</li>
|
||||
<li>Check admincmd.amxx plugin is loaded</li>
|
||||
<li>Verify immunity flag 'a' for admin protection</li>
|
||||
</ul>
|
||||
|
||||
<h3>Server Crash After Plugin Installation</h3>
|
||||
<pre><code># Disable recently added plugin
|
||||
# Edit plugins.ini and comment out:
|
||||
; problematic_plugin.amxx
|
||||
|
||||
# Restart server and check if crash persists
|
||||
|
||||
# Check logs for specific error:
|
||||
tail -f logs/L*.log
|
||||
|
||||
# Common causes:
|
||||
# - Incompatible plugin version
|
||||
# - Missing dependencies
|
||||
# - Conflicting plugins
|
||||
</code></pre>
|
||||
|
||||
<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>MetaMod First:</strong> Always install MetaMod before AMX Mod X</li>
|
||||
<li><strong>SteamID Admins:</strong> Use SteamID in users.ini, not names (easily changed)</li>
|
||||
<li><strong>Test Plugins:</strong> Test new plugins on dev server before production</li>
|
||||
<li><strong>Backup configs:</strong> Keep backups of users.ini and plugins.ini</li>
|
||||
<li><strong>Plugin Updates:</strong> Check forums regularly for plugin updates</li>
|
||||
<li><strong>Performance:</strong> Disable unused plugins to improve server performance</li>
|
||||
<li><strong>Security:</strong> Never give 'l' flag (rcon) to untrusted admins</li>
|
||||
<li><strong>Documentation:</strong> Read plugin documentation before installation</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<h2 id="resources">Resources</h2>
|
||||
<ul>
|
||||
<li><a href="https://www.amxmodx.org/" target="_blank">Official AMX Mod X Website</a></li>
|
||||
<li><a href="https://forums.alliedmods.net/" target="_blank">Allied Modders Forums</a></li>
|
||||
<li><a href="https://www.amxmodx.org/api/" target="_blank">AMX Mod X API Documentation</a></li>
|
||||
<li><a href="https://www.amxmodx.org/websc.php" target="_blank">Online Plugin Compiler</a></li>
|
||||
<li><a href="https://wiki.alliedmods.net/AMX_Mod_X_Plugins" target="_blank">Plugin Development Tutorial</a></li>
|
||||
<li><a href="../cstrike/">Counter-Strike 1.6 Server Documentation</a></li>
|
||||
<li><a href="../css/">CS:Source Server Documentation</a></li>
|
||||
<li><a href="../csgo/">CS:GO Server Documentation</a></li>
|
||||
</ul>
|
||||
7
modules/billing/docs/amxmodx/metadata.json
Normal file
7
modules/billing/docs/amxmodx/metadata.json
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
{
|
||||
"name": "AMX Mod X",
|
||||
"description": "Comprehensive guide for AMX Mod X (Counter-Strike modding framework) with Pawn scripting, MetaMod requirement, admin system, plugin compilation, and popular game modes",
|
||||
"category": "mods",
|
||||
"order": 62,
|
||||
"complete": true
|
||||
}
|
||||
|
|
@ -212,6 +212,14 @@ CleanupUnlockedAfterDays = 6</code></pre>
|
|||
<li>Check BattlEye filters aren't too restrictive</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="related-mods">🔌 Related Mods & Plugins</h2>
|
||||
<p>Popular server modifications and admin tools compatible with ARMA 2 Combined Operations:</p>
|
||||
<ul>
|
||||
<li><a href="../dayzmod/">DayZ Mod</a> - Zombie survival mod with persistence and Hive architecture</li>
|
||||
<li><a href="../epochmod/">Epoch Mod</a> - Base building, traders, and dynamic economy for DayZ</li>
|
||||
<li><a href="../bec/">BEC (BattlEye Extended Controls)</a> - Server scheduler, auto-restart, and admin commands</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="resources">📚 Resources</h2>
|
||||
|
||||
<ul>
|
||||
|
|
|
|||
|
|
@ -227,6 +227,14 @@ MaxCustomFileSize = 160000;</code></pre>
|
|||
<li><strong>Network:</strong> 50+ Mbps</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="related-mods">🔌 Related Mods & Plugins</h2>
|
||||
<p>Popular server modifications and admin tools compatible with ARMA 2 Operation Arrowhead:</p>
|
||||
<ul>
|
||||
<li><a href="../dayzmod/">DayZ Mod</a> - Zombie survival mod with persistence and Hive architecture</li>
|
||||
<li><a href="../epochmod/">Epoch Mod</a> - Base building, traders, and dynamic economy for DayZ</li>
|
||||
<li><a href="../bec/">BEC (BattlEye Extended Controls)</a> - Server scheduler, auto-restart, and admin commands</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="resources">📚 Resources</h2>
|
||||
|
||||
<ul>
|
||||
|
|
|
|||
|
|
@ -604,6 +604,12 @@ onUnsignedData = "kick (_this select 0)"; // Kick on unsigned data</code></pre>
|
|||
<li><a href="https://steamcommunity.com/app/107410/guides/" target="_blank">Steam Community Guides</a></li>
|
||||
</ul>
|
||||
|
||||
<h2 id="related-mods">🔌 Related Mods & Plugins</h2>
|
||||
<p>Popular server administration tools compatible with ARMA 3:</p>
|
||||
<ul>
|
||||
<li><a href="../bec/">BEC (BattlEye Extended Controls)</a> - Server scheduler, auto-restart, and admin commands</li>
|
||||
</ul>
|
||||
|
||||
<h3>Server Tools & Utilities</h3>
|
||||
<ul>
|
||||
<li><a href="https://community.bistudio.com/wiki/ArmA:_Startup_Parameters" target="_blank">Complete Startup Parameters List</a></li>
|
||||
|
|
|
|||
590
modules/billing/docs/b3/index.php
Normal file
590
modules/billing/docs/b3/index.php
Normal file
|
|
@ -0,0 +1,590 @@
|
|||
<?php
|
||||
/**
|
||||
* B3 (Big Brother Bot) Documentation
|
||||
*/
|
||||
?>
|
||||
<h1>📚 B3 (Big Brother Bot) Guide</h1>
|
||||
<p style="font-size: 1.1em; color: rgba(255,255,255,0.8);">Complete admin automation system for COD and Battlefield servers</p>
|
||||
|
||||
<div style="background: #1e3a5f; padding: 20px; border-left: 4px solid #3b82f6; margin: 20px 0; border-radius: 4px;">
|
||||
<h3 style="color: #ffffff; margin-top: 0;">Quick Info</h3>
|
||||
<table style="width: 100%; color: #e5e7eb;">
|
||||
<tr><td><strong style="color: #ffffff;">Supported Games:</strong></td><td>Call of Duty series, Battlefield series, Urban Terror</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Language:</strong></td><td>Python 2.7 (legacy) or Python 3.x (BigBrotherBot 2.0+)</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Database:</strong></td><td>MySQL or SQLite for stats/bans/warnings</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Communication:</strong></td><td>RCON protocol to game server</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Web Interface:</strong></td><td>Optional XLRSTATS/ECHELON integration</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Latest Version:</strong></td><td>B3 1.12+ or BigBrotherBot 2.0+</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Website:</strong></td><td>bigbrotherbot.net</td></tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<h2>Navigation</h2>
|
||||
<ul style="list-style: none; padding: 0;">
|
||||
<li>📚 <a href="#overview">Overview</a></li>
|
||||
<li>📥 <a href="#installation">Installation</a></li>
|
||||
<li>💾 <a href="#database">Database Setup</a></li>
|
||||
<li>⚙️ <a href="#configuration">Configuration (b3.xml)</a></li>
|
||||
<li>🔌 <a href="#plugins">Plugin System</a></li>
|
||||
<li>👤 <a href="#admin">Admin Management</a></li>
|
||||
<li>📊 <a href="#stats">Statistics & Web Interface</a></li>
|
||||
<li>🎮 <a href="#gamespecific">Game-Specific Setup</a></li>
|
||||
<li>🔧 <a href="#troubleshooting">Troubleshooting</a></li>
|
||||
<li>📖 <a href="#resources">Resources</a></li>
|
||||
</ul>
|
||||
|
||||
<h2 id="overview">Overview</h2>
|
||||
<p>B3 (Big Brother Bot) is a cross-platform, cross-game administration tool for game servers. It provides automated player warnings, kick/ban management, statistics tracking, and extensive customization through plugins.</p>
|
||||
|
||||
<h3>Key Features</h3>
|
||||
<ul>
|
||||
<li><strong>Automated Moderation:</strong> Auto-warn, kick, ban based on rules</li>
|
||||
<li><strong>Player Statistics:</strong> Track kills, deaths, skill ratings</li>
|
||||
<li><strong>Ban Management:</strong> Temporary and permanent bans with reasons</li>
|
||||
<li><strong>Warning System:</strong> Progressive punishment (warn → kick → ban)</li>
|
||||
<li><strong>RCON Wrapper:</strong> Secure RCON command execution</li>
|
||||
<li><strong>Plugin Architecture:</strong> Extensible with Python plugins</li>
|
||||
<li><strong>Web Interface:</strong> View stats and manage server via web</li>
|
||||
<li><strong>Multi-Server:</strong> Manage multiple servers from one B3 instance</li>
|
||||
</ul>
|
||||
|
||||
<h3>Supported Games</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;">Game Series</th>
|
||||
<th style="padding: 12px; text-align: left; color: #ffffff;">Specific Titles</th>
|
||||
<th style="padding: 12px; text-align: left; color: #ffffff;">Parser</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody style="color: #e5e7eb;">
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;">Call of Duty</td>
|
||||
<td style="padding: 12px;">COD2, COD4, MW2, MW3, Black Ops</td>
|
||||
<td style="padding: 12px;">cod, cod4, cod7, etc.</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;">Battlefield</td>
|
||||
<td style="padding: 12px;">BF2, BF2142, BF3, BF4, BFH</td>
|
||||
<td style="padding: 12px;">bf3, bf4, bfh</td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;">Urban Terror</td>
|
||||
<td style="padding: 12px;">Urban Terror 4.x</td>
|
||||
<td style="padding: 12px;">iourt42</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;">Smokin' Guns</td>
|
||||
<td style="padding: 12px;">Smokin' Guns</td>
|
||||
<td style="padding: 12px;">smg</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h2 id="installation">📥 Installation</h2>
|
||||
|
||||
<h3>Prerequisites</h3>
|
||||
<ul>
|
||||
<li><strong>Python:</strong> 2.7 (legacy B3) or 3.6+ (BigBrotherBot 2.0+)</li>
|
||||
<li><strong>Database:</strong> MySQL 5.5+ or SQLite 3</li>
|
||||
<li><strong>RCON Access:</strong> Game server RCON password</li>
|
||||
<li><strong>Operating System:</strong> Linux, Windows, or macOS</li>
|
||||
</ul>
|
||||
|
||||
<h3>Linux Installation (Ubuntu/Debian)</h3>
|
||||
|
||||
<h4>Python 3 Installation (Recommended)</h4>
|
||||
<pre><code># Install Python 3 and pip
|
||||
sudo apt-get update
|
||||
sudo apt-get install python3 python3-pip git
|
||||
|
||||
# Install B3 via pip (BigBrotherBot 2.0+)
|
||||
pip3 install bigbrotherbot
|
||||
|
||||
# Or install from GitHub (development version)
|
||||
git clone https://github.com/BigBrotherBot/big-brother-bot.git
|
||||
cd big-brother-bot
|
||||
pip3 install -r requirements.txt
|
||||
python3 setup.py install
|
||||
</code></pre>
|
||||
|
||||
<h4>Legacy Python 2.7 Installation</h4>
|
||||
<pre><code># Install Python 2.7 (for older B3 1.x)
|
||||
sudo apt-get install python2.7 python-pip
|
||||
|
||||
# Download B3 1.x
|
||||
wget https://github.com/BigBrotherBot/big-brother-bot/archive/v1.12.0.tar.gz
|
||||
tar -xzf v1.12.0.tar.gz
|
||||
cd big-brother-bot-1.12.0
|
||||
|
||||
# Install dependencies
|
||||
pip install -r requirements.txt
|
||||
</code></pre>
|
||||
|
||||
<h3>Windows Installation</h3>
|
||||
<pre><code># Download and install Python 3.9+ from python.org
|
||||
# Ensure "Add Python to PATH" is checked during installation
|
||||
|
||||
# Open Command Prompt and install B3
|
||||
pip install bigbrotherbot
|
||||
|
||||
# Or download pre-built B3 package from bigbrotherbot.net
|
||||
# Extract to C:\B3\
|
||||
</code></pre>
|
||||
|
||||
<h3>Directory Structure</h3>
|
||||
<pre><code>b3/
|
||||
├── b3.exe (Windows) or b3_run.py (Linux)
|
||||
├── b3.xml (main configuration)
|
||||
├── conf/
|
||||
│ ├── b3.xml (main config)
|
||||
│ ├── plugin_admin.ini (admin plugin config)
|
||||
│ ├── plugin_spamcontrol.ini
|
||||
│ └── ... (other plugin configs)
|
||||
├── extplugins/
|
||||
│ └── (custom plugins)
|
||||
└── logs/
|
||||
└── b3.log
|
||||
</code></pre>
|
||||
|
||||
<h2 id="database">💾 Database Setup</h2>
|
||||
|
||||
<h3>MySQL Setup (Recommended for Production)</h3>
|
||||
|
||||
<h4>Create Database</h4>
|
||||
<pre><code># Login to MySQL
|
||||
mysql -u root -p
|
||||
|
||||
# Create database
|
||||
CREATE DATABASE b3 CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
# Create user
|
||||
CREATE USER 'b3'@'localhost' IDENTIFIED BY 'your_secure_password';
|
||||
GRANT ALL PRIVILEGES ON b3.* TO 'b3'@'localhost';
|
||||
FLUSH PRIVILEGES;
|
||||
</code></pre>
|
||||
|
||||
<h4>Import B3 Schema</h4>
|
||||
<pre><code># B3 will auto-create tables on first run
|
||||
# Or manually import schema:
|
||||
mysql -u b3 -p b3 < sql/b3.sql
|
||||
|
||||
# Key tables created:
|
||||
# - clients (player records)
|
||||
# - penalties (bans, warnings, kicks)
|
||||
# - aliases (player name history)
|
||||
# - ipaliases (IP address tracking)
|
||||
</code></pre>
|
||||
|
||||
<h3>SQLite Setup (Simple / Testing)</h3>
|
||||
<pre><code># SQLite doesn't require separate installation
|
||||
# B3 will create b3.db file automatically
|
||||
# Database file location: b3/b3.db
|
||||
|
||||
# No manual setup required
|
||||
# Just configure b3.xml to use SQLite
|
||||
</code></pre>
|
||||
|
||||
<h3>Database Configuration in b3.xml</h3>
|
||||
|
||||
<h4>MySQL Configuration</h4>
|
||||
<pre><code><configuration>
|
||||
<settings name="settings">
|
||||
<set name="database">mysql://b3:your_password@localhost/b3</set>
|
||||
</settings>
|
||||
</configuration>
|
||||
</code></pre>
|
||||
|
||||
<h4>SQLite Configuration</h4>
|
||||
<pre><code><configuration>
|
||||
<settings name="settings">
|
||||
<set name="database">sqlite://b3/b3.db</set>
|
||||
</settings>
|
||||
</configuration>
|
||||
</code></pre>
|
||||
|
||||
<h2 id="configuration">⚙️ Configuration (b3.xml)</h2>
|
||||
|
||||
<h3>Basic b3.xml Structure</h3>
|
||||
<pre><code><?xml version="1.0" encoding="UTF-8"?>
|
||||
<configuration>
|
||||
<!-- Settings Section -->
|
||||
<settings name="settings">
|
||||
<!-- Database connection -->
|
||||
<set name="database">mysql://b3:password@localhost/b3</set>
|
||||
|
||||
<!-- Parser (game type) -->
|
||||
<set name="parser">cod4</set>
|
||||
|
||||
<!-- Timezone -->
|
||||
<set name="time_zone">America/New_York</set>
|
||||
|
||||
<!-- Logging level (0-22, higher = more verbose) -->
|
||||
<set name="log_level">9</set>
|
||||
|
||||
<!-- Log file -->
|
||||
<set name="logfile">b3.log</set>
|
||||
</settings>
|
||||
|
||||
<!-- B3 Server Section -->
|
||||
<settings name="server">
|
||||
<!-- Public IP and Port -->
|
||||
<set name="public_ip">123.456.789.0</set>
|
||||
<set name="port">28960</set>
|
||||
|
||||
<!-- RCON Configuration -->
|
||||
<set name="rcon_ip">127.0.0.1</set>
|
||||
<set name="rcon_port">28960</set>
|
||||
<set name="rcon_password">your_rcon_password</set>
|
||||
|
||||
<!-- Game log file location -->
|
||||
<set name="game_log">games_mp.log</set>
|
||||
</settings>
|
||||
|
||||
<!-- Plugins Section -->
|
||||
<plugins>
|
||||
<plugin name="admin" config="@conf/plugin_admin.ini"/>
|
||||
<plugin name="adv" config="@conf/plugin_adv.xml"/>
|
||||
<plugin name="spamcontrol" config="@conf/plugin_spamcontrol.ini"/>
|
||||
<plugin name="status" config="@conf/plugin_status.ini"/>
|
||||
<plugin name="welcome" config="@conf/plugin_welcome.ini"/>
|
||||
</plugins>
|
||||
</configuration>
|
||||
</code></pre>
|
||||
|
||||
<h3>Parser Settings (Game-Specific)</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;">Game</th>
|
||||
<th style="padding: 12px; text-align: left; color: #ffffff;">Parser Value</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody style="color: #e5e7eb;">
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;">Call of Duty 4</td>
|
||||
<td style="padding: 12px;"><code>cod4</code></td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;">Call of Duty 7 (Black Ops)</td>
|
||||
<td style="padding: 12px;"><code>cod7</code></td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;">Battlefield 3</td>
|
||||
<td style="padding: 12px;"><code>bf3</code></td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;">Battlefield 4</td>
|
||||
<td style="padding: 12px;"><code>bf4</code></td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;">Urban Terror 4.2</td>
|
||||
<td style="padding: 12px;"><code>iourt42</code></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h2 id="plugins">🔌 Plugin System</h2>
|
||||
|
||||
<h3>Built-in Plugins</h3>
|
||||
|
||||
<h4>Admin Plugin (Required)</h4>
|
||||
<p>Core admin commands: kick, ban, warn, tempban</p>
|
||||
<pre><code>; plugin_admin.ini
|
||||
[settings]
|
||||
; Minimum level for kick command
|
||||
command_kick_level: 40
|
||||
|
||||
; Minimum level for ban command
|
||||
command_ban_level: 60
|
||||
|
||||
; Minimum level for tempban command
|
||||
command_tempban_level: 40
|
||||
|
||||
[commands]
|
||||
kick: 40
|
||||
ban: 60
|
||||
tempban: 40
|
||||
unban: 60
|
||||
</code></pre>
|
||||
|
||||
<h4>SpamControl Plugin</h4>
|
||||
<p>Prevents chat spam and flooding</p>
|
||||
<pre><code>; plugin_spamcontrol.ini
|
||||
[settings]
|
||||
; Maximum messages per timeframe
|
||||
max_messages: 5
|
||||
|
||||
; Timeframe in seconds
|
||||
timeframe: 10
|
||||
|
||||
; Action: warn, kick, ban
|
||||
action: warn
|
||||
</code></pre>
|
||||
|
||||
<h4>Welcome Plugin</h4>
|
||||
<p>Welcomes players on join, shows rules</p>
|
||||
<pre><code>; plugin_welcome.ini
|
||||
[settings]
|
||||
; Welcome message
|
||||
welcome_msg: ^2Welcome ^7%s^2! Visit our website at example.com
|
||||
|
||||
; Show player count
|
||||
show_playercount: yes
|
||||
|
||||
; Show server rules
|
||||
newb_connections: 15
|
||||
</code></pre>
|
||||
|
||||
<h4>Status Plugin</h4>
|
||||
<p>Player info and statistics</p>
|
||||
<pre><code>; Commands: !status, !xlrstats
|
||||
; Shows player level, kills, deaths, skill
|
||||
</code></pre>
|
||||
|
||||
<h3>External Plugins</h3>
|
||||
<ul>
|
||||
<li><strong>PowerAdminUrt:</strong> Extended admin commands for Urban Terror</li>
|
||||
<li><strong>CallVote:</strong> Voting system for maps/kicks</li>
|
||||
<li><strong>FollowMe:</strong> Auto-balance teams</li>
|
||||
<li><strong>Xlrstats:</strong> Advanced statistics tracking</li>
|
||||
<li><strong>Geolocation:</strong> Show player country on join</li>
|
||||
</ul>
|
||||
|
||||
<h3>Installing External Plugins</h3>
|
||||
<pre><code># Download plugin (example: xlrstats)
|
||||
cd b3/extplugins
|
||||
wget https://example.com/xlrstats.py
|
||||
|
||||
# Add to b3.xml
|
||||
<plugin name="xlrstats" config="@b3/extplugins/conf/xlrstats.ini"/>
|
||||
|
||||
# Create plugin config
|
||||
cp xlrstats.ini.sample xlrstats.ini
|
||||
nano xlrstats.ini
|
||||
|
||||
# Restart B3
|
||||
</code></pre>
|
||||
|
||||
<h2 id="admin">👤 Admin Management</h2>
|
||||
|
||||
<h3>Admin Levels</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;">Level</th>
|
||||
<th style="padding: 12px; text-align: left; color: #ffffff;">Title</th>
|
||||
<th style="padding: 12px; text-align: left; color: #ffffff;">Permissions</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody style="color: #e5e7eb;">
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;">0</td>
|
||||
<td style="padding: 12px;">User</td>
|
||||
<td style="padding: 12px;">No permissions</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;">1</td>
|
||||
<td style="padding: 12px;">Regular</td>
|
||||
<td style="padding: 12px;">Basic commands (!help, !rules)</td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;">20</td>
|
||||
<td style="padding: 12px;">Moderator</td>
|
||||
<td style="padding: 12px;">!warn, !kick (lower levels)</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;">40</td>
|
||||
<td style="padding: 12px;">Admin</td>
|
||||
<td style="padding: 12px;">!kick, !tempban, !ban (temporary)</td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;">60</td>
|
||||
<td style="padding: 12px;">Full Admin</td>
|
||||
<td style="padding: 12px;">!ban (permanent), !unban</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;">80</td>
|
||||
<td style="padding: 12px;">Senior Admin</td>
|
||||
<td style="padding: 12px;">!maprotate, !maprestart, !lookup</td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;">100</td>
|
||||
<td style="padding: 12px;">Super Admin</td>
|
||||
<td style="padding: 12px;">All commands, !putgroup, !leveltest</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h3>Adding Admins (In-Game)</h3>
|
||||
<pre><code># Add admin level 40 (Admin)
|
||||
!putgroup PlayerName admin
|
||||
|
||||
# Add admin level 60 (Full Admin)
|
||||
!putgroup PlayerName fulladmin
|
||||
|
||||
# Add admin level 100 (Super Admin)
|
||||
!putgroup PlayerName superadmin
|
||||
|
||||
# Remove admin
|
||||
!putgroup PlayerName user
|
||||
</code></pre>
|
||||
|
||||
<h3>Adding Admins (Database)</h3>
|
||||
<pre><code># Direct database method
|
||||
mysql -u b3 -p
|
||||
|
||||
USE b3;
|
||||
|
||||
# Find player's ID
|
||||
SELECT id, name FROM clients WHERE name LIKE '%PlayerName%';
|
||||
|
||||
# Update player group (level 60 = Full Admin)
|
||||
UPDATE clients SET group_bits = 60 WHERE id = PLAYER_ID;
|
||||
</code></pre>
|
||||
|
||||
<h3>Common Admin Commands</h3>
|
||||
<pre><code># Player management
|
||||
!kick PlayerName [reason]
|
||||
!ban PlayerName [reason]
|
||||
!tempban PlayerName 1h [reason] # 1 hour temp ban
|
||||
!unban PlayerName
|
||||
|
||||
# Warnings
|
||||
!warn PlayerName [reason]
|
||||
!warntest PlayerName # Check warn count
|
||||
|
||||
# Server management
|
||||
!maprotate # Change to next map
|
||||
!maprestart # Restart current map
|
||||
!map de_dust2 # Change to specific map
|
||||
|
||||
# Information
|
||||
!help # Show available commands
|
||||
!leveltest PlayerName # Check player's admin level
|
||||
!lookup PlayerName # Player info and history
|
||||
</code></pre>
|
||||
|
||||
<h2 id="stats">📊 Statistics & Web Interface</h2>
|
||||
|
||||
<h3>XLRstats Plugin</h3>
|
||||
<p>Advanced statistics tracking plugin</p>
|
||||
<pre><code># Install XLRstats plugin
|
||||
cd b3/extplugins
|
||||
# Download xlrstats.py and xlrstats.ini
|
||||
|
||||
# Add to b3.xml
|
||||
<plugin name="xlrstats" config="@b3/extplugins/conf/xlrstats.ini"/>
|
||||
|
||||
# Commands:
|
||||
!xlrstats # Show your stats
|
||||
!xlrtopstats # Show top players
|
||||
!xlrstats PlayerName # Show another player's stats
|
||||
</code></pre>
|
||||
|
||||
<h3>ECHELON Web Interface</h3>
|
||||
<p>Web-based B3 management interface</p>
|
||||
<ul>
|
||||
<li><strong>Features:</strong> View stats, manage bans, configure server</li>
|
||||
<li><strong>Requirements:</strong> PHP 5.3+, MySQL, web server</li>
|
||||
<li><strong>Installation:</strong> Download from b3.echelon.fi</li>
|
||||
<li><strong>Setup:</strong> Configure database connection to same B3 database</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="gamespecific">🎮 Game-Specific Setup</h2>
|
||||
|
||||
<h3>Call of Duty 4</h3>
|
||||
<pre><code><!-- COD4 b3.xml example -->
|
||||
<set name="parser">cod4</set>
|
||||
<set name="rcon_port">28960</set>
|
||||
<set name="game_log">/path/to/cod4/main/games_mp.log</set>
|
||||
|
||||
# Enable log file in COD4 server.cfg:
|
||||
set g_log "games_mp.log"
|
||||
set g_logsync "1" # Real-time logging
|
||||
set rcon_password "your_rcon_password"
|
||||
</code></pre>
|
||||
|
||||
<h3>Battlefield 4</h3>
|
||||
<pre><code><!-- BF4 b3.xml example -->
|
||||
<set name="parser">bf4</set>
|
||||
<set name="rcon_port">47200</set>
|
||||
|
||||
# BF4 uses different RCON protocol
|
||||
# Requires BF4 parser-specific settings
|
||||
</code></pre>
|
||||
|
||||
<h3>Urban Terror 4.2</h3>
|
||||
<pre><code><!-- Urban Terror b3.xml example -->
|
||||
<set name="parser">iourt42</set>
|
||||
<set name="rcon_port">27960</set>
|
||||
<set name="game_log">/path/to/urbanterror/q3ut4/games.log</set>
|
||||
</code></pre>
|
||||
|
||||
<h2 id="troubleshooting">🔧 Troubleshooting</h2>
|
||||
|
||||
<h3>B3 Not Connecting to Server</h3>
|
||||
<pre><code># Check RCON password in b3.xml matches server
|
||||
# Test RCON manually:
|
||||
# COD4 example:
|
||||
rcon_ip:port password status
|
||||
|
||||
# Verify game log file path is correct
|
||||
tail -f /path/to/games_mp.log
|
||||
|
||||
# Check B3 log for connection errors
|
||||
tail -f b3/logs/b3.log | grep ERROR
|
||||
</code></pre>
|
||||
|
||||
<h3>Commands Not Working</h3>
|
||||
<ul>
|
||||
<li>Verify admin plugin is loaded in b3.xml</li>
|
||||
<li>Check player's admin level (!leveltest PlayerName)</li>
|
||||
<li>Ensure command prefix is correct (default: !)</li>
|
||||
<li>Check plugin_admin.ini for command permissions</li>
|
||||
</ul>
|
||||
|
||||
<h3>Database Connection Failed</h3>
|
||||
<pre><code># MySQL connection test
|
||||
mysql -h 127.0.0.1 -u b3 -p b3
|
||||
|
||||
# Check database URL format in b3.xml:
|
||||
mysql://username:password@host/database
|
||||
# or
|
||||
sqlite://path/to/b3.db
|
||||
|
||||
# Verify MySQL is running
|
||||
systemctl status mysql
|
||||
</code></pre>
|
||||
|
||||
<h3>High CPU Usage</h3>
|
||||
<ul>
|
||||
<li>Reduce log_level in b3.xml (try level 9 or lower)</li>
|
||||
<li>Disable unused plugins</li>
|
||||
<li>Check for plugin loops or errors in logs</li>
|
||||
<li>Optimize database (run OPTIMIZE TABLE on large tables)</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>MySQL Recommended:</strong> Use MySQL for production servers (better performance than SQLite)</li>
|
||||
<li><strong>Log Rotation:</strong> Implement log rotation to prevent b3.log from growing too large</li>
|
||||
<li><strong>Test Configuration:</strong> Test b3.xml syntax before restarting B3</li>
|
||||
<li><strong>Backup Database:</strong> Regular automated backups of B3 database</li>
|
||||
<li><strong>Screen/Tmux:</strong> Run B3 in screen/tmux session on Linux for persistence</li>
|
||||
<li><strong>Monitor Performance:</strong> Watch CPU/RAM usage, adjust log level if needed</li>
|
||||
<li><strong>Plugin Updates:</strong> Keep plugins updated for bug fixes and new features</li>
|
||||
<li><strong>Community:</strong> B3 forums have extensive plugin library and support</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<h2 id="resources">Resources</h2>
|
||||
<ul>
|
||||
<li><a href="https://www.bigbrotherbot.net/" target="_blank">Official B3 Website</a></li>
|
||||
<li><a href="https://github.com/BigBrotherBot/big-brother-bot" target="_blank">B3 GitHub Repository</a></li>
|
||||
<li><a href="https://forum.bigbrotherbot.net/" target="_blank">B3 Support Forums</a></li>
|
||||
<li><a href="https://github.com/BigBrotherBot/big-brother-bot/wiki" target="_blank">B3 Wiki Documentation</a></li>
|
||||
<li><a href="http://www.b3.echelon.fi/" target="_blank">ECHELON Web Interface</a></li>
|
||||
<li>Game Documentation: COD4, BF3, BF4 server setup guides</li>
|
||||
</ul>
|
||||
7
modules/billing/docs/b3/metadata.json
Normal file
7
modules/billing/docs/b3/metadata.json
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
{
|
||||
"name": "B3 (Big Brother Bot)",
|
||||
"description": "Comprehensive guide for B3 bot (COD/Battlefield admin system) with Python setup, MySQL/SQLite database, b3.xml config, RCON integration, plugin system, and web interface",
|
||||
"category": "mods",
|
||||
"order": 64,
|
||||
"complete": true
|
||||
}
|
||||
|
|
@ -1,66 +1,478 @@
|
|||
<?php
|
||||
/**
|
||||
* BEC Server Documentation
|
||||
* BEC (BattlEye Extended Controls) Documentation
|
||||
*/
|
||||
?>
|
||||
<h1>BEC Server Guide</h1>
|
||||
|
||||
<h2>Overview</h2>
|
||||
<p><strong>BEC</strong> is available for hosting on our platform. This guide covers the basics of setting up and managing your BEC server.</p>
|
||||
<h1>📚 BEC (BattlEye Extended Controls) Guide</h1>
|
||||
<p style="font-size: 1.1em; color: rgba(255,255,255,0.8);">Scheduler and admin tool for ARMA series servers</p>
|
||||
|
||||
<div style="background: #1e3a5f; padding: 20px; border-left: 4px solid #3b82f6; margin: 20px 0; border-radius: 4px;">
|
||||
<h3 style="color: #ffffff; margin-top: 0;">Server Information</h3>
|
||||
<p style="color: #e5e7eb;">
|
||||
This game server can be hosted on a VPS or dedicated server. Port configuration depends on the game engine and can typically be set in the server configuration files.
|
||||
</p>
|
||||
<p style="color: #e5e7eb; margin-top: 12px; font-size: 0.95em;">
|
||||
<em>Refer to the official game server documentation for specific port requirements and configuration details.</em>
|
||||
</p>
|
||||
<h3 style="color: #ffffff; margin-top: 0;">Quick Info</h3>
|
||||
<table style="width: 100%; color: #e5e7eb;">
|
||||
<tr><td><strong style="color: #ffffff;">Supported Games:</strong></td><td>ARMA 2, ARMA 2 OA, ARMA 2 CO, ARMA 3, DayZ Standalone</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Platform:</strong></td><td>Windows (64-bit) and Linux</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">RCON Protocol:</strong></td><td>BattlEye RCON wrapper</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Config File:</strong></td><td>Bec.cfg (INI format)</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Features:</strong></td><td>Scheduler, auto-restart, admin commands, log management</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Latest Version:</strong></td><td>BEC 1.647+ (check GitHub releases)</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Repository:</strong></td><td>github.com/TheGamingChief/BattlEye-Extended-Controls</td></tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<h2>Getting Started</h2>
|
||||
<p>To create a BEC server:</p>
|
||||
<ol>
|
||||
<li>Navigate to the <a href="/serverlist.php">Game Servers</a> page</li>
|
||||
<li>Find <strong>BEC</strong> in the list</li>
|
||||
<li>Select your preferred configuration (slots, duration, etc.)</li>
|
||||
<li>Add to cart and complete checkout</li>
|
||||
<li>Your server will be automatically provisioned within minutes</li>
|
||||
</ol>
|
||||
|
||||
<h2>Server Configuration</h2>
|
||||
<p>After your server is created, you can configure it through the control panel:</p>
|
||||
<ul>
|
||||
<li>Server settings and parameters</li>
|
||||
<li>Player slots and limits</li>
|
||||
<li>RCON/remote control access</li>
|
||||
<li>FTP file access</li>
|
||||
<h2>Navigation</h2>
|
||||
<ul style="list-style: none; padding: 0;">
|
||||
<li>📚 <a href="#overview">Overview</a></li>
|
||||
<li>📥 <a href="#installation">Installation</a></li>
|
||||
<li>⚙️ <a href="#configuration">Configuration (Bec.cfg)</a></li>
|
||||
<li>📅 <a href="#scheduler">Scheduler System</a></li>
|
||||
<li>🔧 <a href="#commands">Admin Commands</a></li>
|
||||
<li>🔄 <a href="#autorestart">Auto-Restart on Crash</a></li>
|
||||
<li>📝 <a href="#logging">Log Management</a></li>
|
||||
<li>🎮 <a href="#gamespecific">Game-Specific Setup</a></li>
|
||||
<li>🔧 <a href="#troubleshooting">Troubleshooting</a></li>
|
||||
<li>📖 <a href="#resources">Resources</a></li>
|
||||
</ul>
|
||||
|
||||
<h2>Common Tasks</h2>
|
||||
<h2 id="overview">Overview</h2>
|
||||
<p>BEC (BattlEye Extended Controls) is a server administration tool for ARMA series games. It provides scheduled tasks, automatic restarts, admin commands, and enhanced BattlEye RCON functionality.</p>
|
||||
|
||||
<h3>Starting Your Server</h3>
|
||||
<p>Servers are automatically started after creation. You can stop/start your server from the control panel.</p>
|
||||
|
||||
<h3>Connecting to Your Server</h3>
|
||||
<p>Use your server's IP address and port to connect from the game client.</p>
|
||||
|
||||
<h3>Managing Files</h3>
|
||||
<p>Access your server files via FTP using the credentials provided in your control panel.</p>
|
||||
|
||||
<h2>Support</h2>
|
||||
<p>If you need assistance with your BEC server:</p>
|
||||
<h3>Key Features</h3>
|
||||
<ul>
|
||||
<li>Check our <a href="/docs.php?action=view&doc=common-issues">Common Issues</a> guide</li>
|
||||
<li>Contact support through your account dashboard</li>
|
||||
<li>Visit the official BEC community for game-specific help</li>
|
||||
<li><strong>Scheduler:</strong> Execute commands at specific times or intervals</li>
|
||||
<li><strong>Auto-Restart:</strong> Automatically restart server on crash</li>
|
||||
<li><strong>Admin Commands:</strong> In-game admin commands via chat (!restart, !lock, !kick)</li>
|
||||
<li><strong>BattlEye Wrapper:</strong> Enhanced RCON interface for BattlEye</li>
|
||||
<li><strong>Log Management:</strong> Automatic log rotation and archiving</li>
|
||||
<li><strong>Message Broadcasting:</strong> Scheduled server messages</li>
|
||||
<li><strong>Player Kick/Ban:</strong> Manage players via RCON commands</li>
|
||||
<li><strong>Whitelist Support:</strong> Whitelist mode for private servers</li>
|
||||
</ul>
|
||||
|
||||
<h3>Why Use BEC?</h3>
|
||||
<ul>
|
||||
<li><strong>Automated Maintenance:</strong> Schedule restarts without manual intervention</li>
|
||||
<li><strong>Crash Recovery:</strong> Server automatically restarts if it crashes</li>
|
||||
<li><strong>Player Communication:</strong> Broadcast scheduled messages (restart warnings, events)</li>
|
||||
<li><strong>Admin Efficiency:</strong> In-game commands without external RCON tools</li>
|
||||
<li><strong>DayZ Essential:</strong> Critical for DayZ servers (database sync, loot spawns)</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="installation">📥 Installation</h2>
|
||||
|
||||
<h3>Windows Installation</h3>
|
||||
|
||||
<h4>Step 1: Download BEC</h4>
|
||||
<pre><code># Download latest BEC from GitHub:
|
||||
# https://github.com/TheGamingChief/BattlEye-Extended-Controls/releases
|
||||
|
||||
# Extract Bec.exe to your ARMA server directory
|
||||
# Example: C:\ARMA3Server\BEC\
|
||||
</code></pre>
|
||||
|
||||
<h4>Step 2: Directory Structure</h4>
|
||||
<pre><code>ARMA3Server\
|
||||
├── arma3server_x64.exe
|
||||
├── BattlEye\
|
||||
│ └── BEServer_x64.dll (or BEServer.dll for 32-bit)
|
||||
└── BEC\
|
||||
├── Bec.exe
|
||||
├── Config\
|
||||
│ ├── Bec.cfg (main configuration)
|
||||
│ ├── Scheduler.xml (scheduled tasks)
|
||||
│ └── Config.cfg (admin list)
|
||||
└── Logs\
|
||||
└── (BEC logs stored here)
|
||||
</code></pre>
|
||||
|
||||
<h4>Step 3: Create Bec.cfg</h4>
|
||||
<pre><code># Copy Bec.cfg.example to Bec.cfg
|
||||
# Or create new Bec.cfg with basic settings:
|
||||
|
||||
[Bec]
|
||||
Ip = 127.0.0.1
|
||||
Port = 2302
|
||||
RConPassword = your_rcon_password
|
||||
RestartServer = 1
|
||||
</code></pre>
|
||||
|
||||
<h3>Linux Installation</h3>
|
||||
<pre><code># BEC for Linux (32-bit and 64-bit available)
|
||||
cd /home/arma3/server/BEC
|
||||
wget https://github.com/TheGamingChief/.../BEC_Linux.tar.gz
|
||||
tar -xzf BEC_Linux.tar.gz
|
||||
|
||||
# Make executable
|
||||
chmod +x Bec
|
||||
|
||||
# Run BEC
|
||||
./Bec -f Config/Bec.cfg
|
||||
</code></pre>
|
||||
|
||||
<h2 id="configuration">⚙️ Configuration (Bec.cfg)</h2>
|
||||
|
||||
<h3>Complete Bec.cfg Example</h3>
|
||||
<pre><code>[Bec]
|
||||
# BattlEye RCON connection settings
|
||||
Ip = 127.0.0.1
|
||||
Port = 2302
|
||||
RConPassword = your_rcon_password
|
||||
|
||||
# Auto-restart on crash (1 = yes, 0 = no)
|
||||
RestartServer = 1
|
||||
|
||||
# Delay before restart attempt (seconds)
|
||||
RestartDelay = 30
|
||||
|
||||
# Announce restart warnings (seconds before restart)
|
||||
AnnounceRestartTime = 300
|
||||
|
||||
# Path to ARMA server executable (Windows)
|
||||
ServerExePath = C:\ARMA3Server\arma3server_x64.exe
|
||||
|
||||
# Server startup parameters
|
||||
ServerCommandLine = -config=server.cfg -port=2302 -profiles=SC -cfg=basic.cfg -name=SC
|
||||
|
||||
# Log rotation (delete logs older than X days)
|
||||
LogRotation = 7
|
||||
|
||||
# Message of the Day (sent to players on join)
|
||||
MessageOfTheDay = Welcome to our ARMA 3 server! Visit our website: example.com
|
||||
|
||||
# Whitelist mode (1 = enabled, 0 = disabled)
|
||||
Whitelist = 0
|
||||
|
||||
# Ban list file
|
||||
BanList = bans.txt
|
||||
|
||||
# Admins configuration file
|
||||
AdminsFile = Config/Config.cfg
|
||||
|
||||
# Scheduler configuration file
|
||||
SchedulerFile = Config/Scheduler.xml
|
||||
</code></pre>
|
||||
|
||||
<h3>Config.cfg (Admin List)</h3>
|
||||
<pre><code>[Admins]
|
||||
# Format: BattlEye GUID = Admin Name
|
||||
# Get GUID from BattlEye logs or !guid command
|
||||
|
||||
12345678901234567890123456789012 = AdminName1
|
||||
98765432109876543210987654321098 = AdminName2
|
||||
|
||||
# Admin levels can be set (not all BEC versions support this)
|
||||
# Level 1 = Basic commands (!say, !lock)
|
||||
# Level 2 = Kick/ban commands
|
||||
</code></pre>
|
||||
|
||||
<h2 id="scheduler">📅 Scheduler System</h2>
|
||||
|
||||
<h3>Scheduler.xml Structure</h3>
|
||||
<pre><code><?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
|
||||
<Scheduler>
|
||||
<!-- Daily restart at 06:00 -->
|
||||
<job id="0">
|
||||
<day>1,2,3,4,5,6,7</day>
|
||||
<start>06:00:00</start>
|
||||
<runtime>000000</runtime>
|
||||
<loop>0</loop>
|
||||
<cmd>say -1 Server restart in 5 minutes!</cmd>
|
||||
</job>
|
||||
|
||||
<!-- Restart warning 1 minute before -->
|
||||
<job id="1">
|
||||
<day>1,2,3,4,5,6,7</day>
|
||||
<start>06:04:00</start>
|
||||
<runtime>000000</runtime>
|
||||
<loop>0</loop>
|
||||
<cmd>say -1 Server restarting in 1 minute! Save your progress!</cmd>
|
||||
</job>
|
||||
|
||||
<!-- Actual restart command -->
|
||||
<job id="2">
|
||||
<day>1,2,3,4,5,6,7</day>
|
||||
<start>06:05:00</start>
|
||||
<runtime>000000</runtime>
|
||||
<loop>0</loop>
|
||||
<cmd>#shutdown</cmd>
|
||||
</job>
|
||||
|
||||
<!-- Repeating message every 30 minutes -->
|
||||
<job id="3">
|
||||
<day>1,2,3,4,5,6,7</day>
|
||||
<start>00:00:00</start>
|
||||
<runtime>003000</runtime>
|
||||
<loop>1</loop>
|
||||
<cmd>say -1 Visit our Discord: discord.gg/example</cmd>
|
||||
</job>
|
||||
</Scheduler>
|
||||
</code></pre>
|
||||
|
||||
<h3>Scheduler Field Definitions</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;">Field</th>
|
||||
<th style="padding: 12px; text-align: left; color: #ffffff;">Description</th>
|
||||
<th style="padding: 12px; text-align: left; color: #ffffff;">Example</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody style="color: #e5e7eb;">
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;"><code><day></code></td>
|
||||
<td style="padding: 12px;">Days of week (1=Mon, 7=Sun)</td>
|
||||
<td style="padding: 12px;"><code>1,2,3,4,5,6,7</code> (all days)</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;"><code><start></code></td>
|
||||
<td style="padding: 12px;">Start time (HH:MM:SS)</td>
|
||||
<td style="padding: 12px;"><code>06:00:00</code> (6 AM)</td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;"><code><runtime></code></td>
|
||||
<td style="padding: 12px;">Repeat interval (HHMMSS)</td>
|
||||
<td style="padding: 12px;"><code>003000</code> (30 minutes)</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;"><code><loop></code></td>
|
||||
<td style="padding: 12px;">Loop task? (1=yes, 0=no)</td>
|
||||
<td style="padding: 12px;"><code>1</code> (repeating)</td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;"><code><cmd></code></td>
|
||||
<td style="padding: 12px;">RCON command to execute</td>
|
||||
<td style="padding: 12px;"><code>say -1 Message</code></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h3>Common Scheduled Tasks</h3>
|
||||
|
||||
<h4>3-Hour Restart Cycle</h4>
|
||||
<pre><code><!-- Restart every 3 hours (00:00, 03:00, 06:00, etc.) -->
|
||||
<job id="10">
|
||||
<day>1,2,3,4,5,6,7</day>
|
||||
<start>00:00:00</start>
|
||||
<runtime>030000</runtime>
|
||||
<loop>1</loop>
|
||||
<cmd>say -1 Server restarting in 5 minutes!</cmd>
|
||||
</job>
|
||||
</code></pre>
|
||||
|
||||
<h4>Hourly Server Message</h4>
|
||||
<pre><code><job id="11">
|
||||
<day>1,2,3,4,5,6,7</day>
|
||||
<start>00:00:00</start>
|
||||
<runtime>010000</runtime>
|
||||
<loop>1</loop>
|
||||
<cmd>say -1 Check out our website: example.com</cmd>
|
||||
</job>
|
||||
</code></pre>
|
||||
|
||||
<h2 id="commands">🔧 Admin Commands</h2>
|
||||
|
||||
<h3>In-Game Commands (Chat)</h3>
|
||||
<pre><code># Server control
|
||||
!restart # Restart server immediately
|
||||
!shutdown # Shutdown server
|
||||
!lock # Lock server (no new players)
|
||||
!unlock # Unlock server
|
||||
|
||||
# Player management
|
||||
!kick PlayerName [reason] # Kick player
|
||||
!ban PlayerName [reason] # Ban player permanently
|
||||
!tempban PlayerName minutes # Temporary ban
|
||||
!players # List connected players
|
||||
!guid PlayerName # Get player's BattlEye GUID
|
||||
|
||||
# Messages
|
||||
!say Message # Send global message
|
||||
!sayto PlayerName Message # Send private message
|
||||
|
||||
# Server info
|
||||
!uptime # Show server uptime
|
||||
!version # Show BEC version
|
||||
!loadscripts # Reload BattlEye scripts.txt
|
||||
</code></pre>
|
||||
|
||||
<h3>RCON Commands (Console)</h3>
|
||||
<pre><code># BattlEye RCON commands (via BEC)
|
||||
say -1 Message # Global message
|
||||
kick PlayerNumber [reason] # Kick by player number
|
||||
ban PlayerGUID [reason] # Ban by GUID
|
||||
removeBan BanNumber # Remove ban entry
|
||||
players # List players with numbers
|
||||
bans # List active bans
|
||||
missions # List available missions
|
||||
loadScripts # Reload BattlEye filter scripts
|
||||
#shutdown # Shutdown server
|
||||
#restart # Restart server (if configured)
|
||||
</code></pre>
|
||||
|
||||
<h2 id="autorestart">🔄 Auto-Restart on Crash</h2>
|
||||
|
||||
<h3>Windows Auto-Restart Setup</h3>
|
||||
<pre><code># Bec.cfg settings for auto-restart
|
||||
[Bec]
|
||||
RestartServer = 1
|
||||
RestartDelay = 30 # Wait 30 seconds before restart
|
||||
ServerExePath = C:\ARMA3Server\arma3server_x64.exe
|
||||
ServerCommandLine = -config=server.cfg -port=2302 -profiles=SC
|
||||
</code></pre>
|
||||
|
||||
<h3>How Auto-Restart Works</h3>
|
||||
<ol>
|
||||
<li>BEC monitors server process via RCON connection</li>
|
||||
<li>If RCON connection is lost, BEC waits <code>RestartDelay</code> seconds</li>
|
||||
<li>BEC checks if server process is still running</li>
|
||||
<li>If process is dead, BEC launches server using <code>ServerExePath</code> and <code>ServerCommandLine</code></li>
|
||||
<li>BEC reconnects to RCON and resumes monitoring</li>
|
||||
</ol>
|
||||
|
||||
<h3>Restart Notifications</h3>
|
||||
<pre><code># Scheduler.xml: Warning before scheduled restart
|
||||
<job id="20">
|
||||
<day>1,2,3,4,5,6,7</day>
|
||||
<start>05:55:00</start>
|
||||
<runtime>000000</runtime>
|
||||
<loop>0</loop>
|
||||
<cmd>say -1 Server restart in 5 minutes!</cmd>
|
||||
</job>
|
||||
|
||||
<job id="21">
|
||||
<day>1,2,3,4,5,6,7</day>
|
||||
<start>05:58:00</start>
|
||||
<runtime>000000</runtime>
|
||||
<loop>0</loop>
|
||||
<cmd>say -1 Server restart in 2 minutes! Save your progress!</cmd>
|
||||
</job>
|
||||
|
||||
<job id="22">
|
||||
<day>1,2,3,4,5,6,7</day>
|
||||
<start>06:00:00</start>
|
||||
<runtime>000000</runtime>
|
||||
<loop>0</loop>
|
||||
<cmd>#shutdown</cmd>
|
||||
</job>
|
||||
</code></pre>
|
||||
|
||||
<h2 id="logging">📝 Log Management</h2>
|
||||
|
||||
<h3>BEC Log Files</h3>
|
||||
<pre><code>BEC\Logs\
|
||||
├── Bec_YYYY-MM-DD_HH-MM-SS.log # Main BEC log
|
||||
├── Chat_YYYY-MM-DD.log # Player chat log
|
||||
└── Admin_YYYY-MM-DD.log # Admin command log
|
||||
</code></pre>
|
||||
|
||||
<h3>Log Rotation</h3>
|
||||
<pre><code># Bec.cfg log rotation setting
|
||||
LogRotation = 7 # Delete logs older than 7 days
|
||||
|
||||
# Manual log cleanup (Windows)
|
||||
cd C:\ARMA3Server\BEC\Logs
|
||||
forfiles /P . /S /M *.log /D -7 /C "cmd /c del @path"
|
||||
|
||||
# Manual log cleanup (Linux)
|
||||
find /home/arma3/server/BEC/Logs -name "*.log" -mtime +7 -delete
|
||||
</code></pre>
|
||||
|
||||
<h2 id="gamespecific">🎮 Game-Specific Setup</h2>
|
||||
|
||||
<h3>ARMA 2 / ARMA 2 OA</h3>
|
||||
<pre><code># Bec.cfg for ARMA 2
|
||||
ServerExePath = C:\ARMA2Server\arma2oaserver.exe
|
||||
ServerCommandLine = -port=2302 -config=server.cfg -profiles=SC -mod=@DayZ
|
||||
|
||||
# Port must match server.cfg BattlEye port:
|
||||
BattlEye = 1
|
||||
RConPassword = your_rcon_password
|
||||
RConPort = 2302
|
||||
</code></pre>
|
||||
|
||||
<h3>ARMA 3</h3>
|
||||
<pre><code># Bec.cfg for ARMA 3
|
||||
ServerExePath = C:\ARMA3Server\arma3server_x64.exe
|
||||
ServerCommandLine = -port=2302 -config=server.cfg -profiles=SC -cfg=basic.cfg
|
||||
|
||||
# 64-bit BattlEye DLL required
|
||||
# Ensure BEServer_x64.dll is in BattlEye folder
|
||||
</code></pre>
|
||||
|
||||
<h3>DayZ Standalone</h3>
|
||||
<pre><code># Bec.cfg for DayZ Standalone
|
||||
ServerExePath = C:\DayZServer\DayZServer_x64.exe
|
||||
ServerCommandLine = -config=serverDZ.cfg -port=2302 -profiles=SC -BEpath=battleye
|
||||
|
||||
# DayZ uses different config format
|
||||
# Ensure RCon settings in serverDZ.cfg match Bec.cfg
|
||||
</code></pre>
|
||||
|
||||
<h2 id="troubleshooting">🔧 Troubleshooting</h2>
|
||||
|
||||
<h3>BEC Not Connecting to Server</h3>
|
||||
<pre><code># Symptoms: "Failed to connect to server" in Bec log
|
||||
|
||||
# Verify RCON settings match server config
|
||||
# ARMA 3 server.cfg:
|
||||
BattlEye = 1;
|
||||
RConPassword = "your_rcon_password";
|
||||
RConPort = 2302;
|
||||
|
||||
# Bec.cfg:
|
||||
Port = 2302
|
||||
RConPassword = your_rcon_password
|
||||
|
||||
# Test RCON manually with BERConCLI or similar tool
|
||||
</code></pre>
|
||||
|
||||
<h3>Scheduler Tasks Not Executing</h3>
|
||||
<ul>
|
||||
<li>Verify Scheduler.xml syntax (valid XML, no typos)</li>
|
||||
<li>Check <code><day></code> matches current day (1=Monday, 7=Sunday)</li>
|
||||
<li>Ensure <code><start></code> time uses 24-hour format (HH:MM:SS)</li>
|
||||
<li>Check BEC log for scheduler errors</li>
|
||||
<li>Test commands manually via !say or RCON</li>
|
||||
</ul>
|
||||
|
||||
<h3>Server Not Restarting After Crash</h3>
|
||||
<pre><code># Check Bec.cfg settings:
|
||||
RestartServer = 1 # Must be enabled
|
||||
ServerExePath = [full path to server exe]
|
||||
ServerCommandLine = [correct startup parameters]
|
||||
|
||||
# Verify server executable path is correct (Windows)
|
||||
dir "C:\ARMA3Server\arma3server_x64.exe"
|
||||
|
||||
# Check BEC has permission to launch server
|
||||
# Run BEC as administrator if needed (Windows)
|
||||
</code></pre>
|
||||
|
||||
<h3>Admin Commands Not Working</h3>
|
||||
<ul>
|
||||
<li>Verify your GUID is in Config.cfg [Admins] section</li>
|
||||
<li>Get your GUID using !guid command or from BattlEye logs</li>
|
||||
<li>Restart BEC after editing Config.cfg</li>
|
||||
<li>Check admin command prefix (default: !)</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-exclamation-triangle" style="color: #fbbf24; margin-right: 8px;"></i>Important Notes</h3>
|
||||
<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>Always keep your server updated to the latest version</li>
|
||||
<li>Make regular backups of your server configuration</li>
|
||||
<li>Review and follow the game's End User License Agreement (EULA)</li>
|
||||
<li><strong>Test Scheduler First:</strong> Test scheduled tasks with near-future times before deploying</li>
|
||||
<li><strong>Multiple Warnings:</strong> Use 10min, 5min, 2min, 1min restart warnings for player courtesy</li>
|
||||
<li><strong>DayZ Critical:</strong> For DayZ servers, regular restarts are essential for loot spawns and database sync</li>
|
||||
<li><strong>Backup Bec.cfg:</strong> Keep backup of working Bec.cfg before making changes</li>
|
||||
<li><strong>Monitor Logs:</strong> Regularly check BEC logs for errors or issues</li>
|
||||
<li><strong>GUID Database:</strong> Keep list of admin GUIDs in separate document for reference</li>
|
||||
<li><strong>Time Zone:</strong> BEC uses server's system time zone for scheduler</li>
|
||||
<li><strong>Graceful Restarts:</strong> Always use scheduled restarts, avoid manual !restart during peak hours</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<h2 id="resources">Resources</h2>
|
||||
<ul>
|
||||
<li><a href="https://github.com/TheGamingChief/BattlEye-Extended-Controls" target="_blank">BEC Official GitHub</a></li>
|
||||
<li><a href="https://forums.bistudio.com/forums/topic/176536-bec-battleye-extended-controls/" target="_blank">BEC Forum Thread (Bohemia Interactive)</a></li>
|
||||
<li><a href="https://community.bistudio.com/wiki/BattlEye" target="_blank">BattlEye Wiki (Bohemia Interactive)</a></li>
|
||||
<li>Related Game Documentation: <a href="../arma2oa/">ARMA 2 OA</a>, <a href="../arma3/">ARMA 3</a>, <a href="../dayzmod/">DayZ Mod</a></li>
|
||||
</ul>
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"name": "BEC",
|
||||
"description": "Setup and configuration guide for BEC game servers",
|
||||
"category": "game",
|
||||
"order": 20,
|
||||
"complete": false
|
||||
"name": "BEC (BattlEye Extended Controls)",
|
||||
"description": "Comprehensive guide for BEC scheduler and admin tool for ARMA series with Bec.cfg configuration, scheduled restarts, admin commands, auto-restart on crash, and BattlEye integration",
|
||||
"category": "mods",
|
||||
"order": 65,
|
||||
"complete": true
|
||||
}
|
||||
|
|
|
|||
|
|
@ -50,6 +50,12 @@
|
|||
<h3>Managing Files</h3>
|
||||
<p>Access your server files via FTP using the credentials provided in your control panel.</p>
|
||||
|
||||
<h2 id="related-mods">🔌 Related Mods & Plugins</h2>
|
||||
<p>Popular server modifications compatible with Battlefield 2:</p>
|
||||
<ul>
|
||||
<li><a href="../b3/">B3 (Big Brother Bot)</a> - Python-based admin bot with RCON wrapper, player warnings, ban management, statistics tracking, and automated moderation for Battlefield servers</li>
|
||||
</ul>
|
||||
|
||||
<h2>Support</h2>
|
||||
<p>If you need assistance with your Battlefield 2 server:</p>
|
||||
<ul>
|
||||
|
|
|
|||
|
|
@ -50,6 +50,12 @@
|
|||
<h3>Managing Files</h3>
|
||||
<p>Access your server files via FTP using the credentials provided in your control panel.</p>
|
||||
|
||||
<h2 id="related-mods">🔌 Related Mods & Plugins</h2>
|
||||
<p>Popular server modifications compatible with Battlefield Bad Company 2:</p>
|
||||
<ul>
|
||||
<li><a href="../b3/">B3 (Big Brother Bot)</a> - Python-based admin bot with RCON wrapper, player warnings, ban management, statistics tracking, and automated moderation for Battlefield servers</li>
|
||||
</ul>
|
||||
|
||||
<h2>Support</h2>
|
||||
<p>If you need assistance with your Battlefield Bad Company 2 server:</p>
|
||||
<ul>
|
||||
|
|
|
|||
|
|
@ -50,6 +50,12 @@
|
|||
<h3>Managing Files</h3>
|
||||
<p>Access your server files via FTP using the credentials provided in your control panel.</p>
|
||||
|
||||
<h2 id="related-mods">🔌 Related Mods & Plugins</h2>
|
||||
<p>Popular server modifications compatible with Call of Duty:</p>
|
||||
<ul>
|
||||
<li><a href="../b3/">B3 (Big Brother Bot)</a> - Python-based admin bot with RCON wrapper, player warnings, ban management, statistics tracking, and automated moderation for Call of Duty servers</li>
|
||||
</ul>
|
||||
|
||||
<h2>Support</h2>
|
||||
<p>If you need assistance with your Call of Duty server:</p>
|
||||
<ul>
|
||||
|
|
|
|||
|
|
@ -50,6 +50,12 @@
|
|||
<h3>Managing Files</h3>
|
||||
<p>Access your server files via FTP using the credentials provided in your control panel.</p>
|
||||
|
||||
<h2 id="related-mods">🔌 Related Mods & Plugins</h2>
|
||||
<p>Popular server modifications compatible with Call of Duty 2:</p>
|
||||
<ul>
|
||||
<li><a href="../b3/">B3 (Big Brother Bot)</a> - Python-based admin bot with RCON wrapper, player warnings, ban management, statistics tracking, and automated moderation for Call of Duty servers</li>
|
||||
</ul>
|
||||
|
||||
<h2>Support</h2>
|
||||
<p>If you need assistance with your Call of Duty 2 server:</p>
|
||||
<ul>
|
||||
|
|
|
|||
|
|
@ -50,6 +50,12 @@
|
|||
<h3>Managing Files</h3>
|
||||
<p>Access your server files via FTP using the credentials provided in your control panel.</p>
|
||||
|
||||
<h2 id="related-mods">🔌 Related Mods & Plugins</h2>
|
||||
<p>Popular server modifications compatible with Call of Duty 4: Modern Warfare:</p>
|
||||
<ul>
|
||||
<li><a href="../b3/">B3 (Big Brother Bot)</a> - Python-based admin bot with RCON wrapper, player warnings, ban management, statistics tracking, and automated moderation for Call of Duty servers</li>
|
||||
</ul>
|
||||
|
||||
<h2>Support</h2>
|
||||
<p>If you need assistance with your Call of Duty 4: Modern Warfare server:</p>
|
||||
<ul>
|
||||
|
|
|
|||
|
|
@ -50,8 +50,14 @@
|
|||
<h3>Managing Files</h3>
|
||||
<p>Access your server files via FTP using the credentials provided in your control panel.</p>
|
||||
|
||||
<h2 id="related-mods">🔌 Related Mods & Plugins</h2>
|
||||
<p>Popular server modifications compatible with Call of Duty: Modern Warfare 2:</p>
|
||||
<ul>
|
||||
<li><a href="../b3/">B3 (Big Brother Bot)</a> - Python-based admin bot with RCON wrapper, player warnings, ban management, statistics tracking, and automated moderation for Call of Duty servers</li>
|
||||
</ul>
|
||||
|
||||
<h2>Support</h2>
|
||||
<p>If you need assistance with your Call of Duty: Modern Warfare 2 (IW4x) server:</p>
|
||||
<p>If you need assistance with your Call of Duty: Modern Warfare 2 server:</p>
|
||||
<ul>
|
||||
<li>Check our <a href="/docs.php?action=view&doc=common-issues">Common Issues</a> guide</li>
|
||||
<li>Contact support through your account dashboard</li>
|
||||
|
|
|
|||
|
|
@ -50,6 +50,12 @@
|
|||
<h3>Managing Files</h3>
|
||||
<p>Access your server files via FTP using the credentials provided in your control panel.</p>
|
||||
|
||||
<h2 id="related-mods">🔌 Related Mods & Plugins</h2>
|
||||
<p>Popular server modifications compatible with Call of Duty: Modern Warfare 3:</p>
|
||||
<ul>
|
||||
<li><a href="../b3/">B3 (Big Brother Bot)</a> - Python-based admin bot with RCON wrapper, player warnings, ban management, statistics tracking, and automated moderation for Call of Duty servers</li>
|
||||
</ul>
|
||||
|
||||
<h2>Support</h2>
|
||||
<p>If you need assistance with your Call of Duty: Modern Warfare 3 server:</p>
|
||||
<ul>
|
||||
|
|
|
|||
|
|
@ -50,6 +50,12 @@
|
|||
<h3>Managing Files</h3>
|
||||
<p>Access your server files via FTP using the credentials provided in your control panel.</p>
|
||||
|
||||
<h2 id="related-mods">🔌 Related Mods & Plugins</h2>
|
||||
<p>Popular server modifications compatible with Call of Duty: United Offensive:</p>
|
||||
<ul>
|
||||
<li><a href="../b3/">B3 (Big Brother Bot)</a> - Python-based admin bot with RCON wrapper, player warnings, ban management, statistics tracking, and automated moderation for Call of Duty servers</li>
|
||||
</ul>
|
||||
|
||||
<h2>Support</h2>
|
||||
<p>If you need assistance with your Call of Duty: United Offensive server:</p>
|
||||
<ul>
|
||||
|
|
|
|||
|
|
@ -50,6 +50,12 @@
|
|||
<h3>Managing Files</h3>
|
||||
<p>Access your server files via FTP using the credentials provided in your control panel.</p>
|
||||
|
||||
<h2 id="related-mods">🔌 Related Mods & Plugins</h2>
|
||||
<p>Popular server modifications compatible with Call of Duty: World at War:</p>
|
||||
<ul>
|
||||
<li><a href="../b3/">B3 (Big Brother Bot)</a> - Python-based admin bot with RCON wrapper, player warnings, ban management, statistics tracking, and automated moderation for Call of Duty servers</li>
|
||||
</ul>
|
||||
|
||||
<h2>Support</h2>
|
||||
<p>If you need assistance with your Call of Duty: World at War server:</p>
|
||||
<ul>
|
||||
|
|
|
|||
|
|
@ -50,8 +50,14 @@
|
|||
<h3>Managing Files</h3>
|
||||
<p>Access your server files via FTP using the credentials provided in your control panel.</p>
|
||||
|
||||
<h2 id="related-mods">🔌 Related Mods & Plugins</h2>
|
||||
<p>Popular server modifications compatible with Call of Duty: Black Ops:</p>
|
||||
<ul>
|
||||
<li><a href="../b3/">B3 (Big Brother Bot)</a> - Python-based admin bot with RCON wrapper, player warnings, ban management, statistics tracking, and automated moderation for Call of Duty servers</li>
|
||||
</ul>
|
||||
|
||||
<h2>Support</h2>
|
||||
<p>If you need assistance with your CoD: Black Ops server:</p>
|
||||
<p>If you need assistance with your Call of Duty: Black Ops server:</p>
|
||||
<ul>
|
||||
<li>Check our <a href="/docs.php?action=view&doc=common-issues">Common Issues</a> guide</li>
|
||||
<li>Contact support through your account dashboard</li>
|
||||
|
|
|
|||
|
|
@ -747,6 +747,12 @@ cd /path/to/csgo-server
|
|||
./srcds_run -game csgo +map de_dust2 ...
|
||||
</code></pre>
|
||||
|
||||
<h2 id="related-mods">🔌 Related Mods & Plugins</h2>
|
||||
<p>Popular server modifications compatible with Counter-Strike: Global Offensive:</p>
|
||||
<ul>
|
||||
<li><a href="../metamodsource/">Metamod:Source</a> - Foundation plugin loader required for SourceMod (use SourceMod for CS:GO, not AMX Mod X)</li>
|
||||
</ul>
|
||||
|
||||
<h2>Additional Resources</h2>
|
||||
<ul>
|
||||
<li><a href="https://developer.valvesoftware.com/wiki/Counter-Strike:_Global_Offensive_Dedicated_Servers" target="_blank">Valve Developer Wiki - CS:GO Dedicated Servers</a></li>
|
||||
|
|
|
|||
|
|
@ -541,6 +541,13 @@ cd /path/to/css-server
|
|||
./srcds_run -game cstrike +map de_dust2 ...
|
||||
</code></pre>
|
||||
|
||||
<h2 id="related-mods">🔌 Related Mods & Plugins</h2>
|
||||
<p>Popular server modifications compatible with Counter-Strike: Source:</p>
|
||||
<ul>
|
||||
<li><a href="../metamodsource/">Metamod:Source</a> - Foundation plugin loader required for SourceMod and other Source engine plugins</li>
|
||||
<li><a href="../amxmodx/">AMX Mod X</a> - Alternative plugin framework (partial CS:S support, primarily for CS 1.6)</li>
|
||||
</ul>
|
||||
|
||||
<h2>Additional Resources</h2>
|
||||
<ul>
|
||||
<li><a href="https://developer.valvesoftware.com/wiki/Counter-Strike:_Source" target="_blank">Valve Developer Wiki - CS:Source</a></li>
|
||||
|
|
|
|||
|
|
@ -512,6 +512,12 @@ cd /path/to/cs16-server
|
|||
./hlds_run -game cstrike +map de_dust2 ...
|
||||
</code></pre>
|
||||
|
||||
<h2 id="related-mods">🔌 Related Mods & Plugins</h2>
|
||||
<p>Popular server modifications compatible with Counter-Strike 1.6:</p>
|
||||
<ul>
|
||||
<li><a href="../amxmodx/">AMX Mod X</a> - Primary plugin framework for CS 1.6 with Pawn scripting, admin system, and extensive plugin library</li>
|
||||
</ul>
|
||||
|
||||
<h2>Additional Resources</h2>
|
||||
<ul>
|
||||
<li><a href="https://developer.valvesoftware.com/wiki/Counter-Strike" target="_blank">Valve Developer Wiki - CS 1.6</a></li>
|
||||
|
|
|
|||
|
|
@ -311,6 +311,12 @@ loginQueueConcurrentPlayers = 3;</code></pre>
|
|||
<li><strong>Network:</strong> 100+ Mbps, low latency</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="related-mods">🔌 Related Mods & Plugins</h2>
|
||||
<p>Popular server modifications compatible with DayZ Standalone:</p>
|
||||
<ul>
|
||||
<li><a href="../bec/">BEC (Battleye Extended Controls)</a> - Advanced RCON tool with automated restarts, scheduled messages, custom commands, and robust BattlEye integration for ARMA/DayZ servers</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="resources">📚 Resources</h2>
|
||||
|
||||
<ul>
|
||||
|
|
|
|||
|
|
@ -1,68 +1,554 @@
|
|||
<?php
|
||||
/**
|
||||
* DayZ Mod Server Documentation
|
||||
* DayZ Mod Documentation
|
||||
*/
|
||||
?>
|
||||
<h1>DayZ Mod Server Guide</h1>
|
||||
|
||||
<h2>Overview</h2>
|
||||
<p><strong>DayZ Mod</strong> is available for hosting on our platform. This guide covers the basics of setting up and managing your DayZ Mod server.</p>
|
||||
<h1>📚 DayZ Mod for ARMA 2 Server Guide</h1>
|
||||
<p style="font-size: 1.1em; color: rgba(255,255,255,0.8);">Zombie survival mod that revolutionized the genre</p>
|
||||
|
||||
<div style="background: #1e3a5f; padding: 20px; border-left: 4px solid #3b82f6; margin: 20px 0; border-radius: 4px;">
|
||||
<h3 style="color: #ffffff; margin-top: 0;">Server Information</h3>
|
||||
<ul style="color: #e5e7eb; line-height: 1.8;">
|
||||
<li><strong style="color: #ffffff;">Default Port:</strong> <code style="background: #0f172a; padding: 2px 6px; border-radius: 3px; color: #a5b4fc;">2302</code></li>
|
||||
<li><strong style="color: #ffffff;">Protocol:</strong> UDP</li>
|
||||
<li><strong style="color: #ffffff;">Additional Info:</strong> Steam query port is 2303 UDP</li>
|
||||
</ul>
|
||||
<p style="color: #e5e7eb; margin-top: 12px; font-size: 0.95em;">
|
||||
<em>Note: When running on a VPS or dedicated server, you can use the default port or configure a custom port in your server configuration file.</em>
|
||||
</p>
|
||||
<h3 style="color: #ffffff; margin-top: 0;">Quick Info</h3>
|
||||
<table style="width: 100%; color: #e5e7eb;">
|
||||
<tr><td><strong style="color: #ffffff;">Base Game:</strong></td><td>ARMA 2: Operation Arrowhead + ARMA 2 (Combined Operations)</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Version:</strong></td><td>DayZ Mod 1.9.0+ (final official release)</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Database:</strong></td><td>MySQL/MariaDB required for character persistence</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Server Type:</strong></td><td>Reality build + Hive server architecture</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Max Players:</strong></td><td>Up to 100 (50-60 typical for performance)</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Anti-Cheat:</strong></td><td>BattlEye required</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Port:</strong></td><td>2302 UDP (game), 2303 UDP (query)</td></tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<h2>Getting Started</h2>
|
||||
<p>To create a DayZ Mod server:</p>
|
||||
<ol>
|
||||
<li>Navigate to the <a href="/serverlist.php">Game Servers</a> page</li>
|
||||
<li>Find <strong>DayZ Mod</strong> in the list</li>
|
||||
<li>Select your preferred configuration (slots, duration, etc.)</li>
|
||||
<li>Add to cart and complete checkout</li>
|
||||
<li>Your server will be automatically provisioned within minutes</li>
|
||||
</ol>
|
||||
|
||||
<h2>Server Configuration</h2>
|
||||
<p>After your server is created, you can configure it through the control panel:</p>
|
||||
<ul>
|
||||
<li>Server settings and parameters</li>
|
||||
<li>Player slots and limits</li>
|
||||
<li>RCON/remote control access</li>
|
||||
<li>FTP file access</li>
|
||||
<h2>Navigation</h2>
|
||||
<ul style="list-style: none; padding: 0;">
|
||||
<li>📚 <a href="#overview">Overview</a></li>
|
||||
<li>💾 <a href="#database">Database Setup</a></li>
|
||||
<li>📥 <a href="#installation">Server Installation</a></li>
|
||||
<li>🔧 <a href="#hive">Hive Server Configuration</a></li>
|
||||
<li>⚙️ <a href="#armaserver">ARMA Server Configuration</a></li>
|
||||
<li>🛡️ <a href="#battleye">BattlEye Filters</a></li>
|
||||
<li>🗺️ <a href="#maps">Maps & Variants</a></li>
|
||||
<li>🚀 <a href="#startup">Startup & Launch</a></li>
|
||||
<li>🔧 <a href="#troubleshooting">Troubleshooting</a></li>
|
||||
<li>📖 <a href="#resources">Resources</a></li>
|
||||
</ul>
|
||||
|
||||
<h2>Common Tasks</h2>
|
||||
<h2 id="overview">Overview</h2>
|
||||
<p>DayZ Mod is the original zombie survival mod for ARMA 2 that popularized the survival genre. Players spawn on a massive map with minimal gear, scavenging for supplies while avoiding zombies and other players in a persistent open world.</p>
|
||||
|
||||
<h3>Starting Your Server</h3>
|
||||
<p>Servers are automatically started after creation. You can stop/start your server from the control panel.</p>
|
||||
|
||||
<h3>Connecting to Your Server</h3>
|
||||
<p>Use your server's IP address and port to connect from the game client.</p>
|
||||
|
||||
<h3>Managing Files</h3>
|
||||
<p>Access your server files via FTP using the credentials provided in your control panel.</p>
|
||||
|
||||
<h2>Support</h2>
|
||||
<p>If you need assistance with your DayZ Mod server:</p>
|
||||
<h3>Key Features</h3>
|
||||
<ul>
|
||||
<li>Check our <a href="/docs.php?action=view&doc=common-issues">Common Issues</a> guide</li>
|
||||
<li>Contact support through your account dashboard</li>
|
||||
<li>Visit the official DayZ Mod community for game-specific help</li>
|
||||
<li><strong>Persistent Characters:</strong> MySQL database stores player data (position, inventory, health)</li>
|
||||
<li><strong>225 km² Map:</strong> Chernarus provides massive open-world gameplay</li>
|
||||
<li><strong>Survival Mechanics:</strong> Hunger, thirst, blood, temperature systems</li>
|
||||
<li><strong>Permadeath:</strong> Death means starting over from the coast</li>
|
||||
<li><strong>Zombies (Infected):</strong> AI-controlled threats across the map</li>
|
||||
<li><strong>Vehicle Persistence:</strong> Database-stored vehicle locations</li>
|
||||
<li><strong>Base Building:</strong> Limited tent/vehicle storage systems</li>
|
||||
</ul>
|
||||
|
||||
<h3>Architecture Overview</h3>
|
||||
<p>DayZ Mod uses a unique two-server architecture:</p>
|
||||
<ul>
|
||||
<li><strong>ARMA 2 Server:</strong> Runs the game world and handles clients</li>
|
||||
<li><strong>Hive Server (HiveExt.dll):</strong> Connects ARMA to MySQL database for persistence</li>
|
||||
<li><strong>MySQL Database:</strong> Stores all persistent data (characters, vehicles, objects)</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="database">💾 Database Setup</h2>
|
||||
|
||||
<h3>Installing MySQL/MariaDB</h3>
|
||||
|
||||
<h4>Ubuntu/Debian</h4>
|
||||
<pre><code># Install MariaDB
|
||||
sudo apt-get update
|
||||
sudo apt-get install mariadb-server mariadb-client
|
||||
|
||||
# Secure installation
|
||||
sudo mysql_secure_installation
|
||||
|
||||
# Start service
|
||||
sudo systemctl start mariadb
|
||||
sudo systemctl enable mariadb
|
||||
</code></pre>
|
||||
|
||||
<h4>Windows</h4>
|
||||
<pre><code># Download MySQL Community Server from mysql.com
|
||||
# Or use XAMPP which includes MySQL
|
||||
|
||||
# Install MySQL Server
|
||||
# Set root password during installation
|
||||
# Ensure MySQL service is running
|
||||
</code></pre>
|
||||
|
||||
<h3>Creating DayZ Database</h3>
|
||||
<pre><code># Login to MySQL
|
||||
mysql -u root -p
|
||||
|
||||
# Create database
|
||||
CREATE DATABASE dayz_epoch CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
# Create user with permissions
|
||||
CREATE USER 'dayz'@'localhost' IDENTIFIED BY 'your_secure_password';
|
||||
GRANT ALL PRIVILEGES ON dayz_epoch.* TO 'dayz'@'localhost';
|
||||
FLUSH PRIVILEGES;
|
||||
|
||||
# If Hive is on different machine
|
||||
CREATE USER 'dayz'@'%' IDENTIFIED BY 'your_secure_password';
|
||||
GRANT ALL PRIVILEGES ON dayz_epoch.* TO 'dayz'@'%';
|
||||
FLUSH PRIVILEGES;
|
||||
</code></pre>
|
||||
|
||||
<h3>Importing DayZ Schema</h3>
|
||||
<p>DayZ Mod includes SQL schema files in the database folder:</p>
|
||||
<pre><code># Import the schema (adjust path to your installation)
|
||||
mysql -u root -p dayz_epoch < path/to/dayz_server/SQL/dayz_schema.sql
|
||||
|
||||
# Or import via MySQL client
|
||||
mysql -u root -p
|
||||
USE dayz_epoch;
|
||||
SOURCE /path/to/dayz_server/SQL/dayz_schema.sql;
|
||||
</code></pre>
|
||||
|
||||
<h3>Database Tables (Key Tables)</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;">Table</th>
|
||||
<th style="padding: 12px; text-align: left; color: #ffffff;">Purpose</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody style="color: #e5e7eb;">
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;"><code>character_data</code></td>
|
||||
<td style="padding: 12px;">Player characters (inventory, position, stats)</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;"><code>survivor_data</code></td>
|
||||
<td style="padding: 12px;">Survivor profile information</td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;"><code>object_data</code></td>
|
||||
<td style="padding: 12px;">Persistent objects (tents, storage, vehicles)</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;"><code>player_data</code></td>
|
||||
<td style="padding: 12px;">Player login tracking</td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;"><code>instance_deployable</code></td>
|
||||
<td style="padding: 12px;">Deployed items (wire, tank traps)</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h2 id="installation">📥 Server Installation</h2>
|
||||
|
||||
<h3>Prerequisites</h3>
|
||||
<ul>
|
||||
<li>ARMA 2 Operation Arrowhead dedicated server</li>
|
||||
<li>ARMA 2 base game files (for Combined Operations)</li>
|
||||
<li>MySQL/MariaDB database server</li>
|
||||
<li>DayZ Mod server files</li>
|
||||
<li>Reality build files</li>
|
||||
</ul>
|
||||
|
||||
<h3>Linux Installation</h3>
|
||||
<pre><code># Install ARMA 2 OA server via SteamCMD
|
||||
steamcmd +force_install_dir ~/arma2oa_server +login YOUR_USERNAME +app_update 33935 validate +quit
|
||||
|
||||
# Download DayZ Mod server files
|
||||
# Available from DayZ GitHub: https://github.com/DayZMod/DayZ
|
||||
# Or DayZ Launcher repositories
|
||||
|
||||
# Extract DayZ files
|
||||
cd ~/arma2oa_server
|
||||
unzip dayz_server_files.zip
|
||||
|
||||
# Install Reality build (custom ARMA 2 build for DayZ)
|
||||
# Copy @Reality folder to server root
|
||||
cp -r /path/to/@Reality ~/arma2oa_server/
|
||||
|
||||
# Install HiveExt
|
||||
# Copy HiveExt.so to server root
|
||||
cp HiveExt.so ~/arma2oa_server/
|
||||
|
||||
# Set permissions
|
||||
chmod +x ~/arma2oa_server/arma2oaserver
|
||||
chmod +x ~/arma2oa_server/HiveExt.so
|
||||
</code></pre>
|
||||
|
||||
<h3>Windows Installation</h3>
|
||||
<pre><code># Install ARMA 2 OA server via SteamCMD
|
||||
steamcmd +force_install_dir C:\arma2oa_server +login YOUR_USERNAME +app_update 33935 validate +quit
|
||||
|
||||
# Download and extract DayZ Mod server files
|
||||
# Extract to C:\arma2oa_server\
|
||||
|
||||
# Install @Reality folder
|
||||
# Copy to C:\arma2oa_server\@Reality\
|
||||
|
||||
# Install HiveExt.dll
|
||||
# Copy to C:\arma2oa_server\
|
||||
</code></pre>
|
||||
|
||||
<h2 id="hive">🔧 Hive Server Configuration</h2>
|
||||
|
||||
<h3>HiveExt.ini</h3>
|
||||
<p>Configure <code>HiveExt.ini</code> in server root:</p>
|
||||
<pre><code>[Database]
|
||||
;Hostname or IP of the MySQL server
|
||||
Host = 127.0.0.1
|
||||
|
||||
;Port to connect to MySQL (default 3306)
|
||||
Port = 3306
|
||||
|
||||
;Database name
|
||||
Database = dayz_epoch
|
||||
|
||||
;Username
|
||||
Username = dayz
|
||||
|
||||
;Password
|
||||
Password = your_secure_password
|
||||
|
||||
[Time]
|
||||
;Type of time to use
|
||||
;Possible values:
|
||||
; Local (use server machine time)
|
||||
; Static (use fixed time from config)
|
||||
; Custom (use time from database)
|
||||
Type = Local
|
||||
|
||||
;If Type is Static, set the time here (24-hour format)
|
||||
Hour = 8
|
||||
Minute = 0
|
||||
|
||||
[Logging]
|
||||
;Enable detailed logging for debugging
|
||||
;0 = Off, 1 = Errors only, 2 = All
|
||||
LogLevel = 1
|
||||
LogFile = HiveExt.log
|
||||
</code></pre>
|
||||
|
||||
<h3>Database Connection Test</h3>
|
||||
<p>Test database connectivity before starting server:</p>
|
||||
<pre><code># Linux
|
||||
telnet 127.0.0.1 3306
|
||||
|
||||
# Windows
|
||||
Test-NetConnection -ComputerName 127.0.0.1 -Port 3306
|
||||
|
||||
# Or use MySQL client
|
||||
mysql -h 127.0.0.1 -u dayz -p dayz_epoch
|
||||
</code></pre>
|
||||
|
||||
<h2 id="armaserver">⚙️ ARMA Server Configuration</h2>
|
||||
|
||||
<h3>server.cfg</h3>
|
||||
<p>Basic ARMA 2 server configuration:</p>
|
||||
<pre><code>hostname = "My DayZ Server";
|
||||
password = "";
|
||||
passwordAdmin = "AdminPassword";
|
||||
serverCommandPassword = "RconPassword";
|
||||
|
||||
maxPlayers = 50;
|
||||
kickDuplicate = 1;
|
||||
verifySignatures = 2; // BattlEye enforcement
|
||||
BattlEye = 1;
|
||||
|
||||
persistent = 1; // Required for DayZ persistence
|
||||
|
||||
// Mission file
|
||||
class Missions
|
||||
{
|
||||
class DayZ
|
||||
{
|
||||
template = dayz_1.chernarus;
|
||||
difficulty = "regular";
|
||||
};
|
||||
};
|
||||
|
||||
motd[] = {
|
||||
"Welcome to My DayZ Server",
|
||||
"Visit our website: example.com"
|
||||
};
|
||||
|
||||
motdInterval = 300;
|
||||
|
||||
disableVoN = 0; // Voice enabled
|
||||
vonCodecQuality = 10;
|
||||
|
||||
// Performance settings
|
||||
MinBandwidth = 768000;
|
||||
MaxBandwidth = 10000000;
|
||||
MaxMsgSend = 256;
|
||||
MaxSizeGuaranteed = 512;
|
||||
MaxSizeNonguaranteed = 256;
|
||||
MinErrorToSend = 0.001;
|
||||
MinErrorToSendNear = 0.01;
|
||||
</code></pre>
|
||||
|
||||
<h3>Mission Folder Structure</h3>
|
||||
<pre><code>MPMissions/
|
||||
└── dayz_1.chernarus/
|
||||
├── mission.sqm // Mission file (player spawn, time settings)
|
||||
├── init.sqf // Initialization script
|
||||
├── description.ext // Mission description and parameters
|
||||
├── scripts/ // Custom scripts folder
|
||||
└── addons/ // Mission-specific addons
|
||||
</code></pre>
|
||||
|
||||
<h3>init.sqf (Sample)</h3>
|
||||
<pre><code>// DayZ initialization
|
||||
startLoadingScreen ["","RscDisplayLoadCustom"];
|
||||
cutText ["","BLACK OUT"];
|
||||
enableSaving [false, false];
|
||||
|
||||
// Variables
|
||||
dayZ_instance = 1; // Server instance ID
|
||||
dayzHiveRequest = [];
|
||||
initialized = false;
|
||||
|
||||
// Load DayZ
|
||||
call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\variables.sqf";
|
||||
progressLoadingScreen 0.1;
|
||||
call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\publicEH.sqf";
|
||||
progressLoadingScreen 0.2;
|
||||
call compile preprocessFileLineNumbers "\z\addons\dayz_code\medical\setup_functions_med.sqf";
|
||||
progressLoadingScreen 0.4;
|
||||
call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\compiles.sqf";
|
||||
progressLoadingScreen 0.5;
|
||||
|
||||
// Server-side initialization
|
||||
if (isServer) then {
|
||||
call compile preprocessFileLineNumbers "\z\addons\dayz_server\system\dynamic_vehicle.sqf";
|
||||
call compile preprocessFileLineNumbers "\z\addons\dayz_server\system\server_monitor.sqf";
|
||||
};
|
||||
|
||||
progressLoadingScreen 1.0;
|
||||
cutText ["","BLACK IN", 1];
|
||||
</code></pre>
|
||||
|
||||
<h2 id="battleye">🛡️ BattlEye Filters</h2>
|
||||
|
||||
<h3>BattlEye Configuration</h3>
|
||||
<p>BattlEye filters in <code>BattlEye/</code> folder prevent exploits and hacks. DayZ-specific filters are critical.</p>
|
||||
|
||||
<h4>Key Filter Files</h4>
|
||||
<ul>
|
||||
<li><strong>scripts.txt</strong> - Blocks malicious scripts (most important)</li>
|
||||
<li><strong>publicvariable.txt</strong> - Filters public variable injections</li>
|
||||
<li><strong>remoteexec.txt</strong> - Prevents remote execution exploits</li>
|
||||
<li><strong>createvehicle.txt</strong> - Controls vehicle spawning</li>
|
||||
<li><strong>setpos.txt</strong> - Limits teleportation exploits</li>
|
||||
<li><strong>setvariable.txt</strong> - Filters variable setting</li>
|
||||
</ul>
|
||||
|
||||
<h4>Updating Filters</h4>
|
||||
<pre><code># Download latest filters from community sources
|
||||
# Recommended: DayZ GitHub or DZMS filter packs
|
||||
|
||||
# Example: Download from GitHub
|
||||
wget https://github.com/DayZMod/DayZ/tree/master/BattlEye -O battleye_filters.zip
|
||||
unzip battleye_filters.zip -d BattlEye/
|
||||
|
||||
# Always backup existing filters before updating!
|
||||
cp -r BattlEye/ BattlEye_backup_$(date +%Y%m%d)/
|
||||
</code></pre>
|
||||
|
||||
<h3>Common BattlEye Issues</h3>
|
||||
<ul>
|
||||
<li><strong>Players kicked on spawn:</strong> scripts.txt too strict - check logs and add exceptions</li>
|
||||
<li><strong>Vehicle spawn kicks:</strong> createvehicle.txt blocking legitimate vehicles</li>
|
||||
<li><strong>Admin tool kicks:</strong> Whitelist admin scripts in filters</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="maps">🗺️ Maps & Variants</h2>
|
||||
|
||||
<h3>Official Maps</h3>
|
||||
<ul>
|
||||
<li><strong>Chernarus</strong> - Original 225 km² map (default)</li>
|
||||
<li><strong>Lingor</strong> - Tropical island map</li>
|
||||
<li><strong>Takistan</strong> - Desert environment</li>
|
||||
<li><strong>Namalsk</strong> - Arctic island with unique hazards</li>
|
||||
<li><strong>Panthera</strong> - Large European-style map</li>
|
||||
<li><strong>Celle</strong> - German countryside</li>
|
||||
</ul>
|
||||
|
||||
<h3>Map Installation</h3>
|
||||
<p>Additional maps require mission files and sometimes map addons:</p>
|
||||
<pre><code># Install map addon (e.g., @Namalsk)
|
||||
cp -r @Namalsk ~/arma2oa_server/
|
||||
|
||||
# Add to startup parameters
|
||||
-mod=@Reality;@DayZ;@Namalsk
|
||||
|
||||
# Install mission file
|
||||
cp -r dayz_1.namalsk MPMissions/
|
||||
</code></pre>
|
||||
|
||||
<h2 id="startup">🚀 Startup & Launch</h2>
|
||||
|
||||
<h3>Linux Startup Script</h3>
|
||||
<pre><code>#!/bin/bash
|
||||
# start_dayz.sh
|
||||
|
||||
# Variables
|
||||
SERVER_DIR="/home/user/arma2oa_server"
|
||||
CONFIG="server.cfg"
|
||||
PORT="2302"
|
||||
MODS="-mod=@Reality;@DayZ"
|
||||
|
||||
cd $SERVER_DIR
|
||||
|
||||
# Start server
|
||||
./arma2oaserver \
|
||||
$MODS \
|
||||
-port=$PORT \
|
||||
-config=$CONFIG \
|
||||
-cfg=basic.cfg \
|
||||
-profiles=profiles \
|
||||
-name=server \
|
||||
-world=empty \
|
||||
-nosound \
|
||||
-noCB \
|
||||
-cpuCount=4 \
|
||||
-exThreads=7
|
||||
</code></pre>
|
||||
|
||||
<h3>Windows Startup Batch</h3>
|
||||
<pre><code>@echo off
|
||||
REM start_dayz.bat
|
||||
|
||||
SET SERVER_DIR=C:\arma2oa_server
|
||||
SET MODS=-mod=@Reality;@DayZ
|
||||
SET PORT=2302
|
||||
|
||||
cd %SERVER_DIR%
|
||||
|
||||
start "DayZ Server" /high arma2oaserver.exe ^
|
||||
%MODS% ^
|
||||
-port=%PORT% ^
|
||||
-config=server.cfg ^
|
||||
-cfg=basic.cfg ^
|
||||
-profiles=profiles ^
|
||||
-name=server ^
|
||||
-world=empty ^
|
||||
-cpuCount=4 ^
|
||||
-exThreads=7
|
||||
</code></pre>
|
||||
|
||||
<h3>Startup Parameters Explained</h3>
|
||||
<ul>
|
||||
<li><code>-mod=@Reality;@DayZ</code> - Load Reality and DayZ mods</li>
|
||||
<li><code>-port=2302</code> - Game port (default 2302)</li>
|
||||
<li><code>-config=server.cfg</code> - Server configuration file</li>
|
||||
<li><code>-profiles=profiles</code> - Profile folder for logs</li>
|
||||
<li><code>-world=empty</code> - Don't load world at startup (faster)</li>
|
||||
<li><code>-cpuCount=4</code> - Number of CPU cores to use</li>
|
||||
<li><code>-exThreads=7</code> - Extra threads for better performance</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="troubleshooting">🔧 Troubleshooting</h2>
|
||||
|
||||
<h3>Hive Connection Failed</h3>
|
||||
<pre><code># Check HiveExt.log for errors
|
||||
tail -f HiveExt.log
|
||||
|
||||
# Common causes:
|
||||
# 1. Wrong database credentials in HiveExt.ini
|
||||
# 2. MySQL not running
|
||||
# 3. Firewall blocking port 3306
|
||||
# 4. Database name doesn't exist
|
||||
|
||||
# Test connection manually
|
||||
mysql -h 127.0.0.1 -u dayz -p dayz_epoch
|
||||
|
||||
# Check MySQL is listening
|
||||
netstat -an | grep 3306
|
||||
</code></pre>
|
||||
|
||||
<h3>Players Spawn as Seagulls</h3>
|
||||
<p>This indicates database connection issues:</p>
|
||||
<ul>
|
||||
<li>Verify HiveExt.ini database settings</li>
|
||||
<li>Check character_data table exists and is accessible</li>
|
||||
<li>Ensure instance ID matches in database and mission file</li>
|
||||
<li>Check HiveExt.log for SQL errors</li>
|
||||
</ul>
|
||||
|
||||
<h3>Server Crashes on Startup</h3>
|
||||
<pre><code># Check server logs
|
||||
tail -f arma2oaserver.rpt
|
||||
|
||||
# Common causes:
|
||||
# 1. Missing @Reality or @DayZ files
|
||||
# 2. Corrupted mission file
|
||||
# 3. Wrong mod load order
|
||||
# 4. Insufficient RAM (4GB+ recommended)
|
||||
|
||||
# Verify mod folders exist
|
||||
ls -la @Reality
|
||||
ls -la @DayZ
|
||||
|
||||
# Check mission file syntax
|
||||
# mission.sqm must be valid ARMA format
|
||||
</code></pre>
|
||||
|
||||
<h3>BattlEye Kicking All Players</h3>
|
||||
<ul>
|
||||
<li>Check BattlEye logs in <code>BattlEye/</code> folder</li>
|
||||
<li>Update BattlEye filters to latest version</li>
|
||||
<li>Temporarily disable specific filters to identify issue</li>
|
||||
<li>Add exceptions for legitimate scripts/actions</li>
|
||||
</ul>
|
||||
|
||||
<h3>Character Data Not Saving</h3>
|
||||
<pre><code># Verify database connection
|
||||
mysql -u dayz -p dayz_epoch
|
||||
|
||||
# Check character_data table
|
||||
SELECT * FROM character_data LIMIT 10;
|
||||
|
||||
# Verify HiveExt is loading
|
||||
grep "HiveExt" arma2oaserver.rpt
|
||||
|
||||
# Check for SQL errors in HiveExt.log
|
||||
grep "ERROR" HiveExt.log
|
||||
</code></pre>
|
||||
|
||||
<h3>Poor Server Performance</h3>
|
||||
<ul>
|
||||
<li>Reduce max players (50-60 optimal)</li>
|
||||
<li>Increase server RAM (8GB+ recommended)</li>
|
||||
<li>Use SSD storage for database</li>
|
||||
<li>Optimize MySQL with proper indexes</li>
|
||||
<li>Limit AI zombies via mission settings</li>
|
||||
<li>Clean old objects from database regularly</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-exclamation-triangle" style="color: #fbbf24; margin-right: 8px;"></i>Important Notes</h3>
|
||||
<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>Always keep your server updated to the latest version</li>
|
||||
<li>Make regular backups of your server configuration</li>
|
||||
<li>Review and follow the game's End User License Agreement (EULA)</li>
|
||||
<li><strong>Database Backups:</strong> Automate daily MySQL backups - character loss is devastating</li>
|
||||
<li><strong>BattlEye Updates:</strong> Keep filters current to prevent exploits</li>
|
||||
<li><strong>Hive Monitoring:</strong> Watch HiveExt.log in real-time during launches</li>
|
||||
<li><strong>Restart Schedule:</strong> Daily restarts clean up objects and improve performance</li>
|
||||
<li><strong>Player Limit:</strong> 50-60 players maximum for smooth gameplay</li>
|
||||
<li><strong>Custom Scripts:</strong> Always test in dev environment first</li>
|
||||
<li><strong>Community Support:</strong> DayZ forums and Discord are very active</li>
|
||||
<li><strong>Version Lock:</strong> Keep server and client versions synchronized</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<h2 id="resources">Resources</h2>
|
||||
<ul>
|
||||
<li><a href="https://github.com/DayZMod/DayZ" target="_blank">Official DayZ Mod GitHub</a></li>
|
||||
<li><a href="https://dayzlauncher.com/" target="_blank">DayZ Launcher (Client)</a></li>
|
||||
<li><a href="https://forums.dayz.com/forum/102-mod-servers-troubleshooting/" target="_blank">DayZ Mod Server Forums</a></li>
|
||||
<li><a href="https://www.reddit.com/r/dayzmod/" target="_blank">r/dayzmod - Reddit Community</a></li>
|
||||
<li><a href="https://github.com/oiad/DayZMissionEditor" target="_blank">DayZ Mission Editor</a></li>
|
||||
<li><a href="../arma2oa/">ARMA 2 OA Server Documentation</a> - Base server setup</li>
|
||||
<li><a href="../arma2co/">ARMA 2 CO Server Documentation</a> - Combined Operations</li>
|
||||
</ul>
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"name": "DayZ Mod",
|
||||
"description": "Setup and configuration guide for DayZ Mod game servers",
|
||||
"category": "game",
|
||||
"order": 59,
|
||||
"complete": false
|
||||
"name": "DayZ Mod",
|
||||
"description": "Comprehensive guide for DayZ Mod servers (ARMA 2) with MySQL database setup, Hive server configuration, BattlEye filters, 6 maps, and two-server architecture",
|
||||
"category": "mods",
|
||||
"order": 59,
|
||||
"complete": true
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,33 +1,549 @@
|
|||
<?php
|
||||
/**
|
||||
* DayZ Epoch Mod Server Documentation
|
||||
* DayZ Epoch Mod Documentation
|
||||
*/
|
||||
?>
|
||||
<h1>DayZ Epoch Mod Server Guide</h1>
|
||||
|
||||
<h2>Overview</h2>
|
||||
<p><strong>DayZ Epoch Mod</strong> is available for hosting on our platform. This guide covers the basics of setting up and managing your DayZ Epoch Mod server.</p>
|
||||
<h1>📚 DayZ Epoch Mod Server Guide</h1>
|
||||
<p style="font-size: 1.1em; color: rgba(255,255,255,0.8);">Enhanced DayZ with base building, traders, and persistent economy</p>
|
||||
|
||||
<div style="background: #1e3a5f; padding: 20px; border-left: 4px solid #3b82f6; margin: 20px 0; border-radius: 4px;">
|
||||
<h3 style="color: #ffffff; margin-top: 0;">Server Information</h3>
|
||||
<ul style="color: #e5e7eb; line-height: 1.8;">
|
||||
<li><strong style="color: #ffffff;">Default Port:</strong> <code style="background: #0f172a; padding: 2px 6px; border-radius: 3px; color: #a5b4fc;">2302</code></li>
|
||||
<li><strong style="color: #ffffff;">Protocol:</strong> UDP</li>
|
||||
<li><strong style="color: #ffffff;">Additional Info:</strong> Steam query port is 2303 UDP</li>
|
||||
</ul>
|
||||
<p style="color: #e5e7eb; margin-top: 12px; font-size: 0.95em;">
|
||||
<em>Note: When running on a VPS or dedicated server, you can use the default port or configure a custom port in your server configuration file.</em>
|
||||
</p>
|
||||
<h3 style="color: #ffffff; margin-top: 0;">Quick Info</h3>
|
||||
<table style="width: 100%; color: #e5e7eb;">
|
||||
<tr><td><strong style="color: #ffffff;">Base Requirement:</strong></td><td>DayZ Mod 1.8.8+ (builds on DayZ)</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Version:</strong></td><td>Epoch 1.0.6.2+ (final stable release)</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Database:</strong></td><td>MySQL/MariaDB with complex schema</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Key Features:</strong></td><td>Base building, trader NPCs, banking, vehicle spawns</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Variants:</strong></td><td>Pure Epoch, Overpoch (Overwatch + Epoch)</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Max Players:</strong></td><td>Up to 100 (50-70 optimal)</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Port:</strong></td><td>2302 UDP (game), 2303 UDP (query)</td></tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<h2>Getting Started</h2>
|
||||
<p>To create a DayZ Epoch Mod server:</p>
|
||||
<ol>
|
||||
<li>Navigate to the <a href="/serverlist.php">Game Servers</a> page</li>
|
||||
<li>Find <strong>DayZ Epoch Mod</strong> in the list</li>
|
||||
<li>Select your preferred configuration (slots, duration, etc.)</li>
|
||||
<li>Add to cart and complete checkout</li>
|
||||
<li>Your server will be automatically provisioned within minutes</li>
|
||||
<h2>Navigation</h2>
|
||||
<ul style="list-style: none; padding: 0;">
|
||||
<li>📚 <a href="#overview">Overview</a></li>
|
||||
<li>💾 <a href="#database">Database Setup</a></li>
|
||||
<li>📥 <a href="#installation">Server Installation</a></li>
|
||||
<li>🏗️ <a href="#basebuilding">Base Building System</a></li>
|
||||
<li>💰 <a href="#traders">Trader System</a></li>
|
||||
<li>🚗 <a href="#vehicles">Vehicle System</a></li>
|
||||
<li>💸 <a href="#banking">Banking System</a></li>
|
||||
<li>⚙️ <a href="#configuration">Configuration</a></li>
|
||||
<li>🔧 <a href="#troubleshooting">Troubleshooting</a></li>
|
||||
<li>📖 <a href="#resources">Resources</a></li>
|
||||
</ul>
|
||||
|
||||
<h2 id="overview">Overview</h2>
|
||||
<p>DayZ Epoch is an extensive modification built on top of DayZ Mod. It adds base building with plot poles, trader NPCs with a dynamic economy, banking system, enhanced vehicles, and custom loot tables. Epoch significantly extends DayZ's survival mechanics with persistent base construction and economy management.</p>
|
||||
|
||||
<h3>Key Features</h3>
|
||||
<ul>
|
||||
<li><strong>Plot Pole System:</strong> Build bases with walls, floors, gates using plot poles for protection</li>
|
||||
<li><strong>Trader Cities:</strong> Safe zones with AI trader NPCs selling weapons, vehicles, supplies</li>
|
||||
<li><strong>Dynamic Economy:</strong> Prices fluctuate based on server supply/demand</li>
|
||||
<li><strong>Banking:</strong> Deposit coins at traders, safe storage with interest</li>
|
||||
<li><strong>Vehicle Spawns:</strong> Custom spawn system with database persistence</li>
|
||||
<li><strong>Enhanced Loot:</strong> Custom loot tables with gems, rare items, crafting materials</li>
|
||||
<li><strong>Crafting:</strong> Build storage boxes, sandbags, wire kits, metal parts</li>
|
||||
</ul>
|
||||
|
||||
<h3>Epoch vs. Overpoch</h3>
|
||||
<ul>
|
||||
<li><strong>Pure Epoch:</strong> Standard Epoch with vanilla DayZ Mod base</li>
|
||||
<li><strong>Overpoch:</strong> Combines Overwatch mod (military weapons/vehicles) with Epoch features</li>
|
||||
<li><strong>Performance:</strong> Pure Epoch lighter, Overpoch more content but heavier</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="database">💾 Database Setup</h2>
|
||||
|
||||
<h3>Installing MySQL/MariaDB</h3>
|
||||
|
||||
<h4>Ubuntu/Debian</h4>
|
||||
<pre><code># Install MariaDB
|
||||
sudo apt-get update
|
||||
sudo apt-get install mariadb-server mariadb-client
|
||||
|
||||
# Secure installation
|
||||
sudo mysql_secure_installation
|
||||
|
||||
# Start service
|
||||
sudo systemctl start mariadb
|
||||
sudo systemctl enable mariadb
|
||||
</code></pre>
|
||||
|
||||
<h4>Windows</h4>
|
||||
<pre><code># Download MySQL Community Server from mysql.com
|
||||
# Or use XAMPP which includes MySQL
|
||||
|
||||
# Install MySQL Server
|
||||
# Set root password during installation
|
||||
# Start MySQL service from Services panel
|
||||
</code></pre>
|
||||
|
||||
<h3>Creating Epoch Database</h3>
|
||||
<pre><code># Login to MySQL
|
||||
mysql -u root -p
|
||||
|
||||
# Create database
|
||||
CREATE DATABASE epoch CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
# Create user with permissions
|
||||
CREATE USER 'epoch'@'localhost' IDENTIFIED BY 'your_secure_password';
|
||||
GRANT ALL PRIVILEGES ON epoch.* TO 'epoch'@'localhost';
|
||||
FLUSH PRIVILEGES;
|
||||
|
||||
# If Hive is on different machine
|
||||
CREATE USER 'epoch'@'%' IDENTIFIED BY 'your_secure_password';
|
||||
GRANT ALL PRIVILEGES ON epoch.* TO 'epoch'@'%';
|
||||
FLUSH PRIVILEGES;
|
||||
</code></pre>
|
||||
|
||||
<h3>Importing Epoch Schema</h3>
|
||||
<p>Epoch includes comprehensive SQL schema files:</p>
|
||||
<pre><code># Import Epoch schema (adjust path)
|
||||
mysql -u root -p epoch < path/to/epoch_server/SQL/epoch.sql
|
||||
|
||||
# Or import via MySQL client
|
||||
mysql -u root -p
|
||||
USE epoch;
|
||||
SOURCE /path/to/epoch_server/SQL/epoch.sql;
|
||||
|
||||
# Import additional tables if using Overpoch
|
||||
SOURCE /path/to/epoch_server/SQL/overpoch_additions.sql;
|
||||
</code></pre>
|
||||
|
||||
<h3>Epoch Database Tables (Key Tables)</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;">Table</th>
|
||||
<th style="padding: 12px; text-align: left; color: #ffffff;">Purpose</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody style="color: #e5e7eb;">
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;"><code>character_data</code></td>
|
||||
<td style="padding: 12px;">Player characters (inventory, position, stats, coins)</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;"><code>object_data</code></td>
|
||||
<td style="padding: 12px;">Player-built objects (walls, floors, storage) and plot poles</td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;"><code>player_data</code></td>
|
||||
<td style="padding: 12px;">Player login tracking and stats</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;"><code>trader_data</code></td>
|
||||
<td style="padding: 12px;">Trader inventory, prices, stock levels</td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;"><code>vehicle_spawns</code></td>
|
||||
<td style="padding: 12px;">Vehicle spawn points and configurations</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;"><code>trader_tids</code></td>
|
||||
<td style="padding: 12px;">Trader item IDs and categories</td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;"><code>player_login</code></td>
|
||||
<td style="padding: 12px;">Player authentication and banking</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h3>Database Maintenance</h3>
|
||||
<p><strong>Critical:</strong> Epoch databases grow rapidly. Regular cleanup is essential.</p>
|
||||
<pre><code># Cleanup old objects (run weekly)
|
||||
DELETE FROM object_data WHERE Datestamp < DATE_SUB(NOW(), INTERVAL 30 DAY) AND CharacterID = 0;
|
||||
|
||||
# Remove abandoned vehicles
|
||||
DELETE FROM object_data WHERE ObjectUID IN (
|
||||
SELECT ObjectUID FROM object_data
|
||||
WHERE Classname LIKE '%_DZ' AND Damage = 1
|
||||
);
|
||||
|
||||
# Optimize tables
|
||||
OPTIMIZE TABLE object_data, character_data, trader_data;
|
||||
|
||||
# Backup before cleanup!
|
||||
mysqldump -u epoch -p epoch > epoch_backup_$(date +%Y%m%d).sql
|
||||
</code></pre>
|
||||
|
||||
<h2 id="installation">📥 Server Installation</h2>
|
||||
|
||||
<h3>Prerequisites</h3>
|
||||
<ul>
|
||||
<li>DayZ Mod 1.8.8+ server files installed</li>
|
||||
<li>ARMA 2 Operation Arrowhead + ARMA 2 (Combined Operations)</li>
|
||||
<li>MySQL/MariaDB database server configured</li>
|
||||
<li>Epoch Mod server files (from EpochMod.com)</li>
|
||||
<li>HiveExt configured for Epoch database</li>
|
||||
</ul>
|
||||
|
||||
<h3>Linux Installation</h3>
|
||||
<pre><code># Assumes DayZ Mod already installed at ~/arma2oa_server
|
||||
|
||||
# Download Epoch server files
|
||||
cd ~/arma2oa_server
|
||||
wget https://github.com/EpochModTeam/DayZ-Epoch/releases/download/1.0.6.2/DayZ_Epoch_Server_1.0.6.2.zip
|
||||
unzip DayZ_Epoch_Server_1.0.6.2.zip
|
||||
|
||||
# Extract Epoch files
|
||||
# Copy @DayZ_Epoch folder to server root
|
||||
cp -r DayZ_Epoch_Server_1.0.6.2/@DayZ_Epoch ~/arma2oa_server/
|
||||
|
||||
# Update HiveExt for Epoch
|
||||
cp DayZ_Epoch_Server_1.0.6.2/HiveExt.ini ~/arma2oa_server/
|
||||
cp DayZ_Epoch_Server_1.0.6.2/HiveExt.so ~/arma2oa_server/
|
||||
|
||||
# Extract mission files
|
||||
cp -r DayZ_Epoch_Server_1.0.6.2/MPMissions/DayZ_Epoch_11.Chernarus ~/arma2oa_server/MPMissions/
|
||||
|
||||
# Set permissions
|
||||
chmod +x ~/arma2oa_server/HiveExt.so
|
||||
</code></pre>
|
||||
|
||||
<h3>Windows Installation</h3>
|
||||
<pre><code># Download Epoch server files from EpochMod.com
|
||||
# Extract to temporary location
|
||||
|
||||
# Copy @DayZ_Epoch folder to C:\arma2oa_server\
|
||||
xcopy /E /I DayZ_Epoch_Server_1.0.6.2\@DayZ_Epoch C:\arma2oa_server\@DayZ_Epoch
|
||||
|
||||
# Replace HiveExt files
|
||||
copy DayZ_Epoch_Server_1.0.6.2\HiveExt.dll C:\arma2oa_server\
|
||||
copy DayZ_Epoch_Server_1.0.6.2\HiveExt.ini C:\arma2oa_server\
|
||||
|
||||
# Copy mission files
|
||||
xcopy /E /I DayZ_Epoch_Server_1.0.6.2\MPMissions\DayZ_Epoch_11.Chernarus C:\arma2oa_server\MPMissions\DayZ_Epoch_11.Chernarus
|
||||
</code></pre>
|
||||
|
||||
<h2 id="basebuilding">🏗️ Base Building System</h2>
|
||||
|
||||
<h3>Plot Pole Mechanics</h3>
|
||||
<p>The plot pole is central to Epoch's base building:</p>
|
||||
<ul>
|
||||
<li><strong>Range:</strong> 30m radius from pole (configurable)</li>
|
||||
<li><strong>Protection:</strong> Prevents other players from building or destroying within range</li>
|
||||
<li><strong>Maintenance:</strong> Must be maintained every 7 days or base decays</li>
|
||||
<li><strong>Upgrades:</strong> Can upgrade with additional materials for extended range</li>
|
||||
</ul>
|
||||
|
||||
<h3>Buildable Objects</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;">Item</th>
|
||||
<th style="padding: 12px; text-align: left; color: #ffffff;">Materials Required</th>
|
||||
<th style="padding: 12px; text-align: left; color: #ffffff;">Notes</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody style="color: #e5e7eb;">
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;">Plot Pole</td>
|
||||
<td style="padding: 12px;">4x Wood, 1x Etool</td>
|
||||
<td style="padding: 12px;">Required for building</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;">Wooden Wall</td>
|
||||
<td style="padding: 12px;">4x Wood</td>
|
||||
<td style="padding: 12px;">Basic defense</td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;">Metal Wall</td>
|
||||
<td style="padding: 12px;">2x Metal Panel</td>
|
||||
<td style="padding: 12px;">Strong defense</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;">Storage Shed</td>
|
||||
<td style="padding: 12px;">8x Wood, 4x Metal Panel</td>
|
||||
<td style="padding: 12px;">Large storage (500 slots)</td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;">Gate</td>
|
||||
<td style="padding: 12px;">6x Wood, 2x Metal Panel</td>
|
||||
<td style="padding: 12px;">Base entrance</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;">Floor</td>
|
||||
<td style="padding: 12px;">4x Wood</td>
|
||||
<td style="padding: 12px;">Horizontal surface</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h3>Configuration (init.sqf)</h3>
|
||||
<pre><code>// Plot pole settings (mission init.sqf)
|
||||
DZE_PlotPole = [30,45]; // [Range in meters, Maintenance period in days]
|
||||
|
||||
// Building requirements
|
||||
DZE_requireplot = 1; // 1 = Require plot pole for building, 0 = Free build
|
||||
|
||||
// Building limit per plot
|
||||
DZE_BuildingLimit = 150;
|
||||
|
||||
// Allow doorway building
|
||||
DZE_doorManagement = true;
|
||||
</code></pre>
|
||||
|
||||
<h2 id="traders">💰 Trader System</h2>
|
||||
|
||||
<h3>Trader Types</h3>
|
||||
<ul>
|
||||
<li><strong>General Trader:</strong> Food, medical supplies, basic tools</li>
|
||||
<li><strong>Weapons Trader:</strong> Firearms, ammunition, explosives</li>
|
||||
<li><strong>Vehicle Trader:</strong> Cars, trucks, motorcycles</li>
|
||||
<li><strong>Helicopter Trader:</strong> Aircraft (expensive)</li>
|
||||
<li><strong>Building Supplies:</strong> Construction materials, plot poles</li>
|
||||
<li><strong>Black Market:</strong> High-end weapons, rare items</li>
|
||||
</ul>
|
||||
|
||||
<h3>Currency System</h3>
|
||||
<p>Epoch uses briefcases of gold/silver coins:</p>
|
||||
<ul>
|
||||
<li><strong>Gold Bars (10oz):</strong> 100,000 coins each</li>
|
||||
<li><strong>Gold Bars (1oz):</strong> 10,000 coins each</li>
|
||||
<li><strong>Gold Coins:</strong> 10 coins each</li>
|
||||
<li><strong>Silver Bars (10oz):</strong> 1,000 coins each</li>
|
||||
<li><strong>Silver Coins:</strong> 1 coin each</li>
|
||||
</ul>
|
||||
|
||||
<h3>Dynamic Economy</h3>
|
||||
<p>Prices fluctuate based on server activity:</p>
|
||||
<pre><code>// Economy settings (mission init.sqf)
|
||||
DZE_EconomyCore = true; // Enable dynamic economy
|
||||
|
||||
// Price adjustment rates
|
||||
DZE_PriceAdjustment = [0.8, 1.2]; // [Min, Max] multipliers
|
||||
|
||||
// Restock timers (in seconds)
|
||||
DZE_RestockTimer = 1800; // 30 minutes
|
||||
|
||||
// Banking interest rate
|
||||
DZE_BankInterest = 0.001; // 0.1% per day
|
||||
</code></pre>
|
||||
|
||||
<h3>Configuring Traders (trader_data table)</h3>
|
||||
<pre><code>-- Add custom item to trader
|
||||
INSERT INTO trader_data (item, qty, buy, sell, order, tid, afile)
|
||||
VALUES ('ItemGPS', 5, '[2,"ItemGoldBar",1]', '[1,"ItemGoldBar",1]', 0, 126, 'trade_items');
|
||||
|
||||
-- Adjust trader prices
|
||||
UPDATE trader_data SET buy = '[1,"ItemGoldBar10oz",1]' WHERE item = 'M4A1_HWS_GL_camo';
|
||||
|
||||
-- Restock trader inventory
|
||||
UPDATE trader_data SET qty = 10 WHERE tid = 126;
|
||||
</code></pre>
|
||||
|
||||
<h2 id="vehicles">🚗 Vehicle System</h2>
|
||||
|
||||
<h3>Vehicle Spawn Configuration</h3>
|
||||
<p>Epoch uses <code>vehicle_spawns</code> table for dynamic spawning:</p>
|
||||
<pre><code>-- Add vehicle spawn point
|
||||
INSERT INTO vehicle_spawns (vehicle, chance, position, direction, hitpoints, fuel, damage)
|
||||
VALUES ('UAZ_Unarmed_TK_EP1', 0.6, '[4532,9516,0]', 90, '[]', 0.5, 0);
|
||||
|
||||
-- Configure spawn chances
|
||||
UPDATE vehicle_spawns SET chance = 0.8 WHERE vehicle LIKE 'Offroad%';
|
||||
</code></pre>
|
||||
|
||||
<h3>Vehicle Maintenance</h3>
|
||||
<ul>
|
||||
<li><strong>Damage System:</strong> Vehicles take damage and require repairs</li>
|
||||
<li><strong>Fuel Consumption:</strong> Must refuel at gas stations or with jerry cans</li>
|
||||
<li><strong>Locking:</strong> Vehicles can be locked with keys (database stored)</li>
|
||||
<li><strong>Persistence:</strong> Saved/locked vehicles persist in database</li>
|
||||
</ul>
|
||||
|
||||
<h3>Key System</h3>
|
||||
<pre><code>// Key settings (mission init.sqf)
|
||||
DZE_KeysAllow = true; // Enable vehicle key system
|
||||
|
||||
// Key types
|
||||
// Green key - Can access vehicle
|
||||
// Red key - Owner, can give access
|
||||
</code></pre>
|
||||
|
||||
<h2 id="banking">💸 Banking System</h2>
|
||||
|
||||
<h3>Banking Features</h3>
|
||||
<ul>
|
||||
<li><strong>Deposit Coins:</strong> Store currency safely at trader cities</li>
|
||||
<li><strong>Withdrawal:</strong> Retrieve coins anytime at any trader</li>
|
||||
<li><strong>Interest:</strong> Earn small interest on banked coins</li>
|
||||
<li><strong>Death Protection:</strong> Banked coins don't drop on death</li>
|
||||
</ul>
|
||||
|
||||
<h3>Configuration</h3>
|
||||
<pre><code>// Banking settings (mission init.sqf)
|
||||
DZE_EnableBanking = true;
|
||||
|
||||
// Banking interest rate (per day)
|
||||
DZE_BankInterest = 0.001; // 0.1%
|
||||
|
||||
// Max bank storage
|
||||
DZE_MaxBankMoney = 10000000; // 10 million coins
|
||||
|
||||
// Banking fees
|
||||
DZE_BankFee = 0; // No fee for deposits/withdrawals
|
||||
</code></pre>
|
||||
|
||||
<h2 id="configuration">⚙️ Configuration</h2>
|
||||
|
||||
<h3>HiveExt.ini (Epoch-specific)</h3>
|
||||
<pre><code>[Database]
|
||||
Host = 127.0.0.1
|
||||
Port = 3306
|
||||
Database = epoch
|
||||
Username = epoch
|
||||
Password = your_password
|
||||
|
||||
[Objects]
|
||||
;Maximum number of objects per player
|
||||
MaxObjectsPerPlayer = 150
|
||||
|
||||
;Object cleanup timer (days)
|
||||
CleanupPeriod = 30
|
||||
|
||||
[Traders]
|
||||
;Enable trader menu
|
||||
TraderMenuEnabled = true
|
||||
|
||||
;Trader safe zone radius
|
||||
SafeZoneRadius = 150
|
||||
</code></pre>
|
||||
|
||||
<h3>Mission init.sqf (Key Settings)</h3>
|
||||
<pre><code>// DayZ Epoch initialization
|
||||
dayZ_instance = 11; // Server instance ID
|
||||
dayzHiveRequest = [];
|
||||
|
||||
// Epoch settings
|
||||
DZE_ConfigTrader = true; // Use trader_data table
|
||||
DZE_GodModeBase = false; // Can destroy bases (set true for invincible)
|
||||
DZE_BuildOnRoads = false; // Prevent building on roads
|
||||
DZE_SelfTransfuse = true; // Allow self blood bag usage
|
||||
|
||||
// Plot pole settings
|
||||
DZE_PlotPole = [30,45]; // [Range meters, Maintenance days]
|
||||
DZE_PlotManagement = true; // Enable plot management menu
|
||||
|
||||
// Building
|
||||
DZE_BuildingLimit = 150;
|
||||
DZE_requireplot = 1;
|
||||
DZE_doorManagement = true;
|
||||
|
||||
// Traders
|
||||
DZE_EnableBanking = true;
|
||||
DZE_BankInterest = 0.001;
|
||||
DZE_EconomyCore = true;
|
||||
|
||||
// Vehicles
|
||||
DZE_KeysAllow = true;
|
||||
</code></pre>
|
||||
|
||||
<h3>Loot Tables (CfgLoot/)</h3>
|
||||
<p>Epoch includes custom loot tables in mission folder:</p>
|
||||
<pre><code>// Edit CfgLoot/CfgBuildingLoot.hpp
|
||||
class BuildingLoot {
|
||||
class Supermarket {
|
||||
zombieChance = 0.3;
|
||||
maxRoaming = 2;
|
||||
zombieClass[] = {"zZombie_Base","z_hunter"};
|
||||
lootChance = 0.4;
|
||||
lootPos[] = {};
|
||||
itemType[] = {
|
||||
{"ItemSodaMdew",0.03},
|
||||
{"FoodCanBakedBeans",0.02},
|
||||
{"ItemBandage",0.01}
|
||||
};
|
||||
};
|
||||
};
|
||||
</code></pre>
|
||||
|
||||
<h2 id="troubleshooting">🔧 Troubleshooting</h2>
|
||||
|
||||
<h3>Base Not Saving</h3>
|
||||
<pre><code># Check object_data table
|
||||
mysql -u epoch -p
|
||||
USE epoch;
|
||||
SELECT * FROM object_data WHERE CharacterID = YOUR_PLAYER_ID LIMIT 10;
|
||||
|
||||
# Common causes:
|
||||
# 1. HiveExt not connecting to database
|
||||
# 2. CharacterID mismatch
|
||||
# 3. Database full / locked
|
||||
# 4. Plot pole not placed correctly
|
||||
|
||||
# Check HiveExt.log
|
||||
grep "object_data" HiveExt.log
|
||||
</code></pre>
|
||||
|
||||
<h3>Trader Not Working</h3>
|
||||
<ul>
|
||||
<li>Verify <code>trader_data</code> table exists and is populated</li>
|
||||
<li>Check <code>DZE_ConfigTrader = true</code> in mission init.sqf</li>
|
||||
<li>Ensure trader AI is spawned in mission.sqm</li>
|
||||
<li>Check player is within safe zone radius</li>
|
||||
</ul>
|
||||
|
||||
<h3>Vehicle Spawns Empty</h3>
|
||||
<pre><code># Check vehicle_spawns table
|
||||
SELECT * FROM vehicle_spawns LIMIT 20;
|
||||
|
||||
# Adjust spawn chances if too low
|
||||
UPDATE vehicle_spawns SET chance = 1.0 WHERE chance < 0.5;
|
||||
|
||||
# Force respawn (wipe existing vehicles)
|
||||
DELETE FROM object_data WHERE Classname IN (SELECT vehicle FROM vehicle_spawns);
|
||||
</code></pre>
|
||||
|
||||
<h3>Database Growing Too Large</h3>
|
||||
<pre><code># Check database size
|
||||
SELECT table_name,
|
||||
ROUND(((data_length + index_length) / 1024 / 1024), 2) AS "Size (MB)"
|
||||
FROM information_schema.TABLES
|
||||
WHERE table_schema = "epoch";
|
||||
|
||||
# Run cleanup script (backup first!)
|
||||
DELETE FROM object_data WHERE Damage = 1 OR CharacterID = 0;
|
||||
DELETE FROM object_data WHERE LastUpdated < DATE_SUB(NOW(), INTERVAL 30 DAY);
|
||||
|
||||
OPTIMIZE TABLE object_data;
|
||||
</code></pre>
|
||||
|
||||
<h3>Players Losing Coins</h3>
|
||||
<ul>
|
||||
<li>Ensure banking is enabled in mission config</li>
|
||||
<li>Check character_data table for coin field corruption</li>
|
||||
<li>Verify HiveExt is saving character data correctly</li>
|
||||
<li>Check for database rollbacks (restore from backup)</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>Database Maintenance:</strong> Run cleanup scripts weekly - Epoch databases grow rapidly</li>
|
||||
<li><strong>Plot Protection:</strong> Educate players about 30m range and maintenance requirements</li>
|
||||
<li><strong>Trader Balance:</strong> Adjust prices to prevent economy inflation</li>
|
||||
<li><strong>Vehicle Spawns:</strong> Lower spawn chances for rare vehicles (helicopters, armored)</li>
|
||||
<li><strong>Restart Schedule:</strong> Daily 4am restarts with 30-minute warnings</li>
|
||||
<li><strong>Backup Everything:</strong> Automated database backups before every restart</li>
|
||||
<li><strong>Community Resources:</strong> Epoch forums have extensive guides and custom scripts</li>
|
||||
<li><strong>Performance:</strong> Limit max objects per player to prevent lag</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<h2 id="resources">Resources</h2>
|
||||
<ul>
|
||||
<li><a href="https://github.com/EpochModTeam/DayZ-Epoch" target="_blank">Official Epoch GitHub</a></li>
|
||||
<li><a href="http://epochmod.com/" target="_blank">EpochMod.com - Official Site</a></li>
|
||||
<li><a href="https://github.com/EpochModTeam/DayZ-Epoch/wiki" target="_blank">Epoch Wiki</a></li>
|
||||
<li><a href="https://forums.dayz.com/forum/135-epoch-mod/" target="_blank">Epoch Mod Forums</a></li>
|
||||
<li><a href="../dayzmod/">DayZ Mod Documentation</a> - Base mod setup</li>
|
||||
<li><a href="../arma2oa/">ARMA 2 OA Server Documentation</a></li>
|
||||
</ul>
|
||||
</ol>
|
||||
|
||||
<h2>Server Configuration</h2>
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"name": "DayZ Epoch Mod",
|
||||
"description": "Setup and configuration guide for DayZ Epoch Mod game servers",
|
||||
"category": "game",
|
||||
"order": 61,
|
||||
"complete": false
|
||||
"name": "DayZ Epoch Mod",
|
||||
"description": "Comprehensive guide for DayZ Epoch servers with base building (plot poles), trader NPCs, banking system, vehicle spawns, dynamic economy, and database maintenance",
|
||||
"category": "mods",
|
||||
"order": 61,
|
||||
"complete": true
|
||||
}
|
||||
|
|
|
|||
|
|
@ -502,6 +502,12 @@ z_tank_max_players 3000 // Distance before Tank spawns
|
|||
</ul>
|
||||
</div>
|
||||
|
||||
<h2 id="related-mods">🔌 Related Mods & Plugins</h2>
|
||||
<p>Popular server modifications compatible with Left 4 Dead:</p>
|
||||
<ul>
|
||||
<li><a href="../metamodsource/">Metamod:Source</a> - Foundation plugin loader required for SourceMod and other Source engine plugins</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="resources">Resources</h2>
|
||||
<ul>
|
||||
<li><a href="https://developer.valvesoftware.com/wiki/Left_4_Dead_Dedicated_Server" target="_blank">Valve Developer Wiki - L4D Dedicated Server</a></li>
|
||||
|
|
|
|||
|
|
@ -414,6 +414,12 @@ left4dead2/addons/sourcemod/logs/
|
|||
</ul>
|
||||
</div>
|
||||
|
||||
<h2 id="related-mods">🔌 Related Mods & Plugins</h2>
|
||||
<p>Popular server modifications compatible with Left 4 Dead 2:</p>
|
||||
<ul>
|
||||
<li><a href="../metamodsource/">Metamod:Source</a> - Foundation plugin loader required for SourceMod and other Source engine plugins</li>
|
||||
</ul>
|
||||
|
||||
<h2>Resources</h2>
|
||||
<ul>
|
||||
<li><a href="https://developer.valvesoftware.com/wiki/Left_4_Dead_2" target="_blank">Valve Developer Wiki - L4D2</a></li>
|
||||
|
|
|
|||
485
modules/billing/docs/metamodsource/index.php
Normal file
485
modules/billing/docs/metamodsource/index.php
Normal file
|
|
@ -0,0 +1,485 @@
|
|||
<?php
|
||||
/**
|
||||
* Metamod:Source Documentation
|
||||
*/
|
||||
?>
|
||||
<h1>📚 Metamod:Source Guide</h1>
|
||||
<p style="font-size: 1.1em; color: rgba(255,255,255,0.8);">Plugin loader foundation for Source engine servers</p>
|
||||
|
||||
<div style="background: #1e3a5f; padding: 20px; border-left: 4px solid #3b82f6; margin: 20px 0; border-radius: 4px;">
|
||||
<h3 style="color: #ffffff; margin-top: 0;">Quick Info</h3>
|
||||
<table style="width: 100%; color: #e5e7eb;">
|
||||
<tr><td><strong style="color: #ffffff;">Supported Games:</strong></td><td>All Source engine games (CS:S, TF2, L4D, L4D2, CS:GO, DoD:S)</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Purpose:</strong></td><td>Plugin loader layer between game and plugins like SourceMod</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Config Format:</strong></td><td>VDF (Valve Data Format) files</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Latest Version:</strong></td><td>1.11+ (actively maintained)</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Website:</strong></td><td>sourcemm.net</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Install Order:</strong></td><td>Metamod:Source first, then SourceMod</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Not Compatible:</strong></td><td>Half-Life 1 engine (use original MetaMod)</td></tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<h2>Navigation</h2>
|
||||
<ul style="list-style: none; padding: 0;">
|
||||
<li>📚 <a href="#overview">Overview</a></li>
|
||||
<li>📥 <a href="#installation">Installation</a></li>
|
||||
<li>⚙️ <a href="#configuration">Configuration</a></li>
|
||||
<li>🔌 <a href="#sourcemod">SourceMod Integration</a></li>
|
||||
<li>🎮 <a href="#gamespecific">Game-Specific Paths</a></li>
|
||||
<li>🛠️ <a href="#plugins">Plugin Management</a></li>
|
||||
<li>🔧 <a href="#troubleshooting">Troubleshooting</a></li>
|
||||
<li>📖 <a href="#resources">Resources</a></li>
|
||||
</ul>
|
||||
|
||||
<h2 id="overview">Overview</h2>
|
||||
<p>Metamod:Source is a plugin loader and abstraction layer for Source engine dedicated servers. It sits between the game server and server plugins (like SourceMod), allowing multiple plugins to hook into game events and functions without conflicting.</p>
|
||||
|
||||
<h3>Key Concepts</h3>
|
||||
<ul>
|
||||
<li><strong>Plugin Loader:</strong> Loads and manages server-side plugins</li>
|
||||
<li><strong>Abstraction Layer:</strong> Provides unified API across different Source games</li>
|
||||
<li><strong>Foundation for SourceMod:</strong> SourceMod requires Metamod:Source to function</li>
|
||||
<li><strong>VServerPlugin Interface:</strong> Hooks into Source engine's plugin system</li>
|
||||
<li><strong>Hot-Loading:</strong> Plugins can be loaded/unloaded without server restart</li>
|
||||
</ul>
|
||||
|
||||
<h3>Metamod:Source vs. Original MetaMod</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;">Feature</th>
|
||||
<th style="padding: 12px; text-align: left; color: #ffffff;">Metamod:Source</th>
|
||||
<th style="padding: 12px; text-align: left; color: #ffffff;">Original MetaMod</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody style="color: #e5e7eb;">
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;">Engine</td>
|
||||
<td style="padding: 12px;">Source (CS:S, TF2, L4D, etc.)</td>
|
||||
<td style="padding: 12px;">GoldSrc (CS 1.6, DoD 1.3, etc.)</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;">Config Format</td>
|
||||
<td style="padding: 12px;">VDF (.vdf files)</td>
|
||||
<td style="padding: 12px;">INI-style (.ini files)</td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;">Plugin System</td>
|
||||
<td style="padding: 12px;">VServerPlugin interface</td>
|
||||
<td style="padding: 12px;">DLL/SO hooking</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;">Common Plugins</td>
|
||||
<td style="padding: 12px;">SourceMod</td>
|
||||
<td style="padding: 12px;">AMX Mod X</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h3>Supported Games</h3>
|
||||
<ul>
|
||||
<li><strong>Counter-Strike: Source</strong></li>
|
||||
<li><strong>Counter-Strike: Global Offensive</strong></li>
|
||||
<li><strong>Team Fortress 2</strong></li>
|
||||
<li><strong>Left 4 Dead</strong></li>
|
||||
<li><strong>Left 4 Dead 2</strong></li>
|
||||
<li><strong>Day of Defeat: Source</strong></li>
|
||||
<li><strong>Half-Life 2: Deathmatch</strong></li>
|
||||
<li><strong>Garry's Mod</strong></li>
|
||||
<li><strong>Insurgency</strong></li>
|
||||
<li><strong>Killing Floor</strong> (Source version)</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="installation">📥 Installation</h2>
|
||||
|
||||
<h3>Prerequisites</h3>
|
||||
<ul>
|
||||
<li>Source engine dedicated server installed</li>
|
||||
<li>Admin access to server files</li>
|
||||
<li>Know your game's folder structure</li>
|
||||
</ul>
|
||||
|
||||
<h3>Linux Installation</h3>
|
||||
|
||||
<h4>CS:Source / TF2 / L4D Example</h4>
|
||||
<pre><code># Download latest Metamod:Source for Linux
|
||||
cd /tmp
|
||||
wget https://mms.alliedmods.net/mmsdrop/1.11/mmsource-1.11.0-git1148-linux.tar.gz
|
||||
|
||||
# Extract to server folder
|
||||
# For CS:S:
|
||||
cd /path/to/cstrike
|
||||
tar -xzf /tmp/mmsource-1.11.0-git1148-linux.tar.gz
|
||||
|
||||
# For TF2:
|
||||
cd /path/to/tf
|
||||
tar -xzf /tmp/mmsource-1.11.0-git1148-linux.tar.gz
|
||||
|
||||
# For L4D2:
|
||||
cd /path/to/left4dead2
|
||||
tar -xzf /tmp/mmsource-1.11.0-git1148-linux.tar.gz
|
||||
|
||||
# Folder structure created:
|
||||
# addons/
|
||||
# metamod/
|
||||
# bin/
|
||||
# server.so (Linux)
|
||||
</code></pre>
|
||||
|
||||
<h4>CS:GO Specific</h4>
|
||||
<pre><code># CS:GO requires slightly different structure
|
||||
cd /path/to/csgo
|
||||
tar -xzf /tmp/mmsource-1.11.0-git1148-linux.tar.gz
|
||||
|
||||
# Verify structure:
|
||||
# csgo/addons/metamod/bin/server.so
|
||||
</code></pre>
|
||||
|
||||
<h3>Windows Installation</h3>
|
||||
<pre><code># Download Windows version:
|
||||
# mmsource-1.11.0-git1148-windows.zip
|
||||
|
||||
# Extract to game folder (CS:S example):
|
||||
# Extract to: C:\srcds\cstrike\
|
||||
|
||||
# Folder structure:
|
||||
# cstrike\
|
||||
# addons\
|
||||
# metamod\
|
||||
# bin\
|
||||
# server.dll (Windows)
|
||||
</code></pre>
|
||||
|
||||
<h3>Creating metamod.vdf</h3>
|
||||
<p>Create <code>addons/metamod.vdf</code> in the game folder:</p>
|
||||
|
||||
<h4>CS:Source</h4>
|
||||
<pre><code>"Plugin"
|
||||
{
|
||||
"file" "../cstrike/addons/metamod/bin/server"
|
||||
}
|
||||
</code></pre>
|
||||
|
||||
<h4>Team Fortress 2</h4>
|
||||
<pre><code>"Plugin"
|
||||
{
|
||||
"file" "../tf/addons/metamod/bin/server"
|
||||
}
|
||||
</code></pre>
|
||||
|
||||
<h4>Left 4 Dead 2</h4>
|
||||
<pre><code>"Plugin"
|
||||
{
|
||||
"file" "../left4dead2/addons/metamod/bin/server"
|
||||
}
|
||||
</code></pre>
|
||||
|
||||
<h4>CS:GO</h4>
|
||||
<pre><code>"Plugin"
|
||||
{
|
||||
"file" "addons/metamod/bin/server"
|
||||
}
|
||||
</code></pre>
|
||||
|
||||
<h3>Verify Installation</h3>
|
||||
<pre><code># Start server and type in console:
|
||||
meta version
|
||||
|
||||
# Expected output:
|
||||
# Metamod:Source version 1.11.0-dev+1148
|
||||
# Built from: https://github.com/alliedmodders/metamod-source
|
||||
# Loaded As: VServerPlugin (gameinfo.txt)
|
||||
</code></pre>
|
||||
|
||||
<h2 id="configuration">⚙️ Configuration</h2>
|
||||
|
||||
<h3>gameinfo.txt Modification</h3>
|
||||
<p>Metamod:Source can load via VDF or gameinfo.txt. VDF method is preferred.</p>
|
||||
|
||||
<h4>Manual gameinfo.txt Entry (Alternative Method)</h4>
|
||||
<pre><code>// Edit gameinfo.txt in game folder
|
||||
// Add under "SearchPaths":
|
||||
|
||||
GameBin |gameinfo_path|addons/metamod/bin
|
||||
|
||||
// Example for CS:S (cstrike/gameinfo.txt):
|
||||
"FileSystem"
|
||||
{
|
||||
"SteamAppId" "240"
|
||||
"SearchPaths"
|
||||
{
|
||||
GameBin |gameinfo_path|addons/metamod/bin
|
||||
Game |gameinfo_path|.
|
||||
Game cstrike
|
||||
Game hl2
|
||||
}
|
||||
}
|
||||
</code></pre>
|
||||
|
||||
<h3>Plugin Configuration</h3>
|
||||
<p>Plugins load from <code>addons/metamod/metaplugins.ini</code>:</p>
|
||||
<pre><code>; Metamod:Source Plugins File
|
||||
; Each plugin is on its own line
|
||||
; Format: alias:file
|
||||
|
||||
; Example SourceMod entry:
|
||||
sourcemod:addons/sourcemod/bin/sourcemod_mm
|
||||
</code></pre>
|
||||
|
||||
<h3>Console Commands</h3>
|
||||
<pre><code># List loaded plugins
|
||||
meta list
|
||||
|
||||
# Load plugin
|
||||
meta load path/to/plugin
|
||||
|
||||
# Unload plugin
|
||||
meta unload <plugin_id>
|
||||
|
||||
# Refresh plugin list
|
||||
meta refresh
|
||||
|
||||
# Version info
|
||||
meta version
|
||||
|
||||
# Plugin info
|
||||
meta info <plugin_id>
|
||||
</code></pre>
|
||||
|
||||
<h2 id="sourcemod">🔌 SourceMod Integration</h2>
|
||||
|
||||
<h3>Why SourceMod Needs Metamod:Source</h3>
|
||||
<p>SourceMod is built as a Metamod:Source plugin. It cannot run without Metamod:Source as the foundation layer.</p>
|
||||
|
||||
<h3>Installation Order</h3>
|
||||
<ol>
|
||||
<li><strong>Install Metamod:Source first</strong> (as described above)</li>
|
||||
<li><strong>Verify Metamod works</strong> (meta version command)</li>
|
||||
<li><strong>Download SourceMod</strong> from sourcemod.net</li>
|
||||
<li><strong>Extract SourceMod</strong> to game folder</li>
|
||||
<li><strong>SourceMod auto-registers</strong> with Metamod:Source</li>
|
||||
</ol>
|
||||
|
||||
<h3>SourceMod Installation</h3>
|
||||
<pre><code># Download SourceMod (Linux example)
|
||||
wget https://sm.alliedmods.net/smdrop/1.11/sourcemod-1.11.0-git6917-linux.tar.gz
|
||||
|
||||
# Extract to game folder (CS:S example)
|
||||
cd /path/to/cstrike
|
||||
tar -xzf sourcemod-1.11.0-git6917-linux.tar.gz
|
||||
|
||||
# Folder structure:
|
||||
# addons/
|
||||
# metamod/ (already exists)
|
||||
# sourcemod/ (new)
|
||||
# bin/
|
||||
# sourcemod_mm.so (auto-loads via Metamod)
|
||||
# configs/
|
||||
# plugins/
|
||||
# scripting/
|
||||
</code></pre>
|
||||
|
||||
<h3>Verify SourceMod Loaded</h3>
|
||||
<pre><code># In server console:
|
||||
meta list
|
||||
|
||||
# Should show:
|
||||
# [01] SourceMod (1.11.0-dev+6917) by AlliedModders LLC
|
||||
|
||||
# Or use SourceMod command:
|
||||
sm version
|
||||
</code></pre>
|
||||
|
||||
<h2 id="gamespecific">🎮 Game-Specific Paths</h2>
|
||||
|
||||
<h3>Path Reference Table</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;">Game</th>
|
||||
<th style="padding: 12px; text-align: left; color: #ffffff;">Game Folder</th>
|
||||
<th style="padding: 12px; text-align: left; color: #ffffff;">metamod.vdf Path</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody style="color: #e5e7eb;">
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;">CS:Source</td>
|
||||
<td style="padding: 12px;"><code>cstrike/</code></td>
|
||||
<td style="padding: 12px;"><code>../cstrike/addons/metamod/bin/server</code></td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;">CS:GO</td>
|
||||
<td style="padding: 12px;"><code>csgo/</code></td>
|
||||
<td style="padding: 12px;"><code>addons/metamod/bin/server</code></td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;">Team Fortress 2</td>
|
||||
<td style="padding: 12px;"><code>tf/</code></td>
|
||||
<td style="padding: 12px;"><code>../tf/addons/metamod/bin/server</code></td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;">Left 4 Dead</td>
|
||||
<td style="padding: 12px;"><code>left4dead/</code></td>
|
||||
<td style="padding: 12px;"><code>../left4dead/addons/metamod/bin/server</code></td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;">Left 4 Dead 2</td>
|
||||
<td style="padding: 12px;"><code>left4dead2/</code></td>
|
||||
<td style="padding: 12px;"><code>../left4dead2/addons/metamod/bin/server</code></td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;">DoD:Source</td>
|
||||
<td style="padding: 12px;"><code>dod/</code></td>
|
||||
<td style="padding: 12px;"><code>../dod/addons/metamod/bin/server</code></td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;">HL2:DM</td>
|
||||
<td style="padding: 12px;"><code>hl2mp/</code></td>
|
||||
<td style="padding: 12px;"><code>../hl2mp/addons/metamod/bin/server</code></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h3>Multi-Server Setup</h3>
|
||||
<p>For multiple servers sharing files:</p>
|
||||
<pre><code># Install Metamod once in shared location
|
||||
/srcds/shared/addons/metamod/
|
||||
|
||||
# Symlink to each server
|
||||
ln -s /srcds/shared/addons /srcds/server1/cstrike/addons
|
||||
ln -s /srcds/shared/addons /srcds/server2/tf/addons
|
||||
|
||||
# Use appropriate metamod.vdf for each game
|
||||
</code></pre>
|
||||
|
||||
<h2 id="plugins">🛠️ Plugin Management</h2>
|
||||
|
||||
<h3>Loading Plugins Manually</h3>
|
||||
<p>Edit <code>addons/metamod/metaplugins.ini</code>:</p>
|
||||
<pre><code>; SourceMod (loads automatically if installed)
|
||||
sourcemod:addons/sourcemod/bin/sourcemod_mm
|
||||
|
||||
; Custom plugin example
|
||||
customplugin:addons/customplugin/bin/customplugin_mm
|
||||
</code></pre>
|
||||
|
||||
<h3>Plugin Auto-Discovery</h3>
|
||||
<p>Metamod:Source auto-discovers plugins in <code>addons/</code> folder that contain:</p>
|
||||
<ul>
|
||||
<li>A valid plugin binary (server.so / server.dll)</li>
|
||||
<li>Proper VServerPlugin interface implementation</li>
|
||||
</ul>
|
||||
|
||||
<h3>Common Plugins</h3>
|
||||
<ul>
|
||||
<li><strong>SourceMod:</strong> Admin/plugin framework (most popular)</li>
|
||||
<li><strong>SourceBans:</strong> Centralized ban management</li>
|
||||
<li><strong>EventScripts:</strong> Python-based scripting (older)</li>
|
||||
<li><strong>Custom Plugins:</strong> Game-specific modifications</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="troubleshooting">🔧 Troubleshooting</h2>
|
||||
|
||||
<h3>Metamod Not Loading</h3>
|
||||
<pre><code># Check if metamod.vdf exists
|
||||
ls -la addons/metamod.vdf
|
||||
|
||||
# Verify VDF syntax (no syntax errors)
|
||||
cat addons/metamod.vdf
|
||||
|
||||
# Check file permissions (Linux)
|
||||
chmod 644 addons/metamod.vdf
|
||||
chmod -R 755 addons/metamod/
|
||||
|
||||
# Verify correct path in VDF for your game
|
||||
# CS:GO uses "addons/metamod/bin/server"
|
||||
# Others use "../gamefolder/addons/metamod/bin/server"
|
||||
</code></pre>
|
||||
|
||||
<h3>"meta" Command Not Found</h3>
|
||||
<ul>
|
||||
<li>Metamod:Source not loaded - check console on startup for errors</li>
|
||||
<li>Verify metamod.vdf exists in correct location</li>
|
||||
<li>Check server console for "Metamod:Source" loaded message</li>
|
||||
<li>Try manual gameinfo.txt method as alternative</li>
|
||||
</ul>
|
||||
|
||||
<h3>SourceMod Not Loading</h3>
|
||||
<pre><code># Verify Metamod loaded first
|
||||
meta version
|
||||
|
||||
# Check if SourceMod plugin is visible
|
||||
meta list
|
||||
|
||||
# If not listed, verify SourceMod installation:
|
||||
ls -la addons/sourcemod/bin/
|
||||
|
||||
# Check for sourcemod_mm.so (Linux) or sourcemod_mm.dll (Windows)
|
||||
|
||||
# Manual load:
|
||||
meta load addons/sourcemod/bin/sourcemod_mm
|
||||
</code></pre>
|
||||
|
||||
<h3>Plugin Conflicts</h3>
|
||||
<pre><code># List all loaded plugins
|
||||
meta list
|
||||
|
||||
# Unload problematic plugin
|
||||
meta unload <plugin_number>
|
||||
|
||||
# Check server console for error messages
|
||||
|
||||
# Common conflicts:
|
||||
# - Multiple admin systems (AMX Mod X + SourceMod)
|
||||
# - Outdated plugin versions
|
||||
# - Incompatible game version
|
||||
</code></pre>
|
||||
|
||||
<h3>CS:GO Specific Issues</h3>
|
||||
<ul>
|
||||
<li><strong>CS:GO uses different VDF path:</strong> <code>addons/metamod/bin/server</code> (no ../ prefix)</li>
|
||||
<li><strong>Frequent updates:</strong> Valve updates may break plugins - wait for Metamod update</li>
|
||||
<li><strong>Insecure mode:</strong> Some plugins require <code>-insecure</code> launch parameter</li>
|
||||
</ul>
|
||||
|
||||
<h3>Server Crash After Installation</h3>
|
||||
<pre><code># Check server logs for error messages
|
||||
tail -f logs/L*.log
|
||||
|
||||
# Common causes:
|
||||
# 1. Wrong architecture (32-bit vs 64-bit)
|
||||
# 2. Corrupted plugin binary
|
||||
# 3. Incompatible Metamod version for game
|
||||
|
||||
# Test with clean Metamod installation (no plugins)
|
||||
# Remove addons/sourcemod temporarily
|
||||
# If server starts, issue is with SourceMod or its plugins
|
||||
</code></pre>
|
||||
|
||||
<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>VDF Method Preferred:</strong> Use metamod.vdf instead of gameinfo.txt when possible</li>
|
||||
<li><strong>Version Compatibility:</strong> Match Metamod:Source version to Source engine version</li>
|
||||
<li><strong>CS:GO Path Different:</strong> CS:GO doesn't use "../csgo/" prefix in VDF</li>
|
||||
<li><strong>Test After Updates:</strong> Valve updates can break Metamod - test before production</li>
|
||||
<li><strong>Backup Configs:</strong> Keep backups of metamod.vdf and metaplugins.ini</li>
|
||||
<li><strong>Development Builds:</strong> Use stable releases for production servers</li>
|
||||
<li><strong>Plugin Order:</strong> Load order matters - SourceMod should load first</li>
|
||||
<li><strong>Console Monitoring:</strong> Watch server console during startup for errors</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<h2 id="resources">Resources</h2>
|
||||
<ul>
|
||||
<li><a href="https://www.sourcemm.net/" target="_blank">Official Metamod:Source Website</a></li>
|
||||
<li><a href="https://wiki.alliedmods.net/Metamod:Source" target="_blank">Metamod:Source Wiki</a></li>
|
||||
<li><a href="https://github.com/alliedmodders/metamod-source" target="_blank">Metamod:Source GitHub</a></li>
|
||||
<li><a href="https://www.sourcemod.net/" target="_blank">SourceMod Official Site</a></li>
|
||||
<li><a href="https://forums.alliedmods.net/" target="_blank">Allied Modders Forums</a></li>
|
||||
<li><a href="../css/">CS:Source Server Documentation</a></li>
|
||||
<li><a href="../csgo/">CS:GO Server Documentation</a></li>
|
||||
<li><a href="../tf2/">Team Fortress 2 Server Documentation</a></li>
|
||||
<li><a href="../left4dead/">Left 4 Dead Server Documentation</a></li>
|
||||
<li><a href="../left4dead2/">Left 4 Dead 2 Server Documentation</a></li>
|
||||
</ul>
|
||||
7
modules/billing/docs/metamodsource/metadata.json
Normal file
7
modules/billing/docs/metamodsource/metadata.json
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
{
|
||||
"name": "Metamod:Source",
|
||||
"description": "Comprehensive guide for Metamod:Source (Source engine plugin loader) with VDF configuration, SourceMod integration, game-specific paths, and troubleshooting",
|
||||
"category": "mods",
|
||||
"order": 63,
|
||||
"complete": true
|
||||
}
|
||||
484
modules/billing/docs/oxide/index.php
Normal file
484
modules/billing/docs/oxide/index.php
Normal file
|
|
@ -0,0 +1,484 @@
|
|||
<?php
|
||||
/**
|
||||
* Oxide / uMod Documentation
|
||||
*/
|
||||
?>
|
||||
<h1>📚 Oxide / uMod Guide</h1>
|
||||
<p style="font-size: 1.1em; color: rgba(255,255,255,0.8);">Universal modding framework for Rust, 7 Days to Die, and more</p>
|
||||
|
||||
<div style="background: #1e3a5f; padding: 20px; border-left: 4px solid #3b82f6; margin: 20px 0; border-radius: 4px;">
|
||||
<h3 style="color: #ffffff; margin-top: 0;">Quick Info</h3>
|
||||
<table style="width: 100%; color: #e5e7eb;">
|
||||
<tr><td><strong style="color: #ffffff;">Supported Games:</strong></td><td>Rust, 7 Days to Die, Hurtworld, Reign of Kings, The Forest</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Languages:</strong></td><td>C# (primary), Lua (limited support)</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Plugin Repository:</strong></td><td>umod.org (formerly oxidemod.org)</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Current Version:</strong></td><td>uMod 2.x (successor to Oxide 2.0)</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Permissions System:</strong></td><td>Built-in group and user permissions</td></tr>
|
||||
<tr><td><strong style="color: #ffffff;">Website:</strong></td><td>umod.org</td></tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<h2>Navigation</h2>
|
||||
<ul style="list-style: none; padding: 0;">
|
||||
<li>📚 <a href="#overview">Overview</a></li>
|
||||
<li>📥 <a href="#installation">Installation</a></li>
|
||||
<li>🔌 <a href="#plugins">Plugin System</a></li>
|
||||
<li>👤 <a href="#permissions">Permissions & Groups</a></li>
|
||||
<li>💻 <a href="#development">Plugin Development</a></li>
|
||||
<li>🎮 <a href="#gamespecific">Game-Specific Setup</a></li>
|
||||
<li>🔧 <a href="#troubleshooting">Troubleshooting</a></li>
|
||||
<li>📖 <a href="#resources">Resources</a></li>
|
||||
</ul>
|
||||
|
||||
<h2 id="overview">Overview</h2>
|
||||
<p>Oxide (now uMod) is a modding framework that provides a universal API for creating plugins across multiple games. It allows server owners to add custom functionality without modifying game files.</p>
|
||||
|
||||
<h3>Key Features</h3>
|
||||
<ul>
|
||||
<li><strong>Cross-Game Support:</strong> Same framework works across multiple games</li>
|
||||
<li><strong>C# Plugins:</strong> Write plugins in C# with hot-reloading</li>
|
||||
<li><strong>Hook System:</strong> Intercept game events (player join, death, chat, etc.)</li>
|
||||
<li><strong>Permissions:</strong> Built-in user/group permission system</li>
|
||||
<li><strong>Data Storage:</strong> Built-in JSON/SQLite data storage</li>
|
||||
<li><strong>Plugin Repository:</strong> Thousands of free plugins at umod.org</li>
|
||||
<li><strong>Hot-Reload:</strong> Update plugins without server restart</li>
|
||||
<li><strong>Console Commands:</strong> Add custom admin and player commands</li>
|
||||
</ul>
|
||||
|
||||
<h3>Supported Games</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;">Game</th>
|
||||
<th style="padding: 12px; text-align: left; color: #ffffff;">Support Level</th>
|
||||
<th style="padding: 12px; text-align: left; color: #ffffff;">Popular Plugins</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody style="color: #e5e7eb;">
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;">Rust</td>
|
||||
<td style="padding: 12px;"><span style="color: #10b981;">★★★★★ Full</span></td>
|
||||
<td style="padding: 12px;">Kits, Economics, Clans, TP, Vote</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;">7 Days to Die</td>
|
||||
<td style="padding: 12px;"><span style="color: #10b981;">★★★★★ Full</span></td>
|
||||
<td style="padding: 12px;">Admin Tools, Teleport, Bloodmoon</td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;">Hurtworld</td>
|
||||
<td style="padding: 12px;"><span style="color: #fbbf24;">★★★★☆ Good</span></td>
|
||||
<td style="padding: 12px;">Admin Tools, Kits, Economy</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;">Reign of Kings</td>
|
||||
<td style="padding: 12px;"><span style="color: #fbbf24;">★★★☆☆ Fair</span></td>
|
||||
<td style="padding: 12px;">Admin Tools, Custom Commands</td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;">The Forest</td>
|
||||
<td style="padding: 12px;"><span style="color: #fbbf24;">★★★☆☆ Fair</span></td>
|
||||
<td style="padding: 12px;">Limited plugin support</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h2 id="installation">📥 Installation</h2>
|
||||
|
||||
<h3>Rust Installation</h3>
|
||||
|
||||
<h4>Windows</h4>
|
||||
<pre><code># Stop your Rust server first
|
||||
|
||||
# Download uMod for Rust from umod.org
|
||||
# Extract Oxide.Rust.zip to your server directory
|
||||
# Files extract to: RustDedicated_Data/Managed/
|
||||
|
||||
# Start server - Oxide will create directories:
|
||||
# oxide/plugins/ (place plugins here)
|
||||
# oxide/config/ (plugin configs)
|
||||
# oxide/data/ (plugin data)
|
||||
# oxide/logs/ (Oxide logs)
|
||||
</code></pre>
|
||||
|
||||
<h4>Linux</h4>
|
||||
<pre><code># Stop Rust server
|
||||
cd /home/rustserver
|
||||
|
||||
# Download and extract Oxide
|
||||
wget https://umod.org/games/rust/download
|
||||
unzip -o Oxide.Rust.zip
|
||||
|
||||
# Set permissions
|
||||
chmod +x RustDedicated
|
||||
|
||||
# Start server
|
||||
./RustDedicated -batchmode +server.port 28015 +server.level "Procedural Map" +server.seed 12345 +server.worldsize 4000 +server.maxplayers 100 +server.hostname "My Rust Server" +server.description "Powered by Oxide" +server.identity "server1"
|
||||
</code></pre>
|
||||
|
||||
<h3>7 Days to Die Installation</h3>
|
||||
|
||||
<h4>Windows</h4>
|
||||
<pre><code># Stop 7 Days to Die server
|
||||
|
||||
# Download uMod for 7 Days to Die from umod.org
|
||||
# Extract to 7DaysToDieServer directory
|
||||
# Files go to: 7DaysToDieServer_Data/Managed/
|
||||
|
||||
# Start server - Oxide directories created in:
|
||||
# 7DaysToDieServer_Data/oxide/
|
||||
</code></pre>
|
||||
|
||||
<h4>Linux</h4>
|
||||
<pre><code># Stop server
|
||||
cd /home/7daysserver
|
||||
|
||||
# Download and extract
|
||||
wget https://umod.org/games/7-days-to-die/download
|
||||
unzip -o Oxide.7DaysToDie.zip
|
||||
|
||||
# Start server
|
||||
./7DaysToDieServer.sh
|
||||
</code></pre>
|
||||
|
||||
<h2 id="plugins">🔌 Plugin System</h2>
|
||||
|
||||
<h3>Installing Plugins</h3>
|
||||
|
||||
<h4>Method 1: Manual Installation</h4>
|
||||
<pre><code># Download plugin .cs file from umod.org
|
||||
# Example: AdminPanel.cs
|
||||
|
||||
# Place in oxide/plugins/ directory
|
||||
oxide/
|
||||
└── plugins/
|
||||
└── AdminPanel.cs
|
||||
|
||||
# Oxide automatically compiles and loads the plugin
|
||||
# Check oxide/logs/oxide.log for any errors
|
||||
</code></pre>
|
||||
|
||||
<h4>Method 2: In-Game Commands (if supported)</h4>
|
||||
<pre><code># Some admin tools allow downloading plugins in-game
|
||||
oxide.load PluginName
|
||||
oxide.reload PluginName
|
||||
oxide.unload PluginName
|
||||
</code></pre>
|
||||
|
||||
<h3>Popular Rust Plugins</h3>
|
||||
|
||||
<h4>Essential Administration Plugins</h4>
|
||||
<ul>
|
||||
<li><strong>Admin Radar:</strong> ESP-style admin tool showing players/entities</li>
|
||||
<li><strong>Vanish:</strong> Make admins invisible to players</li>
|
||||
<li><strong>Admin Panel:</strong> GUI admin menu</li>
|
||||
<li><strong>Better Chat:</strong> Enhanced chat with colors, titles, groups</li>
|
||||
<li><strong>Anti Cheat:</strong> Detect and ban cheaters</li>
|
||||
</ul>
|
||||
|
||||
<h4>Player Features</h4>
|
||||
<ul>
|
||||
<li><strong>Kits:</strong> Starter kits and VIP kits for players</li>
|
||||
<li><strong>TP (Teleport):</strong> /home, /tpr (teleport request), /town commands</li>
|
||||
<li><strong>Economics:</strong> Virtual currency system</li>
|
||||
<li><strong>Clans:</strong> Team/clan system with shared bases</li>
|
||||
<li><strong>Vote:</strong> Reward players for voting on server lists</li>
|
||||
</ul>
|
||||
|
||||
<h4>Server Enhancement</h4>
|
||||
<ul>
|
||||
<li><strong>Auto Purge:</strong> Remove old/inactive bases</li>
|
||||
<li><strong>Stack Size Controller:</strong> Modify stack sizes</li>
|
||||
<li><strong>Loot Multiplier:</strong> Increase/decrease loot spawns</li>
|
||||
<li><strong>Gather Manager:</strong> Modify resource gathering rates</li>
|
||||
<li><strong>Skip Night:</strong> Vote to skip night time</li>
|
||||
</ul>
|
||||
|
||||
<h3>Plugin Configuration</h3>
|
||||
<p>After first load, plugins create config files in <code>oxide/config/</code>:</p>
|
||||
<pre><code># Example: oxide/config/Kits.json
|
||||
{
|
||||
"Kits": {
|
||||
"starter": {
|
||||
"items": [
|
||||
{"shortname": "stones", "amount": 3000},
|
||||
{"shortname": "wood", "amount": 5000},
|
||||
{"shortname": "bandage", "amount": 5}
|
||||
],
|
||||
"cooldown": 3600
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# Edit configs and use: oxide.reload Kits
|
||||
</code></pre>
|
||||
|
||||
<h2 id="permissions">👤 Permissions & Groups</h2>
|
||||
|
||||
<h3>Permission System Overview</h3>
|
||||
<p>Oxide uses a hierarchical permission system with groups and individual user permissions.</p>
|
||||
|
||||
<h3>Basic Permission Commands</h3>
|
||||
<pre><code># Grant permission to user (use Steam64 ID)
|
||||
oxide.grant user 76561198012345678 pluginname.permission
|
||||
|
||||
# Grant permission to group
|
||||
oxide.grant group admin adminradar.allowed
|
||||
|
||||
# Revoke permission
|
||||
oxide.revoke user 76561198012345678 pluginname.permission
|
||||
|
||||
# Show user permissions
|
||||
oxide.show user 76561198012345678
|
||||
|
||||
# Show group permissions
|
||||
oxide.show group admin
|
||||
</code></pre>
|
||||
|
||||
<h3>Group Management</h3>
|
||||
<pre><code># Create group
|
||||
oxide.group add vip "VIP Members" 1
|
||||
|
||||
# Add user to group
|
||||
oxide.usergroup add 76561198012345678 vip
|
||||
|
||||
# Remove user from group
|
||||
oxide.usergroup remove 76561198012345678 vip
|
||||
|
||||
# List all groups
|
||||
oxide.show groups
|
||||
|
||||
# Set parent group (inheritance)
|
||||
oxide.group parent vip default
|
||||
</code></pre>
|
||||
|
||||
<h3>Default Groups</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;">Group</th>
|
||||
<th style="padding: 12px; text-align: left; color: #ffffff;">Rank</th>
|
||||
<th style="padding: 12px; text-align: left; color: #ffffff;">Purpose</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody style="color: #e5e7eb;">
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;">admin</td>
|
||||
<td style="padding: 12px;">0 (highest)</td>
|
||||
<td style="padding: 12px;">Full permissions</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;">moderator</td>
|
||||
<td style="padding: 12px;">1</td>
|
||||
<td style="padding: 12px;">Moderate permissions</td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;">vip</td>
|
||||
<td style="padding: 12px;">2</td>
|
||||
<td style="padding: 12px;">VIP player perks</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;">default</td>
|
||||
<td style="padding: 12px;">3 (lowest)</td>
|
||||
<td style="padding: 12px;">Regular players</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h3>Finding Steam64 ID</h3>
|
||||
<ul>
|
||||
<li><strong>In-Game (Rust):</strong> F1 console, type <code>players</code> - shows online players with Steam IDs</li>
|
||||
<li><strong>Website:</strong> steamid.io - convert Steam profile URL to Steam64 ID</li>
|
||||
<li><strong>Server Logs:</strong> Check oxide/logs/ for player connections</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="development">💻 Plugin Development</h2>
|
||||
|
||||
<h3>Basic Plugin Structure</h3>
|
||||
<pre><code>using Oxide.Core;
|
||||
using Oxide.Core.Libraries.Covalence;
|
||||
|
||||
namespace Oxide.Plugins
|
||||
{
|
||||
[Info("HelloWorld", "YourName", "1.0.0")]
|
||||
[Description("Simple hello world plugin")]
|
||||
class HelloWorld : RustPlugin
|
||||
{
|
||||
// Called when plugin is loaded
|
||||
void Init()
|
||||
{
|
||||
Puts("HelloWorld plugin loaded!");
|
||||
}
|
||||
|
||||
// Chat command: /hello
|
||||
[Command("hello")]
|
||||
void HelloCommand(IPlayer player, string command, string[] args)
|
||||
{
|
||||
player.Reply("Hello, " + player.Name + "!");
|
||||
}
|
||||
|
||||
// Hook: Called when player connects
|
||||
void OnPlayerConnected(BasePlayer player)
|
||||
{
|
||||
PrintToChat($"{player.displayName} has joined the server!");
|
||||
}
|
||||
}
|
||||
}
|
||||
</code></pre>
|
||||
|
||||
<h3>Common Hooks (Rust)</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;">Hook</th>
|
||||
<th style="padding: 12px; text-align: left; color: #ffffff;">Purpose</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody style="color: #e5e7eb;">
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;"><code>Init()</code></td>
|
||||
<td style="padding: 12px;">Plugin initialization</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;"><code>OnServerInitialized()</code></td>
|
||||
<td style="padding: 12px;">Server fully loaded</td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;"><code>OnPlayerConnected(BasePlayer)</code></td>
|
||||
<td style="padding: 12px;">Player joins server</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;"><code>OnPlayerDisconnected(BasePlayer)</code></td>
|
||||
<td style="padding: 12px;">Player leaves server</td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;"><code>OnPlayerChat(BasePlayer, string)</code></td>
|
||||
<td style="padding: 12px;">Player sends chat message</td>
|
||||
</tr>
|
||||
<tr style="background: #152642;">
|
||||
<td style="padding: 12px;"><code>OnEntityDeath(BaseCombatEntity)</code></td>
|
||||
<td style="padding: 12px;">Entity (player/NPC) dies</td>
|
||||
</tr>
|
||||
<tr style="background: #1e3a5f;">
|
||||
<td style="padding: 12px;"><code>OnEntitySpawned(BaseNetworkable)</code></td>
|
||||
<td style="padding: 12px;">Entity spawns</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h3>Data Storage Example</h3>
|
||||
<pre><code>// Store player data in JSON file
|
||||
class PlayerData
|
||||
{
|
||||
public string Name;
|
||||
public int Points;
|
||||
public DateTime LastSeen;
|
||||
}
|
||||
|
||||
class MyPlugin : RustPlugin
|
||||
{
|
||||
Dictionary<ulong, PlayerData> playerData = new Dictionary<ulong, PlayerData>();
|
||||
|
||||
void LoadData()
|
||||
{
|
||||
playerData = Interface.Oxide.DataFileSystem.ReadObject<Dictionary<ulong, PlayerData>>("MyPlugin_Data");
|
||||
}
|
||||
|
||||
void SaveData()
|
||||
{
|
||||
Interface.Oxide.DataFileSystem.WriteObject("MyPlugin_Data", playerData);
|
||||
}
|
||||
}
|
||||
</code></pre>
|
||||
|
||||
<h2 id="gamespecific">🎮 Game-Specific Setup</h2>
|
||||
|
||||
<h3>Rust</h3>
|
||||
<pre><code># Server startup with Oxide
|
||||
./RustDedicated -batchmode \
|
||||
+server.port 28015 \
|
||||
+server.level "Procedural Map" \
|
||||
+server.hostname "My Oxide Server" \
|
||||
+rcon.port 28016 \
|
||||
+rcon.password "your_rcon_password"
|
||||
|
||||
# Essential first plugins:
|
||||
# 1. BetterChat (chat enhancement)
|
||||
# 2. AdminRadar (admin tool)
|
||||
# 3. Vanish (admin invisibility)
|
||||
</code></pre>
|
||||
|
||||
<h3>7 Days to Die</h3>
|
||||
<pre><code># Oxide config location:
|
||||
# 7DaysToDieServer_Data/oxide/config/
|
||||
|
||||
# Essential plugins:
|
||||
# 1. Admin Tools
|
||||
# 2. Teleport System
|
||||
# 3. Player Info
|
||||
|
||||
# Check oxide/logs/ for plugin errors
|
||||
</code></pre>
|
||||
|
||||
<h2 id="troubleshooting">🔧 Troubleshooting</h2>
|
||||
|
||||
<h3>Plugin Not Loading</h3>
|
||||
<pre><code># Check oxide/logs/oxide.log for errors
|
||||
tail -f oxide/logs/oxide.log
|
||||
|
||||
# Common issues:
|
||||
# 1. Syntax errors in plugin code
|
||||
# 2. Missing dependencies
|
||||
# 3. Outdated plugin version
|
||||
# 4. Permission denied (file permissions)
|
||||
|
||||
# Reload plugin manually
|
||||
oxide.reload PluginName
|
||||
</code></pre>
|
||||
|
||||
<h3>Permissions Not Working</h3>
|
||||
<ul>
|
||||
<li>Verify user's Steam64 ID is correct</li>
|
||||
<li>Check group membership: <code>oxide.show user STEAMID</code></li>
|
||||
<li>Ensure permission format matches plugin docs (case-sensitive)</li>
|
||||
<li>Check plugin config for permission names</li>
|
||||
</ul>
|
||||
|
||||
<h3>Plugin Conflicts</h3>
|
||||
<pre><code># Disable plugins one by one to find conflict
|
||||
oxide.unload PluginName
|
||||
|
||||
# Check oxide/logs/ for conflict errors
|
||||
# Some plugins modify same hooks - may conflict
|
||||
</code></pre>
|
||||
|
||||
<h3>High CPU Usage</h3>
|
||||
<ul>
|
||||
<li>Disable resource-intensive plugins (radar, ESP tools)</li>
|
||||
<li>Check for plugin loops in oxide/logs/</li>
|
||||
<li>Update to latest Oxide version</li>
|
||||
<li>Limit entities tracked by admin tools</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>Start Simple:</strong> Install essential plugins first, add more gradually</li>
|
||||
<li><strong>Read Plugin Docs:</strong> Each plugin page on umod.org has detailed config examples</li>
|
||||
<li><strong>Backup Configs:</strong> Backup oxide/config/ before major changes</li>
|
||||
<li><strong>Test Permissions:</strong> Use non-admin account to test player permissions</li>
|
||||
<li><strong>Monitor Logs:</strong> Regularly check oxide/logs/ for errors</li>
|
||||
<li><strong>Update Plugins:</strong> Keep plugins updated for bug fixes and new game versions</li>
|
||||
<li><strong>VIP System:</strong> Use groups for VIP perks (kits, teleports, etc.)</li>
|
||||
<li><strong>Hot-Reload:</strong> Most plugin changes can reload without server restart</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<h2 id="resources">Resources</h2>
|
||||
<ul>
|
||||
<li><a href="https://umod.org/" target="_blank">uMod Official Website</a></li>
|
||||
<li><a href="https://umod.org/plugins" target="_blank">Plugin Repository</a></li>
|
||||
<li><a href="https://umod.org/documentation" target="_blank">Developer Documentation</a></li>
|
||||
<li><a href="https://discord.gg/umod" target="_blank">uMod Discord Community</a></li>
|
||||
<li>Related Game Documentation: <a href="../rust/">Rust</a>, <a href="../7daystodie/">7 Days to Die</a></li>
|
||||
</ul>
|
||||
7
modules/billing/docs/oxide/metadata.json
Normal file
7
modules/billing/docs/oxide/metadata.json
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
{
|
||||
"name": "Oxide / uMod",
|
||||
"description": "Comprehensive guide for Oxide/uMod modding framework with plugin system, permissions, hooks, C# and Lua scripting for Rust, 7 Days to Die, and other games",
|
||||
"category": "mods",
|
||||
"order": 66,
|
||||
"complete": true
|
||||
}
|
||||
|
|
@ -495,6 +495,12 @@ weather.rain 0 # Stop rain
|
|||
airdrop.min_players 0 # Always allow airdrops
|
||||
</code></pre>
|
||||
|
||||
<h2 id="related-mods">🔌 Related Mods & Plugins</h2>
|
||||
<p>Popular server modifications compatible with Rust:</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>Additional Resources</h2>
|
||||
<ul>
|
||||
<li><a href="https://wiki.facepunch.com/rust/" target="_blank">Official Rust Wiki</a></li>
|
||||
|
|
|
|||
|
|
@ -420,6 +420,12 @@ sv_downloadurl "http://yourdomain.com/tf/"
|
|||
</ul>
|
||||
</div>
|
||||
|
||||
<h2 id="related-mods">🔌 Related Mods & Plugins</h2>
|
||||
<p>Popular server modifications compatible with Team Fortress 2:</p>
|
||||
<ul>
|
||||
<li><a href="../metamodsource/">Metamod:Source</a> - Foundation plugin loader required for SourceMod and other Source engine plugins</li>
|
||||
</ul>
|
||||
|
||||
<h2>Resources</h2>
|
||||
<ul>
|
||||
<li><a href="https://wiki.teamfortress.com/wiki/Windows_dedicated_server" target="_blank">Official TF2 Dedicated Server Wiki</a></li>
|
||||
|
|
|
|||
|
|
@ -7,8 +7,8 @@
|
|||
# These settings should match the panel's
|
||||
# database configuration in includes/config.inc.php
|
||||
###############################################
|
||||
$db_host="mysql.iaregamer.com";
|
||||
$db_user="remoteuser";
|
||||
$db_host="localhost";
|
||||
$db_user="localuser";
|
||||
$db_pass="Pkloyn7yvpht!";
|
||||
$db_name="panel";
|
||||
$table_prefix="gsp_";
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue