From a49371c3ddfd8b6db9ff55f33889eec00083ddf8 Mon Sep 17 00:00:00 2001 From: Frank Harris Date: Tue, 16 Jun 2026 13:43:39 -0500 Subject: [PATCH] added legacy server info --- Panel/modules/website/README.md | 40 ++++++++- Panel/modules/website/assets/css/site.css | 10 +++ .../modules/website/config/config.example.php | 23 ++++- Panel/modules/website/config/pricing.php | 21 +++++ Panel/modules/website/includes/bootstrap.php | 5 +- Panel/modules/website/pages/documentation.php | 2 +- Panel/modules/website/pages/game_servers.php | 25 ++++-- Panel/modules/website/pages/home.php | 85 +++++++++++------- Panel/modules/website/pages/locations.php | 2 +- Panel/modules/website/pages/pricing.php | 29 +++++- Panel/modules/website/pages/support.php | 4 +- Panel/modules/website/pricing.php | 2 +- Panel/modules/website/serverlist.php | 2 +- docs/modules/website.md | 21 +++++ .../gameservers_world_pricing_catalog.xlsx | Bin 15 files changed, 218 insertions(+), 53 deletions(-) create mode 100644 Panel/modules/website/config/pricing.php rename {Pricing-servers.xml => pricing}/gameservers_world_pricing_catalog.xlsx (100%) diff --git a/Panel/modules/website/README.md b/Panel/modules/website/README.md index b587a199..ae955a40 100644 --- a/Panel/modules/website/README.md +++ b/Panel/modules/website/README.md @@ -40,6 +40,7 @@ Panel/modules/website/ support.php config/ config.example.php + pricing.php ``` ## URL helpers @@ -125,6 +126,44 @@ Alternate front-controller approach: - support links 3. Keep any environment-specific config out of Git +## Pricing and Platform Reference + +Internal pricing planning remains in: + +- `pricing/gameservers_world_pricing_catalog.xlsx` + +Public website summary values are centralized in: + +- `Panel/modules/website/config/pricing.php` + +Optional environment-specific overrides can be placed in: + +- `Panel/modules/website/config/config.php` +- `Panel/modules/website/config/config.local.php` + +Public pricing guidance currently exposes: + +- standard hosting starts at `$0.50` per slot +- selected lightweight legacy servers can start around `$4` per month +- most standard plans use a `16`-slot minimum +- fixed-cap or small co-op games may use different slot limits +- custom development and complex integration work are quoted separately + +Platform wording is also centralized in `config/pricing.php` so hardware references stay secondary and easy to update. The website should keep customization, legacy-game support, fair pricing, backups, and monitored capacity as the primary sales message. Hardware copy should remain a small platform note rather than a headline feature. + +Pages currently displaying pricing or platform summary copy: + +- `index.php` +- `serverlist.php` +- `pricing.php` + +If pricing or example host details change later: + +1. Update the workbook if it is the internal reference source +2. Update `config/pricing.php` with the approved public summary +3. Override values in `config.php` or `config.local.php` only when deployment-specific differences are required +4. Recheck homepage, server catalog, and pricing page copy for consistency + ## Manual link checks Verify: @@ -149,4 +188,3 @@ Verify: - No repeated `../../../` path climbing - Internal page links and assets route through helpers - Database config is optional for non-catalog pages - diff --git a/Panel/modules/website/assets/css/site.css b/Panel/modules/website/assets/css/site.css index 35f4dced..f318042b 100644 --- a/Panel/modules/website/assets/css/site.css +++ b/Panel/modules/website/assets/css/site.css @@ -421,6 +421,16 @@ textarea { background: linear-gradient(90deg, rgba(84, 166, 255, 0) 0%, rgba(84, 166, 255, 0.35) 50%, rgba(84, 166, 255, 0) 100%); } +.list-clean { + margin: 14px 0 0; + padding-left: 18px; + color: var(--muted); +} + +.list-clean li + li { + margin-top: 8px; +} + .location-card small, .service-meta, .doc-meta { diff --git a/Panel/modules/website/config/config.example.php b/Panel/modules/website/config/config.example.php index 62abeee7..2c77aa07 100644 --- a/Panel/modules/website/config/config.example.php +++ b/Panel/modules/website/config/config.example.php @@ -2,8 +2,8 @@ return [ 'site_name' => 'Gameservers.World', - 'site_tagline' => 'Developer-backed game hosting with full server access, mod support, daily backups, and optional custom engineering help through Runlevel Systems.', - 'meta_description' => 'Affordable virtual private game servers backed by developers, software engineers, and infrastructure specialists. Launch a standard server or get help with mods, automation, integrations, and custom tooling.', + 'site_tagline' => 'Developer-backed game hosting for modern and legacy communities, with full server access, daily backups, and optional custom engineering help through Runlevel Systems.', + 'meta_description' => 'Affordable game servers for modern and legacy communities, backed by developers, software engineers, and infrastructure specialists. Launch a standard server or get help with mods, automation, integrations, and custom tooling.', // Leave null to derive the base path from the current request. // Example: '/sales' @@ -35,4 +35,23 @@ return [ ['name' => 'New York City, USA', 'region' => 'East Coast coverage', 'host' => 'nyc-game-1.iaregamer.com'], ['name' => 'Dublin, Ireland', 'region' => 'EU coverage', 'host' => 'dub-game-1.iaregamer.com'], ], + + // Optional overrides for the public pricing summary and platform note. + // Defaults live in config/pricing.php so public pages do not parse the XLSX workbook at runtime. + 'pricing' => [ + 'standard_slot_start' => 0.50, + 'legacy_monthly_start' => 4.00, + 'standard_min_slots' => 16, + 'fixed_cap_note' => 'Some fixed-cap or small co-op games use different slot limits.', + 'disclaimer' => 'Final pricing depends on game, slot count, resource tier, mods, and customization.', + 'custom_work_note' => 'Custom development and complex integration work are quoted separately.', + ], + 'platform' => [ + 'summary' => 'Hosted on modern server hardware with SSD storage, high-bandwidth connectivity, and actively monitored CPU and memory capacity.', + 'capacity_note' => 'We actively monitor host capacity and avoid overcrowding servers onto overloaded machines.', + 'example_host_cpu_cores' => 32, + 'example_host_ram_gb' => 128, + 'example_host_storage' => '2 TB SSD storage', + 'daily_backups_note' => 'Daily backups are included.', + ], ]; diff --git a/Panel/modules/website/config/pricing.php b/Panel/modules/website/config/pricing.php new file mode 100644 index 00000000..ade998b0 --- /dev/null +++ b/Panel/modules/website/config/pricing.php @@ -0,0 +1,21 @@ + [ + 'standard_slot_start' => 0.50, + 'legacy_monthly_start' => 4.00, + 'standard_min_slots' => 16, + 'fixed_cap_note' => 'Some fixed-cap or small co-op games use different slot limits.', + 'disclaimer' => 'Final pricing depends on game, slot count, resource tier, mods, and customization.', + 'custom_work_note' => 'Custom development and complex integration work are quoted separately.', + 'workbook_reference' => 'pricing/gameservers_world_pricing_catalog.xlsx', + ], + 'platform' => [ + 'summary' => 'Hosted on modern server hardware with SSD storage, high-bandwidth connectivity, and actively monitored CPU and memory capacity.', + 'capacity_note' => 'We actively monitor host capacity and avoid overcrowding servers onto overloaded machines.', + 'example_host_cpu_cores' => 32, + 'example_host_ram_gb' => 128, + 'example_host_storage' => '2 TB SSD storage', + 'daily_backups_note' => 'Daily backups are included.', + ], +]; diff --git a/Panel/modules/website/includes/bootstrap.php b/Panel/modules/website/includes/bootstrap.php index e1e6e5fb..05b7b3ea 100644 --- a/Panel/modules/website/includes/bootstrap.php +++ b/Panel/modules/website/includes/bootstrap.php @@ -15,6 +15,7 @@ ini_set('display_errors', '0'); $websiteConfig = []; $websiteConfigFiles = [ + WEBSITE_CONFIG_DIR . '/pricing.php', WEBSITE_CONFIG_DIR . '/config.php', WEBSITE_CONFIG_DIR . '/config.local.php', ]; @@ -32,8 +33,8 @@ foreach ($websiteConfigFiles as $configFile) { $websiteDefaults = [ 'site_name' => 'Gameservers.World', - 'site_tagline' => 'Developer-backed game hosting with full server access, mod support, daily backups, and optional custom engineering help through Runlevel Systems.', - 'meta_description' => 'Affordable virtual private game servers backed by developers, software engineers, and infrastructure specialists. Launch a standard server or get help with mods, automation, integrations, and custom tooling.', + 'site_tagline' => 'Developer-backed game hosting for modern and legacy communities, with full server access, daily backups, and optional custom engineering help through Runlevel Systems.', + 'meta_description' => 'Affordable game servers for modern and legacy communities, backed by developers, software engineers, and infrastructure specialists. Launch a standard server or get help with mods, automation, integrations, and custom tooling.', 'base_path' => null, 'public_base_url' => null, 'billing_base_url' => '/billing', diff --git a/Panel/modules/website/pages/documentation.php b/Panel/modules/website/pages/documentation.php index c496a324..a0c8b072 100644 --- a/Panel/modules/website/pages/documentation.php +++ b/Panel/modules/website/pages/documentation.php @@ -18,7 +18,7 @@ foreach ($docIndex as $entry) {

-

+

diff --git a/Panel/modules/website/pages/game_servers.php b/Panel/modules/website/pages/game_servers.php index 9f0762b9..f0eb326f 100644 --- a/Panel/modules/website/pages/game_servers.php +++ b/Panel/modules/website/pages/game_servers.php @@ -3,11 +3,18 @@ declare(strict_types=1); $hasBilling = website_billing_available(); +$pricing = website_config('pricing', []); +$standardSlotStart = (float)($pricing['standard_slot_start'] ?? 0.50); +$legacyMonthlyStart = (float)($pricing['legacy_monthly_start'] ?? 4.00); +$standardMinSlots = (int)($pricing['standard_min_slots'] ?? 16); +$pricingDisclaimer = trim((string)($pricing['disclaimer'] ?? '')); +$customWorkNote = trim((string)($pricing['custom_work_note'] ?? '')); +$fixedCapNote = trim((string)($pricing['fixed_cap_note'] ?? '')); ?>

Game Servers

-

Order a standard hosted server or use the catalog as the starting point for something more customized. Individual servers can be reviewed for mod setups, scripts, automation, integrations, and community-specific requirements.

+

Order a standard hosted server for a modern or legacy game, or use the catalog as the starting point for something more customized. Individual servers can be reviewed for mods, scripts, automation, integrations, and community-specific requirements.

@@ -15,14 +22,21 @@ $hasBilling = website_billing_available();
-

Standard hosting is available

-

Use the catalog for ordinary game-server hosting with GSP access, full configuration and file control, monitored capacity, and daily backups.

+

Straightforward starting prices

+

Standard game servers start at $ per slot, and most standard plans use a -slot minimum.

+

-

Need something unusual?

-

Custom development, integration, and engineering work can be scoped separately for a reasonable additional fee. No build work starts without an agreed estimate.

+

Legacy games are part of the catalog

+

Selected lightweight legacy servers can start around $ per month, with practical help for older Windows and Linux server software, mod stacks, and migration work.

+
+
+

Not just cookie-cutter hosting

+

Every server can be individualized around files, startup parameters, Workshop content, automation, APIs, Discord integrations, and community-specific tooling.

+

+

@@ -62,6 +76,7 @@ $hasBilling = website_billing_available();

Server catalog unavailable

+

Standard servers start at $ per slot, while selected legacy servers can start around $ per month.

Contact Support Discuss a Custom Server diff --git a/Panel/modules/website/pages/home.php b/Panel/modules/website/pages/home.php index 7785fb61..e913e581 100644 --- a/Panel/modules/website/pages/home.php +++ b/Panel/modules/website/pages/home.php @@ -4,34 +4,48 @@ declare(strict_types=1); $discordUrl = trim((string)website_config('discord_url', '')); $customProjectUrl = website_custom_project_url(); +$pricing = website_config('pricing', []); +$platform = website_config('platform', []); +$standardSlotStart = (float)($pricing['standard_slot_start'] ?? 0.50); +$legacyMonthlyStart = (float)($pricing['legacy_monthly_start'] ?? 4.00); +$standardMinSlots = (int)($pricing['standard_min_slots'] ?? 16); +$pricingDisclaimer = trim((string)($pricing['disclaimer'] ?? '')); +$customWorkNote = trim((string)($pricing['custom_work_note'] ?? '')); +$fixedCapNote = trim((string)($pricing['fixed_cap_note'] ?? '')); +$platformSummary = trim((string)($platform['summary'] ?? '')); +$platformCapacityNote = trim((string)($platform['capacity_note'] ?? '')); +$platformExampleCpu = (int)($platform['example_host_cpu_cores'] ?? 32); +$platformExampleRam = (int)($platform['example_host_ram_gb'] ?? 128); +$platformExampleStorage = trim((string)($platform['example_host_storage'] ?? '2 TB SSD storage')); +$platformBackupNote = trim((string)($platform['daily_backups_note'] ?? '')); ?>
Game hosting backed by developers
-

Host it. Mod it. Build it.

-

Launch an affordable virtual private game server or work with the team behind Runlevel Systems on the parts that make your community specific: mods, scripts, automation, integrations, admin tools, custom GSP workflows, and unusual server setups that do not fit a generic hosting template.

+

Game Hosting Backed by Developers

+

Launch a standard server for a modern or legacy game, or work with the team behind Runlevel Systems to customize mods, scripts, integrations, automation, and server workflows around your community.

- Affordable hosting first - You can order a normal hosted server without custom work, then decide later whether you need help extending it. + Fair starting prices + Standard servers start at $ per slot, while selected lightweight legacy servers can start around $ per month.
Never-oversold capacity - Host systems are actively monitored so customers are not crowded onto overloaded nodes. +
Real engineering help Developers, software engineers, game developers, and infrastructure specialists are available when a server needs more than a restart button.
- Customization is available - Files, configs, startup parameters, supported mods, Workshop content, and custom tooling can be reviewed case by case. + Legacy games welcome + We still host classic and community-maintained multiplayer games that larger providers often overlook, including older Windows and Linux dedicated servers.
@@ -39,7 +53,7 @@ $customProjectUrl = website_custom_project_url(); Gameservers.World supported games collage
More than hosting -

Gameservers.World hosts the server. Runlevel Systems provides the development, integration, and infrastructure expertise behind it.

+

Gameservers.World hosts the server. Runlevel Systems provides the development, integration, and infrastructure expertise behind it, including custom workflows when a community needs more than a stock setup.

@@ -47,23 +61,28 @@ $customProjectUrl = website_custom_project_url();
-
-
- 128 GB RAM - Host specification, not a per-customer dedicated allocation. -
-
- 32 CPU cores - Capacity is managed for stable game performance and headroom. -
-
- 2 TB SSD - Fast storage on monitored hosts instead of overloaded bargain nodes. -
-
- Daily backups - Recover from failed updates, bad changes, or configuration mistakes with help from support. -
+
+
+

Legacy Games Welcome

+

Older multiplayer communities should not have to disappear because larger hosts stopped supporting their game. Selected legacy servers can start around $ per month.

+
    +
  • Classic FPS and older multiplayer titles
  • +
  • Small private communities and fixed-cap servers
  • +
  • Older Windows and Linux server software
  • +
  • Mod, configuration, and migration help
  • +
+ +
+
+

Straightforward Starting Prices

+

Standard game servers start at $ per slot, and most standard plans use a -slot minimum.

+

+

+

+
@@ -82,7 +101,7 @@ $customProjectUrl = website_custom_project_url();

Custom server builds

-

Individual servers can be configured around startup parameters, file layouts, admin tooling, automation, or game-specific quirks.

+

Individual servers can be configured around startup parameters, file layouts, admin tooling, automation, legacy game quirks, or game-specific operational requirements.

Mod and Workshop integration

@@ -129,7 +148,7 @@ $customProjectUrl = website_custom_project_url();
Hosting platform

Stable hosting without overcrowded nodes.

-

Gameservers.World provides virtual private game servers on carefully managed hosts with 128 GB RAM, 32 CPU cores, and 2 TB SSD storage. Those are host specifications, not dedicated per-customer guarantees. The practical commitment is monitored capacity, performance headroom, and daily backups.

+

@@ -137,8 +156,8 @@ $customProjectUrl = website_custom_project_url();

Edit files and configurations, adjust startup parameters, manage supported server content, review logs, and run updates or scheduled tasks through GSP.

-

Windows and Linux experience

-

The team works across game servers that expect different operating systems, toolchains, runtime quirks, and documentation quality.

+

Platform note

+

Example host: CPU cores, GB RAM, and .

@@ -169,7 +188,7 @@ $customProjectUrl = website_custom_project_url();
Supported games and locations

Live catalog where available, honest fallback where it is not.

-

Available games and public pricing come from the active service catalog when configuration is available. The site does not invent availability or publish stale game lists just to fill space.

+

Available games and live catalog prices come from the active service catalog when configuration is available. Public starting-price guidance stays concise so the site does not invent fake availability or publish stale game lists just to fill space.

@@ -216,7 +235,7 @@ $customProjectUrl = website_custom_project_url();

Ordinary hosting is available

-

Order a standard server, use the panel, and get practical support without being forced into a custom project.

+

Order a standard server, use the panel, and get practical support without being forced into a custom project. Most standard plans start with a -slot baseline, while some smaller or fixed-cap games differ.

Custom help is available too

@@ -292,7 +311,7 @@ $customProjectUrl = website_custom_project_url();

Have an idea for your server?

-

Whether you need ordinary hosting, a complicated mod setup, or something that has never been packaged into a hosting panel before, tell us what you are trying to build.

+

Whether you need ordinary hosting, a legacy multiplayer server, a complicated mod setup, or something that has never been packaged into a hosting panel before, tell us what you are trying to build.

View Game Servers diff --git a/Panel/modules/website/pages/locations.php b/Panel/modules/website/pages/locations.php index 66a17e15..f9785127 100644 --- a/Panel/modules/website/pages/locations.php +++ b/Panel/modules/website/pages/locations.php @@ -7,7 +7,7 @@ $locations = is_array($locations) ? $locations : [];

Locations

-

Choose a region that fits where your players are, what game you run, and how sensitive your mod stack or server software is to latency and host performance. Stable hosting matters more than crowding customers onto the cheapest node.

+

Choose a region that fits where your players are, what game you run, and how sensitive your mod stack or server software is to latency and host performance. Stable hosting matters more than crowding modern or legacy communities onto the cheapest node.

diff --git a/Panel/modules/website/pages/pricing.php b/Panel/modules/website/pages/pricing.php index 81e628a5..13b96e31 100644 --- a/Panel/modules/website/pages/pricing.php +++ b/Panel/modules/website/pages/pricing.php @@ -1,11 +1,21 @@

Pricing

-

Standard hosting prices come from the live game-server catalog. Custom coding, integration, and engineering work are separate so customers only pay for extra build work when they actually need it.

+

Pricing stays straightforward: standard hosting starts at practical public rates, selected legacy servers can start lower, and custom coding or complex integration work is scoped separately before any billable work begins.

@@ -13,14 +23,21 @@ declare(strict_types=1);
-

Hosting and support

-

Standard pricing covers virtual private game hosting, GSP access, full file and configuration control, mod and Workshop help where supported, monitored capacity, and daily backups.

+

Standard plans

+

Standard game servers start at $ per slot, and most standard plans use a -slot minimum.

+

+
+
+

Legacy-friendly options

+

Selected lightweight legacy servers can start around $ per month, which helps smaller communities keep older titles online without forcing a large plan.

Custom work is quoted separately

+

Small changes should not get enterprise-consulting pricing, but custom coding is not implied to be free. Scope and price are discussed before work begins.

+

@@ -35,7 +52,7 @@ declare(strict_types=1); ?>

-

+

0 ? '$' . number_format($price, 2) . ' / month' : 'Contact for pricing' ?>
@@ -60,6 +77,10 @@ declare(strict_types=1);

Reasonable scoping

If you want a custom server script, migration helper, integration, monitoring workflow, or game-specific fix, the first step is a practical discussion about what the game allows and what the work should cost.

+
+

Hosting platform

+

+

What is not claimed

The site does not invent exact prices outside the catalog, promise unlimited development, or pretend every unusual request is technically possible.

diff --git a/Panel/modules/website/pages/support.php b/Panel/modules/website/pages/support.php index 22306918..3c7b3d1a 100644 --- a/Panel/modules/website/pages/support.php +++ b/Panel/modules/website/pages/support.php @@ -10,7 +10,7 @@ $loginUnavailable = $loginUnavailable ?? false;

Support

-

Support covers ordinary hosting questions, but it also extends to mod setups, Workshop issues, configuration mistakes, migration work, automation ideas, unusual server requirements, and the kinds of problems that appear when a community wants more than a stock setup.

+

Support covers ordinary hosting questions, but it also extends to mod setups, Workshop issues, legacy server quirks, configuration mistakes, migration work, automation ideas, unusual server requirements, and the kinds of problems that appear when a community wants more than a stock setup.

@@ -32,7 +32,7 @@ $loginUnavailable = $loginUnavailable ?? false;

Modding and troubleshooting

-

Use the documentation set for server guides, panel workflows, Workshop help, and technical troubleshooting across current and older multiplayer games.

+

Use the documentation set for server guides, panel workflows, Workshop help, and technical troubleshooting across current games, older multiplayer titles, and community-maintained servers.

diff --git a/Panel/modules/website/pricing.php b/Panel/modules/website/pricing.php index b900d41c..b73d425b 100644 --- a/Panel/modules/website/pricing.php +++ b/Panel/modules/website/pricing.php @@ -9,7 +9,7 @@ website_render( [ 'activePage' => 'pricing', 'pageTitle' => 'Pricing - Gameservers.World', - 'metaDescription' => 'Standard game hosting pricing plus honest guidance on separately quoted custom development and integration work.', + 'metaDescription' => 'Straightforward starting prices for modern and legacy game hosting, plus honest guidance on separately quoted custom development and integration work.', 'canonicalPath' => 'pricing.php', 'services' => website_fetch_services(), ] diff --git a/Panel/modules/website/serverlist.php b/Panel/modules/website/serverlist.php index 89c18518..8fa64d5b 100644 --- a/Panel/modules/website/serverlist.php +++ b/Panel/modules/website/serverlist.php @@ -11,7 +11,7 @@ website_render( [ 'activePage' => 'servers', 'pageTitle' => 'Game Servers - Gameservers.World', - 'metaDescription' => 'Browse supported game servers, live pricing where available, and developer-backed hosting options with mod, automation, and custom integration help.', + 'metaDescription' => 'Browse modern and legacy game servers, live pricing where available, and developer-backed hosting with mod, automation, and custom integration help.', 'canonicalPath' => 'serverlist.php', 'services' => $services, ] diff --git a/docs/modules/website.md b/docs/modules/website.md index c6ace874..a739e53e 100644 --- a/docs/modules/website.md +++ b/docs/modules/website.md @@ -57,3 +57,24 @@ Recommended: - `support.php` - `login.php` +## Pricing and Platform Reference + +- Internal workbook: `pricing/gameservers_world_pricing_catalog.xlsx` +- Public summary config: `Panel/modules/website/config/pricing.php` +- Optional overrides: `Panel/modules/website/config/config.php` and `config.local.php` + +The website uses a compact public pricing summary instead of parsing the workbook at runtime. Pricing and platform wording should stay centralized so homepage, server catalog, and pricing pages remain consistent. + +Public pricing rules: + +- standard hosting starts at `$0.50` per slot +- selected legacy servers can start around `$4` per month +- most standard plans use a `16`-slot minimum +- fixed-cap games may differ +- custom development is quoted separately + +Platform rules: + +- hardware details are secondary website information +- customization, legacy-game support, backups, monitored capacity, and developer-backed help remain the main sales points +- example host specifications should be updated in the central config rather than scattered across templates diff --git a/Pricing-servers.xml/gameservers_world_pricing_catalog.xlsx b/pricing/gameservers_world_pricing_catalog.xlsx similarity index 100% rename from Pricing-servers.xml/gameservers_world_pricing_catalog.xlsx rename to pricing/gameservers_world_pricing_catalog.xlsx