Exile Server Manager (Bot v2)
September 2019
Maintaining
PostgreSQL
Redis
RSpec
Ruby
Shell Script

Exile Server Manager (Bot v2) represents a complete redesign of the ESM ecosystem, rebuilt from the ground up in Ruby. Far more than just a Discord bot, it's a comprehensive communication layer between Arma 3 Exile servers and Discord communities.

For players, ESM Bot offers seamless integration with their gaming experience:

  • Real-time XM8 notifications for territory raids, flag captures, and other critical events
  • Complete territory management including payments, upgrades, and member controls
  • Player stats, inventory management, and server information on demand
  • Custom notification routing to channel specific alerts exactly where they're needed
  • Gamble and reward systems that integrate with in-game economies

For administrators, it provides powerful server management tools:

  • Player management commands for modifying stats, inventory, and permissions
  • Comprehensive server logs with searchable archives
  • Territory restoration and modification capabilities
  • Direct SQF execution for advanced server control
  • Community-wide announcements and broadcasts

Architecturally, ESM Bot showcases modern software design principles:

  • Event-driven architecture with sophisticated command handling
  • Custom TCP server with AES 256 GCM encryption for secure communications
  • Promise-based asynchronous operations for responsive performance
  • PostgreSQL with ActiveRecord for robust data persistence
  • Redis-backed caching and IPC for efficient multi-process communication
  • Comprehensive test suite ensuring reliability across the codebase

By rebuilding ESM with Ruby, I was able to create a more maintainable, extensible system that provides the foundation for the entire ESM ecosystem while delivering an intuitive, seamless experience for both players and administrators.

Source Code
Github
Documentation
Changelog
Homepage