🌐 Public Server Listing
Share your game servers with the community!
Public Server Listing allows server owners to showcase their game servers on a public directory page, making it easy for players to discover and join active servers in your community.
✨ Features
📋 Public Server Directory
- Beautiful, organized listing of all publicly shared servers
- Servers grouped by game/product type for easy browsing
- Real-time online/offline status indicators
- Server connection details (IP:port) displayed automatically
🎮 Server Owner Control
- Opt-in system - servers are only listed with owner's explicit permission
- Easy toggle switch in server management panel
- Can enable or disable public listing at any time
- No personal information shared without consent
🔒 Admin Management
- Admins can control public listing status for any server
- Toggle directly from server edit form in admin panel
- Full visibility and control over which servers are listed
⚡ Performance & Caching
- Smart caching system to reduce server load
- Configurable cache durations for optimal performance
- Rate limiting to prevent API abuse
🚀 How It Works
For Server Owners
-
Navigate to Your Server
- Go to "My Servers" in the panel
- Select the server you want to share
-
Enable Public Listing
- Go to the "Public Listing" tab
- Toggle the "Enable Public Listing" switch to ON
- Your server will immediately appear on the public directory
-
Players Can Find Your Server
- Anyone visiting
/plugins/server-listing/server-listwill see your server - They'll see your server name, game type, status, and connection details
- Anyone visiting
For Players
-
Browse the Server List
- Visit the
/plugins/server-listing/server-listpage (no account needed!) - Browse servers by game/product category
- See which servers are online and ready to join
- Visit the
-
Connect to Servers
- Copy the server address (IP:port)
- Connect using your game client
- Start playing!
For Administrators
-
Server Edit Form
- Edit any server in admin panel
- Find "Publicly Listed" checkbox in Server Details tab
- Toggle to enable/disable public listing
-
Plugin Settings
- Access plugin settings in admin panel
- Configure cache durations for optimal performance
- Set API request limits
🔐 Privacy & Security
- Opt-in only - Servers are never listed without owner's permission
- No sensitive data - Only server name, game type, status, and connection details are shown
- Owner info protected - Owner email/username is not displayed publicly (only in admin view)
- Suspended servers hidden - Automatically removed from public listing
- Deleted servers hidden - Removed from listing immediately
- Rate limiting - Built-in protection against API abuse
📱 User Interface
Public Server List Page
Beautiful, modern interface showing:
- Server name and game/product icon
- Real-time online/offline status with color coding
- Server connection address (IP:port)
- Organized by game type for easy navigation
- Loading indicators while fetching status
- Responsive design for mobile and desktop
Server Management Tab
Clean toggle interface for server owners:
- One-click enable/disable
- Status badge showing current state
- Help text explaining the feature
- Disabled for non-owners (read-only view)
Admin Integration
Seamlessly integrated into admin panel:
- Checkbox in server edit form
- Same location as other server settings
- Automatically loads current status
- Saves alongside other server changes
🛠️ Technical Details
API Endpoints
- Public Listing Page:
/plugins/server-listing/server-list(no authentication required) - Status API:
/plugins/server-listing/api/server-listing/status(public, consent-validated) - Details API:
/plugins/server-listing/api/server-listing/details(public, consent-validated) - Toggle API:
/plugins/server-listing/api/server/{id}/toggle-listing(authentication required)
Database
Adds is_publicly_listed boolean column to the server table with index for optimal query performance.
Caching
- IP addresses: Cached to reduce Pterodactyl API calls
- Server status: Cached separately with shorter TTL for near real-time updates
- Symfony Cache: Uses configured cache adapter
📋 Requirements
- PteroCA Version: 0.6.3 or higher
- Pterodactyl Panel: Required for server status checks
- Plugin Capabilities: Routes, Migrations, UI, Event-Driven Architecture (EDA)
📦 Installation
-
Upload Plugin
- Download the plugin package
- Go to: Admin Panel → Plugins → Upload Plugin
- Select the plugin ZIP file
- Click Upload
-
Enable Plugin
- Go to: Admin Panel → Plugins → Manage Plugins
- Find "Public Server Listing"
- Click Enable
-
Run Migrations
- The plugin will automatically run database migrations
- This adds the required
is_publicly_listedcolumn
-
Configure Settings (Optional)
- Go to plugin settings
- Adjust cache durations if needed
- Default settings work well for most installations
-
Done!
- Server owners can now enable public listing
- Public directory is available at
/plugins/server-listing/server-list
❓ Frequently Asked Questions
Q: Are servers listed by default? A: No! Servers are only listed if the owner explicitly enables it.
Q: Can I hide my server after listing it? A: Yes! Just toggle the switch OFF in your server management panel.
Q: What information is publicly visible? A: Only server name, game type, online/offline status, and connection address.
Q: Can admins force-list servers? A: Yes, admins can toggle public listing for any server in the admin panel.
Q: Does this affect server performance? A: No, the plugin uses caching to minimize impact on your servers.
Q: Can I customize the cache durations? A: Yes! Adjust them in plugin settings to balance performance vs. real-time updates.
Q: What happens to suspended servers? A: They are automatically hidden from the public listing.
Price
Related Products
Tools and themes designed to elevate your ecosystem.
User Reviews (0)
No reviews yet. Be the first to review this product!