Panel/README.md
2025-09-11 09:05:15 -04:00

4.8 KiB
Executable file

GameServerPanel (GSP) - Unstable Branch

This is the GameServerPanel (GSP) project, a cross-platform game server management panel and agent system.

This README covers installation and setup for:

  • The Web Panel
  • The Linux Agent
  • The Windows Agent

Table of Contents


Prerequisites

General

  • Git
  • curl/wget
  • Sudo/root privileges

Panel (Linux)

  • Ubuntu 22.04+ (other distros may work)
  • Apache2 or nginx
  • PHP 8.1+
  • MariaDB or MySQL
  • Required PHP extensions:
    php-mysqli php-json php-curl php-xml php-zip php-gd php-mbstring php-bcmath php-intl php-pdo php-cli
  • Composer (for PHP dependency management)

Linux Agent

  • Ubuntu 22.04+ (other distros may work)
  • Perl 5
  • Perl modules:
    Proc::ProcessTable, IO::Socket, DBI, Sys::Hostname, LWP::UserAgent, JSON, File::Path
  • Screen (for game server management)

Windows Agent

  • Windows 10/11/Server
  • Strawberry Perl (or ActivePerl)
  • Perl modules:
    Same as Linux agent (Proc::ProcessTable, etc.)
  • Run agent as Administrator for full functionality

Panel Installation (Linux)

  1. Install prerequisites:

    sudo apt update
    sudo apt install apache2 mariadb-server php php-mysqli php-json php-curl php-xml php-zip php-gd php-mbstring php-bcmath php-intl php-pdo php-cli composer git unzip
    
  2. Clone the repository:

    git clone -b unstable https://github.com/GameServerPanel/GSP.git
    cd GSP/ControlPanel
    
  3. Install PHP dependencies:

    composer install
    
  4. Set permissions:

    sudo chown -R www-data:www-data .
    sudo chmod -R 755 .
    
  5. Configure Apache/nginx:

    • Point your DocumentRoot to GSP/ControlPanel/public
    • Restart your webserver.
  6. Configure the Panel:

    • Open the panel in your browser
    • Follow setup wizard (enter database details, admin account, etc.)

Agent Installation (Linux)

  1. Install prerequisites:

    sudo apt update
    sudo apt install perl build-essential screen libproc-processtable-perl libio-socket-perl libdbi-perl libsys-hostname-perl libwww-perl libjson-perl libfile-path-perl
    
  2. Clone the agent:

    git clone -b unstable https://github.com/GameServerPanel/GSP.git
    cd GSP/Agent
    
  3. Run the agent:

    perl ogp_agent.pl
    

If libproc-process-table-perl is not available on your distro, install via CPAN:

sudo apt install cpanminus
sudo cpanm Proc::ProcessTable

Agent Installation (Windows)

  1. Install Strawberry Perl

  2. Open Command Prompt as Administrator

  3. Install required Perl modules:

    cpan install Proc::ProcessTable IO::Socket DBI Sys::Hostname LWP::UserAgent JSON File::Path
    
  4. Clone the repository or download the Agent folder

  5. Run the agent:

    perl ogp_agent.pl
    

Example Installation Scripts

Linux Agent Quick Install

#!/bin/bash
sudo apt update
sudo apt install -y perl build-essential screen git \
    libproc-processtable-perl libio-socket-perl libdbi-perl \
    libsys-hostname-perl libwww-perl libjson-perl libfile-path-perl
git clone -b unstable https://github.com/GameServerPanel/GSP.git
cd GSP/Agent
perl ogp_agent.pl

Panel Quick Install

#!/bin/bash
sudo apt update
sudo apt install -y apache2 mariadb-server php php-mysqli php-json php-curl php-xml php-zip php-gd php-mbstring php-bcmath php-intl php-pdo php-cli composer git unzip
git clone -b unstable https://github.com/GameServerPanel/GSP.git
cd GSP/ControlPanel
composer install
sudo chown -R www-data:www-data .
sudo chmod -R 755 .
# Configure your web server to point to GSP/ControlPanel/public

Troubleshooting

  • Missing Perl modules:
    Use cpanm or cpan to install missing modules.

  • libproc-process-table-perl not found:
    Install via CPAN (cpanm Proc::ProcessTable)

  • Web panel not loading:
    Check Apache/nginx logs, file permissions, and PHP modules.

  • Agent cannot communicate with panel:
    Check firewall settings and agent config.


Contributing

  • Fork the repository
  • Create a feature branch
  • Make your changes
  • Submit a pull request

License

See LICENSE file in the repository.


For detailed help or bug reports, open an issue on GitHub.