diff --git a/modules/billing/docs_old/docs.php b/modules/billing/docs_old/docs.php
deleted file mode 100644
index d7af9607..00000000
--- a/modules/billing/docs_old/docs.php
+++ /dev/null
@@ -1,107 +0,0 @@
- 'sales',
- 'title' => 'Sales & Onboarding Playbook',
- 'desc' => 'Messaging, ICPs, demo flow, onboarding runbook, SLAs.',
- ],
- [
- 'key' => 'security',
- 'title' => 'Security & Compliance Playbook',
- 'desc' => 'Hygiene checklist, patching cadence, backups, incident response.',
- ],
- [
- 'key' => 'investor',
- 'title' => 'Investor One-Pager',
- 'desc' => 'Market, product, traction, roadmap, team, basic financials.',
- ],
-];
-?>
-
-
-
-
- Playbooks
-
-
-
-
-
-
Playbooks
-
View inline or download. You can also copy an embed snippet for any page on your site.
-
-
-
-
-
= $title ?>
-
= $desc ?>
-
-
-
Download
-
-
-
-
-
-
-
-
-
-
-
Generic embed snippet (replace doc= value):
-
<iframe src="/serve.php?doc=sales" width="100%" height="720" class="doc-iframe"></iframe>
-
-
-
-
-
-
-
-
-
diff --git a/modules/billing/docs_old/games/7-days-to-die.md b/modules/billing/docs_old/games/7-days-to-die.md
deleted file mode 100644
index 1fc2bf0e..00000000
--- a/modules/billing/docs_old/games/7-days-to-die.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# 7 Days to Die — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-7DaysToDieServer.exe -configfile=serverconfig.xml -quit -batchmode -nographics -dedicated
-```
-
-**Parameters (exhaustive, server-relevant only)**
-- `-configfile=` — Server configuration XML file.
-- `-quit` — Quit after completing operations.
-- `-batchmode` — Run in batch mode without GUI.
-- `-nographics` — Disable graphics rendering.
-- `-dedicated` — Run as dedicated server.
-- `-logfile ` — Log file location.
-- `-UserDataFolder=` — User data directory.
-- `-SaveGameFolder=` — Save game directory.
-- `-configfile=` — Configuration file path.
-
-**Ports**
-- Game: UDP **26900** (primary)
-- Steam Query: UDP **26901** (game port + 1)
-- Web Control Panel: TCP **8080** (if enabled)
-- Telnet: TCP **8081** (if enabled)
-
-## Config Files & Locations
-**Windows:**
-- `Data/` — Game data directory
-- `Logs/` — Log files directory
-- `ServerConfig/` — Configuration files (varies by game)
-
-**Linux:**
-- `~/7-days-to-die/Data/` — Game data directory
-- `~/7-days-to-die/Logs/` — Log files directory
-- `~/7-days-to-die/ServerConfig/` — Configuration files
-
-**Key Files:**
-- Configuration file names and locations vary significantly between Unity games
-- Common patterns: server.cfg, config.json, settings.xml
-- Check game-specific documentation for exact file locations
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for 7 Days to Die
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/Parsedown.php b/modules/billing/docs_old/games/Parsedown.php
deleted file mode 100644
index 38edfe92..00000000
--- a/modules/billing/docs_old/games/Parsedown.php
+++ /dev/null
@@ -1,1994 +0,0 @@
-textElements($text);
-
- # convert to markup
- $markup = $this->elements($Elements);
-
- # trim line breaks
- $markup = trim($markup, "\n");
-
- return $markup;
- }
-
- protected function textElements($text)
- {
- # make sure no definitions are set
- $this->DefinitionData = array();
-
- # standardize line breaks
- $text = str_replace(array("\r\n", "\r"), "\n", $text);
-
- # remove surrounding line breaks
- $text = trim($text, "\n");
-
- # split text into lines
- $lines = explode("\n", $text);
-
- # iterate through lines to identify blocks
- return $this->linesElements($lines);
- }
-
- #
- # Setters
- #
-
- function setBreaksEnabled($breaksEnabled)
- {
- $this->breaksEnabled = $breaksEnabled;
-
- return $this;
- }
-
- protected $breaksEnabled;
-
- function setMarkupEscaped($markupEscaped)
- {
- $this->markupEscaped = $markupEscaped;
-
- return $this;
- }
-
- protected $markupEscaped;
-
- function setUrlsLinked($urlsLinked)
- {
- $this->urlsLinked = $urlsLinked;
-
- return $this;
- }
-
- protected $urlsLinked = true;
-
- function setSafeMode($safeMode)
- {
- $this->safeMode = (bool) $safeMode;
-
- return $this;
- }
-
- protected $safeMode;
-
- function setStrictMode($strictMode)
- {
- $this->strictMode = (bool) $strictMode;
-
- return $this;
- }
-
- protected $strictMode;
-
- protected $safeLinksWhitelist = array(
- 'http://',
- 'https://',
- 'ftp://',
- 'ftps://',
- 'mailto:',
- 'tel:',
- 'data:image/png;base64,',
- 'data:image/gif;base64,',
- 'data:image/jpeg;base64,',
- 'irc:',
- 'ircs:',
- 'git:',
- 'ssh:',
- 'news:',
- 'steam:',
- );
-
- #
- # Lines
- #
-
- protected $BlockTypes = array(
- '#' => array('Header'),
- '*' => array('Rule', 'List'),
- '+' => array('List'),
- '-' => array('SetextHeader', 'Table', 'Rule', 'List'),
- '0' => array('List'),
- '1' => array('List'),
- '2' => array('List'),
- '3' => array('List'),
- '4' => array('List'),
- '5' => array('List'),
- '6' => array('List'),
- '7' => array('List'),
- '8' => array('List'),
- '9' => array('List'),
- ':' => array('Table'),
- '<' => array('Comment', 'Markup'),
- '=' => array('SetextHeader'),
- '>' => array('Quote'),
- '[' => array('Reference'),
- '_' => array('Rule'),
- '`' => array('FencedCode'),
- '|' => array('Table'),
- '~' => array('FencedCode'),
- );
-
- # ~
-
- protected $unmarkedBlockTypes = array(
- 'Code',
- );
-
- #
- # Blocks
- #
-
- protected function lines(array $lines)
- {
- return $this->elements($this->linesElements($lines));
- }
-
- protected function linesElements(array $lines)
- {
- $Elements = array();
- $CurrentBlock = null;
-
- foreach ($lines as $line)
- {
- if (chop($line) === '')
- {
- if (isset($CurrentBlock))
- {
- $CurrentBlock['interrupted'] = (isset($CurrentBlock['interrupted'])
- ? $CurrentBlock['interrupted'] + 1 : 1
- );
- }
-
- continue;
- }
-
- while (($beforeTab = strstr($line, "\t", true)) !== false)
- {
- $shortage = 4 - mb_strlen($beforeTab, 'utf-8') % 4;
-
- $line = $beforeTab
- . str_repeat(' ', $shortage)
- . substr($line, strlen($beforeTab) + 1)
- ;
- }
-
- $indent = strspn($line, ' ');
-
- $text = $indent > 0 ? substr($line, $indent) : $line;
-
- # ~
-
- $Line = array('body' => $line, 'indent' => $indent, 'text' => $text);
-
- # ~
-
- if (isset($CurrentBlock['continuable']))
- {
- $methodName = 'block' . $CurrentBlock['type'] . 'Continue';
- $Block = $this->$methodName($Line, $CurrentBlock);
-
- if (isset($Block))
- {
- $CurrentBlock = $Block;
-
- continue;
- }
- else
- {
- if ($this->isBlockCompletable($CurrentBlock['type']))
- {
- $methodName = 'block' . $CurrentBlock['type'] . 'Complete';
- $CurrentBlock = $this->$methodName($CurrentBlock);
- }
- }
- }
-
- # ~
-
- $marker = $text[0];
-
- # ~
-
- $blockTypes = $this->unmarkedBlockTypes;
-
- if (isset($this->BlockTypes[$marker]))
- {
- foreach ($this->BlockTypes[$marker] as $blockType)
- {
- $blockTypes []= $blockType;
- }
- }
-
- #
- # ~
-
- foreach ($blockTypes as $blockType)
- {
- $Block = $this->{"block$blockType"}($Line, $CurrentBlock);
-
- if (isset($Block))
- {
- $Block['type'] = $blockType;
-
- if ( ! isset($Block['identified']))
- {
- if (isset($CurrentBlock))
- {
- $Elements[] = $this->extractElement($CurrentBlock);
- }
-
- $Block['identified'] = true;
- }
-
- if ($this->isBlockContinuable($blockType))
- {
- $Block['continuable'] = true;
- }
-
- $CurrentBlock = $Block;
-
- continue 2;
- }
- }
-
- # ~
-
- if (isset($CurrentBlock) and $CurrentBlock['type'] === 'Paragraph')
- {
- $Block = $this->paragraphContinue($Line, $CurrentBlock);
- }
-
- if (isset($Block))
- {
- $CurrentBlock = $Block;
- }
- else
- {
- if (isset($CurrentBlock))
- {
- $Elements[] = $this->extractElement($CurrentBlock);
- }
-
- $CurrentBlock = $this->paragraph($Line);
-
- $CurrentBlock['identified'] = true;
- }
- }
-
- # ~
-
- if (isset($CurrentBlock['continuable']) and $this->isBlockCompletable($CurrentBlock['type']))
- {
- $methodName = 'block' . $CurrentBlock['type'] . 'Complete';
- $CurrentBlock = $this->$methodName($CurrentBlock);
- }
-
- # ~
-
- if (isset($CurrentBlock))
- {
- $Elements[] = $this->extractElement($CurrentBlock);
- }
-
- # ~
-
- return $Elements;
- }
-
- protected function extractElement(array $Component)
- {
- if ( ! isset($Component['element']))
- {
- if (isset($Component['markup']))
- {
- $Component['element'] = array('rawHtml' => $Component['markup']);
- }
- elseif (isset($Component['hidden']))
- {
- $Component['element'] = array();
- }
- }
-
- return $Component['element'];
- }
-
- protected function isBlockContinuable($Type)
- {
- return method_exists($this, 'block' . $Type . 'Continue');
- }
-
- protected function isBlockCompletable($Type)
- {
- return method_exists($this, 'block' . $Type . 'Complete');
- }
-
- #
- # Code
-
- protected function blockCode($Line, $Block = null)
- {
- if (isset($Block) and $Block['type'] === 'Paragraph' and ! isset($Block['interrupted']))
- {
- return;
- }
-
- if ($Line['indent'] >= 4)
- {
- $text = substr($Line['body'], 4);
-
- $Block = array(
- 'element' => array(
- 'name' => 'pre',
- 'element' => array(
- 'name' => 'code',
- 'text' => $text,
- ),
- ),
- );
-
- return $Block;
- }
- }
-
- protected function blockCodeContinue($Line, $Block)
- {
- if ($Line['indent'] >= 4)
- {
- if (isset($Block['interrupted']))
- {
- $Block['element']['element']['text'] .= str_repeat("\n", $Block['interrupted']);
-
- unset($Block['interrupted']);
- }
-
- $Block['element']['element']['text'] .= "\n";
-
- $text = substr($Line['body'], 4);
-
- $Block['element']['element']['text'] .= $text;
-
- return $Block;
- }
- }
-
- protected function blockCodeComplete($Block)
- {
- return $Block;
- }
-
- #
- # Comment
-
- protected function blockComment($Line)
- {
- if ($this->markupEscaped or $this->safeMode)
- {
- return;
- }
-
- if (strpos($Line['text'], '') !== false)
- {
- $Block['closed'] = true;
- }
-
- return $Block;
- }
- }
-
- protected function blockCommentContinue($Line, array $Block)
- {
- if (isset($Block['closed']))
- {
- return;
- }
-
- $Block['element']['rawHtml'] .= "\n" . $Line['body'];
-
- if (strpos($Line['text'], '-->') !== false)
- {
- $Block['closed'] = true;
- }
-
- return $Block;
- }
-
- #
- # Fenced Code
-
- protected function blockFencedCode($Line)
- {
- $marker = $Line['text'][0];
-
- $openerLength = strspn($Line['text'], $marker);
-
- if ($openerLength < 3)
- {
- return;
- }
-
- $infostring = trim(substr($Line['text'], $openerLength), "\t ");
-
- if (strpos($infostring, '`') !== false)
- {
- return;
- }
-
- $Element = array(
- 'name' => 'code',
- 'text' => '',
- );
-
- if ($infostring !== '')
- {
- /**
- * https://www.w3.org/TR/2011/WD-html5-20110525/elements.html#classes
- * Every HTML element may have a class attribute specified.
- * The attribute, if specified, must have a value that is a set
- * of space-separated tokens representing the various classes
- * that the element belongs to.
- * [...]
- * The space characters, for the purposes of this specification,
- * are U+0020 SPACE, U+0009 CHARACTER TABULATION (tab),
- * U+000A LINE FEED (LF), U+000C FORM FEED (FF), and
- * U+000D CARRIAGE RETURN (CR).
- */
- $language = substr($infostring, 0, strcspn($infostring, " \t\n\f\r"));
-
- $Element['attributes'] = array('class' => "language-$language");
- }
-
- $Block = array(
- 'char' => $marker,
- 'openerLength' => $openerLength,
- 'element' => array(
- 'name' => 'pre',
- 'element' => $Element,
- ),
- );
-
- return $Block;
- }
-
- protected function blockFencedCodeContinue($Line, $Block)
- {
- if (isset($Block['complete']))
- {
- return;
- }
-
- if (isset($Block['interrupted']))
- {
- $Block['element']['element']['text'] .= str_repeat("\n", $Block['interrupted']);
-
- unset($Block['interrupted']);
- }
-
- if (($len = strspn($Line['text'], $Block['char'])) >= $Block['openerLength']
- and chop(substr($Line['text'], $len), ' ') === ''
- ) {
- $Block['element']['element']['text'] = substr($Block['element']['element']['text'], 1);
-
- $Block['complete'] = true;
-
- return $Block;
- }
-
- $Block['element']['element']['text'] .= "\n" . $Line['body'];
-
- return $Block;
- }
-
- protected function blockFencedCodeComplete($Block)
- {
- return $Block;
- }
-
- #
- # Header
-
- protected function blockHeader($Line)
- {
- $level = strspn($Line['text'], '#');
-
- if ($level > 6)
- {
- return;
- }
-
- $text = trim($Line['text'], '#');
-
- if ($this->strictMode and isset($text[0]) and $text[0] !== ' ')
- {
- return;
- }
-
- $text = trim($text, ' ');
-
- $Block = array(
- 'element' => array(
- 'name' => 'h' . $level,
- 'handler' => array(
- 'function' => 'lineElements',
- 'argument' => $text,
- 'destination' => 'elements',
- )
- ),
- );
-
- return $Block;
- }
-
- #
- # List
-
- protected function blockList($Line, ?array $CurrentBlock = null)
- {
- list($name, $pattern) = $Line['text'][0] <= '-' ? array('ul', '[*+-]') : array('ol', '[0-9]{1,9}+[.\)]');
-
- if (preg_match('/^('.$pattern.'([ ]++|$))(.*+)/', $Line['text'], $matches))
- {
- $contentIndent = strlen($matches[2]);
-
- if ($contentIndent >= 5)
- {
- $contentIndent -= 1;
- $matches[1] = substr($matches[1], 0, -$contentIndent);
- $matches[3] = str_repeat(' ', $contentIndent) . $matches[3];
- }
- elseif ($contentIndent === 0)
- {
- $matches[1] .= ' ';
- }
-
- $markerWithoutWhitespace = strstr($matches[1], ' ', true);
-
- $Block = array(
- 'indent' => $Line['indent'],
- 'pattern' => $pattern,
- 'data' => array(
- 'type' => $name,
- 'marker' => $matches[1],
- 'markerType' => ($name === 'ul' ? $markerWithoutWhitespace : substr($markerWithoutWhitespace, -1)),
- ),
- 'element' => array(
- 'name' => $name,
- 'elements' => array(),
- ),
- );
- $Block['data']['markerTypeRegex'] = preg_quote($Block['data']['markerType'], '/');
-
- if ($name === 'ol')
- {
- $listStart = ltrim(strstr($matches[1], $Block['data']['markerType'], true), '0') ?: '0';
-
- if ($listStart !== '1')
- {
- if (
- isset($CurrentBlock)
- and $CurrentBlock['type'] === 'Paragraph'
- and ! isset($CurrentBlock['interrupted'])
- ) {
- return;
- }
-
- $Block['element']['attributes'] = array('start' => $listStart);
- }
- }
-
- $Block['li'] = array(
- 'name' => 'li',
- 'handler' => array(
- 'function' => 'li',
- 'argument' => !empty($matches[3]) ? array($matches[3]) : array(),
- 'destination' => 'elements'
- )
- );
-
- $Block['element']['elements'] []= & $Block['li'];
-
- return $Block;
- }
- }
-
- protected function blockListContinue($Line, array $Block)
- {
- if (isset($Block['interrupted']) and empty($Block['li']['handler']['argument']))
- {
- return null;
- }
-
- $requiredIndent = ($Block['indent'] + strlen($Block['data']['marker']));
-
- if ($Line['indent'] < $requiredIndent
- and (
- (
- $Block['data']['type'] === 'ol'
- and preg_match('/^[0-9]++'.$Block['data']['markerTypeRegex'].'(?:[ ]++(.*)|$)/', $Line['text'], $matches)
- ) or (
- $Block['data']['type'] === 'ul'
- and preg_match('/^'.$Block['data']['markerTypeRegex'].'(?:[ ]++(.*)|$)/', $Line['text'], $matches)
- )
- )
- ) {
- if (isset($Block['interrupted']))
- {
- $Block['li']['handler']['argument'] []= '';
-
- $Block['loose'] = true;
-
- unset($Block['interrupted']);
- }
-
- unset($Block['li']);
-
- $text = isset($matches[1]) ? $matches[1] : '';
-
- $Block['indent'] = $Line['indent'];
-
- $Block['li'] = array(
- 'name' => 'li',
- 'handler' => array(
- 'function' => 'li',
- 'argument' => array($text),
- 'destination' => 'elements'
- )
- );
-
- $Block['element']['elements'] []= & $Block['li'];
-
- return $Block;
- }
- elseif ($Line['indent'] < $requiredIndent and $this->blockList($Line))
- {
- return null;
- }
-
- if ($Line['text'][0] === '[' and $this->blockReference($Line))
- {
- return $Block;
- }
-
- if ($Line['indent'] >= $requiredIndent)
- {
- if (isset($Block['interrupted']))
- {
- $Block['li']['handler']['argument'] []= '';
-
- $Block['loose'] = true;
-
- unset($Block['interrupted']);
- }
-
- $text = substr($Line['body'], $requiredIndent);
-
- $Block['li']['handler']['argument'] []= $text;
-
- return $Block;
- }
-
- if ( ! isset($Block['interrupted']))
- {
- $text = preg_replace('/^[ ]{0,'.$requiredIndent.'}+/', '', $Line['body']);
-
- $Block['li']['handler']['argument'] []= $text;
-
- return $Block;
- }
- }
-
- protected function blockListComplete(array $Block)
- {
- if (isset($Block['loose']))
- {
- foreach ($Block['element']['elements'] as &$li)
- {
- if (end($li['handler']['argument']) !== '')
- {
- $li['handler']['argument'] []= '';
- }
- }
- }
-
- return $Block;
- }
-
- #
- # Quote
-
- protected function blockQuote($Line)
- {
- if (preg_match('/^>[ ]?+(.*+)/', $Line['text'], $matches))
- {
- $Block = array(
- 'element' => array(
- 'name' => 'blockquote',
- 'handler' => array(
- 'function' => 'linesElements',
- 'argument' => (array) $matches[1],
- 'destination' => 'elements',
- )
- ),
- );
-
- return $Block;
- }
- }
-
- protected function blockQuoteContinue($Line, array $Block)
- {
- if (isset($Block['interrupted']))
- {
- return;
- }
-
- if ($Line['text'][0] === '>' and preg_match('/^>[ ]?+(.*+)/', $Line['text'], $matches))
- {
- $Block['element']['handler']['argument'] []= $matches[1];
-
- return $Block;
- }
-
- if ( ! isset($Block['interrupted']))
- {
- $Block['element']['handler']['argument'] []= $Line['text'];
-
- return $Block;
- }
- }
-
- #
- # Rule
-
- protected function blockRule($Line)
- {
- $marker = $Line['text'][0];
-
- if (substr_count($Line['text'], $marker) >= 3 and chop($Line['text'], " $marker") === '')
- {
- $Block = array(
- 'element' => array(
- 'name' => 'hr',
- ),
- );
-
- return $Block;
- }
- }
-
- #
- # Setext
-
- protected function blockSetextHeader($Line, ?array $Block = null)
- {
- if ( ! isset($Block) or $Block['type'] !== 'Paragraph' or isset($Block['interrupted']))
- {
- return;
- }
-
- if ($Line['indent'] < 4 and chop(chop($Line['text'], ' '), $Line['text'][0]) === '')
- {
- $Block['element']['name'] = $Line['text'][0] === '=' ? 'h1' : 'h2';
-
- return $Block;
- }
- }
-
- #
- # Markup
-
- protected function blockMarkup($Line)
- {
- if ($this->markupEscaped or $this->safeMode)
- {
- return;
- }
-
- if (preg_match('/^<[\/]?+(\w*)(?:[ ]*+'.$this->regexHtmlAttribute.')*+[ ]*+(\/)?>/', $Line['text'], $matches))
- {
- $element = strtolower($matches[1]);
-
- if (in_array($element, $this->textLevelElements))
- {
- return;
- }
-
- $Block = array(
- 'name' => $matches[1],
- 'element' => array(
- 'rawHtml' => $Line['text'],
- 'autobreak' => true,
- ),
- );
-
- return $Block;
- }
- }
-
- protected function blockMarkupContinue($Line, array $Block)
- {
- if (isset($Block['closed']) or isset($Block['interrupted']))
- {
- return;
- }
-
- $Block['element']['rawHtml'] .= "\n" . $Line['body'];
-
- return $Block;
- }
-
- #
- # Reference
-
- protected function blockReference($Line)
- {
- if (strpos($Line['text'], ']') !== false
- and preg_match('/^\[(.+?)\]:[ ]*+(\S+?)>?(?:[ ]+["\'(](.+)["\')])?[ ]*+$/', $Line['text'], $matches)
- ) {
- $id = strtolower($matches[1]);
-
- $Data = array(
- 'url' => $matches[2],
- 'title' => isset($matches[3]) ? $matches[3] : null,
- );
-
- $this->DefinitionData['Reference'][$id] = $Data;
-
- $Block = array(
- 'element' => array(),
- );
-
- return $Block;
- }
- }
-
- #
- # Table
-
- protected function blockTable($Line, ?array $Block = null)
- {
- if ( ! isset($Block) or $Block['type'] !== 'Paragraph' or isset($Block['interrupted']))
- {
- return;
- }
-
- if (
- strpos($Block['element']['handler']['argument'], '|') === false
- and strpos($Line['text'], '|') === false
- and strpos($Line['text'], ':') === false
- or strpos($Block['element']['handler']['argument'], "\n") !== false
- ) {
- return;
- }
-
- if (chop($Line['text'], ' -:|') !== '')
- {
- return;
- }
-
- $alignments = array();
-
- $divider = $Line['text'];
-
- $divider = trim($divider);
- $divider = trim($divider, '|');
-
- $dividerCells = explode('|', $divider);
-
- foreach ($dividerCells as $dividerCell)
- {
- $dividerCell = trim($dividerCell);
-
- if ($dividerCell === '')
- {
- return;
- }
-
- $alignment = null;
-
- if ($dividerCell[0] === ':')
- {
- $alignment = 'left';
- }
-
- if (substr($dividerCell, - 1) === ':')
- {
- $alignment = $alignment === 'left' ? 'center' : 'right';
- }
-
- $alignments []= $alignment;
- }
-
- # ~
-
- $HeaderElements = array();
-
- $header = $Block['element']['handler']['argument'];
-
- $header = trim($header);
- $header = trim($header, '|');
-
- $headerCells = explode('|', $header);
-
- if (count($headerCells) !== count($alignments))
- {
- return;
- }
-
- foreach ($headerCells as $index => $headerCell)
- {
- $headerCell = trim($headerCell);
-
- $HeaderElement = array(
- 'name' => 'th',
- 'handler' => array(
- 'function' => 'lineElements',
- 'argument' => $headerCell,
- 'destination' => 'elements',
- )
- );
-
- if (isset($alignments[$index]))
- {
- $alignment = $alignments[$index];
-
- $HeaderElement['attributes'] = array(
- 'style' => "text-align: $alignment;",
- );
- }
-
- $HeaderElements []= $HeaderElement;
- }
-
- # ~
-
- $Block = array(
- 'alignments' => $alignments,
- 'identified' => true,
- 'element' => array(
- 'name' => 'table',
- 'elements' => array(),
- ),
- );
-
- $Block['element']['elements'] []= array(
- 'name' => 'thead',
- );
-
- $Block['element']['elements'] []= array(
- 'name' => 'tbody',
- 'elements' => array(),
- );
-
- $Block['element']['elements'][0]['elements'] []= array(
- 'name' => 'tr',
- 'elements' => $HeaderElements,
- );
-
- return $Block;
- }
-
- protected function blockTableContinue($Line, array $Block)
- {
- if (isset($Block['interrupted']))
- {
- return;
- }
-
- if (count($Block['alignments']) === 1 or $Line['text'][0] === '|' or strpos($Line['text'], '|'))
- {
- $Elements = array();
-
- $row = $Line['text'];
-
- $row = trim($row);
- $row = trim($row, '|');
-
- preg_match_all('/(?:(\\\\[|])|[^|`]|`[^`]++`|`)++/', $row, $matches);
-
- $cells = array_slice($matches[0], 0, count($Block['alignments']));
-
- foreach ($cells as $index => $cell)
- {
- $cell = trim($cell);
-
- $Element = array(
- 'name' => 'td',
- 'handler' => array(
- 'function' => 'lineElements',
- 'argument' => $cell,
- 'destination' => 'elements',
- )
- );
-
- if (isset($Block['alignments'][$index]))
- {
- $Element['attributes'] = array(
- 'style' => 'text-align: ' . $Block['alignments'][$index] . ';',
- );
- }
-
- $Elements []= $Element;
- }
-
- $Element = array(
- 'name' => 'tr',
- 'elements' => $Elements,
- );
-
- $Block['element']['elements'][1]['elements'] []= $Element;
-
- return $Block;
- }
- }
-
- #
- # ~
- #
-
- protected function paragraph($Line)
- {
- return array(
- 'type' => 'Paragraph',
- 'element' => array(
- 'name' => 'p',
- 'handler' => array(
- 'function' => 'lineElements',
- 'argument' => $Line['text'],
- 'destination' => 'elements',
- ),
- ),
- );
- }
-
- protected function paragraphContinue($Line, array $Block)
- {
- if (isset($Block['interrupted']))
- {
- return;
- }
-
- $Block['element']['handler']['argument'] .= "\n".$Line['text'];
-
- return $Block;
- }
-
- #
- # Inline Elements
- #
-
- protected $InlineTypes = array(
- '!' => array('Image'),
- '&' => array('SpecialCharacter'),
- '*' => array('Emphasis'),
- ':' => array('Url'),
- '<' => array('UrlTag', 'EmailTag', 'Markup'),
- '[' => array('Link'),
- '_' => array('Emphasis'),
- '`' => array('Code'),
- '~' => array('Strikethrough'),
- '\\' => array('EscapeSequence'),
- );
-
- # ~
-
- protected $inlineMarkerList = '!*_&[:<`~\\';
-
- #
- # ~
- #
-
- public function line($text, $nonNestables = array())
- {
- return $this->elements($this->lineElements($text, $nonNestables));
- }
-
- protected function lineElements($text, $nonNestables = array())
- {
- # standardize line breaks
- $text = str_replace(array("\r\n", "\r"), "\n", $text);
-
- $Elements = array();
-
- $nonNestables = (empty($nonNestables)
- ? array()
- : array_combine($nonNestables, $nonNestables)
- );
-
- # $excerpt is based on the first occurrence of a marker
-
- while ($excerpt = strpbrk($text, $this->inlineMarkerList))
- {
- $marker = $excerpt[0];
-
- $markerPosition = strlen($text) - strlen($excerpt);
-
- $Excerpt = array('text' => $excerpt, 'context' => $text);
-
- foreach ($this->InlineTypes[$marker] as $inlineType)
- {
- # check to see if the current inline type is nestable in the current context
-
- if (isset($nonNestables[$inlineType]))
- {
- continue;
- }
-
- $Inline = $this->{"inline$inlineType"}($Excerpt);
-
- if ( ! isset($Inline))
- {
- continue;
- }
-
- # makes sure that the inline belongs to "our" marker
-
- if (isset($Inline['position']) and $Inline['position'] > $markerPosition)
- {
- continue;
- }
-
- # sets a default inline position
-
- if ( ! isset($Inline['position']))
- {
- $Inline['position'] = $markerPosition;
- }
-
- # cause the new element to 'inherit' our non nestables
-
-
- $Inline['element']['nonNestables'] = isset($Inline['element']['nonNestables'])
- ? array_merge($Inline['element']['nonNestables'], $nonNestables)
- : $nonNestables
- ;
-
- # the text that comes before the inline
- $unmarkedText = substr($text, 0, $Inline['position']);
-
- # compile the unmarked text
- $InlineText = $this->inlineText($unmarkedText);
- $Elements[] = $InlineText['element'];
-
- # compile the inline
- $Elements[] = $this->extractElement($Inline);
-
- # remove the examined text
- $text = substr($text, $Inline['position'] + $Inline['extent']);
-
- continue 2;
- }
-
- # the marker does not belong to an inline
-
- $unmarkedText = substr($text, 0, $markerPosition + 1);
-
- $InlineText = $this->inlineText($unmarkedText);
- $Elements[] = $InlineText['element'];
-
- $text = substr($text, $markerPosition + 1);
- }
-
- $InlineText = $this->inlineText($text);
- $Elements[] = $InlineText['element'];
-
- foreach ($Elements as &$Element)
- {
- if ( ! isset($Element['autobreak']))
- {
- $Element['autobreak'] = false;
- }
- }
-
- return $Elements;
- }
-
- #
- # ~
- #
-
- protected function inlineText($text)
- {
- $Inline = array(
- 'extent' => strlen($text),
- 'element' => array(),
- );
-
- $Inline['element']['elements'] = self::pregReplaceElements(
- $this->breaksEnabled ? '/[ ]*+\n/' : '/(?:[ ]*+\\\\|[ ]{2,}+)\n/',
- array(
- array('name' => 'br'),
- array('text' => "\n"),
- ),
- $text
- );
-
- return $Inline;
- }
-
- protected function inlineCode($Excerpt)
- {
- $marker = $Excerpt['text'][0];
-
- if (preg_match('/^(['.$marker.']++)[ ]*+(.+?)[ ]*+(? strlen($matches[0]),
- 'element' => array(
- 'name' => 'code',
- 'text' => $text,
- ),
- );
- }
- }
-
- protected function inlineEmailTag($Excerpt)
- {
- $hostnameLabel = '[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?';
-
- $commonMarkEmail = '[a-zA-Z0-9.!#$%&\'*+\/=?^_`{|}~-]++@'
- . $hostnameLabel . '(?:\.' . $hostnameLabel . ')*';
-
- if (strpos($Excerpt['text'], '>') !== false
- and preg_match("/^<((mailto:)?$commonMarkEmail)>/i", $Excerpt['text'], $matches)
- ){
- $url = $matches[1];
-
- if ( ! isset($matches[2]))
- {
- $url = "mailto:$url";
- }
-
- return array(
- 'extent' => strlen($matches[0]),
- 'element' => array(
- 'name' => 'a',
- 'text' => $matches[1],
- 'attributes' => array(
- 'href' => $url,
- ),
- ),
- );
- }
- }
-
- protected function inlineEmphasis($Excerpt)
- {
- if ( ! isset($Excerpt['text'][1]))
- {
- return;
- }
-
- $marker = $Excerpt['text'][0];
-
- if ($Excerpt['text'][1] === $marker and preg_match($this->StrongRegex[$marker], $Excerpt['text'], $matches))
- {
- $emphasis = 'strong';
- }
- elseif (preg_match($this->EmRegex[$marker], $Excerpt['text'], $matches))
- {
- $emphasis = 'em';
- }
- else
- {
- return;
- }
-
- return array(
- 'extent' => strlen($matches[0]),
- 'element' => array(
- 'name' => $emphasis,
- 'handler' => array(
- 'function' => 'lineElements',
- 'argument' => $matches[1],
- 'destination' => 'elements',
- )
- ),
- );
- }
-
- protected function inlineEscapeSequence($Excerpt)
- {
- if (isset($Excerpt['text'][1]) and in_array($Excerpt['text'][1], $this->specialCharacters))
- {
- return array(
- 'element' => array('rawHtml' => $Excerpt['text'][1]),
- 'extent' => 2,
- );
- }
- }
-
- protected function inlineImage($Excerpt)
- {
- if ( ! isset($Excerpt['text'][1]) or $Excerpt['text'][1] !== '[')
- {
- return;
- }
-
- $Excerpt['text']= substr($Excerpt['text'], 1);
-
- $Link = $this->inlineLink($Excerpt);
-
- if ($Link === null)
- {
- return;
- }
-
- $Inline = array(
- 'extent' => $Link['extent'] + 1,
- 'element' => array(
- 'name' => 'img',
- 'attributes' => array(
- 'src' => $Link['element']['attributes']['href'],
- 'alt' => $Link['element']['handler']['argument'],
- ),
- 'autobreak' => true,
- ),
- );
-
- $Inline['element']['attributes'] += $Link['element']['attributes'];
-
- unset($Inline['element']['attributes']['href']);
-
- return $Inline;
- }
-
- protected function inlineLink($Excerpt)
- {
- $Element = array(
- 'name' => 'a',
- 'handler' => array(
- 'function' => 'lineElements',
- 'argument' => null,
- 'destination' => 'elements',
- ),
- 'nonNestables' => array('Url', 'Link'),
- 'attributes' => array(
- 'href' => null,
- 'title' => null,
- ),
- );
-
- $extent = 0;
-
- $remainder = $Excerpt['text'];
-
- if (preg_match('/\[((?:[^][]++|(?R))*+)\]/', $remainder, $matches))
- {
- $Element['handler']['argument'] = $matches[1];
-
- $extent += strlen($matches[0]);
-
- $remainder = substr($remainder, $extent);
- }
- else
- {
- return;
- }
-
- if (preg_match('/^[(]\s*+((?:[^ ()]++|[(][^ )]+[)])++)(?:[ ]+("[^"]*+"|\'[^\']*+\'))?\s*+[)]/', $remainder, $matches))
- {
- $Element['attributes']['href'] = $matches[1];
-
- if (isset($matches[2]))
- {
- $Element['attributes']['title'] = substr($matches[2], 1, - 1);
- }
-
- $extent += strlen($matches[0]);
- }
- else
- {
- if (preg_match('/^\s*\[(.*?)\]/', $remainder, $matches))
- {
- $definition = strlen($matches[1]) ? $matches[1] : $Element['handler']['argument'];
- $definition = strtolower($definition);
-
- $extent += strlen($matches[0]);
- }
- else
- {
- $definition = strtolower($Element['handler']['argument']);
- }
-
- if ( ! isset($this->DefinitionData['Reference'][$definition]))
- {
- return;
- }
-
- $Definition = $this->DefinitionData['Reference'][$definition];
-
- $Element['attributes']['href'] = $Definition['url'];
- $Element['attributes']['title'] = $Definition['title'];
- }
-
- return array(
- 'extent' => $extent,
- 'element' => $Element,
- );
- }
-
- protected function inlineMarkup($Excerpt)
- {
- if ($this->markupEscaped or $this->safeMode or strpos($Excerpt['text'], '>') === false)
- {
- return;
- }
-
- if ($Excerpt['text'][1] === '/' and preg_match('/^<\/\w[\w-]*+[ ]*+>/s', $Excerpt['text'], $matches))
- {
- return array(
- 'element' => array('rawHtml' => $matches[0]),
- 'extent' => strlen($matches[0]),
- );
- }
-
- if ($Excerpt['text'][1] === '!' and preg_match('/^/s', $Excerpt['text'], $matches))
- {
- return array(
- 'element' => array('rawHtml' => $matches[0]),
- 'extent' => strlen($matches[0]),
- );
- }
-
- if ($Excerpt['text'][1] !== ' ' and preg_match('/^<\w[\w-]*+(?:[ ]*+'.$this->regexHtmlAttribute.')*+[ ]*+\/?>/s', $Excerpt['text'], $matches))
- {
- return array(
- 'element' => array('rawHtml' => $matches[0]),
- 'extent' => strlen($matches[0]),
- );
- }
- }
-
- protected function inlineSpecialCharacter($Excerpt)
- {
- if (substr($Excerpt['text'], 1, 1) !== ' ' and strpos($Excerpt['text'], ';') !== false
- and preg_match('/^&(#?+[0-9a-zA-Z]++);/', $Excerpt['text'], $matches)
- ) {
- return array(
- 'element' => array('rawHtml' => '&' . $matches[1] . ';'),
- 'extent' => strlen($matches[0]),
- );
- }
-
- return;
- }
-
- protected function inlineStrikethrough($Excerpt)
- {
- if ( ! isset($Excerpt['text'][1]))
- {
- return;
- }
-
- if ($Excerpt['text'][1] === '~' and preg_match('/^~~(?=\S)(.+?)(?<=\S)~~/', $Excerpt['text'], $matches))
- {
- return array(
- 'extent' => strlen($matches[0]),
- 'element' => array(
- 'name' => 'del',
- 'handler' => array(
- 'function' => 'lineElements',
- 'argument' => $matches[1],
- 'destination' => 'elements',
- )
- ),
- );
- }
- }
-
- protected function inlineUrl($Excerpt)
- {
- if ($this->urlsLinked !== true or ! isset($Excerpt['text'][2]) or $Excerpt['text'][2] !== '/')
- {
- return;
- }
-
- if (strpos($Excerpt['context'], 'http') !== false
- and preg_match('/\bhttps?+:[\/]{2}[^\s<]+\b\/*+/ui', $Excerpt['context'], $matches, PREG_OFFSET_CAPTURE)
- ) {
- $url = $matches[0][0];
-
- $Inline = array(
- 'extent' => strlen($matches[0][0]),
- 'position' => $matches[0][1],
- 'element' => array(
- 'name' => 'a',
- 'text' => $url,
- 'attributes' => array(
- 'href' => $url,
- ),
- ),
- );
-
- return $Inline;
- }
- }
-
- protected function inlineUrlTag($Excerpt)
- {
- if (strpos($Excerpt['text'], '>') !== false and preg_match('/^<(\w++:\/{2}[^ >]++)>/i', $Excerpt['text'], $matches))
- {
- $url = $matches[1];
-
- return array(
- 'extent' => strlen($matches[0]),
- 'element' => array(
- 'name' => 'a',
- 'text' => $url,
- 'attributes' => array(
- 'href' => $url,
- ),
- ),
- );
- }
- }
-
- # ~
-
- protected function unmarkedText($text)
- {
- $Inline = $this->inlineText($text);
- return $this->element($Inline['element']);
- }
-
- #
- # Handlers
- #
-
- protected function handle(array $Element)
- {
- if (isset($Element['handler']))
- {
- if (!isset($Element['nonNestables']))
- {
- $Element['nonNestables'] = array();
- }
-
- if (is_string($Element['handler']))
- {
- $function = $Element['handler'];
- $argument = $Element['text'];
- unset($Element['text']);
- $destination = 'rawHtml';
- }
- else
- {
- $function = $Element['handler']['function'];
- $argument = $Element['handler']['argument'];
- $destination = $Element['handler']['destination'];
- }
-
- $Element[$destination] = $this->{$function}($argument, $Element['nonNestables']);
-
- if ($destination === 'handler')
- {
- $Element = $this->handle($Element);
- }
-
- unset($Element['handler']);
- }
-
- return $Element;
- }
-
- protected function handleElementRecursive(array $Element)
- {
- return $this->elementApplyRecursive(array($this, 'handle'), $Element);
- }
-
- protected function handleElementsRecursive(array $Elements)
- {
- return $this->elementsApplyRecursive(array($this, 'handle'), $Elements);
- }
-
- protected function elementApplyRecursive($closure, array $Element)
- {
- $Element = call_user_func($closure, $Element);
-
- if (isset($Element['elements']))
- {
- $Element['elements'] = $this->elementsApplyRecursive($closure, $Element['elements']);
- }
- elseif (isset($Element['element']))
- {
- $Element['element'] = $this->elementApplyRecursive($closure, $Element['element']);
- }
-
- return $Element;
- }
-
- protected function elementApplyRecursiveDepthFirst($closure, array $Element)
- {
- if (isset($Element['elements']))
- {
- $Element['elements'] = $this->elementsApplyRecursiveDepthFirst($closure, $Element['elements']);
- }
- elseif (isset($Element['element']))
- {
- $Element['element'] = $this->elementsApplyRecursiveDepthFirst($closure, $Element['element']);
- }
-
- $Element = call_user_func($closure, $Element);
-
- return $Element;
- }
-
- protected function elementsApplyRecursive($closure, array $Elements)
- {
- foreach ($Elements as &$Element)
- {
- $Element = $this->elementApplyRecursive($closure, $Element);
- }
-
- return $Elements;
- }
-
- protected function elementsApplyRecursiveDepthFirst($closure, array $Elements)
- {
- foreach ($Elements as &$Element)
- {
- $Element = $this->elementApplyRecursiveDepthFirst($closure, $Element);
- }
-
- return $Elements;
- }
-
- protected function element(array $Element)
- {
- if ($this->safeMode)
- {
- $Element = $this->sanitiseElement($Element);
- }
-
- # identity map if element has no handler
- $Element = $this->handle($Element);
-
- $hasName = isset($Element['name']);
-
- $markup = '';
-
- if ($hasName)
- {
- $markup .= '<' . $Element['name'];
-
- if (isset($Element['attributes']))
- {
- foreach ($Element['attributes'] as $name => $value)
- {
- if ($value === null)
- {
- continue;
- }
-
- $markup .= " $name=\"".self::escape($value).'"';
- }
- }
- }
-
- $permitRawHtml = false;
-
- if (isset($Element['text']))
- {
- $text = $Element['text'];
- }
- // very strongly consider an alternative if you're writing an
- // extension
- elseif (isset($Element['rawHtml']))
- {
- $text = $Element['rawHtml'];
-
- $allowRawHtmlInSafeMode = isset($Element['allowRawHtmlInSafeMode']) && $Element['allowRawHtmlInSafeMode'];
- $permitRawHtml = !$this->safeMode || $allowRawHtmlInSafeMode;
- }
-
- $hasContent = isset($text) || isset($Element['element']) || isset($Element['elements']);
-
- if ($hasContent)
- {
- $markup .= $hasName ? '>' : '';
-
- if (isset($Element['elements']))
- {
- $markup .= $this->elements($Element['elements']);
- }
- elseif (isset($Element['element']))
- {
- $markup .= $this->element($Element['element']);
- }
- else
- {
- if (!$permitRawHtml)
- {
- $markup .= self::escape($text, true);
- }
- else
- {
- $markup .= $text;
- }
- }
-
- $markup .= $hasName ? '' . $Element['name'] . '>' : '';
- }
- elseif ($hasName)
- {
- $markup .= ' />';
- }
-
- return $markup;
- }
-
- protected function elements(array $Elements)
- {
- $markup = '';
-
- $autoBreak = true;
-
- foreach ($Elements as $Element)
- {
- if (empty($Element))
- {
- continue;
- }
-
- $autoBreakNext = (isset($Element['autobreak'])
- ? $Element['autobreak'] : isset($Element['name'])
- );
- // (autobreak === false) covers both sides of an element
- $autoBreak = !$autoBreak ? $autoBreak : $autoBreakNext;
-
- $markup .= ($autoBreak ? "\n" : '') . $this->element($Element);
- $autoBreak = $autoBreakNext;
- }
-
- $markup .= $autoBreak ? "\n" : '';
-
- return $markup;
- }
-
- # ~
-
- protected function li($lines)
- {
- $Elements = $this->linesElements($lines);
-
- if ( ! in_array('', $lines)
- and isset($Elements[0]) and isset($Elements[0]['name'])
- and $Elements[0]['name'] === 'p'
- ) {
- unset($Elements[0]['name']);
- }
-
- return $Elements;
- }
-
- #
- # AST Convenience
- #
-
- /**
- * Replace occurrences $regexp with $Elements in $text. Return an array of
- * elements representing the replacement.
- */
- protected static function pregReplaceElements($regexp, $Elements, $text)
- {
- $newElements = array();
-
- while (preg_match($regexp, $text, $matches, PREG_OFFSET_CAPTURE))
- {
- $offset = $matches[0][1];
- $before = substr($text, 0, $offset);
- $after = substr($text, $offset + strlen($matches[0][0]));
-
- $newElements[] = array('text' => $before);
-
- foreach ($Elements as $Element)
- {
- $newElements[] = $Element;
- }
-
- $text = $after;
- }
-
- $newElements[] = array('text' => $text);
-
- return $newElements;
- }
-
- #
- # Deprecated Methods
- #
-
- function parse($text)
- {
- $markup = $this->text($text);
-
- return $markup;
- }
-
- protected function sanitiseElement(array $Element)
- {
- static $goodAttribute = '/^[a-zA-Z0-9][a-zA-Z0-9-_]*+$/';
- static $safeUrlNameToAtt = array(
- 'a' => 'href',
- 'img' => 'src',
- );
-
- if ( ! isset($Element['name']))
- {
- unset($Element['attributes']);
- return $Element;
- }
-
- if (isset($safeUrlNameToAtt[$Element['name']]))
- {
- $Element = $this->filterUnsafeUrlInAttribute($Element, $safeUrlNameToAtt[$Element['name']]);
- }
-
- if ( ! empty($Element['attributes']))
- {
- foreach ($Element['attributes'] as $att => $val)
- {
- # filter out badly parsed attribute
- if ( ! preg_match($goodAttribute, $att))
- {
- unset($Element['attributes'][$att]);
- }
- # dump onevent attribute
- elseif (self::striAtStart($att, 'on'))
- {
- unset($Element['attributes'][$att]);
- }
- }
- }
-
- return $Element;
- }
-
- protected function filterUnsafeUrlInAttribute(array $Element, $attribute)
- {
- foreach ($this->safeLinksWhitelist as $scheme)
- {
- if (self::striAtStart($Element['attributes'][$attribute], $scheme))
- {
- return $Element;
- }
- }
-
- $Element['attributes'][$attribute] = str_replace(':', '%3A', $Element['attributes'][$attribute]);
-
- return $Element;
- }
-
- #
- # Static Methods
- #
-
- protected static function escape($text, $allowQuotes = false)
- {
- return htmlspecialchars($text, $allowQuotes ? ENT_NOQUOTES : ENT_QUOTES, 'UTF-8');
- }
-
- protected static function striAtStart($string, $needle)
- {
- $len = strlen($needle);
-
- if ($len > strlen($string))
- {
- return false;
- }
- else
- {
- return strtolower(substr($string, 0, $len)) === strtolower($needle);
- }
- }
-
- static function instance($name = 'default')
- {
- if (isset(self::$instances[$name]))
- {
- return self::$instances[$name];
- }
-
- $instance = new static();
-
- self::$instances[$name] = $instance;
-
- return $instance;
- }
-
- private static $instances = array();
-
- #
- # Fields
- #
-
- protected $DefinitionData;
-
- #
- # Read-Only
-
- protected $specialCharacters = array(
- '\\', '`', '*', '_', '{', '}', '[', ']', '(', ')', '>', '#', '+', '-', '.', '!', '|', '~'
- );
-
- protected $StrongRegex = array(
- '*' => '/^[*]{2}((?:\\\\\*|[^*]|[*][^*]*+[*])+?)[*]{2}(?![*])/s',
- '_' => '/^__((?:\\\\_|[^_]|_[^_]*+_)+?)__(?!_)/us',
- );
-
- protected $EmRegex = array(
- '*' => '/^[*]((?:\\\\\*|[^*]|[*][*][^*]+?[*][*])+?)[*](?![*])/s',
- '_' => '/^_((?:\\\\_|[^_]|__[^_]*__)+?)_(?!_)\b/us',
- );
-
- protected $regexHtmlAttribute = '[a-zA-Z_:][\w:.-]*+(?:\s*+=\s*+(?:[^"\'=<>`\s]+|"[^"]*+"|\'[^\']*+\'))?+';
-
- protected $voidElements = array(
- 'area', 'base', 'br', 'col', 'command', 'embed', 'hr', 'img', 'input', 'link', 'meta', 'param', 'source',
- );
-
- protected $textLevelElements = array(
- 'a', 'br', 'bdo', 'abbr', 'blink', 'nextid', 'acronym', 'basefont',
- 'b', 'em', 'big', 'cite', 'small', 'spacer', 'listing',
- 'i', 'rp', 'del', 'code', 'strike', 'marquee',
- 'q', 'rt', 'ins', 'font', 'strong',
- 's', 'tt', 'kbd', 'mark',
- 'u', 'xm', 'sub', 'nobr',
- 'sup', 'ruby',
- 'var', 'span',
- 'wbr', 'time',
- );
-}
diff --git a/modules/billing/docs_old/games/_TEMPLATE.MD b/modules/billing/docs_old/games/_TEMPLATE.MD
deleted file mode 100644
index 8e45b2f4..00000000
--- a/modules/billing/docs_old/games/_TEMPLATE.MD
+++ /dev/null
@@ -1,50 +0,0 @@
-# — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
- # exact for this game, not generic
-
-**Parameters (exhaustive, server-relevant only)**
-- `-flagA=` — What it does. Default: ``. Notes / constraints.
-- `-flagB` — …
-- (List every valid server flag, 10–40+ as applicable. Include networking, logging, perf, mod-loading, VAC/BE/EAC, RCON, headless clients, etc.)
-
-**Ports**
-- Game UDP: **P** (assigned)
-- Query/Steam sockets/etc: **P+1**, **P+2**, …
-- RCON / BE / SourceTV / etc: exact numbers or relative math
-(Spell out all auxiliary ports, protocols, fixed vs relative.)
-
-## Config Files & Locations
-- `/server.cfg` — description
-- `/basic.cfg` — …
-- `/logs/*.log` — …
-- **Mods**: where mod files go, keys/signatures, load order files.
-- **Workshop cache** (if relevant).
-- Include common paths for Windows & Linux.
-
-## Steam Workshop (if supported)
-- How to mount collections / API keys / start map IDs.
-- Where files cache on disk.
-- Any special caveats.
-
-## Common Mods (curated)
-- **Mod A (e.g., AMX Mod X / ACE3 / Exile / RocketMod / Oxide / uMod / BepInEx / DarkRP / EssentialsX)**
- - What it’s for.
- - **Install**: exact folder paths, files to edit, any keys/signatures, load order.
- - **Configure**: main config files + common options.
- - (Repeat for each widely used mod for this game.)
-
-## Database (if used)
-- Engine (e.g., **MySQL**, SQLite, PostgreSQL).
-- Connection file & keys to edit (e.g., `HiveExt.ini`, `database.json`, `config.yml`).
-- Schema notes, migrations, indexes, backup/restore steps.
-
-## Administration & Scripting (if applicable)
-- RCON tools / admin plugins.
-- Backups, rotation, auto-update strategy.
-
-## Troubleshooting (game-specific)
-- Symptom → likely cause → resolution, with file/flag names.
-- Include all common errors seen in forums/issue trackers for this game.
-- Networking, signature/anticheat, mod version mismatches, perf, crashes, persistence, etc.
diff --git a/modules/billing/docs_old/games/abiotic-factor.md b/modules/billing/docs_old/games/abiotic-factor.md
deleted file mode 100644
index b3966d4a..00000000
--- a/modules/billing/docs_old/games/abiotic-factor.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# Abiotic Factor — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./abiotic-factor_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `abiotic-factor_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/abiotic-factor/server.cfg` — Main server configuration
-- `~/abiotic-factor/config/` — Configuration directory
-- `~/abiotic-factor/logs/` — Log files directory
-- `~/abiotic-factor/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Abiotic Factor
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/action-half-life.md b/modules/billing/docs_old/games/action-half-life.md
deleted file mode 100644
index 1b0b3272..00000000
--- a/modules/billing/docs_old/games/action-half-life.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# Action Half-Life — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./action-half-life_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `action-half-life_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/action-half-life/server.cfg` — Main server configuration
-- `~/action-half-life/config/` — Configuration directory
-- `~/action-half-life/logs/` — Log files directory
-- `~/action-half-life/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Action Half-Life
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/action-source.md b/modules/billing/docs_old/games/action-source.md
deleted file mode 100644
index 73708e03..00000000
--- a/modules/billing/docs_old/games/action-source.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# Action: Source — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./action-source_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `action-source_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/action-source/server.cfg` — Main server configuration
-- `~/action-source/config/` — Configuration directory
-- `~/action-source/logs/` — Log files directory
-- `~/action-source/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Action: Source
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/aliens-vs-predator.md b/modules/billing/docs_old/games/aliens-vs-predator.md
deleted file mode 100644
index 4ec39fae..00000000
--- a/modules/billing/docs_old/games/aliens-vs-predator.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# Aliens vs Predator — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./aliens-vs-predator_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `aliens-vs-predator_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/aliens-vs-predator/server.cfg` — Main server configuration
-- `~/aliens-vs-predator/config/` — Configuration directory
-- `~/aliens-vs-predator/logs/` — Log files directory
-- `~/aliens-vs-predator/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Aliens vs Predator
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/all_hostable_games_union.csv b/modules/billing/docs_old/games/all_hostable_games_union.csv
deleted file mode 100644
index 6edf1829..00000000
--- a/modules/billing/docs_old/games/all_hostable_games_union.csv
+++ /dev/null
@@ -1,210 +0,0 @@
-Game,Sources
-7 Days to Die,"G-Portal, GameServers.com, LinuxGSM"
-ARK: Survival Ascended,Nitrado
-ARK: Survival Evolved,"G-Portal, LinuxGSM"
-ARMA 3,LinuxGSM
-Abiotic Factor,Nitrado
-Action Half-Life,LinuxGSM
-Action: Source,LinuxGSM
-Aliens vs Predator,OGP
-Aloft,"G-Portal, Nitrado"
-American Truck Simulator,"LinuxGSM, Nitrado"
-Arma 2,OGP
-Arma 2 Combined Operations,OGP
-Arma 2 Operation Arrowhead,OGP
-Arma 3,G-Portal
-Arma Reforger,"G-Portal, LinuxGSM"
-Assetto Corsa,LinuxGSM
-Assetto Corsa Competizione,G-Portal
-Astroneer,G-Portal
-Atlas,G-Portal
-Avorion,"G-Portal, LinuxGSM"
-BATTALION: Legacy,LinuxGSM
-Ballistic Overkill,LinuxGSM
-Barotrauma,"G-Portal, LinuxGSM"
-Base Defense,LinuxGSM
-Battlefield 1942,LinuxGSM
-Battlefield 3,G-Portal
-Battlefield 4,"G-Portal, GameServers.com"
-Battlefield: Vietnam,LinuxGSM
-Black Mesa: Deathmatch,LinuxGSM
-Blade Symphony,LinuxGSM
-BrainBread 2,LinuxGSM
-Brainbread,LinuxGSM
-Call of Duty,LinuxGSM
-Call of Duty 2,LinuxGSM
-Call of Duty 4,LinuxGSM
-Call of Duty: United Offensive,LinuxGSM
-Call of Duty: World at War,LinuxGSM
-Chivalry: Medieval Warfare,LinuxGSM
-Citadel - Forged with fire,G-Portal
-Codename CURE,LinuxGSM
-Colony Survival,LinuxGSM
-Conan Exiles,G-Portal
-Core Keeper,"G-Portal, LinuxGSM"
-Counter-Strike,"G-Portal, LinuxGSM"
-Counter-Strike 2,"G-Portal, GameServers.com, LinuxGSM"
-Counter-Strike: Condition Zero,LinuxGSM
-Counter-Strike: Global Offensive,LinuxGSM
-Counter-Strike: Source,"GameServers.com, LinuxGSM"
-Craftopia,"G-Portal, LinuxGSM"
-CryoFall,G-Portal
-Day of Defeat,LinuxGSM
-Day of Defeat: Source,LinuxGSM
-Day of Dragons,"G-Portal, LinuxGSM"
-Day of Infamy,LinuxGSM
-DayZ,LinuxGSM
-DayZ Mod for Arma2CO ,OGP
-Dead Matter,G-Portal
-Deadside,G-Portal
-Deadside (Console),G-Portal
-Deathmatch Classic,LinuxGSM
-Don't Starve Together,"G-Portal, LinuxGSM"
-Double Action: Boogaloo,LinuxGSM
-Dune: Awakening,G-Portal
-Dystopia,LinuxGSM
-ET: Legacy,LinuxGSM
-Eco,"G-Portal, LinuxGSM"
-Empires Mod,LinuxGSM
-Empyrion: Galactic Survival,G-Portal
-Enshrouded,G-Portal
-Euro Truck Simulator 2,LinuxGSM
-Euro Truck Simulator 2 / American Truck Simulator,G-Portal
-Factorio,"G-Portal, LinuxGSM"
-Farming Simulator,G-Portal
-Farming Simulator 2019,GameServers.com
-Farming Simulator 2022,GameServers.com
-Farming Simulator 2025,GameServers.com
-Farming Simulator 25,G-Portal
-Fistful of Frags,LinuxGSM
-FiveM,G-Portal
-Garry's Mod,G-Portal
-Garry’s Mod,LinuxGSM
-Ground Branch,G-Portal
-HEAT,G-Portal
-HYPERCHARGE: Unboxed,LinuxGSM
-Half-Life 2: Deathmatch,LinuxGSM
-Half-Life Deathmatch: Source,LinuxGSM
-Half-Life: Deathmatch,LinuxGSM
-Hell Let Loose,G-Portal
-Humanitz,LinuxGSM
-Hurtworld,"G-Portal, LinuxGSM"
-IOSoccer,LinuxGSM
-Icarus,G-Portal
-Insurgency,LinuxGSM
-Insurgency Sandstorm,G-Portal
-Insurgency: Sandstorm,LinuxGSM
-Jedi Knight II: Jedi Outcast,LinuxGSM
-Just Cause 2,LinuxGSM
-Just Cause 3,LinuxGSM
-Killing Floor,LinuxGSM
-Killing Floor 2,"G-Portal, LinuxGSM"
-LEAP,G-Portal
-Last Oasis,G-Portal
-Left 4 Dead,LinuxGSM
-Left 4 Dead 2,LinuxGSM
-Life is Feudal,G-Portal
-Longvinter,G-Portal
-Medal of Honor: Allied Assault,LinuxGSM
-Memories of Mars,LinuxGSM
-Minecraft,"G-Portal, GameServers.com"
-Minecraft: Bedrock Edition,LinuxGSM
-Minecraft: Java Edition,LinuxGSM
-Mordhau,"G-Portal, LinuxGSM"
-Multi Theft Auto,LinuxGSM
-Mumble,LinuxGSM
-Myth of Empires,Nitrado
-NS2: Combat,LinuxGSM
-Natural Selection,LinuxGSM
-Natural Selection 2,LinuxGSM
-Necesse,LinuxGSM
-No More Room in Hell,LinuxGSM
-Nuclear Dawn,LinuxGSM
-Onset,LinuxGSM
-Operation: Harsh Doorstop,LinuxGSM
-Opposing Force,LinuxGSM
-Outlaws of the Old West,G-Portal
-Outpost Zero,Nitrado
-Palworld,"G-Portal, LinuxGSM"
-Palworld Xbox,Nitrado
-PaperMC,LinuxGSM
-Path of Titans,"G-Portal, Nitrado"
-Pavlov VR,"G-Portal, LinuxGSM"
-"Pirates, Vikings, & Knights II",LinuxGSM
-PixARK,Nitrado
-Project CARS 2,LinuxGSM
-Project Cars,LinuxGSM
-Project Zomboid,"G-Portal, GameServers.com, LinuxGSM"
-Quake 2,LinuxGSM
-Quake 3: Arena,LinuxGSM
-Quake 4,LinuxGSM
-Quake Live,LinuxGSM
-Quake World,LinuxGSM
-Red Orchestra: Ostfront 41-45,LinuxGSM
-RedM,G-Portal
-Reign of Kings,G-Portal
-Rem Survival,G-Portal
-Return to Castle Wolfenstein,LinuxGSM
-Ricochet,LinuxGSM
-Rising World,LinuxGSM
-Risk of Rain 2,Nitrado
-Rust,"G-Portal, GameServers.com, LinuxGSM"
-SCP: Secret Laboratory,"LinuxGSM, Nitrado"
-SCP: Secret Laboratory ServerMod,LinuxGSM
-SCUM,Nitrado
-San Andreas Multiplayer,LinuxGSM
-Satisfactory,"G-Portal, LinuxGSM"
-Scum,G-Portal
-Skyrim Together Reborn Mod,G-Portal
-Soldat,LinuxGSM
-Soldier of Fortune 2: Double Helix Gold,LinuxGSM
-Sons Of The Forest,Nitrado
-Sons of the Forest,G-Portal
-Soulmask,"G-Portal, LinuxGSM"
-Source Forts Classic,LinuxGSM
-Space Engineers,"G-Portal, Nitrado"
-Squad,"G-Portal, LinuxGSM"
-Squad 44,LinuxGSM
-Starbound,"G-Portal, LinuxGSM"
-Stationeers,LinuxGSM
-Staxel,G-Portal
-StickyBots,LinuxGSM
-Subsistence,"G-Portal, Nitrado"
-Survive the Nights,LinuxGSM
-Sven Co-op,LinuxGSM
-Team Fortress 2,"LinuxGSM, Nitrado"
-Team Fortress Classic,LinuxGSM
-Teamspeak 3,"G-Portal, LinuxGSM"
-Tebex,G-Portal
-Teeworlds,LinuxGSM
-TerraTech Worlds,G-Portal
-Terraria,"G-Portal, LinuxGSM, Nitrado"
-The Forest,"G-Portal, Nitrado"
-The Front,LinuxGSM
-The Isle,"G-Portal, LinuxGSM, Nitrado"
-The Lord of the Rings: Return to Moria,"G-Portal, Nitrado"
-The Specialists,LinuxGSM
-Tinkertown,G-Portal
-Tower Unite,LinuxGSM
-Unreal Tournament,LinuxGSM
-Unreal Tournament 2004,LinuxGSM
-Unreal Tournament 3,LinuxGSM
-Unreal Tournament 99,LinuxGSM
-Unturned,"G-Portal, LinuxGSM, Nitrado"
-Urban Terror 4,OGP
-V Rising,G-Portal
-Valheim,"G-Portal, GameServers.com, LinuxGSM"
-Vampire Slayer,LinuxGSM
-Velocity Proxy,LinuxGSM
-Vintage Story,"G-Portal, LinuxGSM"
-Warfork,LinuxGSM
-Warsow,OGP
-WaterfallMC,LinuxGSM
-Wolfenstein: Enemy Territory,LinuxGSM
-World Titans War,G-Portal
-Wreckfest,G-Portal
-Wreckfest 2,G-Portal
-Wurm Unlimited,LinuxGSM
-Xonotic,LinuxGSM
-Zombie Master: Reborn,LinuxGSM
-Zombie Panic! Source,LinuxGSM
diff --git a/modules/billing/docs_old/games/aloft.md b/modules/billing/docs_old/games/aloft.md
deleted file mode 100644
index 862d41a2..00000000
--- a/modules/billing/docs_old/games/aloft.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# Aloft — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./aloft_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `aloft_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/aloft/server.cfg` — Main server configuration
-- `~/aloft/config/` — Configuration directory
-- `~/aloft/logs/` — Log files directory
-- `~/aloft/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Aloft
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/american-truck-simulator.md b/modules/billing/docs_old/games/american-truck-simulator.md
deleted file mode 100644
index 411ffa97..00000000
--- a/modules/billing/docs_old/games/american-truck-simulator.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# American Truck Simulator — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./american-truck-simulator_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `american-truck-simulator_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/american-truck-simulator/server.cfg` — Main server configuration
-- `~/american-truck-simulator/config/` — Configuration directory
-- `~/american-truck-simulator/logs/` — Log files directory
-- `~/american-truck-simulator/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for American Truck Simulator
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/ark-survival-ascended.md b/modules/billing/docs_old/games/ark-survival-ascended.md
deleted file mode 100644
index f887a76a..00000000
--- a/modules/billing/docs_old/games/ark-survival-ascended.md
+++ /dev/null
@@ -1,150 +0,0 @@
-# ARK: Survival Ascended — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-ArkAscendedServer.exe TheIsland?listen?SessionName="My ARK Server"?ServerPassword=""?ServerAdminPassword="adminpass"?Port=7777?QueryPort=27015?MaxPlayers=70
-```
-
-**Parameters (exhaustive, server-relevant only)**
-- Map name (TheIsland, Ragnarok, Extinction, etc.) — Starting map.
-- `?listen` — Enable server listening.
-- `?SessionName=""` — Server name in browser.
-- `?ServerPassword=""` — Server password.
-- `?ServerAdminPassword=""` — Admin password.
-- `?Port=` — Game port. Default: 7777.
-- `?QueryPort=` — Query port. Default: 27015.
-- `?MaxPlayers=` — Maximum players (1-200).
-- `?PVE=` — PvE mode.
-- `?RCONEnabled=` — Enable RCON.
-- `?RCONPort=` — RCON port.
-- `?DifficultyOffset=<0.0-1.0>` — Difficulty level.
-- `?OverrideOfficialDifficulty=<1.0-10.0>` — Override difficulty.
-- `?TamingSpeedMultiplier=<1.0+>` — Taming speed.
-- `?XPMultiplier=<1.0+>` — Experience multiplier.
-- `?HarvestAmountMultiplier=<1.0+>` — Harvest amount.
-- `?AllowFlyerCarryPvE=` — Allow flyer carry in PvE.
-- `?AlwaysAllowStructurePickup=` — Allow structure pickup.
-- `?BattlEye=` — Enable BattlEye anti-cheat.
-- `-log` — Enable logging.
-- `-NoHangDetection` — Disable hang detection.
-- `-UseDynamicConfig` — Use dynamic configuration.
-- `-ConfigSubDir=` — Config subdirectory.
-
-**Ports**
-- Game: UDP **7777** (primary)
-- Query: UDP **27015** (Steam query)
-- RCON: TCP **27020** (if enabled)
-- Raw UDP: UDP **7778** (game port + 1)
-
-## Config Files & Locations
-**Windows:**
-- `WindowsServer/ARK: Survival Ascended/Saved/Config/WindowsServer/` — Configuration directory
-- `WindowsServer/ARK: Survival Ascended/Saved/Logs/` — Log files
-- `WindowsServer/ARK: Survival Ascended/Saved/SaveGames/` — Save files
-
-**Linux:**
-- `/home/ark-survival-ascended/Saved/Config/LinuxServer/` — Configuration directory
-- `/home/ark-survival-ascended/Saved/Logs/` — Log files
-- `/home/ark-survival-ascended/Saved/SaveGames/` — Save files
-
-**Key Files:**
-- **GameUserSettings.ini**: Main server configuration
-- **Game.ini**: Advanced game settings
-- **Engine.ini**: Engine-specific settings
-
-## Steam Workshop
-**Mod Installation:**
-1. Subscribe to mods via Steam Workshop or ARK server manager
-2. Add mod IDs to server startup parameters or GameUserSettings.ini
-3. Server downloads mods automatically on startup
-
-**Configuration:**
-- Windows: `ShooterGame/Saved/Config/WindowsServer/GameUserSettings.ini`
-- Linux: `ShooterGame/Saved/Config/LinuxServer/GameUserSettings.ini`
-- Add line: `ActiveMods=mod_id_1,mod_id_2,mod_id_3`
-
-**Mod Loading:**
-- Mods load in the order specified in ActiveMods
-- Some mods have dependencies that must load first
-- Server must restart after mod changes
-
-**Cache Location:**
-- Windows: `steamapps/workshop/content/346110/`
-- Linux: `~/.steam/steamapps/workshop/content/346110/`
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for ARK: Survival Ascended
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-**Engine**: SQLite
-
-**Configuration**:
-- Database settings typically in main server configuration file
-- Connection parameters: host, port, database name, credentials
-- Enable persistence features in server configuration
-
-**Setup**:
-1. Install database engine if required
-2. Create database and user with appropriate permissions
-3. Configure connection settings in server config
-4. Test connection before starting server
-5. Set up automated backups
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/ark-survival-evolved.md b/modules/billing/docs_old/games/ark-survival-evolved.md
deleted file mode 100644
index c43770ec..00000000
--- a/modules/billing/docs_old/games/ark-survival-evolved.md
+++ /dev/null
@@ -1,150 +0,0 @@
-# ARK: Survival Evolved — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-ShooterGameServer.exe TheIsland?listen?SessionName="My ARK Server"?ServerPassword=""?ServerAdminPassword="adminpass"?Port=7777?QueryPort=27015?MaxPlayers=70
-```
-
-**Parameters (exhaustive, server-relevant only)**
-- Map name (TheIsland, Ragnarok, Extinction, etc.) — Starting map.
-- `?listen` — Enable server listening.
-- `?SessionName=""` — Server name in browser.
-- `?ServerPassword=""` — Server password.
-- `?ServerAdminPassword=""` — Admin password.
-- `?Port=` — Game port. Default: 7777.
-- `?QueryPort=` — Query port. Default: 27015.
-- `?MaxPlayers=` — Maximum players (1-200).
-- `?PVE=` — PvE mode.
-- `?RCONEnabled=` — Enable RCON.
-- `?RCONPort=` — RCON port.
-- `?DifficultyOffset=<0.0-1.0>` — Difficulty level.
-- `?OverrideOfficialDifficulty=<1.0-10.0>` — Override difficulty.
-- `?TamingSpeedMultiplier=<1.0+>` — Taming speed.
-- `?XPMultiplier=<1.0+>` — Experience multiplier.
-- `?HarvestAmountMultiplier=<1.0+>` — Harvest amount.
-- `?AllowFlyerCarryPvE=` — Allow flyer carry in PvE.
-- `?AlwaysAllowStructurePickup=` — Allow structure pickup.
-- `?BattlEye=` — Enable BattlEye anti-cheat.
-- `-log` — Enable logging.
-- `-NoHangDetection` — Disable hang detection.
-- `-UseDynamicConfig` — Use dynamic configuration.
-- `-ConfigSubDir=` — Config subdirectory.
-
-**Ports**
-- Game: UDP **7777** (primary)
-- Query: UDP **27015** (Steam query)
-- RCON: TCP **27020** (if enabled)
-- Raw UDP: UDP **7778** (game port + 1)
-
-## Config Files & Locations
-**Windows:**
-- `WindowsServer/ARK: Survival Evolved/Saved/Config/WindowsServer/` — Configuration directory
-- `WindowsServer/ARK: Survival Evolved/Saved/Logs/` — Log files
-- `WindowsServer/ARK: Survival Evolved/Saved/SaveGames/` — Save files
-
-**Linux:**
-- `/home/ark-survival-evolved/Saved/Config/LinuxServer/` — Configuration directory
-- `/home/ark-survival-evolved/Saved/Logs/` — Log files
-- `/home/ark-survival-evolved/Saved/SaveGames/` — Save files
-
-**Key Files:**
-- **GameUserSettings.ini**: Main server configuration
-- **Game.ini**: Advanced game settings
-- **Engine.ini**: Engine-specific settings
-
-## Steam Workshop
-**Mod Installation:**
-1. Subscribe to mods via Steam Workshop or ARK server manager
-2. Add mod IDs to server startup parameters or GameUserSettings.ini
-3. Server downloads mods automatically on startup
-
-**Configuration:**
-- Windows: `ShooterGame/Saved/Config/WindowsServer/GameUserSettings.ini`
-- Linux: `ShooterGame/Saved/Config/LinuxServer/GameUserSettings.ini`
-- Add line: `ActiveMods=mod_id_1,mod_id_2,mod_id_3`
-
-**Mod Loading:**
-- Mods load in the order specified in ActiveMods
-- Some mods have dependencies that must load first
-- Server must restart after mod changes
-
-**Cache Location:**
-- Windows: `steamapps/workshop/content/346110/`
-- Linux: `~/.steam/steamapps/workshop/content/346110/`
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for ARK: Survival Evolved
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-**Engine**: SQLite
-
-**Configuration**:
-- Database settings typically in main server configuration file
-- Connection parameters: host, port, database name, credentials
-- Enable persistence features in server configuration
-
-**Setup**:
-1. Install database engine if required
-2. Create database and user with appropriate permissions
-3. Configure connection settings in server config
-4. Test connection before starting server
-5. Set up automated backups
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/arma-2-combined-operations.md b/modules/billing/docs_old/games/arma-2-combined-operations.md
deleted file mode 100644
index 8fd6b7ec..00000000
--- a/modules/billing/docs_old/games/arma-2-combined-operations.md
+++ /dev/null
@@ -1,111 +0,0 @@
-# Arma 2 Combined Operations — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./arma-2-combined-operations_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `arma-2-combined-operations_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/arma-2-combined-operations/server.cfg` — Main server configuration
-- `~/arma-2-combined-operations/config/` — Configuration directory
-- `~/arma-2-combined-operations/logs/` — Log files directory
-- `~/arma-2-combined-operations/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Arma 2 Combined Operations
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**"Bad module info" / Addon errors**
-- **Cause**: Corrupted mod files or version mismatches
-- **Fix**: Verify mod integrity, ensure client-server version matching, check signature verification
-
-**"Session lost" during gameplay**
-- **Cause**: Network issues or memory problems
-- **Fix**: Optimize basic.cfg network settings, increase server memory allocation, check mod conflicts
-
-**High memory usage / Server crashes**
-- **Cause**: Memory leaks from scripts or excessive mod usage
-- **Fix**: Restart server regularly, optimize mission scripts, reduce active mod count
-
-**BattlEye script restriction kicks**
-- **Cause**: Scripts triggering BE filters
-- **Fix**: Update BattlEye filters for installed mods, configure proper exceptions
-
-**Signature verification failed**
-- **Cause**: Missing or mismatched .bikey files
-- **Fix**: Ensure all mod .bikey files present in keys/ directory, verify verifySignatures setting
-
-**Performance issues / Low FPS**
-- **Cause**: Complex missions, AI overload, or insufficient server resources
-- **Fix**: Optimize mission complexity, reduce AI count, upgrade server hardware, tune basic.cfg
diff --git a/modules/billing/docs_old/games/arma-2-operation-arrowhead.md b/modules/billing/docs_old/games/arma-2-operation-arrowhead.md
deleted file mode 100644
index 927ec555..00000000
--- a/modules/billing/docs_old/games/arma-2-operation-arrowhead.md
+++ /dev/null
@@ -1,118 +0,0 @@
-# Arma 2 Operation Arrowhead — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-arma2oaserver.exe -port=2302 -config=server.cfg -cfg=basic.cfg -profiles=ServerProfile -mod=@mod1;@mod2
-```
-
-**Parameters (exhaustive, server-relevant only)**
-- `-port=` — Server port. Default: 2302.
-- `-config=` — Server config file (server.cfg).
-- `-cfg=` — Basic config file (basic.cfg).
-- `-profiles=` — Profile directory.
-- `-mod=` — Mod folders (semicolon separated).
-- `-serverMod=` — Server-side only mods.
-- `-name=` — Server profile name.
-- `-world=` — Empty world name.
-- `-noSound` — Disable sound processing.
-- `-nosplash` — Skip intro videos.
-- `-noPause` — Don't pause when not focused.
-- `-cpuCount=` — CPU core count override.
-- `-maxMem=` — Maximum memory usage.
-
-**Ports**
-- Game: UDP **2302** (primary)
-- Query: UDP **2303** (game port + 1)
-- BattlEye: UDP **2344** (if enabled)
-
-## Config Files & Locations
-**Windows:**
-- `server.cfg` — Main server configuration
-- `basic.cfg` — Basic networking and performance settings
-- `ServerProfile/` — Profile directory with logs and user data
-- `MPMissions/` — Mission files directory
-- `keys/` — Signature keys for mod verification
-
-**Linux:**
-- `~/arma/server.cfg` — Main server configuration
-- `~/arma/basic.cfg` — Basic networking settings
-- `~/arma/ServerProfile/` — Profile directory
-- `~/arma/MPMissions/` — Mission files
-- `~/arma/keys/` — Signature keys
-
-**Key Files:**
-- **server.cfg**: Server name, password, mission rotation, admin settings
-- **basic.cfg**: Network bandwidth and performance tuning
-- **Profile logs**: Server performance and error logs
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Arma 2 Operation Arrowhead
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**"Bad module info" / Addon errors**
-- **Cause**: Corrupted mod files or version mismatches
-- **Fix**: Verify mod integrity, ensure client-server version matching, check signature verification
-
-**"Session lost" during gameplay**
-- **Cause**: Network issues or memory problems
-- **Fix**: Optimize basic.cfg network settings, increase server memory allocation, check mod conflicts
-
-**High memory usage / Server crashes**
-- **Cause**: Memory leaks from scripts or excessive mod usage
-- **Fix**: Restart server regularly, optimize mission scripts, reduce active mod count
-
-**BattlEye script restriction kicks**
-- **Cause**: Scripts triggering BE filters
-- **Fix**: Update BattlEye filters for installed mods, configure proper exceptions
-
-**Signature verification failed**
-- **Cause**: Missing or mismatched .bikey files
-- **Fix**: Ensure all mod .bikey files present in keys/ directory, verify verifySignatures setting
-
-**Performance issues / Low FPS**
-- **Cause**: Complex missions, AI overload, or insufficient server resources
-- **Fix**: Optimize mission complexity, reduce AI count, upgrade server hardware, tune basic.cfg
diff --git a/modules/billing/docs_old/games/arma-2.md b/modules/billing/docs_old/games/arma-2.md
deleted file mode 100644
index 4ea7e27e..00000000
--- a/modules/billing/docs_old/games/arma-2.md
+++ /dev/null
@@ -1,118 +0,0 @@
-# Arma 2 — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-arma2oaserver.exe -port=2302 -config=server.cfg -cfg=basic.cfg -profiles=ServerProfile -mod=@mod1;@mod2
-```
-
-**Parameters (exhaustive, server-relevant only)**
-- `-port=` — Server port. Default: 2302.
-- `-config=` — Server config file (server.cfg).
-- `-cfg=` — Basic config file (basic.cfg).
-- `-profiles=` — Profile directory.
-- `-mod=` — Mod folders (semicolon separated).
-- `-serverMod=` — Server-side only mods.
-- `-name=` — Server profile name.
-- `-world=` — Empty world name.
-- `-noSound` — Disable sound processing.
-- `-nosplash` — Skip intro videos.
-- `-noPause` — Don't pause when not focused.
-- `-cpuCount=` — CPU core count override.
-- `-maxMem=` — Maximum memory usage.
-
-**Ports**
-- Game: UDP **2302** (primary)
-- Query: UDP **2303** (game port + 1)
-- BattlEye: UDP **2344** (if enabled)
-
-## Config Files & Locations
-**Windows:**
-- `server.cfg` — Main server configuration
-- `basic.cfg` — Basic networking and performance settings
-- `ServerProfile/` — Profile directory with logs and user data
-- `MPMissions/` — Mission files directory
-- `keys/` — Signature keys for mod verification
-
-**Linux:**
-- `~/arma/server.cfg` — Main server configuration
-- `~/arma/basic.cfg` — Basic networking settings
-- `~/arma/ServerProfile/` — Profile directory
-- `~/arma/MPMissions/` — Mission files
-- `~/arma/keys/` — Signature keys
-
-**Key Files:**
-- **server.cfg**: Server name, password, mission rotation, admin settings
-- **basic.cfg**: Network bandwidth and performance tuning
-- **Profile logs**: Server performance and error logs
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Arma 2
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**"Bad module info" / Addon errors**
-- **Cause**: Corrupted mod files or version mismatches
-- **Fix**: Verify mod integrity, ensure client-server version matching, check signature verification
-
-**"Session lost" during gameplay**
-- **Cause**: Network issues or memory problems
-- **Fix**: Optimize basic.cfg network settings, increase server memory allocation, check mod conflicts
-
-**High memory usage / Server crashes**
-- **Cause**: Memory leaks from scripts or excessive mod usage
-- **Fix**: Restart server regularly, optimize mission scripts, reduce active mod count
-
-**BattlEye script restriction kicks**
-- **Cause**: Scripts triggering BE filters
-- **Fix**: Update BattlEye filters for installed mods, configure proper exceptions
-
-**Signature verification failed**
-- **Cause**: Missing or mismatched .bikey files
-- **Fix**: Ensure all mod .bikey files present in keys/ directory, verify verifySignatures setting
-
-**Performance issues / Low FPS**
-- **Cause**: Complex missions, AI overload, or insufficient server resources
-- **Fix**: Optimize mission complexity, reduce AI count, upgrade server hardware, tune basic.cfg
diff --git a/modules/billing/docs_old/games/arma-3.md b/modules/billing/docs_old/games/arma-3.md
deleted file mode 100644
index fd73057f..00000000
--- a/modules/billing/docs_old/games/arma-3.md
+++ /dev/null
@@ -1,145 +0,0 @@
-# Arma 3 — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-arma3server_x64.exe -port=2302 -config=server.cfg -cfg=basic.cfg -profiles=ServerProfile -name=server -serverMod=""
-```
-
-**Parameters (exhaustive, server-relevant only)**
-- `-port=` — Server port. Default: 2302.
-- `-config=` — Server config file (server.cfg).
-- `-cfg=` — Basic config file (basic.cfg).
-- `-profiles=` — Profile directory.
-- `-name=` — Server profile name.
-- `-serverMod=""` — Server-side only mods (semicolon separated).
-- `-mod=""` — Client and server mods (semicolon separated).
-- `-world=` — Empty world for headless client.
-- `-autoInit` — Auto-initialize mission.
-- `-loadMissionToMemory` — Load mission into memory.
-- `-noSound` — Disable sound.
-- `-enableHT` — Enable hyperthreading.
-- `-hugepages` — Enable huge pages (Linux).
-- `-malloc=` — Memory allocator.
-- `-maxMem=` — Maximum memory.
-- `-cpuCount=` — CPU core count.
-- `-exThreads=` — Extra threads.
-
-**Ports**
-- Game: UDP **2302** (primary)
-- Steam Query: UDP **2303** (game port + 1)
-- BattlEye: UDP **2344** (game port + 42)
-- VON: UDP **2304** (game port + 2)
-
-## Config Files & Locations
-**Windows:**
-- `server.cfg` — Main server configuration
-- `basic.cfg` — Basic networking and performance settings
-- `ServerProfile/` — Profile directory with logs and user data
-- `MPMissions/` — Mission files directory
-- `keys/` — Signature keys for mod verification
-
-**Linux:**
-- `~/arma/server.cfg` — Main server configuration
-- `~/arma/basic.cfg` — Basic networking settings
-- `~/arma/ServerProfile/` — Profile directory
-- `~/arma/MPMissions/` — Mission files
-- `~/arma/keys/` — Signature keys
-
-**Key Files:**
-- **server.cfg**: Server name, password, mission rotation, admin settings
-- **basic.cfg**: Network bandwidth and performance tuning
-- **Profile logs**: Server performance and error logs
-
-## Steam Workshop
-**Mod Installation:**
-1. Subscribe to mods via Steam Workshop
-2. Add mod IDs to server startup: `-mod="@workshop_id_1;@workshop_id_2"`
-3. For server-only mods use: `-serverMod="@mod_folder"`
-
-**Workshop Collection:**
-- Create Steam collection with all server mods
-- Use Arma 3 Server tools or community launchers for bulk downloading
-- Verify all clients have same mod versions
-
-**Mod Loading:**
-- Order matters for some mods (CBA_A3 should load first)
-- Use proper folder structure: `@mod_name/addons/*.pbo`
-- Include signature files (.bisign) for key verification
-
-**Cache Location:**
-- Windows: `steamapps/workshop/content/107410/`
-- Linux: `~/.steam/steamapps/workshop/content/107410/`
-
-## Common Mods (curated)
-- **ACE3**
- - **Purpose**: Advanced Combat Environment - realistic medical, ballistics, and logistics.
- - **Install**: Subscribe via Workshop, add `@ace` to startup mods.
- - **Configure**: ACE settings via in-game addon options or mission parameters.
-
-- **CBA_A3**
- - **Purpose**: Community Base Addons - framework required by most Arma 3 mods.
- - **Install**: Subscribe via Workshop, ensure loads before other mods.
- - **Configure**: No direct configuration - provides API for other mods.
-
-- **TFAR (Task Force Radio)**
- - **Purpose**: Realistic radio communication system.
- - **Install**: Workshop subscription, requires TeamSpeak 3 plugin for clients.
- - **Configure**: Radio frequencies and settings in mission files.
-
-- **RHS: Armed Forces**
- - **Purpose**: High-quality modern military units and equipment.
- - **Install**: Subscribe to RHS collections via Workshop.
- - **Configure**: Unit availability configured in mission editor.
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**"Bad module info" / Addon errors**
-- **Cause**: Corrupted mod files or version mismatches
-- **Fix**: Verify mod integrity, ensure client-server version matching, check signature verification
-
-**"Session lost" during gameplay**
-- **Cause**: Network issues or memory problems
-- **Fix**: Optimize basic.cfg network settings, increase server memory allocation, check mod conflicts
-
-**High memory usage / Server crashes**
-- **Cause**: Memory leaks from scripts or excessive mod usage
-- **Fix**: Restart server regularly, optimize mission scripts, reduce active mod count
-
-**BattlEye script restriction kicks**
-- **Cause**: Scripts triggering BE filters
-- **Fix**: Update BattlEye filters for installed mods, configure proper exceptions
-
-**Signature verification failed**
-- **Cause**: Missing or mismatched .bikey files
-- **Fix**: Ensure all mod .bikey files present in keys/ directory, verify verifySignatures setting
-
-**Performance issues / Low FPS**
-- **Cause**: Complex missions, AI overload, or insufficient server resources
-- **Fix**: Optimize mission complexity, reduce AI count, upgrade server hardware, tune basic.cfg
diff --git a/modules/billing/docs_old/games/arma-reforger.md b/modules/billing/docs_old/games/arma-reforger.md
deleted file mode 100644
index 53257207..00000000
--- a/modules/billing/docs_old/games/arma-reforger.md
+++ /dev/null
@@ -1,118 +0,0 @@
-# Arma Reforger — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-arma2oaserver.exe -port=2302 -config=server.cfg -cfg=basic.cfg -profiles=ServerProfile -mod=@mod1;@mod2
-```
-
-**Parameters (exhaustive, server-relevant only)**
-- `-port=` — Server port. Default: 2302.
-- `-config=` — Server config file (server.cfg).
-- `-cfg=` — Basic config file (basic.cfg).
-- `-profiles=` — Profile directory.
-- `-mod=` — Mod folders (semicolon separated).
-- `-serverMod=` — Server-side only mods.
-- `-name=` — Server profile name.
-- `-world=` — Empty world name.
-- `-noSound` — Disable sound processing.
-- `-nosplash` — Skip intro videos.
-- `-noPause` — Don't pause when not focused.
-- `-cpuCount=` — CPU core count override.
-- `-maxMem=` — Maximum memory usage.
-
-**Ports**
-- Game: UDP **2302** (primary)
-- Query: UDP **2303** (game port + 1)
-- BattlEye: UDP **2344** (if enabled)
-
-## Config Files & Locations
-**Windows:**
-- `server.cfg` — Main server configuration
-- `basic.cfg` — Basic networking and performance settings
-- `ServerProfile/` — Profile directory with logs and user data
-- `MPMissions/` — Mission files directory
-- `keys/` — Signature keys for mod verification
-
-**Linux:**
-- `~/arma/server.cfg` — Main server configuration
-- `~/arma/basic.cfg` — Basic networking settings
-- `~/arma/ServerProfile/` — Profile directory
-- `~/arma/MPMissions/` — Mission files
-- `~/arma/keys/` — Signature keys
-
-**Key Files:**
-- **server.cfg**: Server name, password, mission rotation, admin settings
-- **basic.cfg**: Network bandwidth and performance tuning
-- **Profile logs**: Server performance and error logs
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Arma Reforger
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**"Bad module info" / Addon errors**
-- **Cause**: Corrupted mod files or version mismatches
-- **Fix**: Verify mod integrity, ensure client-server version matching, check signature verification
-
-**"Session lost" during gameplay**
-- **Cause**: Network issues or memory problems
-- **Fix**: Optimize basic.cfg network settings, increase server memory allocation, check mod conflicts
-
-**High memory usage / Server crashes**
-- **Cause**: Memory leaks from scripts or excessive mod usage
-- **Fix**: Restart server regularly, optimize mission scripts, reduce active mod count
-
-**BattlEye script restriction kicks**
-- **Cause**: Scripts triggering BE filters
-- **Fix**: Update BattlEye filters for installed mods, configure proper exceptions
-
-**Signature verification failed**
-- **Cause**: Missing or mismatched .bikey files
-- **Fix**: Ensure all mod .bikey files present in keys/ directory, verify verifySignatures setting
-
-**Performance issues / Low FPS**
-- **Cause**: Complex missions, AI overload, or insufficient server resources
-- **Fix**: Optimize mission complexity, reduce AI count, upgrade server hardware, tune basic.cfg
diff --git a/modules/billing/docs_old/games/assetto-corsa-competizione.md b/modules/billing/docs_old/games/assetto-corsa-competizione.md
deleted file mode 100644
index 7abb90bc..00000000
--- a/modules/billing/docs_old/games/assetto-corsa-competizione.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# Assetto Corsa Competizione — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./assetto-corsa-competizione_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `assetto-corsa-competizione_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/assetto-corsa-competizione/server.cfg` — Main server configuration
-- `~/assetto-corsa-competizione/config/` — Configuration directory
-- `~/assetto-corsa-competizione/logs/` — Log files directory
-- `~/assetto-corsa-competizione/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Assetto Corsa Competizione
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/assetto-corsa.md b/modules/billing/docs_old/games/assetto-corsa.md
deleted file mode 100644
index eeff5867..00000000
--- a/modules/billing/docs_old/games/assetto-corsa.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# Assetto Corsa — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./assetto-corsa_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `assetto-corsa_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/assetto-corsa/server.cfg` — Main server configuration
-- `~/assetto-corsa/config/` — Configuration directory
-- `~/assetto-corsa/logs/` — Log files directory
-- `~/assetto-corsa/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Assetto Corsa
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/astroneer.md b/modules/billing/docs_old/games/astroneer.md
deleted file mode 100644
index 5282c19c..00000000
--- a/modules/billing/docs_old/games/astroneer.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# Astroneer — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./astroneer_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `astroneer_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/astroneer/server.cfg` — Main server configuration
-- `~/astroneer/config/` — Configuration directory
-- `~/astroneer/logs/` — Log files directory
-- `~/astroneer/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Astroneer
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/atlas.md b/modules/billing/docs_old/games/atlas.md
deleted file mode 100644
index db4cd35d..00000000
--- a/modules/billing/docs_old/games/atlas.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# Atlas — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./atlas_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `atlas_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/atlas/server.cfg` — Main server configuration
-- `~/atlas/config/` — Configuration directory
-- `~/atlas/logs/` — Log files directory
-- `~/atlas/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Atlas
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/avorion.md b/modules/billing/docs_old/games/avorion.md
deleted file mode 100644
index becf391a..00000000
--- a/modules/billing/docs_old/games/avorion.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# Avorion — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./avorion_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `avorion_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/avorion/server.cfg` — Main server configuration
-- `~/avorion/config/` — Configuration directory
-- `~/avorion/logs/` — Log files directory
-- `~/avorion/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Avorion
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/ballistic-overkill.md b/modules/billing/docs_old/games/ballistic-overkill.md
deleted file mode 100644
index 5340b7bb..00000000
--- a/modules/billing/docs_old/games/ballistic-overkill.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# Ballistic Overkill — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./ballistic-overkill_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `ballistic-overkill_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/ballistic-overkill/server.cfg` — Main server configuration
-- `~/ballistic-overkill/config/` — Configuration directory
-- `~/ballistic-overkill/logs/` — Log files directory
-- `~/ballistic-overkill/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Ballistic Overkill
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/barotrauma.md b/modules/billing/docs_old/games/barotrauma.md
deleted file mode 100644
index 59067531..00000000
--- a/modules/billing/docs_old/games/barotrauma.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# Barotrauma — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./barotrauma_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `barotrauma_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/barotrauma/server.cfg` — Main server configuration
-- `~/barotrauma/config/` — Configuration directory
-- `~/barotrauma/logs/` — Log files directory
-- `~/barotrauma/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Barotrauma
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/base-defense.md b/modules/billing/docs_old/games/base-defense.md
deleted file mode 100644
index 1f6740cc..00000000
--- a/modules/billing/docs_old/games/base-defense.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# Base Defense — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./base-defense_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `base-defense_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/base-defense/server.cfg` — Main server configuration
-- `~/base-defense/config/` — Configuration directory
-- `~/base-defense/logs/` — Log files directory
-- `~/base-defense/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Base Defense
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/battalion-legacy.md b/modules/billing/docs_old/games/battalion-legacy.md
deleted file mode 100644
index bd951ccf..00000000
--- a/modules/billing/docs_old/games/battalion-legacy.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# BATTALION: Legacy — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./battalion-legacy_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `battalion-legacy_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/battalion-legacy/server.cfg` — Main server configuration
-- `~/battalion-legacy/config/` — Configuration directory
-- `~/battalion-legacy/logs/` — Log files directory
-- `~/battalion-legacy/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for BATTALION: Legacy
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/battlefield-1942.md b/modules/billing/docs_old/games/battlefield-1942.md
deleted file mode 100644
index 9f0c57b9..00000000
--- a/modules/billing/docs_old/games/battlefield-1942.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# Battlefield 1942 — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./battlefield-1942_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `battlefield-1942_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/battlefield-1942/server.cfg` — Main server configuration
-- `~/battlefield-1942/config/` — Configuration directory
-- `~/battlefield-1942/logs/` — Log files directory
-- `~/battlefield-1942/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Battlefield 1942
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/battlefield-3.md b/modules/billing/docs_old/games/battlefield-3.md
deleted file mode 100644
index 01dcde43..00000000
--- a/modules/billing/docs_old/games/battlefield-3.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# Battlefield 3 — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./battlefield-3_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `battlefield-3_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/battlefield-3/server.cfg` — Main server configuration
-- `~/battlefield-3/config/` — Configuration directory
-- `~/battlefield-3/logs/` — Log files directory
-- `~/battlefield-3/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Battlefield 3
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/battlefield-4.md b/modules/billing/docs_old/games/battlefield-4.md
deleted file mode 100644
index 6d9eadba..00000000
--- a/modules/billing/docs_old/games/battlefield-4.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# Battlefield 4 — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./battlefield-4_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `battlefield-4_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/battlefield-4/server.cfg` — Main server configuration
-- `~/battlefield-4/config/` — Configuration directory
-- `~/battlefield-4/logs/` — Log files directory
-- `~/battlefield-4/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Battlefield 4
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/battlefield-vietnam.md b/modules/billing/docs_old/games/battlefield-vietnam.md
deleted file mode 100644
index 08b4b6cf..00000000
--- a/modules/billing/docs_old/games/battlefield-vietnam.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# Battlefield: Vietnam — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./battlefield-vietnam_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `battlefield-vietnam_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/battlefield-vietnam/server.cfg` — Main server configuration
-- `~/battlefield-vietnam/config/` — Configuration directory
-- `~/battlefield-vietnam/logs/` — Log files directory
-- `~/battlefield-vietnam/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Battlefield: Vietnam
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/black-mesa-deathmatch.md b/modules/billing/docs_old/games/black-mesa-deathmatch.md
deleted file mode 100644
index 90edaec5..00000000
--- a/modules/billing/docs_old/games/black-mesa-deathmatch.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# Black Mesa: Deathmatch — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./black-mesa-deathmatch_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `black-mesa-deathmatch_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/black-mesa-deathmatch/server.cfg` — Main server configuration
-- `~/black-mesa-deathmatch/config/` — Configuration directory
-- `~/black-mesa-deathmatch/logs/` — Log files directory
-- `~/black-mesa-deathmatch/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Black Mesa: Deathmatch
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/blade-symphony.md b/modules/billing/docs_old/games/blade-symphony.md
deleted file mode 100644
index 97ae70b1..00000000
--- a/modules/billing/docs_old/games/blade-symphony.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# Blade Symphony — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./blade-symphony_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `blade-symphony_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/blade-symphony/server.cfg` — Main server configuration
-- `~/blade-symphony/config/` — Configuration directory
-- `~/blade-symphony/logs/` — Log files directory
-- `~/blade-symphony/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Blade Symphony
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/brainbread-2.md b/modules/billing/docs_old/games/brainbread-2.md
deleted file mode 100644
index 80ebba2c..00000000
--- a/modules/billing/docs_old/games/brainbread-2.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# BrainBread 2 — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./brainbread-2_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `brainbread-2_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/brainbread-2/server.cfg` — Main server configuration
-- `~/brainbread-2/config/` — Configuration directory
-- `~/brainbread-2/logs/` — Log files directory
-- `~/brainbread-2/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for BrainBread 2
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/brainbread.md b/modules/billing/docs_old/games/brainbread.md
deleted file mode 100644
index 91929901..00000000
--- a/modules/billing/docs_old/games/brainbread.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# Brainbread — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./brainbread_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `brainbread_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/brainbread/server.cfg` — Main server configuration
-- `~/brainbread/config/` — Configuration directory
-- `~/brainbread/logs/` — Log files directory
-- `~/brainbread/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Brainbread
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/call-of-duty-2.md b/modules/billing/docs_old/games/call-of-duty-2.md
deleted file mode 100644
index 6b4b75f7..00000000
--- a/modules/billing/docs_old/games/call-of-duty-2.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# Call of Duty 2 — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./call-of-duty-2_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `call-of-duty-2_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/call-of-duty-2/server.cfg` — Main server configuration
-- `~/call-of-duty-2/config/` — Configuration directory
-- `~/call-of-duty-2/logs/` — Log files directory
-- `~/call-of-duty-2/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Call of Duty 2
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/call-of-duty-4.md b/modules/billing/docs_old/games/call-of-duty-4.md
deleted file mode 100644
index 74f2a6d7..00000000
--- a/modules/billing/docs_old/games/call-of-duty-4.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# Call of Duty 4 — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./call-of-duty-4_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `call-of-duty-4_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/call-of-duty-4/server.cfg` — Main server configuration
-- `~/call-of-duty-4/config/` — Configuration directory
-- `~/call-of-duty-4/logs/` — Log files directory
-- `~/call-of-duty-4/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Call of Duty 4
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/call-of-duty-united-offensive.md b/modules/billing/docs_old/games/call-of-duty-united-offensive.md
deleted file mode 100644
index 4a604a90..00000000
--- a/modules/billing/docs_old/games/call-of-duty-united-offensive.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# Call of Duty: United Offensive — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./call-of-duty-united-offensive_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `call-of-duty-united-offensive_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/call-of-duty-united-offensive/server.cfg` — Main server configuration
-- `~/call-of-duty-united-offensive/config/` — Configuration directory
-- `~/call-of-duty-united-offensive/logs/` — Log files directory
-- `~/call-of-duty-united-offensive/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Call of Duty: United Offensive
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/call-of-duty-world-at-war.md b/modules/billing/docs_old/games/call-of-duty-world-at-war.md
deleted file mode 100644
index ab802176..00000000
--- a/modules/billing/docs_old/games/call-of-duty-world-at-war.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# Call of Duty: World at War — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./call-of-duty-world-at-war_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `call-of-duty-world-at-war_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/call-of-duty-world-at-war/server.cfg` — Main server configuration
-- `~/call-of-duty-world-at-war/config/` — Configuration directory
-- `~/call-of-duty-world-at-war/logs/` — Log files directory
-- `~/call-of-duty-world-at-war/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Call of Duty: World at War
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/call-of-duty.md b/modules/billing/docs_old/games/call-of-duty.md
deleted file mode 100644
index 58e7dd12..00000000
--- a/modules/billing/docs_old/games/call-of-duty.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# Call of Duty — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./call-of-duty_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `call-of-duty_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/call-of-duty/server.cfg` — Main server configuration
-- `~/call-of-duty/config/` — Configuration directory
-- `~/call-of-duty/logs/` — Log files directory
-- `~/call-of-duty/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Call of Duty
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/chivalry-medieval-warfare.md b/modules/billing/docs_old/games/chivalry-medieval-warfare.md
deleted file mode 100644
index f6310520..00000000
--- a/modules/billing/docs_old/games/chivalry-medieval-warfare.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# Chivalry: Medieval Warfare — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./chivalry-medieval-warfare_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `chivalry-medieval-warfare_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/chivalry-medieval-warfare/server.cfg` — Main server configuration
-- `~/chivalry-medieval-warfare/config/` — Configuration directory
-- `~/chivalry-medieval-warfare/logs/` — Log files directory
-- `~/chivalry-medieval-warfare/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Chivalry: Medieval Warfare
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/citadel-forged-with-fire.md b/modules/billing/docs_old/games/citadel-forged-with-fire.md
deleted file mode 100644
index cf71ec0c..00000000
--- a/modules/billing/docs_old/games/citadel-forged-with-fire.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# Citadel - Forged with fire — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./citadel-forged-with-fire_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `citadel-forged-with-fire_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/citadel-forged-with-fire/server.cfg` — Main server configuration
-- `~/citadel-forged-with-fire/config/` — Configuration directory
-- `~/citadel-forged-with-fire/logs/` — Log files directory
-- `~/citadel-forged-with-fire/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Citadel - Forged with fire
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/codename-cure.md b/modules/billing/docs_old/games/codename-cure.md
deleted file mode 100644
index ecf4bcf2..00000000
--- a/modules/billing/docs_old/games/codename-cure.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# Codename CURE — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./codename-cure_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `codename-cure_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/codename-cure/server.cfg` — Main server configuration
-- `~/codename-cure/config/` — Configuration directory
-- `~/codename-cure/logs/` — Log files directory
-- `~/codename-cure/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Codename CURE
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/colony-survival.md b/modules/billing/docs_old/games/colony-survival.md
deleted file mode 100644
index 8409f12f..00000000
--- a/modules/billing/docs_old/games/colony-survival.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# Colony Survival — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-./colony-survival_server -port 27015 -maxplayers 16 -config server.cfg
-```
-
-**Parameters (common server flags)**
-- `-port ` — Server port (default varies by game)
-- `-maxplayers ` — Maximum player count
-- `-config ` — Configuration file to load
-- `-log` — Enable logging
-- `-console` — Enable console output
-- `-dedicated` — Run as dedicated server
-- `-name ""` — Server name
-- `-password ""` — Server password
-
-**Ports**
-- Game: UDP **27015** (typical default)
-- Query: UDP **27016** (game port + 1)
-- Admin/RCON: TCP **varies by game**
-
-## Config Files & Locations
-**Windows:**
-- `colony-survival_server.cfg` — Main server configuration
-- `config/` — Configuration directory
-- `logs/` — Log files directory
-- `data/` — Server data and saves
-
-**Linux:**
-- `~/colony-survival/server.cfg` — Main server configuration
-- `~/colony-survival/config/` — Configuration directory
-- `~/colony-survival/logs/` — Log files directory
-- `~/colony-survival/data/` — Server data and saves
-
-**Key Files:**
-- **server.cfg**: Core server settings and game rules
-- **admins.cfg**: Administrator configuration (if applicable)
-- **banned.cfg**: Banned players list (if applicable)
-
-## Steam Workshop
-Not supported by this game.
-
-## Common Mods (curated)
-**Admin/Management Mods**
-- Check official mod repositories or community sites for Colony Survival
-- Look for server administration, anti-cheat, and quality-of-life mods
-- Install according to game's modding framework (if available)
-
-**Popular Community Mods**
-- Search Steam Workshop (if supported) for highly-rated server mods
-- Check game's official forums and community sites for recommended mods
-- Verify mod compatibility with current server version
-
-**Installation Notes**
-- Follow each mod's specific installation instructions
-- Some games require mod loading frameworks or special startup parameters
-- Test mods individually before combining multiple mods
-
-## Database
-Not applicable - this game does not use a database for core functionality.
-
-## Administration & Scripting
-**Remote Administration:**
-- RCON (Remote Console) access for server management
-- Web-based admin panels (game-specific or third-party)
-- In-game admin commands and permissions
-
-**Backup Strategy:**
-- Automated daily backups of save files and configuration
-- Rotate backups (keep 7 daily, 4 weekly, 12 monthly)
-- Test backup restoration procedures regularly
-- Store backups in separate location/drive
-
-**Auto-Update:**
-- Use SteamCMD for automatic server updates (Steam games)
-- Schedule updates during low-traffic periods
-- Backup before applying updates
-- Monitor for update announcements and patch notes
-
-**Monitoring:**
-- Server performance monitoring (CPU, memory, network)
-- Player connection logs and statistics
-- Error log monitoring and alerting
-- Uptime tracking and availability reporting
-
-## Troubleshooting (game-specific)
-**Server not starting**
-- **Cause**: Missing dependencies, incorrect configuration, or port conflicts
-- **Fix**: Check server logs, verify all required files are present, ensure ports are available
-
-**Players cannot connect**
-- **Cause**: Firewall blocking server port or incorrect network configuration
-- **Fix**: Open required ports in firewall, verify server is binding to correct IP address
-
-**Performance issues/lag**
-- **Cause**: Insufficient server resources or suboptimal configuration
-- **Fix**: Monitor CPU/memory usage, optimize server settings, reduce player/entity limits
-
-**Configuration not loading**
-- **Cause**: Syntax errors in config files or incorrect file paths
-- **Fix**: Validate configuration file syntax, check file permissions, review server logs
-
-**Mod/plugin conflicts**
-- **Cause**: Incompatible mods or plugin version mismatches
-- **Fix**: Test mods individually, update to compatible versions, check for known conflicts
diff --git a/modules/billing/docs_old/games/conan-exiles.md b/modules/billing/docs_old/games/conan-exiles.md
deleted file mode 100644
index 661f71e4..00000000
--- a/modules/billing/docs_old/games/conan-exiles.md
+++ /dev/null
@@ -1,107 +0,0 @@
-# Conan Exiles — Complete Dedicated Server Guide
-
-## Startup Parameters
-**Default command line**
-```bash
-ConanSandboxServer.exe -log -Port=7777 -QueryPort=27015 -MaxPlayers=40
-```
-
-**Parameters (exhaustive, server-relevant only)**
-- `-log` — Enable logging.
-- `-Port=` — Game port. Default: 7777.
-- `-QueryPort=` — Query port. Default: 27015.
-- `-MaxPlayers=` — Maximum players (1-40).
-- `-ServerName=""` — Server name.
-- `-ServerPassword=""` — Server password.
-- `-AdminPassword=""` — Admin password.
-- `-RconEnabled=` — Enable RCON.
-- `-RconPort=