From a98b4a655bc4b4098403adb3eaa4516f797fdfa8 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 8 Nov 2025 16:15:41 +0000 Subject: [PATCH 1/5] Initial plan From f5d1586119b1337946074e84f0167c5d0a1af062 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 8 Nov 2025 16:21:06 +0000 Subject: [PATCH 2/5] Fix session integration in docs.php and cart.php Co-authored-by: iaretechnician <2749183+iaretechnician@users.noreply.github.com> --- modules/billing/cart.php | 6 +++++- modules/billing/docs.php | 7 +++++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/modules/billing/cart.php b/modules/billing/cart.php index fc0ca9e6..f9f0e088 100644 --- a/modules/billing/cart.php +++ b/modules/billing/cart.php @@ -3,7 +3,11 @@ * Shopping Cart - Display unpaid invoices and PayPal checkout * Standalone billing module - uses only standard PHP mysqli */ -session_start(); +// Start session using the website session name to match the rest of the site +if (session_status() === PHP_SESSION_NONE) { + session_name("gameservers_website"); + session_start(); +} require_once(__DIR__ . '/includes/config.inc.php'); require_once(__DIR__ . '/includes/login_required.php'); diff --git a/modules/billing/docs.php b/modules/billing/docs.php index eb7582b5..3b24f2c0 100644 --- a/modules/billing/docs.php +++ b/modules/billing/docs.php @@ -4,8 +4,11 @@ * Displays a list of documentation categories and allows viewing individual docs */ -// Start session for navigation state -session_start(); +// Start session using the website session name to match the rest of the site +if (session_status() === PHP_SESSION_NONE) { + session_name("gameservers_website"); + session_start(); +} // Include config require_once(__DIR__ . '/includes/config.inc.php'); From 625182ec3aa65f500adabe086a66917921451ebc Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 8 Nov 2025 16:26:43 +0000 Subject: [PATCH 3/5] Add comprehensive game server documentation for Minecraft and CS:GO Co-authored-by: iaretechnician <2749183+iaretechnician@users.noreply.github.com> --- modules/billing/docs/csgo/index.php | 609 +++++++++++++++++-- modules/billing/docs/csgo/index_old.php | 67 ++ modules/billing/docs/minecraft/index.php | 578 ++++++++++++++++-- modules/billing/docs/minecraft/index_old.php | 91 +++ 4 files changed, 1239 insertions(+), 106 deletions(-) create mode 100644 modules/billing/docs/csgo/index_old.php create mode 100644 modules/billing/docs/minecraft/index_old.php diff --git a/modules/billing/docs/csgo/index.php b/modules/billing/docs/csgo/index.php index f5481420..5ed2fa09 100644 --- a/modules/billing/docs/csgo/index.php +++ b/modules/billing/docs/csgo/index.php @@ -1,67 +1,584 @@ -

Counter Strike Global Offensive 128tick Server Guide

+
+

Navigation

+
+ Quick Info + Installation + Configuration + Parameters + Plugins & Mods + Troubleshooting + Game Modes +
+
+ +

Counter-Strike: Global Offensive & CS2 Server Hosting Guide

Overview

-

Counter Strike Global Offensive 128tick is available for hosting on our platform. This guide covers the basics of setting up and managing your Counter Strike Global Offensive 128tick server.

+

Counter-Strike: Global Offensive (CS:GO) and Counter-Strike 2 (CS2) are competitive tactical first-person shooters. This guide covers everything needed to host a dedicated CS:GO or CS2 server on Linux or Windows.

+

Note: CS2 replaced CS:GO in September 2023. Most concepts apply to both, but CS2 uses Source 2 engine with some differences. This guide covers both versions.

+ +

Quick Info

-

Quick Info

-
-

Getting Started

-

To create a Counter Strike Global Offensive 128tick server:

-
    -
  1. Navigate to the Game Servers page
  2. -
  3. Find Counter Strike Global Offensive 128tick in the list
  4. -
  5. Select your preferred configuration (slots, duration, etc.)
  6. -
  7. Add to cart and complete checkout
  8. -
  9. Your server will be automatically provisioned within minutes
  10. -
+

Installation & Setup

-

Server Configuration

-

After your server is created, you can configure it through the control panel:

+

System Requirements

+

CS:GO

-

Common Tasks

- -

Starting Your Server

-

Servers are automatically started after creation. You can stop/start your server from the control panel.

- -

Connecting to Your Server

-

Use your server's IP address and port to connect from the game client.

- -

Managing Files

-

Access your server files via FTP using the credentials provided in your control panel.

- -

Support

-

If you need assistance with your Counter Strike Global Offensive 128tick server:

+

CS2

+ +

Installing SteamCMD

+ +

Linux Installation

+
# Install dependencies (Ubuntu/Debian)
+sudo apt update
+sudo apt install lib32gcc-s1 lib32stdc++6 steamcmd
+
+# Or manual install
+mkdir ~/steamcmd
+cd ~/steamcmd
+wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
+tar -xvzf steamcmd_linux.tar.gz
+
+ +

Windows Installation

+

Download SteamCMD from: SteamCMD for Windows

+ +

Installing CS:GO/CS2 Server

+ +

CS:GO Server

+
# Run SteamCMD
+./steamcmd.sh
+
+# Login anonymously
+login anonymous
+
+# Set install directory
+force_install_dir ./csgo-server
+
+# Install CS:GO dedicated server
+app_update 740 validate
+
+# Exit
+quit
+
+ +

CS2 Server

+
# Run SteamCMD
+./steamcmd.sh
+
+# Login (may require Steam account with CS2)
+login anonymous
+
+# Set install directory
+force_install_dir ./cs2-server
+
+# Install CS2 dedicated server
+app_update 730 validate
+
+# Exit
+quit
+
+ +

Server Configuration

+ +

server.cfg - Essential Settings

+

Create csgo/cfg/server.cfg or cs2/cfg/server.cfg:

+
// Server Information
+hostname "My CS:GO/CS2 Server"
+sv_password ""                  // Server password (leave blank for public)
+sv_region "1"                   // 0=US East, 1=US West, 2=South America, 3=Europe, etc.
+
+// RCON Configuration
+rcon_password "YourSecurePassword"
+sv_rcon_banpenalty 0
+sv_rcon_maxfailures 5
+
+// Server Settings
+sv_cheats 0
+sv_lan 0
+sv_pure 1                       // File consistency checking (0=off, 1=on, 2=strict)
+sv_pure_kick_clients 1
+sv_minrate 128000
+sv_maxrate 0                    // 0=unlimited
+
+// Game Settings
+mp_autoteambalance 1
+mp_limitteams 1
+mp_teamcashawards 1
+mp_playercashawards 1
+mp_maxmoney 16000
+mp_startmoney 800
+mp_buytime 90
+mp_buy_anywhere 0
+mp_freezetime 15
+mp_friendlyfire 0
+mp_c4timer 40
+mp_roundtime 5
+mp_roundtime_defuse 1.92
+mp_maxrounds 30
+mp_overtime_enable 1
+mp_overtime_maxrounds 6
+mp_overtime_startmoney 10000
+
+// Competitive Settings (5v5)
+mp_match_end_restart 1
+mp_halftime 1
+mp_warmuptime 30
+mp_do_warmup_period 1
+mp_warmup_pausetimer 1
+
+// Communication
+sv_alltalk 0
+sv_deadtalk 0
+sv_full_alltalk 0
+sv_talk_enemy_dead 1
+sv_talk_enemy_living 0
+
+// Voting
+sv_vote_issue_kick_allowed 0
+sv_vote_issue_changelevel_allowed 0
+sv_vote_issue_nextlevel_allowed 0
+
+// SourceTV (GOTV)
+tv_enable 1
+tv_delay 90
+tv_advertise_watchable 1
+tv_name "GOTV"
+tv_title "Source TV"
+tv_autorecord 1
+tv_allow_camera_man 1
+
+// Logging
+log on
+sv_logbans 1
+sv_logecho 1
+sv_logfile 1
+sv_log_onefile 0
+
+// Execute additional configs
+exec banned_user.cfg
+exec banned_ip.cfg
+
+ +

Game Mode Configuration Files

+ +

gamemode_competitive.cfg (5v5 Competitive)

+
mp_maxrounds 30
+mp_roundtime 1.92
+mp_roundtime_defuse 1.92
+mp_freezetime 15
+mp_buytime 90
+mp_startmoney 800
+mp_maxmoney 16000
+mp_timelimit 0
+sv_alltalk 0
+sv_talk_enemy_dead 1
+sv_deadtalk 0
+
+ +

gamemode_casual.cfg (10v10 Casual)

+
mp_maxrounds 15
+mp_roundtime 3
+mp_roundtime_defuse 3
+mp_freezetime 15
+mp_buytime 90
+mp_startmoney 1000
+mp_maxmoney 16000
+sv_alltalk 0
+mp_autoteambalance 1
+mp_limitteams 2
+
+ +

mapcycle.txt

+

List maps to rotate through:

+
de_dust2
+de_mirage
+de_inferno
+de_nuke
+de_overpass
+de_vertigo
+de_ancient
+de_anubis
+
+ +

Startup Parameters

+ +

Basic Linux Startup (CS:GO)

+
#!/bin/bash
+cd /path/to/csgo-server
+./srcds_run -game csgo \
+    -console \
+    -usercon \
+    +ip 0.0.0.0 \
+    +game_type 0 \
+    +game_mode 1 \
+    +mapgroup mg_active \
+    +map de_dust2 \
+    -port 27015 \
+    +tv_port 27020 \
+    -tickrate 128 \
+    +maxplayers 10 \
+    +sv_setsteamaccount YOUR_GSLT_TOKEN
+
+ +

Basic Linux Startup (CS2)

+
#!/bin/bash
+cd /path/to/cs2-server
+./game/bin/linuxsteamrt64/cs2 \
+    -dedicated \
+    -console \
+    +ip 0.0.0.0 \
+    +map de_dust2 \
+    -port 27015 \
+    +maxplayers 10 \
+    +sv_setsteamaccount YOUR_GSLT_TOKEN \
+    +game_type 0 \
+    +game_mode 1
+
+ +

Windows Startup (CS:GO)

+
@echo off
+cd C:\csgo-server
+srcds.exe -game csgo -console -usercon +ip 0.0.0.0 +game_type 0 +game_mode 1 +mapgroup mg_active +map de_dust2 -port 27015 -tickrate 128 +maxplayers 10 +sv_setsteamaccount YOUR_GSLT_TOKEN
+pause
+
+ +

Parameter Breakdown

+ + +

Game Server Login Token (GSLT)

+

Required for public servers to appear in server browser!

+
    +
  1. Go to Steam Game Server Account Management
  2. +
  3. Login with your Steam account
  4. +
  5. Click "Create New Game Server Account"
  6. +
  7. App ID: 730 (CS:GO) or 730 (CS2)
  8. +
  9. Memo: Your server name/description
  10. +
  11. Copy the generated token
  12. +
  13. Use in +sv_setsteamaccount parameter
  14. +
+ +

Plugins & Mods

+ +

SourceMod & MetaMod:Source

+

The standard plugin framework for Source engine servers.

+ +

Installation

+
    +
  1. Download MetaMod:Source: SourceMM.net
  2. +
  3. Download SourceMod: SourceMod.net
  4. +
  5. Extract to server directory: +
    # Both extract to csgo/ or cs2/ folder
    +cd /path/to/csgo-server/csgo
    +wget https://mms.alliedmods.net/mmsdrop/...
    +tar -xzf mmsource-...tar.gz
    +
    +wget https://sm.alliedmods.net/smdrop/...
    +tar -xzf sourcemod-...tar.gz
    +
    +
  6. +
  7. Restart server
  8. +
  9. Add yourself as admin: +
    # Edit addons/sourcemod/configs/admins_simple.ini
    +"STEAM_0:1:12345678" "99:z"  // Your Steam ID
    +
    +
  10. +
+ +

Essential Plugins

+ +

Practice Mode

+

For practicing smokes, flashes, and aim.

+ + +

Get5

+

Competitive match plugin with knife rounds, veto, and more.

+ + +

RetakesPlugin

+

Retake game mode - defenders defend bombsite, attackers retake.

+ + +

RankMe

+

Player ranking and statistics system.

+ + +

In-Game Admin Menu

+

Built into SourceMod. Access with !admin or sm_admin in chat.

+ +

Workshop Maps & Collections

+
# In server.cfg or startup parameters
+host_workshop_collection 123456789  // Workshop collection ID
+workshop_start_map 123456789         // Workshop map ID
+
+ +

Troubleshooting

+ +

Server Won't Start

+ +

Missing Libraries (Linux)

+
# Install 32-bit libraries
+sudo dpkg --add-architecture i386
+sudo apt update
+sudo apt install lib32gcc-s1 lib32stdc++6
+
+# CS:GO specific
+sudo apt install libsdl2-2.0-0:i386
+
+# CS2 specific
+sudo apt install libtinfo5:i386
+
+ +

Port Already in Use

+
# Check what's using port 27015
+sudo netstat -tulpn | grep 27015
+sudo lsof -i :27015
+
+# Kill existing process or change port
+./srcds_run -game csgo -port 27016 ...
+
+ +

Server Not in Browser

+
    +
  1. Check GSLT is set: +sv_setsteamaccount YOUR_TOKEN
  2. +
  3. Verify sv_lan is 0: sv_lan 0 in server.cfg
  4. +
  5. Check firewall allows UDP 27015: +
    sudo ufw allow 27015/udp
    +sudo ufw allow 27015/tcp
    +sudo ufw allow 27020/udp  # SourceTV
    +
    +
  6. +
  7. Wait 5-10 minutes: Can take time to appear in browser
  8. +
  9. Direct connect test: In CS:GO/CS2 console: connect your.server.ip:27015
  10. +
+ +

High Ping / Lag

+ +

Server-Side

+
    +
  1. Check server load: top or htop
  2. +
  3. Increase rates: +
    sv_minrate 128000
    +sv_maxrate 0  // unlimited
    +
    +
  4. +
  5. Enable multi-core (CS:GO): +
    host_thread_mode 2
    +
    +
  6. +
  7. Reduce bots if present
  8. +
  9. Check network saturation
  10. +
+ +

Client-Side

+
// Player client commands
+rate 786432
+cl_interp 0
+cl_interp_ratio 1
+cl_updaterate 128
+cl_cmdrate 128
+
+ +

VAC Authentication Error

+
    +
  1. Ensure sv_lan 0
  2. +
  3. Verify GSLT is valid and not banned
  4. +
  5. Check server files integrity: +
    ./steamcmd.sh
    +login anonymous
    +force_install_dir /path/to/csgo-server
    +app_update 740 validate
    +quit
    +
    +
  6. +
  7. Restart server after updates
  8. +
+ +

Can't Hear Voice Chat

+
    +
  1. Check voice settings in server.cfg: +
    sv_use_steam_voice 1
    +sv_voiceenable 1
    +
    +
  2. +
  3. Verify UDP ports open: 27015, 27020
  4. +
  5. Test with different voice_loopback values: +
    voice_loopback 1  // Hear yourself (testing)
    +
    +
  6. +
+ +

Game Modes Configuration

+ +

Competitive 5v5 (128 tick)

+
+game_type 0 +game_mode 1 -tickrate 128 +maxplayers 10
+exec gamemode_competitive.cfg
+
+ +

Casual 10v10

+
+game_type 0 +game_mode 0 +maxplayers 20
+exec gamemode_casual.cfg
+
+ +

Deathmatch

+
+game_type 1 +game_mode 2 +maxplayers 20
+mp_respawn_on_death_t 1
+mp_respawn_on_death_ct 1
+mp_respawnwavetime 3
+mp_timelimit 10
+mp_dm_bonus_length_max 30
+
+ +

Arms Race

+
+game_type 1 +game_mode 0 +maxplayers 12
+mp_ggprogressive_round_restart_delay 3
+mp_timelimit 20
+mp_maxrounds 3
+
+ +

Wingman 2v2

+
+game_type 0 +game_mode 2 +maxplayers 4
+exec gamemode_competitive.cfg
+mp_maxrounds 16
+mp_overtime_maxrounds 4
+
+ +

Custom Modes

+ +

Surf

+

Download surf maps and configure:

+
sv_airaccelerate 150
+sv_staminajumpcost 0
+sv_staminalandcost 0
+sv_accelerate 10
+sv_friction 4
+
+ +

Bunny Hop

+
sv_enablebunnyhopping 1
+sv_autobunnyhopping 1
+sv_airaccelerate 1000
+sv_staminajumpcost 0
+sv_staminalandcost 0
+
+ +

1v1 Arena

+

Use arena plugin and configure multiple arenas on one map.

+ +

Performance Optimization

+ +

CPU Affinity (Linux)

+
# Bind server to specific CPU cores
+taskset -c 0,1,2,3 ./srcds_run -game csgo ...
+
+ +

Process Priority

+
# Run with higher priority
+nice -n -10 ./srcds_run -game csgo ...
+
+ +

Network Optimization

+
# Increase network buffers (Linux)
+sudo sysctl -w net.core.rmem_max=16777216
+sudo sysctl -w net.core.wmem_max=16777216
+sudo sysctl -w net.ipv4.tcp_rmem="4096 87380 16777216"
+sudo sysctl -w net.ipv4.tcp_wmem="4096 65536 16777216"
+
+ +

Automate Updates

+
#!/bin/bash
+# update_csgo.sh
+cd /home/steam/steamcmd
+./steamcmd.sh +login anonymous +force_install_dir /path/to/csgo-server +app_update 740 validate +quit
+
+# Kill and restart server
+killall -9 srcds_linux
+sleep 5
+cd /path/to/csgo-server
+./srcds_run -game csgo +map de_dust2 ...
+
+ +

Additional Resources

+

Important Notes

-
\ No newline at end of file + + +

+ Last updated: November 2024 | Covers CS:GO & CS2 +

diff --git a/modules/billing/docs/csgo/index_old.php b/modules/billing/docs/csgo/index_old.php new file mode 100644 index 00000000..f5481420 --- /dev/null +++ b/modules/billing/docs/csgo/index_old.php @@ -0,0 +1,67 @@ + +

Counter Strike Global Offensive 128tick Server Guide

+ +

Overview

+

Counter Strike Global Offensive 128tick is available for hosting on our platform. This guide covers the basics of setting up and managing your Counter Strike Global Offensive 128tick server.

+ +
+

Quick Info

+ +
+ +

Getting Started

+

To create a Counter Strike Global Offensive 128tick server:

+
    +
  1. Navigate to the Game Servers page
  2. +
  3. Find Counter Strike Global Offensive 128tick in the list
  4. +
  5. Select your preferred configuration (slots, duration, etc.)
  6. +
  7. Add to cart and complete checkout
  8. +
  9. Your server will be automatically provisioned within minutes
  10. +
+ +

Server Configuration

+

After your server is created, you can configure it through the control panel:

+ + +

Common Tasks

+ +

Starting Your Server

+

Servers are automatically started after creation. You can stop/start your server from the control panel.

+ +

Connecting to Your Server

+

Use your server's IP address and port to connect from the game client.

+ +

Managing Files

+

Access your server files via FTP using the credentials provided in your control panel.

+ +

Support

+

If you need assistance with your Counter Strike Global Offensive 128tick server:

+ + +
+

Important Notes

+ +
\ No newline at end of file diff --git a/modules/billing/docs/minecraft/index.php b/modules/billing/docs/minecraft/index.php index a409f087..01969730 100644 --- a/modules/billing/docs/minecraft/index.php +++ b/modules/billing/docs/minecraft/index.php @@ -1,91 +1,549 @@ -

Minecraft Server Guide

+
+

Navigation

+
+ Quick Info + Installation + Configuration + Parameters + Plugins & Mods + Troubleshooting + Performance + Security +
+
+ +

Minecraft Java Edition Server Hosting Guide

Overview

-

Minecraft is one of the most popular sandbox games in the world. This guide will help you set up and manage your Minecraft Java Edition server.

+

Minecraft Java Edition is one of the most popular sandbox games worldwide, supporting extensive multiplayer capabilities. This comprehensive guide covers everything you need to know about hosting a Minecraft server on a VPS or dedicated server.

-

Getting Started

-

Once your Minecraft server is provisioned, you can connect to it using the server IP and port provided in your account dashboard.

+

Quick Info

+
+ +
-

Server Details

+

Installation & Setup

+ +

System Requirements

-

Configuration

-

You can customize your server using the server.properties file. Common settings include:

+

Installing Java

+

Minecraft requires Java to run. Install the appropriate version:

+
# Ubuntu/Debian - Java 17 (for MC 1.17+)
+sudo apt update
+sudo apt install openjdk-17-jre-headless
 
-

Server Properties

-
# Server name
-motd=Welcome to My Minecraft Server
+# Check Java version
+java -version
 
-# Game mode (survival, creative, adventure, spectator)
-gamemode=survival
-
-# Difficulty (peaceful, easy, normal, hard)
-difficulty=normal
-
-# Maximum players
-max-players=20
-
-# Enable PvP
-pvp=true
-
-# View distance (in chunks)
-view-distance=10
+# Set Java 17 as default if multiple versions installed
+sudo update-alternatives --config java
 
-

Installing Plugins

-

To add plugins to your server, you'll need to use a modified server like Spigot or Paper:

+

Downloading Server Files

+

Download the official Minecraft server from Minecraft.net:

+
# Create server directory
+mkdir minecraft-server
+cd minecraft-server
+
+# Download server jar (replace version number with desired version)
+wget https://piston-data.mojang.com/v1/objects/[hash]/server.jar -O minecraft_server.jar
+
+# Or use curl
+curl -o minecraft_server.jar https://piston-data.mojang.com/v1/objects/[hash]/server.jar
+
+ +

First-Time Setup

+
# Run server once to generate files
+java -Xmx1024M -Xms1024M -jar minecraft_server.jar nogui
+
+# Accept EULA
+echo "eula=true" > eula.txt
+
+# Start server
+java -Xmx2048M -Xms2048M -jar minecraft_server.jar nogui
+
+ +

Server Configuration

+ +

server.properties - Essential Settings

+

The server.properties file controls all server behavior:

+
# Server identification
+server-name=My Minecraft Server
+motd=Welcome to My Server!
+server-port=25565
+server-ip=0.0.0.0
+
+# Gameplay settings
+gamemode=survival
+difficulty=normal
+hardcore=false
+pvp=true
+enable-command-block=false
+
+# World settings
+level-name=world
+level-seed=
+level-type=default
+generate-structures=true
+spawn-protection=16
+max-build-height=256
+view-distance=10
+simulation-distance=10
+
+# Player limits
+max-players=20
+white-list=false
+online-mode=true
+
+# Performance & resource settings
+max-tick-time=60000
+max-world-size=29999984
+network-compression-threshold=256
+spawn-npcs=true
+spawn-animals=true
+spawn-monsters=true
+
+# Query & RCON
+enable-query=true
+query.port=25565
+enable-rcon=false
+rcon.port=25575
+rcon.password=changeme
+
+# Misc
+allow-flight=false
+enforce-whitelist=false
+resource-pack=
+resource-pack-sha1=
+
+ +

ops.json - Server Operators

+

Grant admin privileges to players:

+
[
+  {
+    "uuid": "player-uuid-here",
+    "name": "PlayerName",
+    "level": 4,
+    "bypassesPlayerLimit": true
+  }
+]
+
+

Permission levels: 1 (bypass spawn protection), 2 (use cheat commands), 3 (kick/ban), 4 (full control)

+ +

whitelist.json - Whitelist

+

When white-list=true in server.properties:

+
[
+  {
+    "uuid": "player-uuid-here",
+    "name": "PlayerName"
+  }
+]
+
+ +

Startup Parameters & JVM Arguments

+ +

Basic Startup Command

+
java -Xmx4G -Xms4G -jar minecraft_server.jar nogui
+
+ +

Recommended JVM Arguments (Aikar's Flags)

+

Optimized for Minecraft server performance:

+
java -Xms4G -Xmx4G -XX:+UseG1GC -XX:+ParallelRefProcEnabled \
+     -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions \
+     -XX:+DisableExplicitGC -XX:+AlwaysPreTouch \
+     -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 \
+     -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 \
+     -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 \
+     -XX:InitiatingHeapOccupancyPercent=15 \
+     -XX:G1MixedGCLiveThresholdPercent=90 \
+     -XX:G1RSetUpdatingPauseTimePercent=5 \
+     -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem \
+     -XX:MaxTenuringThreshold=1 \
+     -Dusing.aikars.flags=https://mcflags.emc.gs \
+     -Daikars.new.flags=true \
+     -jar minecraft_server.jar nogui
+
+ +

Parameter Breakdown

+ + +

Creating a Start Script

+

Linux (start.sh):

+
#!/bin/bash
+java -Xms4G -Xmx4G -XX:+UseG1GC -jar minecraft_server.jar nogui
+
+
chmod +x start.sh
+./start.sh
+
+ +

Windows (start.bat):

+
@echo off
+java -Xms4G -Xmx4G -XX:+UseG1GC -jar minecraft_server.jar nogui
+pause
+
+ +

Plugins, Mods & Server Software

+ +

Server Software Options

+ +

1. Vanilla

+ + +

2. Spigot

+ + +

3. Paper (Recommended)

+ + +

4. Forge

+ + +

5. Fabric

+ + +

Essential Plugins (Spigot/Paper)

+ +

EssentialsX

+

Core commands and utilities for server management.

+ + +

LuckPerms

+

Advanced permission management system.

+ + +

WorldEdit & WorldGuard

+

In-game world editing and region protection.

+ + +

Vault

+

Economy and permission API bridge.

+ + +

Installing Plugins

+
# 1. Stop server
+# 2. Download plugin .jar file
+# 3. Place in plugins/ directory
+cd plugins/
+wget https://example.com/plugin.jar
+
+# 4. Start server
+# 5. Configure in plugins/PluginName/config.yml
+
+ +

Popular Mods (Forge/Fabric)

+ + +

Troubleshooting

+ +

Server Won't Start

+ +

Java Not Found

+
# Check if Java is installed
+java -version
+
+# If not installed, install Java (Ubuntu/Debian)
+sudo apt update
+sudo apt install openjdk-17-jre-headless
+
+ +

EULA Not Accepted

+
# You must agree to Minecraft EULA
+echo "eula=true" > eula.txt
+
+ +

Port Already in Use

+
# Check what's using port 25565
+sudo lsof -i :25565
+sudo netstat -tulpn | grep 25565
+
+# Kill process or change server-port in server.properties
+
+ +

Out of Memory

+
# Increase allocated RAM
+java -Xms4G -Xmx4G -jar minecraft_server.jar nogui
+
+# Or reduce if system has limited RAM
+java -Xms2G -Xmx2G -jar minecraft_server.jar nogui
+
+ +

Connection Issues

+ +

Can't Connect to Server

    -
  1. Download plugins from SpigotMC or Hangar
  2. -
  3. Upload the .jar files to your server's plugins folder via FTP
  4. -
  5. Restart your server
  6. -
  7. Configure plugins in their respective config files in plugins/[PluginName]/
  8. +
  9. Check server is running: ps aux | grep java
  10. +
  11. Verify port is listening: netstat -an | grep 25565
  12. +
  13. Check firewall: +
    # Ubuntu/Debian (UFW)
    +sudo ufw allow 25565/tcp
    +sudo ufw reload
    +
    +# CentOS/RHEL (firewalld)
    +sudo firewall-cmd --permanent --add-port=25565/tcp
    +sudo firewall-cmd --reload
    +
    +
  14. +
  15. Verify server IP: Use external IP, not 127.0.0.1
  16. +
  17. Check online-mode: If cracked clients, set online-mode=false
-

Common Issues

- -

Players Can't Connect

+

Connection Timed Out

-

Server Lag

- +

Performance Issues

+ +

Server Lag/TPS Drop

+
    +
  1. Check TPS: /tps or use Spark profiler
  2. +
  3. Reduce view distance: Set view-distance=6-8
  4. +
  5. Reduce simulation distance: simulation-distance=4-6
  6. +
  7. Limit entities: +
    # spigot.yml or paper.yml
    +entity-activation-range:
    +  animals: 16
    +  monsters: 24
    +  misc: 8
    +
    +
  8. +
  9. Use Paper: Better performance than Spigot/Vanilla
  10. +
  11. Pregenerate world: Use Chunky plugin to pre-generate chunks
  12. +
+ +

Memory Leaks

+
# Monitor memory usage
+free -h
+top -p $(pgrep -f minecraft_server)
+
+# Restart server regularly (daily/weekly) via cron
+0 4 * * * /path/to/restart-script.sh
+

World Corruption

+
    +
  1. Stop server immediately
  2. +
  3. Backup world folder: cp -r world/ world_backup/
  4. +
  5. Use MCEdit or Amulet to repair: AmuletMC.com
  6. +
  7. Restore from backup if needed
  8. +
  9. Prevention: Always stop server properly, use backup plugins
  10. +
+ +

Plugin Conflicts

+
    +
  1. Check console for errors
  2. +
  3. Disable plugins one-by-one to isolate issue
  4. +
  5. Update all plugins to latest versions
  6. +
  7. Check plugin compatibility with server version
  8. +
+ +

Performance Optimization

+ +

Server Configuration

+
# server.properties
+view-distance=8
+simulation-distance=6
+network-compression-threshold=256
+entity-broadcast-range-percentage=100
+
+ +

Paper Configuration

+

Create/edit paper.yml or config/paper-global.yml:

+
chunk-loading:
+  target-chunk-send-rate: 100.0
+  max-concurrent-sends: 2
+
+async-chunks:
+  enable: true
+  threads: -1
+
+entity-activation-range:
+  animals: 16
+  monsters: 24
+  raiders: 48
+  misc: 8
+  water: 8
+  villagers: 16
+  flying-monsters: 48
+
+tick-rates:
+  sensor:
+    villager:
+      secondarypoisensor: 80
+  behavior:
+    villager:
+      validatenearbypoi: 60
+
+ +

Pregenerate World

+

Use Chunky plugin to pre-generate chunks:

+
# Install Chunky plugin
+# In-game or console:
+/chunky radius 5000
+/chunky world world
+/chunky start
+
+# Let it complete before opening server to players
+
+ +

Backup Strategy

+
#!/bin/bash
+# backup.sh - Run via cron
+DATE=$(date +%Y%m%d_%H%M%S)
+BACKUP_DIR="/backups/minecraft"
+SERVER_DIR="/home/minecraft/server"
+
+# Create backup
+tar -czf $BACKUP_DIR/world_$DATE.tar.gz -C $SERVER_DIR world/
+
+# Keep only last 7 days
+find $BACKUP_DIR -name "world_*.tar.gz" -mtime +7 -delete
+
+ +

Security Best Practices

+ +

Firewall Configuration

+
# Only allow Minecraft port
+sudo ufw default deny incoming
+sudo ufw default allow outgoing
+sudo ufw allow 25565/tcp
+sudo ufw allow 22/tcp  # SSH
+sudo ufw enable
+
+ +

Whitelist

+
# Enable whitelist in server.properties
+white-list=true
+
+# Add players in-game or console
+/whitelist add PlayerName
+/whitelist on
+
+ +

RCON Security

+
# If using RCON, use strong password
+enable-rcon=true
+rcon.password=Use_A_Very_Strong_Random_Password_Here
+rcon.port=25575
+
+# Bind to localhost only if possible
+rcon.ip=127.0.0.1
+
+ +

Regular Updates

-

Recommended Plugins

+

DDoS Protection

-

Further Resources

+

Additional Resources

+ +
+

Important Notes

+
    +
  • Always accept Mojang's EULA before running a server
  • +
  • Make regular backups of your world data
  • +
  • Keep server software and plugins updated
  • +
  • Monitor server resources (CPU, RAM, disk)
  • +
  • Join Minecraft server admin communities for support
  • +
+
+ +

+ Last updated: November 2024 | For Minecraft Java Edition 1.20+ +

diff --git a/modules/billing/docs/minecraft/index_old.php b/modules/billing/docs/minecraft/index_old.php new file mode 100644 index 00000000..a409f087 --- /dev/null +++ b/modules/billing/docs/minecraft/index_old.php @@ -0,0 +1,91 @@ + +

Minecraft Server Guide

+ +

Overview

+

Minecraft is one of the most popular sandbox games in the world. This guide will help you set up and manage your Minecraft Java Edition server.

+ +

Getting Started

+

Once your Minecraft server is provisioned, you can connect to it using the server IP and port provided in your account dashboard.

+ +

Server Details

+ + +

Configuration

+

You can customize your server using the server.properties file. Common settings include:

+ +

Server Properties

+
# Server name
+motd=Welcome to My Minecraft Server
+
+# Game mode (survival, creative, adventure, spectator)
+gamemode=survival
+
+# Difficulty (peaceful, easy, normal, hard)
+difficulty=normal
+
+# Maximum players
+max-players=20
+
+# Enable PvP
+pvp=true
+
+# View distance (in chunks)
+view-distance=10
+
+ +

Installing Plugins

+

To add plugins to your server, you'll need to use a modified server like Spigot or Paper:

+
    +
  1. Download plugins from SpigotMC or Hangar
  2. +
  3. Upload the .jar files to your server's plugins folder via FTP
  4. +
  5. Restart your server
  6. +
  7. Configure plugins in their respective config files in plugins/[PluginName]/
  8. +
+ +

Common Issues

+ +

Players Can't Connect

+ + +

Server Lag

+ + +

World Corruption

+ + +

Recommended Plugins

+ + +

Further Resources

+ From 64e6e72ad7b2c88da49a6da0e57a7f993a14fc75 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 8 Nov 2025 16:29:13 +0000 Subject: [PATCH 4/5] Add comprehensive Rust server documentation Co-authored-by: iaretechnician <2749183+iaretechnician@users.noreply.github.com> --- modules/billing/docs/rust/index.php | 474 +++++++++++++++++++++--- modules/billing/docs/rust/index_old.php | 67 ++++ 2 files changed, 498 insertions(+), 43 deletions(-) create mode 100644 modules/billing/docs/rust/index_old.php diff --git a/modules/billing/docs/rust/index.php b/modules/billing/docs/rust/index.php index 003a2b9b..6243ce13 100644 --- a/modules/billing/docs/rust/index.php +++ b/modules/billing/docs/rust/index.php @@ -1,67 +1,455 @@ -

Rust Server Guide

+
+

Navigation

+
+ Quick Info + Installation + Configuration + Parameters + Plugins & Mods + Troubleshooting + Performance +
+
+ +

Rust Server Hosting Guide

Overview

-

Rust is available for hosting on our platform. This guide covers the basics of setting up and managing your Rust server.

+

Rust is a popular multiplayer survival game where players gather resources, build bases, and compete for survival. This comprehensive guide covers hosting a dedicated Rust server on Linux or Windows.

+

Quick Info

-

Quick Info

-
    -
  • Game Key: rust_linux64
  • -
  • Startup Command: -batchmode +server.ip %IP% %PORT% %PLAYERS% %HOSTNAME% %IDENTITY% %WORLDSIZE% %SEED% %SALT% %TICKRATE% %MAP% %BCK% %SAVEINTERNAL% %SECURE% +rcon.ip %IP% %RCON_PORT% %RCONWEB% %CONTROL_PASSWORD% -swnet %QUERY_PORT% -logfile output.txt
  • -
  • Log File: output.txt
  • -
  • Default Port: Not specified
  • -
  • Max Players: 500
  • +
      +
    • Default Port: 28015 (UDP)
    • +
    • RCON Port: 28016 (TCP)
    • +
    • Query Port: 28017 (UDP/TCP - Rust+ app)
    • +
    • Minimum RAM: 8GB (small server)
    • +
    • Recommended RAM: 16GB+ (medium/large servers)
    • +
    • Storage: 20GB+ (can grow to 50GB+)
    • +
    • App ID: 258550 (dedicated server)
    • +
    • Max Players: Configurable (50-500+)
    • +
    • Map Size: 3000-6000 (default 4000)
    • +
    • Log Files: RustDedicated_Data/output_log.txt
-

Getting Started

-

To create a Rust server:

-
    -
  1. Navigate to the Game Servers page
  2. -
  3. Find Rust in the list
  4. -
  5. Select your preferred configuration (slots, duration, etc.)
  6. -
  7. Add to cart and complete checkout
  8. -
  9. Your server will be automatically provisioned within minutes
  10. -
+

Installation & Setup

-

Server Configuration

-

After your server is created, you can configure it through the control panel:

+

System Requirements

-

Common Tasks

+

Installing via SteamCMD

+

Download: SteamCMD Guide

-

Starting Your Server

-

Servers are automatically started after creation. You can stop/start your server from the control panel.

+

Linux Installation

+
# Install SteamCMD
+mkdir ~/steamcmd && cd ~/steamcmd
+wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
+tar -xvzf steamcmd_linux.tar.gz
 
-

Connecting to Your Server

-

Use your server's IP address and port to connect from the game client.

+# Run SteamCMD and install Rust +./steamcmd.sh +login anonymous +force_install_dir /home/rust/server +app_update 258550 validate +quit +
-

Managing Files

-

Access your server files via FTP using the credentials provided in your control panel.

+

Windows Installation

+
1. Download SteamCMD for Windows
+2. Extract to C:\steamcmd
+3. Run steamcmd.exe
+4. login anonymous
+5. force_install_dir C:\RustServer
+6. app_update 258550 validate
+7. quit
+
-

Support

-

If you need assistance with your Rust server:

+

Server Configuration

+ +

Basic Startup Script (Linux)

+
#!/bin/bash
+# start.sh
+
+export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/rust/server/RustDedicated_Data/Plugins/x86_64
+
+cd /home/rust/server
+
+./RustDedicated -batchmode \
+    +server.ip 0.0.0.0 \
+    +server.port 28015 \
+    +server.tickrate 30 \
+    +server.hostname "My Rust Server" \
+    +server.identity "myserver" \
+    +server.maxplayers 100 \
+    +server.worldsize 4000 \
+    +server.seed 12345 \
+    +server.saveinterval 300 \
+    +server.globalchat true \
+    +server.description "Welcome to my server" \
+    +server.headerimage "https://i.imgur.com/yourimage.png" \
+    +server.url "https://yourwebsite.com" \
+    +rcon.ip 0.0.0.0 \
+    +rcon.port 28016 \
+    +rcon.password "YourSecurePassword" \
+    +rcon.web true \
+    -logfile "logs/$(date +%Y%m%d_%H%M%S).txt"
+
+ +

Windows Startup (start.bat)

+
@echo off
+cls
+:start
+echo Starting Rust server...
+
+RustDedicated.exe -batchmode ^
+    +server.ip 0.0.0.0 ^
+    +server.port 28015 ^
+    +server.hostname "My Rust Server" ^
+    +server.identity "myserver" ^
+    +server.maxplayers 100 ^
+    +server.worldsize 4000 ^
+    +server.saveinterval 300 ^
+    +rcon.port 28016 ^
+    +rcon.password "YourSecurePassword"
+
+goto start
+
+ +

Server Identity

+

Server data is stored in: server/[identity]/

+ +

server.cfg

+

Create server/myserver/cfg/server.cfg:

+
server.hostname "My Rust Server"
+server.description "Welcome to my Rust server!"
+server.url "https://yourwebsite.com"
+server.headerimage "https://i.imgur.com/yourimage.png"
+server.identity "myserver"
+server.seed 12345
+server.worldsize 4000
+server.maxplayers 100
+server.saveinterval 300
+server.tickrate 30
+
+# Gameplay
+server.pve false
+server.radiation true
+server.stability true
+decay.scale 1.0
+
+# Performance
+server.entityrate 16
+server.planttick 60
+server.planttickscale 1
+
+# Global chat
+server.globalchat true
+server.chathistory 500
+
+# Voice chat
+voice.decay true
+
+# RCON
+rcon.password "YourSecurePassword"
+rcon.web true
+
+ +

Startup Parameters Reference

+ +

Essential Parameters

+
+server.ip "0.0.0.0"              # Server IP (0.0.0.0 = all interfaces)
++server.port 28015                 # Game port (UDP)
++server.hostname "Name"            # Server name (appears in browser)
++server.identity "folder_name"     # Server data folder name
++server.maxplayers 100             # Maximum players
++server.worldsize 4000             # Map size (1000-6000)
++server.seed 12345                 # World seed (random if not set)
++server.saveinterval 300           # Autosave interval (seconds)
++server.tickrate 30                # Server tick rate (10-30)
++server.description "Text"         # Server description
++server.url "https://url"          # Server website
++server.headerimage "URL"          # Server banner image
++rcon.ip "0.0.0.0"                 # RCON bind IP
++rcon.port 28016                   # RCON port (TCP)
++rcon.password "password"          # RCON password
++rcon.web true                     # Enable web/Rust+ RCON
+
+ +

Gameplay Parameters

+
+server.pve false                  # PvE mode (true/false)
++server.radiation true             # Radiation enabled
++server.stability true             # Building stability
++server.secure true                # Require VAC
+decay.scale 1.0                    # Decay rate multiplier
+server.itemdespawn 180             # Item despawn time (minutes)
+
+ +

Performance Parameters

+
+server.entityrate 16              # Entity network update rate
++fps.limit 60                      # Server FPS limit
++gc.buffer 4096                    # Garbage collection buffer
+server.planttick 60                # Plant growth tick rate
+server.planttickscale 1            # Plant growth speed
+
+ +

Plugins & Mods (Oxide/uMod)

+ +

Installing Oxide/uMod

+
    +
  1. Download uMod: uMod.org
  2. +
  3. Extract to server root directory
  4. +
  5. Files go directly into /server/ directory
  6. +
  7. Restart server
  8. +
  9. Plugins folder created at oxide/plugins/
  10. +
+ +

Essential Plugins

+ +

Admin Tools

+ + +

Gameplay Enhancements

+ + +

Protection

+ + +

Performance

+ + +

Installing Plugins

+
# 1. Download .cs plugin file
+# 2. Place in oxide/plugins/
+cd /home/rust/server/oxide/plugins/
+wget https://umod.org/plugins/Plugin.cs
+
+# 3. Plugin auto-loads (or use oxide.reload PluginName)
+# 4. Configure in oxide/config/PluginName.json
+
+ +

Plugin Configuration

+

Configs auto-generate in oxide/config/ on first load.

+
# Edit config
+nano oxide/config/Kits.json
+
+# In-game or RCON
+oxide.reload Kits
+
+ +

Troubleshooting

+ +

Server Won't Start

+ +

Missing Libraries (Linux)

+
# Install required libraries
+sudo apt update
+sudo apt install lib32gcc-s1 libcurl4-gnutls-dev:i386
+
+# If still issues
+sudo apt install lib32stdc++6 libc6-i386
+
+ +

Port Already in Use

+
# Check ports
+sudo netstat -tulpn | grep 28015
+sudo lsof -i :28015
+
+# Kill process or change port
++server.port 28016 +rcon.port 28017
+
+ +

Permission Denied (Linux)

+
chmod +x RustDedicated
+chmod +x start.sh
+
+ +

Server Not in Browser

+
    +
  1. Check firewall: +
    sudo ufw allow 28015/udp
    +sudo ufw allow 28016/tcp
    +sudo ufw allow 28017/tcp
    +
    +
  2. +
  3. Verify ports open: netstat -tulpn | grep Rust
  4. +
  5. Wait 5-10 minutes: Can take time to appear
  6. +
  7. Direct connect: Press F1, type client.connect your.ip:28015
  8. +
+ +

High RAM Usage

+
    +
  1. Reduce worldsize: +server.worldsize 3000
  2. +
  3. Lower max players: +server.maxplayers 50
  4. +
  5. Increase saveinterval: +server.saveinterval 600
  6. +
  7. Use Auto Purge plugin
  8. +
  9. Regular wipes: Restart with fresh map weekly/monthly
  10. +
+ +

Lag/Low FPS

+
    +
  1. Reduce entity count: Use Entity Cleanup plugin
  2. +
  3. Lower tickrate: +server.tickrate 20 (default 30)
  4. +
  5. Increase planttick: server.planttick 120
  6. +
  7. Monitor with: perf 1 in console
  8. +
  9. Upgrade hardware: Rust is resource-intensive
  10. +
+ +

Map Wipe

+
# Stop server
+# Delete map file
+rm server/myserver/proceduralmap.*
+
+# Change seed (optional)
++server.seed 54321
+
+# Start server (generates new map)
+./start.sh
+
+ +

Blueprint Wipe

+
# Stop server
+# Delete blueprint data
+rm -rf server/myserver/UserPersistence/
+
+# Start server
+./start.sh
+
+ +

Performance Optimization

+ +

Server Configuration

+
server.tickrate 25                 # Lower = better performance
+server.entityrate 12               # Lower = less bandwidth
+server.planttick 90                # Higher = less CPU usage
+fps.limit 60                       # Limit server FPS
+gc.buffer 4096                     # Garbage collection
+
+ +

Map Size vs Performance

+ + +

Scheduled Tasks

+
#!/bin/bash
+# Auto-restart script with backup
+
+# Backup
+tar -czf backup_$(date +%Y%m%d).tar.gz server/myserver/
+
+# Stop server
+killall RustDedicated
+sleep 10
+
+# Update server
+cd ~/steamcmd
+./steamcmd.sh +login anonymous +force_install_dir /home/rust/server +app_update 258550 +quit
+
+# Start server
+cd /home/rust/server
+./start.sh
+
+ +

Crontab Auto-Restart

+
# Edit crontab
+crontab -e
+
+# Restart daily at 6 AM
+0 6 * * * /home/rust/restart.sh
+
+# Save weekly at Sunday 5 AM
+0 5 * * 0 tar -czf /backups/rust_$(date +\%Y\%m\%d).tar.gz /home/rust/server/myserver/
+
+ +

RCON Management

+ +

RCON Tools

+ + +

Common RCON Commands

+
# Player management
+kick "PlayerName" "Reason"
+ban "PlayerName" "Reason"
+banid "SteamID64"
+unban "SteamID64"
+listid                           # List banned IDs
+status                           # Show connected players
+
+# Server management
+save                             # Manual save
+server.writecfg                  # Save config
+server.stop                      # Stop server
+server.restart                   # Restart server
+oxide.reload PluginName          # Reload plugin
+
+# Game settings
+env.time 12                      # Set time (0-24)
+weather.rain 0                   # Stop rain
+airdrop.min_players 0            # Always allow airdrops
+
+ +

Additional Resources

+
-

Important Notes

-
    -
  • Always keep your server updated to the latest version
  • -
  • Make regular backups of your server configuration
  • -
  • Review and follow the game's End User License Agreement (EULA)
  • +

    ⚠️ Important Notes

    +
      +
    • Rust servers require significant resources (8GB+ RAM minimum)
    • +
    • Regular map wipes recommended (weekly/monthly)
    • +
    • Keep server updated via SteamCMD
    • +
    • Use strong RCON password
    • +
    • Monitor server performance regularly
    • +
    • Backup server data before updates
    -
\ No newline at end of file + + +

+ Last updated: November 2024 +

diff --git a/modules/billing/docs/rust/index_old.php b/modules/billing/docs/rust/index_old.php new file mode 100644 index 00000000..003a2b9b --- /dev/null +++ b/modules/billing/docs/rust/index_old.php @@ -0,0 +1,67 @@ + +

Rust Server Guide

+ +

Overview

+

Rust is available for hosting on our platform. This guide covers the basics of setting up and managing your Rust server.

+ +
+

Quick Info

+
    +
  • Game Key: rust_linux64
  • +
  • Startup Command: -batchmode +server.ip %IP% %PORT% %PLAYERS% %HOSTNAME% %IDENTITY% %WORLDSIZE% %SEED% %SALT% %TICKRATE% %MAP% %BCK% %SAVEINTERNAL% %SECURE% +rcon.ip %IP% %RCON_PORT% %RCONWEB% %CONTROL_PASSWORD% -swnet %QUERY_PORT% -logfile output.txt
  • +
  • Log File: output.txt
  • +
  • Default Port: Not specified
  • +
  • Max Players: 500
  • +
+
+ +

Getting Started

+

To create a Rust server:

+
    +
  1. Navigate to the Game Servers page
  2. +
  3. Find Rust in the list
  4. +
  5. Select your preferred configuration (slots, duration, etc.)
  6. +
  7. Add to cart and complete checkout
  8. +
  9. Your server will be automatically provisioned within minutes
  10. +
+ +

Server Configuration

+

After your server is created, you can configure it through the control panel:

+ + +

Common Tasks

+ +

Starting Your Server

+

Servers are automatically started after creation. You can stop/start your server from the control panel.

+ +

Connecting to Your Server

+

Use your server's IP address and port to connect from the game client.

+ +

Managing Files

+

Access your server files via FTP using the credentials provided in your control panel.

+ +

Support

+

If you need assistance with your Rust server:

+ + +
+

Important Notes

+
    +
  • Always keep your server updated to the latest version
  • +
  • Make regular backups of your server configuration
  • +
  • Review and follow the game's End User License Agreement (EULA)
  • +
+
\ No newline at end of file From bccfa2b2498c8d2326e0ba36c93b3b2665bac279 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 8 Nov 2025 16:32:23 +0000 Subject: [PATCH 5/5] Add comprehensive summary documentation for enhancements Co-authored-by: iaretechnician <2749183+iaretechnician@users.noreply.github.com> --- .../docs/DOCUMENTATION_ENHANCEMENT_SUMMARY.md | 249 ++++++++++++++++++ 1 file changed, 249 insertions(+) create mode 100644 modules/billing/docs/DOCUMENTATION_ENHANCEMENT_SUMMARY.md diff --git a/modules/billing/docs/DOCUMENTATION_ENHANCEMENT_SUMMARY.md b/modules/billing/docs/DOCUMENTATION_ENHANCEMENT_SUMMARY.md new file mode 100644 index 00000000..23c3e20e --- /dev/null +++ b/modules/billing/docs/DOCUMENTATION_ENHANCEMENT_SUMMARY.md @@ -0,0 +1,249 @@ +# Documentation Enhancement Summary + +## Overview +This document summarizes the comprehensive enhancements made to the billing module's documentation system and session handling. + +## Issues Resolved + +### 1. Documentation Page Login Button Issue ✅ +**Problem:** Documentation page showed "Login" button even when user was logged in. +**Root Cause:** docs.php used basic `session_start()` instead of the website's session name. +**Solution:** Changed to use `gameservers_website` session name to match rest of website. + +### 2. Cart Page Display Issue ✅ +**Problem:** Cart page didn't display when clicking menu link. +**Root Cause:** cart.php also used basic `session_start()` causing session inconsistency. +**Solution:** Changed to use `gameservers_website` session name for consistency. + +### 3. Documentation Content Enhancement ✅ +**Problem:** Documentation was basic, system-specific, and not comprehensive enough for SEO. +**Solution:** Created detailed, XML-independent, general hosting guides for major games. + +## Changes Made + +### Session Fixes +**Files Modified:** +- `modules/billing/docs.php` +- `modules/billing/cart.php` + +**Change:** +```php +// OLD +session_start(); + +// NEW +if (session_status() === PHP_SESSION_NONE) { + session_name("gameservers_website"); + session_start(); +} +``` + +This ensures the documentation and cart pages use the same session as the rest of the website (login.php, menu.php, etc.), so login state is properly detected. + +### Documentation Enhancements + +#### Games Enhanced (3 of 151 total) +1. **Minecraft Java Edition** (549 lines) +2. **CS:GO & CS2** (584 lines) +3. **Rust** (455 lines) + +#### Documentation Structure (Template for All Games) +Each comprehensive guide includes: + +1. **Navigation Bar** - Quick links to all sections +2. **Quick Info Section** - Essential details at a glance: + - Default ports (game, RCON, query) + - RAM requirements (min/recommended) + - Storage requirements + - Log file locations + - Default configurations + - Protocol information + +3. **Installation & Setup** - Complete instructions: + - System requirements (CPU, RAM, storage, bandwidth) + - Linux installation steps + - Windows installation steps + - SteamCMD usage (where applicable) + - First-time setup procedures + +4. **Server Configuration** - Detailed config guides: + - All configuration files explained + - Every parameter documented + - Example configurations + - Best practices + +5. **Startup Parameters** - Complete reference: + - All command-line parameters + - Parameter breakdown and explanations + - Startup script examples (Linux & Windows) + - Advanced optimization flags + +6. **Plugins & Mods** - Enhancement guides: + - Plugin/mod platform installation + - Popular plugins/mods list with descriptions + - Installation procedures + - Configuration examples + +7. **Troubleshooting** - Common issues & solutions: + - Server won't start + - Connection issues + - Performance problems + - Error messages and fixes + - Diagnostic commands + +8. **Performance Optimization** - Tuning guides: + - Configuration optimization + - Resource management + - Automation scripts + - Monitoring tips + - Scheduled maintenance + +9. **Additional Resources** - External links: + - Official documentation + - Community resources + - Tools and utilities + - Support forums + +## Documentation Principles + +### ✅ XML-Independent +- Does NOT pull information from panel XML files +- Does NOT reference `modules/config_games/server_configs/` +- Stands alone as general game server hosting information + +### ✅ General Hosting Focus +- Written from VPS/dedicated server perspective +- Not specific to our panel system +- Applicable to any hosting environment +- User could follow these guides on any server + +### ✅ SEO-Optimized +- Comprehensive content (400-600 lines per game) +- Covers all aspects of server hosting +- Natural keyword integration +- Designed to rank in Google search results +- Goal: Become go-to resource for game server hosting + +### ✅ Professional Quality +- Clean, modern formatting +- Code examples with syntax highlighting +- Internal navigation between sections +- Consistent structure across all games +- Production-ready commands and configs + +## Benefits + +### For Users +- Complete guides for setting up game servers +- Troubleshooting help for common issues +- Performance optimization tips +- All info in one place + +### For Business +- SEO boost - comprehensive guides rank well +- Authority building - comprehensive content +- Traffic generation - users find guides via Google +- Reduced support load - self-service documentation + +### For Future Development +- Template established for remaining 148 games +- Consistent structure makes expansion easy +- Can be enhanced incrementally +- Scalable approach + +## Remaining Games (148) + +The same comprehensive template can be applied to all remaining games: +- ARK: Survival Evolved +- Valheim +- 7 Days to Die +- Team Fortress 2 +- Garry's Mod +- Terraria +- Don't Starve Together +- Project Zomboid +- Satisfactory +- V Rising +- Palworld +- And 138 more... + +## Testing Completed + +✅ PHP syntax validation - No errors +✅ CodeQL security scan - No issues +✅ Session handling verified +✅ Documentation structure validated +✅ No XML references confirmed +✅ File permissions correct + +## Implementation Notes + +### Session Name Consistency +The entire billing module now uses `gameservers_website` session name: +- login.php ✅ +- register.php ✅ +- logout.php ✅ +- menu.php ✅ +- docs.php ✅ (FIXED) +- cart.php ✅ (FIXED) +- my_account.php ✅ +- All other pages ✅ + +### Documentation File Structure +``` +docs/ +├── minecraft/ +│ ├── index.php (549 lines - comprehensive) +│ ├── index_old.php (backup) +│ ├── metadata.json +│ └── icon.png +├── csgo/ +│ ├── index.php (584 lines - comprehensive) +│ ├── index_old.php (backup) +│ ├── metadata.json +│ └── icon.jpg +├── rust/ +│ ├── index.php (455 lines - comprehensive) +│ ├── index_old.php (backup) +│ ├── metadata.json +│ └── icon.png +└── [148 other games with basic docs to be enhanced] +``` + +## Future Enhancement Ideas + +1. **Add More Games** - Apply template to remaining 148 games +2. **Video Tutorials** - Link to video guides where available +3. **Interactive Commands** - Copy-to-clipboard for commands +4. **Version History** - Track game version updates +5. **Community Contributions** - Allow user-submitted tips +6. **Search Functionality** - Cross-game documentation search +7. **Translations** - Multi-language support + +## Maintenance + +### Keeping Documentation Current +- Monitor game updates and patches +- Update documentation quarterly +- Track breaking changes in games +- Community feedback integration + +### Backup Strategy +All original documentation files are preserved as `index_old.php` in each game folder for reference and potential rollback if needed. + +## Conclusion + +The documentation system is now: +- ✅ Fully functional with correct session handling +- ✅ Comprehensive for 3 major games (Minecraft, CS:GO/CS2, Rust) +- ✅ Template-based for easy expansion to remaining games +- ✅ SEO-optimized for Google search ranking +- ✅ XML-independent and general hosting focused +- ✅ Production-ready and tested + +**Status:** Ready for review and deployment + +--- + +*Created: November 8, 2024* +*Last Updated: November 8, 2024*