About Rust Web Leaderboards Plug and Play
Ranking System for Rust Game Servers
[Supports Pterodactyl Game Panel]
This project provides a web-based ranking system for Rust game servers. The rankings are pulled from multiple servers via SFTP, cached, and displayed on a web page with pagination and search functionality.
Features
- Displays player rankings based on kills, deaths, and K/D ratio.
- Integration for SimpleStats plugin
- Supports multiple servers with dropdown selection.
- Caches data to reduce load on the SFTP server.
- Provides search functionality to filter players by name.
- Styled to integrate seamlessly into your existing website.
Prerequisites
- PHP: Ensure PHP is installed and properly configured on your server.
- Composer: PHP package manager used to manage dependencies.
- SimpleStats Plugin: This script depends on the SimpleStats.cs plugin for Rust to collect player data.
Installation
- Install Dependencies: Ensure you have Composer installed. If not, you can install it from getcomposer.org. Run the following command to install PHP dependencies:
Quotecomposer install
- Configure Servers: Open ranking.php and configure your servers in the $servers array:
$servers = [
[
'name' => 'Main Server',
'sftp_server' => 'your_sftp_server',
'sftp_port' => your_sftp_port,
'sftp_user_name' => 'your_sftp_username',
'sftp_user_pass' => 'your_sftp_password',
'remote_file' => '/path/to/PlayerData.json',
'cache_file' => 'path/to/cache/PlayerData_main.json'
],
// Add more servers as needed
];
- Upload Files to Your Server: Upload ranking.php, the vendor directory (generated by Composer), and your core.php file to your web server.
- Include in Your Website: Integrate the ranking system into your website by including ranking.php where you want the rankings to appear.
Usage
- View Rankings: Navigate to the page where you included ranking.php. You will see a dropdown to select the server, a search box to filter player names, and a table displaying the player rankings.
- Search Functionality: Use the search box to filter the player names in the rankings table.
Dependencies
- phpseclib: Used for SFTP functionalities.
- Not Required - SimpleStatsUI Plugin: Collects and stores player data from Rust servers.
- Not Required - SimpleStats by David: Collects and stores player data from Rust servers.
Notes
- Ensure the SFTP credentials are correctly configured and the PlayerData.json file path is accurate.
- The caching mechanism reduces the load on your SFTP server by caching the data for a specified duration ($cache_time).
DEMO
Demo Website - https://rust.steamplay.net/ranking.php