Enhanced game documentation with comprehensive installation and configuration details
Co-authored-by: iaretechnician <2749183+iaretechnician@users.noreply.github.com>
This commit is contained in:
parent
b72c8ea19d
commit
0216af04ed
299 changed files with 20545 additions and 21001 deletions
|
|
@ -1,478 +1,379 @@
|
|||
<?php
|
||||
/**
|
||||
* BEC (BattlEye Extended Controls) Documentation
|
||||
* BEC (BattlEye Extended Controls) Server Documentation - Comprehensive Guide
|
||||
* General game server hosting information (not platform-specific)
|
||||
*/
|
||||
?>
|
||||
<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;">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>
|
||||
<h3 style="color: #ffffff; margin-top: 0;">📚 Quick Navigation</h3>
|
||||
<div style="display: flex; flex-wrap: wrap; gap: 10px;">
|
||||
<a href="#quick-info" style="background: #0f172a; padding: 8px 16px; border-radius: 4px; color: #a5b4fc; text-decoration: none;">Quick Info</a>
|
||||
<a href="#ports" style="background: #0f172a; padding: 8px 16px; border-radius: 4px; color: #a5b4fc; text-decoration: none;">🔌 Ports</a>
|
||||
<a href="#installation" style="background: #0f172a; padding: 8px 16px; border-radius: 4px; color: #a5b4fc; text-decoration: none;">Installation</a>
|
||||
<a href="#configuration" style="background: #0f172a; padding: 8px 16px; border-radius: 4px; color: #a5b4fc; text-decoration: none;">Configuration</a>
|
||||
<a href="#parameters" style="background: #0f172a; padding: 8px 16px; border-radius: 4px; color: #a5b4fc; text-decoration: none;">⚙️ Startup Parameters</a>
|
||||
<a href="#troubleshooting" style="background: #0f172a; padding: 8px 16px; border-radius: 4px; color: #a5b4fc; text-decoration: none;">🔧 Troubleshooting</a>
|
||||
<a href="#performance" style="background: #0f172a; padding: 8px 16px; border-radius: 4px; color: #a5b4fc; text-decoration: none;">Performance</a>
|
||||
<a href="#security" style="background: #0f172a; padding: 8px 16px; border-radius: 4px; color: #a5b4fc; text-decoration: none;">Security</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<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>
|
||||
<h1>BEC (BattlEye Extended Controls) Server Hosting Guide</h1>
|
||||
|
||||
<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>
|
||||
<h2>Overview</h2>
|
||||
<p>BEC (BattlEye Extended Controls) is a multiplayer game server that can be hosted on a VPS or dedicated server. This comprehensive guide covers everything you need to know about hosting a BEC (BattlEye Extended Controls) server for your community.</p>
|
||||
|
||||
<h3>Key Features</h3>
|
||||
<h2 id="quick-info">Quick Info</h2>
|
||||
<div style="background: #1e3a5f; padding: 20px; border-left: 4px solid #3b82f6; margin: 20px 0; border-radius: 4px;">
|
||||
<ul style="color: #e5e7eb; line-height: 1.8; margin: 0;">
|
||||
<li><strong style="color: #ffffff;">Default Port:</strong> <code style="background: #0f172a; padding: 2px 6px; border-radius: 3px; color: #a5b4fc;">Varies (see configuration)</code></li>
|
||||
<li><strong style="color: #ffffff;">Protocol:</strong> TCP/UDP</li>
|
||||
<li><strong style="color: #ffffff;">Minimum RAM:</strong> 1GB</li>
|
||||
<li><strong style="color: #ffffff;">Engine:</strong> Various</li>
|
||||
<li><strong style="color: #ffffff;">Steam App ID:</strong> <code style="background: #0f172a; padding: 2px 6px; border-radius: 3px; color: #a5b4fc;">N/A</code></li>
|
||||
<li><strong style="color: #ffffff;">Recommended OS:</strong> Linux (Ubuntu/Debian) or Windows Server</li>
|
||||
<li><strong style="color: #ffffff;">Configuration Files:</strong><ul style="margin-top: 8px;">
|
||||
<li><code style="background: #0f172a; padding: 2px 6px; border-radius: 3px; color: #a5b4fc;">bec\config\config.cfg</code> - Config</li>
|
||||
<li><code style="background: #0f172a; padding: 2px 6px; border-radius: 3px; color: #a5b4fc;">bec\config\scheduler.xml</code> - Scheduler</li>
|
||||
<li><code style="background: #0f172a; padding: 2px 6px; border-radius: 3px; color: #a5b4fc;">bec\config\admins.xml</code> - Admins</li>
|
||||
<li><code style="background: #0f172a; padding: 2px 6px; border-radius: 3px; color: #a5b4fc;">bec\config\whitelist.xml</code> - Whitelist</li>
|
||||
<li><code style="background: #0f172a; padding: 2px 6px; border-radius: 3px; color: #a5b4fc;">bec\config\fortune.xml</code> - Fortune</li>
|
||||
</ul></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<h2 id="ports">🔌 Network Ports</h2>
|
||||
<div style="background: #1e3a5f; padding: 20px; border-left: 4px solid #3b82f6; margin: 20px 0; border-radius: 4px;">
|
||||
<h3 style="color: #ffffff; margin-top: 0;">Required Ports</h3>
|
||||
<p style="color: #e5e7eb;">The BEC (BattlEye Extended Controls) server typically uses a configurable port. Check your server configuration files for the specific port settings.</p>
|
||||
|
||||
<h3 style="color: #ffffff; margin-top: 20px;">Firewall Configuration</h3>
|
||||
<p style="color: #e5e7eb;">Allow server ports through your firewall:</p>
|
||||
<pre><code style="color: #a5b4fc;"># UFW (Ubuntu/Debian)
|
||||
sudo ufw allow [PORT]/tcp
|
||||
sudo ufw allow [PORT]/udp
|
||||
sudo ufw reload
|
||||
|
||||
# FirewallD (CentOS/RHEL)
|
||||
sudo firewall-cmd --permanent --add-port=[PORT]/tcp
|
||||
sudo firewall-cmd --permanent --add-port=[PORT]/udp
|
||||
sudo firewall-cmd --reload
|
||||
|
||||
# Windows Firewall
|
||||
netsh advfirewall firewall add rule name="BEC (BattlEye Extended Controls) Server" dir=in action=allow protocol=TCP localport=[PORT]
|
||||
netsh advfirewall firewall add rule name="BEC (BattlEye Extended Controls) Server" dir=in action=allow protocol=UDP localport=[PORT]
|
||||
</code></pre>
|
||||
|
||||
<h3 style="color: #ffffff; margin-top: 20px;">⚠️ Port Security Notes</h3>
|
||||
<ul style="color: #fef3c7; line-height: 1.8;">
|
||||
<li>Only open ports that are necessary for the game server to function</li>
|
||||
<li>Consider using non-standard ports to reduce automated attacks</li>
|
||||
<li>If using cloud hosting, configure security groups properly</li>
|
||||
<li>Monitor connection attempts and unusual traffic patterns</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<h2 id="installation">Installation & Setup</h2>
|
||||
|
||||
<h3>System Requirements</h3>
|
||||
<ul>
|
||||
<li><strong>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>
|
||||
<li><strong>OS:</strong> Linux (Ubuntu 20.04+ or Debian 11+ recommended) or Windows Server 2019+</li>
|
||||
<li><strong>CPU:</strong> 2+ cores recommended (single-threaded performance important for most game servers)</li>
|
||||
<li><strong>RAM:</strong> 1GB minimum (more for larger player counts)</li>
|
||||
<li><strong>Storage:</strong> 5GB+ for server files (SSD recommended for better performance)</li>
|
||||
<li><strong>Network:</strong> Stable internet connection with low latency</li>
|
||||
</ul>
|
||||
|
||||
<h3>Why Use BEC?</h3>
|
||||
<h3>Installation Steps</h3>
|
||||
|
||||
<h4>Linux (Ubuntu/Debian)</h4>
|
||||
<pre><code># Update system packages
|
||||
sudo apt update && sudo apt upgrade -y
|
||||
|
||||
# Create server directory
|
||||
mkdir -p ~/gameserver
|
||||
cd ~/gameserver
|
||||
|
||||
# Download server files (method varies by game)
|
||||
# Check official documentation for download links
|
||||
</code></pre>
|
||||
|
||||
<h4>Windows Server</h4>
|
||||
<p>Download the server files from the official game website or through Steam (if applicable). Extract to a dedicated folder and run the server executable.</p>
|
||||
|
||||
<h3>Manual Installation</h3>
|
||||
<p>This game requires manual download. Check the official game website or Steam store page for dedicated server downloads.</p>
|
||||
|
||||
|
||||
<h2 id="configuration">Server Configuration</h2>
|
||||
|
||||
<p>After installation, you'll need to configure your server. Here's where to find the configuration files and what settings you can change.</p>
|
||||
|
||||
<h3>Essential Settings</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>
|
||||
<li><strong>Server Name:</strong> Set a descriptive name for your server</li>
|
||||
<li><strong>Max Players:</strong> Configure based on your server's resources</li>
|
||||
<li><strong>Password:</strong> Optional password protection for private servers</li>
|
||||
<li><strong>Admin/RCON Password:</strong> Set a strong password for remote administration</li>
|
||||
<li><strong>Game Mode:</strong> Configure game-specific modes and settings</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="installation">📥 Installation</h2>
|
||||
<h3>Configuration Files</h3>
|
||||
<p>Important configuration files for this server:</p>
|
||||
<ul>
|
||||
<li><strong><code>bec\config\config.cfg</code></strong> - Config</li>
|
||||
<li><strong><code>bec\config\scheduler.xml</code></strong> - Scheduler</li>
|
||||
<li><strong><code>bec\config\admins.xml</code></strong> - Admins</li>
|
||||
<li><strong><code>bec\config\whitelist.xml</code></strong> - Whitelist</li>
|
||||
<li><strong><code>bec\config\fortune.xml</code></strong> - Fortune</li>
|
||||
</ul>
|
||||
|
||||
<h3>Windows Installation</h3>
|
||||
<h3>Server Commands</h3>
|
||||
<p>Common administrative commands (access via console or RCON):</p>
|
||||
<pre><code># Kick player
|
||||
kick [player_name]
|
||||
|
||||
<h4>Step 1: Download BEC</h4>
|
||||
<pre><code># Download latest BEC from GitHub:
|
||||
# https://github.com/TheGamingChief/BattlEye-Extended-Controls/releases
|
||||
# Ban player
|
||||
ban [player_name]
|
||||
|
||||
# Extract Bec.exe to your ARMA server directory
|
||||
# Example: C:\ARMA3Server\BEC\
|
||||
# Change map/level (syntax varies by game)
|
||||
changelevel [map_name]
|
||||
|
||||
# Set admin password (if supported)
|
||||
setadminpassword [password]
|
||||
</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)
|
||||
<h2 id="parameters">⚙️ Startup Parameters</h2>
|
||||
|
||||
<h3>Basic Startup</h3>
|
||||
<pre><code># Generic startup command structure
|
||||
./server_executable [parameters]
|
||||
</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:
|
||||
<h3>Common Parameters</h3>
|
||||
<ul>
|
||||
<li><code>-port [number]</code> - Set the server port</li>
|
||||
<li><code>-maxplayers [number]</code> - Maximum player slots</li>
|
||||
<li><code>-map [name]</code> - Starting map/level</li>
|
||||
<li><code>-console</code> - Enable console output</li>
|
||||
<li><code>-nographics</code> - Run without graphics (headless mode)</li>
|
||||
</ul>
|
||||
|
||||
[Bec]
|
||||
Ip = 127.0.0.1
|
||||
Port = 2302
|
||||
RConPassword = your_rcon_password
|
||||
RestartServer = 1
|
||||
<h3>Creating a Start Script</h3>
|
||||
|
||||
<p><strong>Linux (start.sh):</strong></p>
|
||||
<pre><code>#!/bin/bash
|
||||
cd /path/to/server
|
||||
./server_executable [parameters] 2>&1 | tee server.log
|
||||
</code></pre>
|
||||
<pre><code>chmod +x start.sh
|
||||
./start.sh
|
||||
</code></pre>
|
||||
|
||||
<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
|
||||
<p><strong>Windows (start.bat):</strong></p>
|
||||
<pre><code>@echo off
|
||||
cd /d "%~dp0"
|
||||
server_executable.exe [parameters]
|
||||
pause
|
||||
</code></pre>
|
||||
|
||||
<h2 id="configuration">⚙️ Configuration (Bec.cfg)</h2>
|
||||
<h3>Running as a Service</h3>
|
||||
|
||||
<h3>Complete Bec.cfg Example</h3>
|
||||
<pre><code>[Bec]
|
||||
# BattlEye RCON connection settings
|
||||
Ip = 127.0.0.1
|
||||
Port = 2302
|
||||
RConPassword = your_rcon_password
|
||||
<p><strong>Linux (systemd):</strong></p>
|
||||
<pre><code># Create service file: /etc/systemd/system/gameserver.service
|
||||
[Unit]
|
||||
Description=BEC (BattlEye Extended Controls) Server
|
||||
After=network.target
|
||||
|
||||
# Auto-restart on crash (1 = yes, 0 = no)
|
||||
RestartServer = 1
|
||||
[Service]
|
||||
Type=simple
|
||||
User=gameserver
|
||||
WorkingDirectory=/home/gameserver/server
|
||||
ExecStart=/home/gameserver/server/start.sh
|
||||
Restart=on-failure
|
||||
RestartSec=10
|
||||
|
||||
# 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
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
</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
|
||||
<pre><code># Enable and start service
|
||||
sudo systemctl daemon-reload
|
||||
sudo systemctl enable gameserver
|
||||
sudo systemctl start gameserver
|
||||
sudo systemctl status gameserver
|
||||
</code></pre>
|
||||
|
||||
<h2 id="troubleshooting">🔧 Troubleshooting</h2>
|
||||
|
||||
<h3>BEC Not Connecting to Server</h3>
|
||||
<pre><code># Symptoms: "Failed to connect to server" in Bec log
|
||||
<h3>Server Won't Start</h3>
|
||||
|
||||
# Verify RCON settings match server config
|
||||
# ARMA 3 server.cfg:
|
||||
BattlEye = 1;
|
||||
RConPassword = "your_rcon_password";
|
||||
RConPort = 2302;
|
||||
<h4>Check Server Logs</h4>
|
||||
<pre><code># View recent log entries
|
||||
tail -f server.log
|
||||
|
||||
# Bec.cfg:
|
||||
Port = 2302
|
||||
RConPassword = your_rcon_password
|
||||
|
||||
# Test RCON manually with BERConCLI or similar tool
|
||||
# Or check system logs
|
||||
journalctl -u gameserver -f
|
||||
</code></pre>
|
||||
|
||||
<h3>Scheduler Tasks Not Executing</h3>
|
||||
<h4>Port Already in Use</h4>
|
||||
<pre><code># Find what's using the port
|
||||
sudo lsof -i :[PORT]
|
||||
sudo netstat -tulpn | grep [PORT]
|
||||
|
||||
# Kill the process or change server port
|
||||
</code></pre>
|
||||
|
||||
<h4>Missing Dependencies</h4>
|
||||
<p>Ensure all required dependencies are installed. Check the error messages for missing libraries or packages.</p>
|
||||
|
||||
<h3>Connection Issues</h3>
|
||||
|
||||
<h4>Can't Connect to Server</h4>
|
||||
<ol>
|
||||
<li><strong>Verify server is running:</strong> <code>ps aux | grep server</code></li>
|
||||
<li><strong>Check port is listening:</strong> <code>netstat -an | grep [PORT]</code></li>
|
||||
<li><strong>Verify firewall rules</strong> (see Ports section above)</li>
|
||||
<li><strong>Check server IP:</strong> Use external IP, not localhost</li>
|
||||
<li><strong>Router/NAT:</strong> Ensure port forwarding is configured</li>
|
||||
</ol>
|
||||
|
||||
<h4>High Latency/Lag</h4>
|
||||
<ul>
|
||||
<li>Verify 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>
|
||||
<li>Check server resource usage (CPU, RAM, disk I/O)</li>
|
||||
<li>Verify network bandwidth is adequate</li>
|
||||
<li>Consider server location relative to players</li>
|
||||
<li>Check for background processes consuming resources</li>
|
||||
</ul>
|
||||
|
||||
<h3>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]
|
||||
<h3>Performance Issues</h3>
|
||||
|
||||
# Verify server executable path is correct (Windows)
|
||||
dir "C:\ARMA3Server\arma3server_x64.exe"
|
||||
<h4>Server Lag</h4>
|
||||
<ol>
|
||||
<li><strong>Monitor resources:</strong> Use <code>htop</code> or <code>top</code></li>
|
||||
<li><strong>Check disk I/O:</strong> Use <code>iotop</code></li>
|
||||
<li><strong>Review server logs</strong> for errors or warnings</li>
|
||||
<li><strong>Reduce player count</strong> or increase server resources</li>
|
||||
<li><strong>Optimize configuration</strong> based on server capacity</li>
|
||||
</ol>
|
||||
|
||||
# Check BEC has permission to launch server
|
||||
# Run BEC as administrator if needed (Windows)
|
||||
<h4>Memory Leaks</h4>
|
||||
<pre><code># Monitor memory usage
|
||||
free -h
|
||||
top -p $(pgrep -f server)
|
||||
|
||||
# Restart server regularly via cron if needed
|
||||
0 4 * * * /home/gameserver/restart.sh
|
||||
</code></pre>
|
||||
|
||||
<h3>Admin Commands Not Working</h3>
|
||||
<h2 id="performance">Performance Optimization</h2>
|
||||
|
||||
<h3>Server Tuning</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>
|
||||
<li><strong>CPU:</strong> Ensure adequate CPU allocation; most game servers are single-threaded</li>
|
||||
<li><strong>RAM:</strong> Allocate sufficient memory; monitor usage and adjust as needed</li>
|
||||
<li><strong>Disk:</strong> Use SSD storage for better I/O performance</li>
|
||||
<li><strong>Network:</strong> Ensure stable, low-latency connection</li>
|
||||
</ul>
|
||||
|
||||
<h3>Operating System Optimization</h3>
|
||||
<pre><code># Increase file descriptor limits
|
||||
echo "* soft nofile 65536" >> /etc/security/limits.conf
|
||||
echo "* hard nofile 65536" >> /etc/security/limits.conf
|
||||
|
||||
# Network tuning
|
||||
sysctl -w net.core.rmem_max=16777216
|
||||
sysctl -w net.core.wmem_max=16777216
|
||||
sysctl -w net.ipv4.tcp_rmem="4096 87380 16777216"
|
||||
sysctl -w net.ipv4.tcp_wmem="4096 87380 16777216"
|
||||
</code></pre>
|
||||
|
||||
<h3>Monitoring</h3>
|
||||
<p>Set up monitoring to track server health:</p>
|
||||
<ul>
|
||||
<li>CPU and memory usage</li>
|
||||
<li>Network traffic and latency</li>
|
||||
<li>Player count and activity</li>
|
||||
<li>Error rates and crash logs</li>
|
||||
</ul>
|
||||
|
||||
<h3>Backup Strategy</h3>
|
||||
<pre><code>#!/bin/bash
|
||||
# backup.sh - Run via cron
|
||||
DATE=$(date +%Y%m%d_%H%M%S)
|
||||
BACKUP_DIR="/backups/gameserver"
|
||||
SERVER_DIR="/home/gameserver/server"
|
||||
|
||||
# Create backup
|
||||
tar -czf $BACKUP_DIR/backup_$DATE.tar.gz -C $SERVER_DIR .
|
||||
|
||||
# Keep only last 7 days
|
||||
find $BACKUP_DIR -name "backup_*.tar.gz" -mtime +7 -delete
|
||||
</code></pre>
|
||||
|
||||
<h2 id="security">Security Best Practices</h2>
|
||||
|
||||
<h3>Firewall Configuration</h3>
|
||||
<pre><code># Minimal firewall - only allow necessary ports
|
||||
sudo ufw default deny incoming
|
||||
sudo ufw default allow outgoing
|
||||
sudo ufw allow [SERVER_PORT]/tcp
|
||||
sudo ufw allow [SERVER_PORT]/udp
|
||||
sudo ufw allow 22/tcp # SSH
|
||||
sudo ufw enable
|
||||
</code></pre>
|
||||
|
||||
<h3>Strong Passwords</h3>
|
||||
<ul>
|
||||
<li>Use strong, unique passwords for admin/RCON access</li>
|
||||
<li>Never use default passwords</li>
|
||||
<li>Change passwords regularly</li>
|
||||
<li>Don't share admin credentials unnecessarily</li>
|
||||
</ul>
|
||||
|
||||
<h3>Regular Updates</h3>
|
||||
<ul>
|
||||
<li>Keep server software updated to the latest stable version</li>
|
||||
<li>Update operating system and dependencies regularly</li>
|
||||
<li>Subscribe to security advisories for your game</li>
|
||||
<li>Test updates on a staging server before production deployment</li>
|
||||
</ul>
|
||||
|
||||
<h3>Access Control</h3>
|
||||
<ul>
|
||||
<li>Limit SSH access to specific IPs if possible</li>
|
||||
<li>Use SSH keys instead of passwords</li>
|
||||
<li>Disable root login via SSH</li>
|
||||
<li>Implement fail2ban or similar intrusion prevention</li>
|
||||
</ul>
|
||||
|
||||
<h3>DDoS Protection</h3>
|
||||
<ul>
|
||||
<li>Consider DDoS protection services (Cloudflare, OVH, etc.)</li>
|
||||
<li>Implement rate limiting where supported</li>
|
||||
<li>Monitor for unusual traffic patterns</li>
|
||||
<li>Have an incident response plan</li>
|
||||
</ul>
|
||||
|
||||
<h2>Additional Resources</h2>
|
||||
<ul>
|
||||
<li>Official BEC (BattlEye Extended Controls) documentation and forums</li>
|
||||
<li>Community wikis and guides</li>
|
||||
<li>Game-specific Discord or Reddit communities</li>
|
||||
<li>Server hosting provider documentation</li>
|
||||
</ul>
|
||||
|
||||
<div style="background: #78350f; padding: 20px; border-left: 4px solid #f59e0b; margin: 20px 0; border-radius: 4px;">
|
||||
<h3 style="color: #ffffff; margin-top: 0;"><i class="fas fa-lightbulb" style="color: #fbbf24; margin-right: 8px;"></i>Pro Tips</h3>
|
||||
<ul style="color: #fef3c7; line-height: 1.8;">
|
||||
<li><strong>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>
|
||||
<h3 style="color: #ffffff; margin-top: 0;"><i class="fas fa-exclamation-triangle" style="color: #fbbf24; margin-right: 8px;"></i>Important Notes</h3>
|
||||
<ul style="color: #fef3c7; line-height: 1.8; margin: 0;">
|
||||
<li>Always make backups before making configuration changes</li>
|
||||
<li>Keep your server and dependencies updated</li>
|
||||
<li>Monitor server resources and player activity</li>
|
||||
<li>Follow the game's End User License Agreement (EULA) and Terms of Service</li>
|
||||
<li>Join community forums for support and best practices</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<h2 id="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>
|
||||
<p style="text-align: center; margin-top: 30px; color: #666;">
|
||||
<em>Last updated: November 2025 | For BEC (BattlEye Extended Controls) server hosting</em>
|
||||
</p>
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
{
|
||||
"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",
|
||||
"name": "BEC (BattlEye Extended Controls)",
|
||||
"order": 65,
|
||||
"category": "mods"
|
||||
{
|
||||
"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",
|
||||
"name": "BEC (BattlEye Extended Controls)",
|
||||
"order": 65,
|
||||
"category": "mods",
|
||||
"complete": true
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue