Gaming intermediate ⏱ 45 minutes

AMP: Multi-Game Server Manager

Application Management Panel for game servers. Web UI for managing multiple game instances.

By homelabbing.io • 2025-12-17
#amp#game-servers#management#panel#automation

Introduction

Managing multiple game servers used to be a juggling act. Each game has its own configuration files, command syntax, update process, and quirks. Run five different games? That’s five different SSH sessions, five different backup strategies, five different sets of commands to remember.

AMP (Application Management Panel) changes this completely. Think of it as a universal control panel for game servers - one web interface to rule them all. Whether you’re running Minecraft, Valheim, ARK, Terraria, Rust, or any of 200+ supported games, AMP provides a unified management experience with automated updates, scheduled tasks, file management, and user permissions.

What makes AMP special is its “instance” system. Each game server runs as an isolated instance with its own resources, users, and configuration - but you manage everything from a single dashboard. Add a Minecraft server? Click. Add a Valheim server? Click. Configure backups for all of them at once? Done.

For homelabbers running game hosting communities, friend groups, or learning server administration, AMP hits a sweet spot: more powerful than running servers manually, more flexible than Pterodactyl for game-specific features, and significantly easier than managing each game independently.

By the end of this guide, you’ll:

  • Understand AMP’s architecture and licensing model
  • Install AMP on Linux (Ubuntu/Debian)
  • Create and manage multiple game server instances
  • Configure resource allocation and limits
  • Set up automated backups and updates
  • Manage users and permissions
  • Deploy popular games (Minecraft, Valheim, Terraria, etc.)
  • Optimize performance across instances
  • Integrate with Docker and reverse proxies

Real-world context: AMP powers thousands of community game servers. Hosting companies use it to manage customer servers. Discord communities use it to run multiple game types for their members. Homelabbers use it because it makes professional-grade game server management accessible.

Compared to alternatives:

  • vs. Pterodactyl: Better game-specific features, easier updates, less complex
  • vs. Manual management: Massively simpler, automated updates, web UI
  • vs. Individual web panels: One interface for all games, shared user management

Let’s transform your homelab into a multi-game hosting powerhouse.


Prerequisites

Hardware Requirements

Minimum Specifications:

  • CPU: 4 cores @ 2.5GHz+ (more cores for more servers)
  • RAM: 8GB minimum (4GB for AMP + OS, 4GB for game servers)
  • Storage: 40GB+ SSD (faster storage = better game server performance)
  • Network: 100 Mbps upload (10 Mbps per concurrent game server recommended)

Recommended Specifications (5-10 game servers):

  • CPU: 6-8 cores @ 3.5GHz+ (single-thread performance matters for games)
  • RAM: 16-32GB (allocate 2-8GB per game depending on game)
  • Storage: 200GB+ NVMe SSD
  • Network: 500 Mbps+ upload

Resource Planning Example:

16GB RAM Server:
- Operating System: 2GB
- AMP Controller: 1GB
- AMP Instances: 1GB total
- Minecraft Server 1: 4GB
- Valheim Server: 4GB
- Terraria Server: 2GB
- Buffer: 2GB

Per-Game Resource Estimates:

Minecraft (Java): 2-6GB RAM, 1-2 CPU cores
Valheim: 4-6GB RAM, 2 CPU cores
Rust: 8-12GB RAM, 3-4 CPU cores
ARK: Survival Evolved: 6-8GB RAM, 2-3 CPU cores
Terraria: 1-2GB RAM, 1 CPU core
Project Zomboid: 4-6GB RAM, 2 CPU cores

Software Prerequisites

Operating System:

  • Ubuntu 20.04/22.04 LTS (recommended)
  • Debian 11/12
  • CentOS 8 Stream / Rocky Linux 8

AMP does NOT officially support:

  • Windows (use WSL2 if you must)
  • macOS
  • ARM architecture (Raspberry Pi)

Required Software (auto-installed by AMP):

  • .NET Runtime
  • Java (for Java-based game servers)
  • Screen (for session management)
  • Various game-specific dependencies

Network Requirements:

  • Static IP: For your AMP server (set DHCP reservation in router)
  • Port forwarding: Ability to forward ports for each game server
  • Firewall control: Ability to configure firewall rules

Licensing & Costs

AMP Licensing Model:

AMP is commercial software with a free trial and paid licenses.

License Types:

1. Professional License (Most Common)

  • Cost: ~$10 USD (one-time purchase)
  • Instances: Unlimited on one server
  • Support: Community support
  • Updates: Lifetime updates
  • Best for: Personal use, small communities

2. Enterprise License

  • Cost: ~$50-100 USD (one-time purchase)
  • Instances: Unlimited across multiple servers
  • Support: Priority support
  • Features: Advanced management, white-labeling
  • Best for: Hosting businesses, large communities

3. Free Trial

  • Duration: Unlimited (with limitations)
  • Instances: 2 instances maximum
  • Features: All features unlocked
  • Limitations: 2-instance cap, watermark
  • Best for: Testing AMP before purchasing

Our recommendation: Start with free trial to test. If you run more than 2 game servers, purchase Professional License (~$10).

Purchase at: https://cubecoders.com/AMP#buyAMP


Understanding AMP Architecture

Before installation, let’s understand how AMP works.

The AMP Stack

AMP has three main components:

┌─────────────────────────────────────────┐
│         AMP Web Interface               │
│    (Web UI at :8080 by default)         │
├─────────────────────────────────────────┤
│         AMP Controller (ampinstmgr)     │
│   (Manages all instances, users, auth)  │
├─────────────────────────────────────────┤
│   ┌─────────┬─────────┬─────────────┐   │
│   │Instance1│Instance2│  Instance3  │   │
│   │Minecraft│ Valheim │  Terraria   │   │
│   │(ADS01)  │(ADS02)  │   (ADS03)   │   │
│   └─────────┴─────────┴─────────────┘   │
│         Application Instances            │
└─────────────────────────────────────────┘

Component Breakdown:

1. AMP Controller (ampinstmgr):

  • Central management daemon
  • Handles authentication
  • Creates and manages instances
  • Provides web UI and API
  • Manages licensing

2. Instances (ADS - Application Data Store):

  • Each instance is an isolated environment
  • Runs one game server
  • Has own ports, files, configuration
  • Can be started/stopped independently
  • Managed via Controller

3. Web Interface:

  • Accessible at http://your-server-ip:8080
  • Unified dashboard for all instances
  • File manager, console, configuration editor
  • User and permission management
  • Monitoring and statistics

Instance Types

AMP supports multiple instance types:

Generic Module:

  • Runs any application/game
  • Manually configure commands and settings
  • Most flexible but requires more setup

Game-Specific Modules:

  • Pre-configured for specific games
  • Auto-downloads game files
  • Game-specific settings UI
  • Automated updates
  • Examples: Minecraft, Valheim, Rust, ARK, Terraria

Available Modules (200+):

Minecraft (Java Edition)
Minecraft Bedrock
Valheim
Rust
ARK: Survival Evolved / Ascended
Project Zomboid
Terraria
7 Days to Die
Satisfactory
V Rising
Palworld
Sons of the Forest
... and 180+ more!

Full list: https://github.com/CubeCoders/AMPTemplates/tree/main

How Instances Work

Example: Creating Minecraft instance:

  1. Click “Create Instance” in AMP dashboard
  2. Select “Minecraft (Java)” template
  3. AMP creates isolated environment:
    • Dedicated directory: /home/amp/.ampdata/instances/Minecraft01/
    • Dedicated ports: 25565 (Minecraft), 8081 (AMP web UI)
    • Dedicated datastore: Instance-specific database
  4. AMP downloads Minecraft server JAR
  5. Generates configuration files
  6. Instance ready to start!

Each instance shows up in dashboard:

  • Status: Running/Stopped
  • CPU/RAM usage
  • Player count
  • Quick actions: Start/Stop/Restart/Console

Installing AMP

Let’s install AMP on Ubuntu Server 22.04.

Step 1: System Preparation

Update system:

# Update package lists
sudo apt update && sudo apt upgrade -y

# Install required dependencies
sudo apt install -y curl wget software-properties-common apt-transport-https

# Create AMP user (for security)
sudo useradd -m -s /bin/bash amp
sudo passwd amp
# Set a strong password for amp user

Step 2: Install AMP

Run AMP installation script:

# Switch to amp user
sudo su - amp

# Download and run AMP installer
bash <(wget -qO- getamp.sh)

Installation wizard will ask:

1. Select installation directory:

Default: /home/amp/
Press Enter to accept

2. Select AMP license:

Options:
  1. Free Trial (2 instances max)
  2. Enter license key (if purchased)

Select: 1 (for trial, or 2 if you have a key)

3. Select modules to install:

Available modules:
  - Minecraft
  - Valheim
  - Generic
  - [many more]

Recommendation: Select "All" or specific games you need

4. Create admin account:

Username: admin
Password: [strong password]
Email: [email protected]

Installation will:

  • Download AMP binaries
  • Install .NET runtime
  • Configure systemd services
  • Create initial instance (ADS01)
  • Start AMP Controller

Wait for completion (~5-10 minutes depending on modules).

Step 3: Initial Configuration

Access AMP Web UI:

Open browser to: http://YOUR-SERVER-IP:8080

Login with admin credentials you created.

First-time setup:

1. License activation:

  • If using trial: Click “Activate Trial”
  • If purchased: Enter license key

2. Security settings:

Two-Factor Authentication: Recommended (enable)
IP Whitelist: Optional (restrict access by IP)
Session Timeout: 30 minutes (adjust as needed)

3. Default instance (ADS01):

  • AMP creates a default “ADS01” instance
  • This is typically Generic or Minecraft
  • You can delete or reconfigure this later

4. External IP configuration:

  • Configuration → Instance Networking
  • External IP: Enter your public IP (for external connections)
  • Local IP: Your server’s local IP (e.g., 192.168.1.100)

Save configuration.

Step 4: Configure Firewall

Allow AMP ports:

# AMP Controller web UI
sudo ufw allow 8080/tcp

# AMP instances (range depends on how many instances you'll run)
# Default range: 8081-8181 for instance web UIs
sudo ufw allow 8081:8181/tcp

# Game server ports (examples)
sudo ufw allow 25565/tcp  # Minecraft
sudo ufw allow 2456:2458/udp  # Valheim
sudo ufw allow 7777/tcp  # Terraria

# Enable firewall
sudo ufw enable

Port forwarding on router:

  • Forward port 8080 to AMP server IP (for external web access)
  • Forward game-specific ports (25565 for Minecraft, etc.)

Step 5: Secure AMP Installation

Change default web UI port (optional but recommended):

# Edit AMP config
nano ~/.ampdata/ampinstmgr/AMPConfig.conf

Find and change:

"AMP.WebServer.Port": 8080

To:

"AMP.WebServer.Port": 9090

Restart AMP:

ampinstmgr restart

Now access at: http://YOUR-SERVER-IP:9090

Enable HTTPS (recommended):

Use reverse proxy (Nginx Proxy Manager, Caddy, Traefik) with Let’s Encrypt SSL.

Example with Nginx Proxy Manager:

  1. Create proxy host in NPM
  2. Domain: amp.yourdomain.com
  3. Forward to: localhost:8080
  4. SSL: Request Let’s Encrypt certificate
  5. Access AMP via: https://amp.yourdomain.com

Creating Game Server Instances

Now let’s create game servers!

Creating a Minecraft Server

In AMP Dashboard:

1. Navigate to Instances:

  • Click “Instances” in left sidebar
  • Click “Create Instance”

2. Select application:

  • Application: Minecraft Java Edition
  • Instance Name: Minecraft-Survival
  • Friendly Name: “My Survival Server”
  • Port: 25565 (default Minecraft port)
  • IP Binding: 0.0.0.0 (all interfaces)

3. Instance settings:

  • Data Store: Choose instance directory location (default is fine)
  • Memory: 4096 MB (4GB for Minecraft)
  • CPUs: 2 cores

4. Click “Create”

AMP will:

  • Create instance environment
  • Download Minecraft server JAR
  • Generate server.properties
  • Create startup scripts
  • Allocate dedicated port for instance web UI (e.g., 8081)

5. Configure Minecraft settings:

Once created, click on instance → Configuration

Minecraft-specific settings:

Server Version: Latest (or specific version like 1.20.4)
Server Type: Paper (recommended) or Vanilla
Max Players: 50
Difficulty: Normal
Game Mode: Survival
PVP: Enabled

6. Start the server:

  • Click “Start” button
  • Watch console as server boots
  • Server ready when you see: “Done! For help, type ‘help’”

7. Connect:

  • Minecraft client → Multiplayer → Add Server
  • Address: YOUR-SERVER-IP:25565
  • Join!

Creating a Valheim Server

In AMP Dashboard:

1. Create Instance:

  • Instances → Create Instance
  • Application: Valheim
  • Instance Name: Valheim-01
  • Port: 2456 (Valheim default)

2. Configure Valheim:

Settings → Valheim Server:

Server Name: My Valheim Server
World Name: Dedicated
Server Password: strongpassword (required!)
Public Server: No (for private server)

3. Allocate resources:

  • Memory: 4096 MB
  • CPUs: 2 cores

4. Start server

Valheim needs 3 ports forwarded:

2456/UDP - Game port
2457/UDP - Query port
2458/UDP - Not sure but Valheim uses it

5. Connect:

  • Valheim → Join Game
  • Add server: YOUR-SERVER-IP:2456
  • Enter password
  • Join world!

Creating Multiple Instances

Example: Run 3 different servers:

Instance 1: Minecraft Survival

  • Port: 25565
  • RAM: 4GB

Instance 2: Minecraft Creative

  • Port: 25566 (different port!)
  • RAM: 3GB

Instance 3: Terraria

  • Port: 7777
  • RAM: 2GB

Each instance:

  • Isolated file system
  • Dedicated RAM/CPU allocation
  • Own web management UI
  • Independent start/stop
  • Separate backup schedule

Access instance management:

  • Instances → Click instance name
  • Or navigate to: http://YOUR-SERVER-IP:8081 (instance 1), 8082 (instance 2), etc.

Resource Management

AMP provides granular control over instance resources.

Setting Resource Limits

Per-instance resource allocation:

Instance → Settings → Resource Management:

Memory Limit: 4096 MB (hard limit - instance killed if exceeded)
Memory Reservation: 2048 MB (guaranteed minimum)
CPU Limit: 200% (2 full cores)
CPU Weight: 1024 (scheduling priority, default)

Understanding limits:

Memory Limit:

  • Hard cap - instance cannot use more
  • If exceeded, process is killed (OOM)
  • Set 20% higher than expected usage for safety

Memory Reservation:

  • Guaranteed minimum allocation
  • Useful when running many instances
  • Prevents other instances from starving this one

CPU Limit:

  • 100% = 1 full core
  • 200% = 2 full cores
  • 400% = 4 full cores

CPU Weight:

  • Relative priority (higher = more priority)
  • Default: 1024
  • High priority instance: 2048
  • Low priority: 512

Monitoring Resource Usage

Instance Dashboard:

  • Real-time CPU/RAM graphs
  • Network usage
  • Disk I/O
  • Player count (for supported games)

View all instances:

  • Main dashboard shows all instances
  • Sort by CPU usage, RAM usage, status

Performance alerts:

Settings → Monitoring → Alerts:

CPU Usage over 80% for 5 minutes → Send email alert
RAM Usage over 90% → Restart instance
Disk Usage over 85% → Send notification

Optimizing Multi-Instance Performance

Best practices for running multiple servers:

1. Stagger resource-heavy servers:

Heavy: Minecraft (4GB), Rust (8GB)
Medium: Valheim (4GB), ARK (6GB)
Light: Terraria (2GB), Starbound (1GB)

Don't run: Minecraft + Rust + ARK simultaneously on 16GB server
Do run: Minecraft + Valheim + Terraria = 10GB (manageable)

2. Use CPU limits to prevent one server monopolizing:

Minecraft: 200% (2 cores)
Valheim: 150% (1.5 cores)
Terraria: 100% (1 core)

3. Monitor and adjust:

  • Run servers with expected player load
  • Watch AMP resource graphs
  • Adjust limits based on actual usage

4. Separate disk I/O intensive servers:

  • Put Minecraft world on separate SSD from ARK installation
  • Use different disks for backup destinations

Automated Backups

AMP’s backup system is comprehensive and game-aware.

Configuring Backups

Instance → Backups → Settings:

Backup Schedule:

Frequency: Every 6 hours
Retention: Keep 7 days (automatic cleanup)
Pre-Backup Action: Send server message "Backup starting..."
Post-Backup Action: None

Backup Location:

Local: /home/amp/.ampdata/backups/InstanceName/
Remote: Optional (S3, FTP, etc.)

Backup Options:

Compression: Enabled (tar.gz)
Backup Before Update: Enabled (critical!)
Atomic Backups: Enabled (ensures consistency)

Click “Save” and “Run Backup Now” to test.

Backup Storage

Local backups:

  • Stored in instance backup directory
  • Fast to create and restore
  • Consume local disk space

Remote backups (recommended for production):

AMP supports:

  • Amazon S3 / S3-compatible (Wasabi, Backblaze B2)
  • FTP/SFTP
  • Local network share (SMB/NFS)

Example: S3 Backup Configuration:

Backups → Remote Backup:

Type: Amazon S3
Bucket: my-amp-backups
Region: us-east-1
Access Key: YOUR_ACCESS_KEY
Secret Key: YOUR_SECRET_KEY
Path: /minecraft-survival/

Enable “Upload to Remote After Local Backup”

Now backups automatically sync to S3!

Restoring from Backup

Manual restore:

Instance → Backups → Backup List:

  1. Select backup to restore
  2. Click “Restore”
  3. Warning: This will STOP server and REPLACE all files
  4. Confirm restoration
  5. AMP extracts backup
  6. Start server

Automatic restore (disaster recovery):

If instance is corrupted:

  1. Delete instance (or create new instance)
  2. Create instance with same name
  3. AMP → Restore from backup during creation
  4. Select backup archive
  5. Instance restored!

Backup Best Practices

1. Offsite backups:

  • Always use remote backup (S3, FTP)
  • Local disk failure = lost backups otherwise

2. Test restores regularly:

  • Create test instance
  • Restore latest backup
  • Verify world/files intact
  • Delete test instance

3. Pre-update backups:

  • Always backup before game updates
  • AMP can do this automatically

4. Retention policy:

Keep:
- Last 7 daily backups
- Last 4 weekly backups
- Last 3 monthly backups

5. Backup before major events:

  • Before world resets
  • Before major plugin installations
  • Before modpack updates

User Management & Permissions

AMP has robust multi-user support.

Creating Users

Users → Add User:

Username: player1
Email: [email protected]
Password: (strong password)

User is created but has NO permissions yet.

Permission System

AMP uses role-based permissions:

Permission Levels:

1. Super Admin:

  • Full control over everything
  • Can create/delete instances
  • Can manage users
  • Can change AMP settings

2. Admin:

  • Full control over assigned instances
  • Cannot create new instances
  • Cannot manage other users
  • Can configure instance settings

3. Moderator:

  • Console access
  • File manager (limited)
  • Can start/stop server
  • Cannot change configuration

4. User (Read-Only):

  • View console
  • View server status
  • Cannot execute commands
  • Cannot modify files

Assigning Permissions

Users → Select User → Permissions:

Grant instance access:

Instance: Minecraft-Survival
Role: Admin

User now has admin access to that instance only.

Grant multiple instances:

Instance: Minecraft-Survival → Admin
Instance: Valheim-01 → Moderator
Instance: Terraria-01 → User

Granular permissions:

Advanced → Custom Permissions:

Console.SendCommand: Enabled
Files.Read: Enabled
Files.Write: Disabled
Backups.Create: Enabled
Backups.Delete: Disabled
Settings.Change: Disabled
Instance.Start: Enabled
Instance.Stop: Enabled

Use Case Examples

Example 1: Discord Moderator

Give Discord mod access to manage Minecraft server:

User: discordmod
Instance: Minecraft-Survival
Role: Moderator
Permissions:
  - Console access (kick/ban players)
  - File manager (read-only)
  - Cannot change server settings
  - Cannot stop/restart server

Example 2: Co-Admin

Give friend full control:

User: co-admin
Instance: All Instances
Role: Admin
Permissions:
  - Full control over instances
  - Cannot delete instances
  - Cannot manage other users

Example 3: Viewer

Allow someone to watch server status:

User: viewer
Instance: Minecraft-Survival
Role: User
Permissions:
  - View console (read-only)
  - View player list
  - No command execution

Supported Games & Templates

AMP supports 200+ games. Here are the most popular:

Sandbox / Survival:

Minecraft (Java Edition) - Most popular
Minecraft Bedrock Edition
Terraria
Valheim
ARK: Survival Evolved
ARK: Survival Ascended
Rust
7 Days to Die
Project Zomboid
V Rising
The Forest
Sons of the Forest
Satisfactory
Palworld
Conan Exiles

FPS / Shooters:

Counter-Strike: Global Offensive (CS:GO)
Counter-Strike 2
Team Fortress 2
Left 4 Dead 2
Insurgency: Sandstorm
Squad
Hell Let Loose

Strategy / Simulation:

Factorio
Space Engineers
Empyrion - Galactic Survival
Stormworks

MMO / Social:

Vintage Story
Core Keeper
Myth of Empires

Modded Games:

Minecraft with Forge
Minecraft with Fabric
Minecraft with Paper + Plugins

Full list: https://github.com/CubeCoders/AMPTemplates

Installing Game-Specific Modules

If a game isn’t available:

1. Check for community templates:

2. Use Generic Module:

  • Create instance with “Generic” template
  • Manually configure game server
  • Define startup command, ports, config files

3. Create custom template:

  • AMP supports custom JSON templates
  • Define game-specific settings
  • Contribute back to community

Game-Specific Configuration Examples

Rust server:

Instance → Configuration → Rust:

Server Name: My Rust Server
Max Players: 50
World Size: 4000
Seed: 12345 (consistent world generation)
PVE Mode: No
Admin Password: (set strong password)
RCON Password: (for remote console)

ARK: Survival Evolved:

Instance → Configuration → ARK:

Session Name: My ARK Server
Max Players: 70
Map: The Island (or Ragnarok, Extinction, etc.)
Difficulty: 5.0
PVP: Enabled
XP Multiplier: 2.0
Taming Speed Multiplier: 3.0

Project Zomboid:

Instance → Configuration → Project Zomboid:

Server Name: Zombie Survival
Max Players: 32
PVP: Enabled
Difficulty: Normal
World Size: Default
Mods: (list of mod IDs from Steam Workshop)

Automation & Scheduling

AMP’s task scheduler automates server management.

Scheduled Tasks

Instance → Tasks → Add Task:

Task Types:

1. Restart Server:

Name: Daily Restart
Schedule: 0 4 * * * (4 AM daily)
Pre-Task: Send message "Server restarting in 60 seconds"
Delay: 60 seconds
Action: Restart Instance
Post-Task: Send message "Server is back online!"

2. Backup:

Name: Backup Before Restart
Schedule: 0 3 * * * (3 AM daily, 1 hour before restart)
Action: Create Backup

3. Send Console Command:

Name: Save World
Schedule: 0 */2 * * * (every 2 hours)
Action: Send Command
Command: save-all (Minecraft)

4. Update Server:

Name: Weekly Update Check
Schedule: 0 5 * * 0 (Sunday 5 AM)
Action: Update Application
Backup First: Yes
Restart After: Yes

Cron Schedule Examples

Cron syntax: minute hour day month weekday

0 4 * * *       - Daily at 4:00 AM
0 */6 * * *     - Every 6 hours
0 0 * * 0       - Weekly on Sunday midnight
0 3 1 * *       - Monthly on 1st day at 3 AM
*/30 * * * *    - Every 30 minutes
0 2 * * 1-5     - Weekdays (Mon-Fri) at 2 AM

Automation Examples

Example 1: Minecraft Server Maintenance

Task 1: Announce restart
  Schedule: 0 3 55 * * * (3:55 AM)
  Command: say Server restarting in 5 minutes for maintenance!

Task 2: Kick players with warning
  Schedule: 0 3 59 * * * (3:59 AM)
  Command: say Server restarting in 60 seconds!

Task 3: Backup
  Schedule: 0 3 59 30 * * * (3:59:30 AM)
  Action: Create Backup

Task 4: Restart
  Schedule: 0 4 * * * (4:00 AM)
  Action: Restart Instance

Example 2: Resource-Saving Auto-Shutdown

Task: Check player count and shutdown if empty
  Schedule: 0 */1 * * * (every hour)
  Condition: If players = 0 for > 30 minutes
  Action: Stop Instance
  (Players can start server on-demand via web UI or API)

Example 3: Automated Updates

Task 1: Backup before update
  Schedule: 0 5 * * 0 (Sunday 5 AM)
  Action: Create Backup

Task 2: Update game server
  Schedule: 0 5 10 * * 0 (Sunday 5:10 AM)
  Action: Update Application

Task 3: Restart after update
  Schedule: 0 5 15 * * 0 (Sunday 5:15 AM)
  Action: Restart Instance

Troubleshooting Common Issues

Instance Won’t Start

Symptoms:

  • Instance shows “Starting…” then “Stopped”
  • Console shows errors

Diagnosis:

1. Check console output:

  • Instance → Console
  • Look for error messages

2. Check logs:

tail -f ~/.ampdata/instances/InstanceName/AMP_Logs/AMP01.log

Common causes:

Port already in use:

Error: Address already in use: 25565

Solution: Change instance port or stop conflicting service

Insufficient memory:

Error: Cannot allocate memory

Solution: Increase instance RAM limit or free up system RAM

Missing Java (for Java games):

Error: java: command not found

Solution:

sudo apt install -y openjdk-17-jdk

File permission errors:

Error: Permission denied

Solution:

sudo chown -R amp:amp ~/.ampdata/instances/InstanceName/

Cannot Connect to Game Server

Check server is running:

  • AMP dashboard should show “Running” status

Check firewall:

# Verify port is open
sudo ufw status
# Should show game port allowed

# Test port externally
# Use: https://www.yougetsignal.com/tools/open-ports/
# Enter your public IP and game port

Check port forwarding:

  • Router must forward game port to AMP server’s local IP
  • Verify in router admin panel

Check instance binding:

  • Instance → Settings → Network
  • IP Binding: 0.0.0.0 (all interfaces)
  • Port: Correct game port

High CPU/RAM Usage

Identify resource hog:

  • AMP Dashboard → Instances
  • Sort by CPU or RAM usage

Solutions:

1. Increase allocation:

Instance → Settings → Resource Limits
Memory: Increase by 1-2 GB

2. Optimize game settings:

Minecraft: Reduce view-distance, simulation-distance
Valheim: Reduce instance count, world modifiers
ARK: Lower graphics presets, reduce dino count

3. Limit player count:

Max Players: Reduce to match hardware capacity

4. Upgrade hardware:

  • Add more RAM
  • Upgrade to faster CPU (single-thread performance)

Backup Failures

Check disk space:

df -h ~/.ampdata/backups
# Ensure sufficient free space

Check backup logs:

  • Instance → Backups → View Logs
  • Look for error messages

Common causes:

Insufficient disk space:

  • Solution: Clean up old backups or add more storage

Permission errors:

sudo chown -R amp:amp ~/.ampdata/backups

Remote backup (S3) credentials incorrect:

  • Verify Access Key and Secret Key
  • Test S3 access with AWS CLI

AMP Web UI Not Accessible

Check AMP is running:

ampinstmgr status
# Should show: Running

# If not running:
ampinstmgr start

Check firewall:

sudo ufw allow 8080/tcp

Check binding address:

nano ~/.ampdata/ampinstmgr/AMPConfig.conf

# Verify:
"AMP.WebServer.Port": 8080,
"AMP.WebServer.ListenAddress": "0.0.0.0"

Restart AMP:

ampinstmgr restart

Advanced Configuration

Reverse Proxy Setup (Nginx)

Secure AMP behind HTTPS reverse proxy:

Install Nginx:

sudo apt install -y nginx

Create Nginx config:

sudo nano /etc/nginx/sites-available/amp

Add configuration:

server {
    listen 80;
    server_name amp.yourdomain.com;

    location / {
        proxy_pass http://localhost:8080;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_cache_bypass $http_upgrade;
    }
}

Enable site:

sudo ln -s /etc/nginx/sites-available/amp /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx

Add SSL with Certbot:

sudo apt install -y certbot python3-certbot-nginx
sudo certbot --nginx -d amp.yourdomain.com

Access AMP via: https://amp.yourdomain.com

Docker Integration

Run game servers in Docker containers via AMP:

AMP can manage Docker-based game servers:

Install Docker:

curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker amp

Create Docker instance:

  • Instance → Create Instance
  • Application: Generic
  • Startup Mode: Docker
  • Image: itzg/minecraft-server (example)
  • Port Mappings: 25565:25565

AMP manages Docker container lifecycle!

API Access

AMP provides REST API for automation:

Generate API key:

  • AMP → Configuration → API
  • Create API Key
  • Copy key (shown once)

Example API calls:

Start instance:

curl -X POST "http://localhost:8080/API/Core/StartInstance"   -H "Authorization: Bearer YOUR_API_KEY"   -d '{"InstanceName": "Minecraft01"}'

Get instance status:

curl "http://localhost:8080/API/Core/GetInstanceStatuses"   -H "Authorization: Bearer YOUR_API_KEY"

Send console command:

curl -X POST "http://localhost:8080/API/Core/SendConsoleMessage"   -H "Authorization: Bearer YOUR_API_KEY"   -d '{"InstanceName": "Minecraft01", "Message": "say Hello from API!"}'

API Documentation: http://localhost:8080/API/


Next Steps

Expand your game hosting:

  • Add more game types (Rust, ARK, Valheim)
  • Set up automated backups to S3
  • Create user accounts for server admins
  • Monitor performance with Grafana

Related homelabbing.io guides:

  • “Pterodactyl: Professional Game Server Management”
  • “Minecraft Server: Complete Self-Hosting Guide”
  • “Docker Basics for Homelabs”

Conclusion

You now have a professional multi-game server management platform powered by AMP!

Key takeaways:

  • AMP unifies management of 200+ game servers
  • Instance system provides isolation and resource control
  • Automated backups prevent data loss
  • Scheduling automates maintenance tasks
  • User permissions enable delegation

Your homelab can now:

  • Host multiple games from one interface
  • Automatically update and backup servers
  • Scale to dozens of game instances
  • Provide professional-grade game hosting

Whether you’re running servers for friends or building a community, AMP makes game server management accessible and powerful.


Quick Reference

Essential Commands

# AMP Instance Manager
ampinstmgr status              # Check AMP status
ampinstmgr start               # Start AMP
ampinstmgr stop                # Stop AMP
ampinstmgr restart             # Restart AMP
ampinstmgr upgrade             # Upgrade AMP

# Instance Management
ampinstmgr listinstances       # List all instances
ampinstmgr startinstance Name  # Start specific instance
ampinstmgr stopinstance Name   # Stop specific instance

Default Ports

AMP Web UI: 8080 (HTTP)
First Instance: 8081
Second Instance: 8082
(Increments for each instance)

Game Ports (examples):
Minecraft: 25565
Valheim: 2456-2458
Terraria: 7777
Rust: 28015
ARK: 7777-7778, 27015

File Locations

AMP Data: ~/.ampdata/
Instances: ~/.ampdata/instances/
Backups: ~/.ampdata/backups/
Config: ~/.ampdata/ampinstmgr/AMPConfig.conf
Logs: ~/.ampdata/logs/

Last updated: December 16, 2025 Author: homelabbing.io Difficulty: Intermediate Time to complete: 80 minutes

Happy hosting!