The universe of community-owned games.
GameCommons is an open-source, federated multiplayer gaming platform specification that enables anyone to create, host, and connect community-owned game servers. Inspired by the decentralized architecture of federated platforms, GameCommons allows independent server operators to build thriving gaming communities while remaining discoverable and interoperable through an open federation protocol.
Designed as a modular platform rather than a single game server, GameCommons separates the core infrastructure from game-specific implementations. Every game is packaged as a module, allowing administrators to host one or many games on a single server while sharing common services such as authentication, federation, matchmaking, analytics, funding, and administration.
Released under the GNU Affero General Public License v3.0 or later (AGPL-3.0+), GameCommons ensures that improvements made to network-deployed instances remain available to the community while enabling organizations to build sustainable multiplayer ecosystems without vendor lock-in.
Create an open ecosystem where communities—not centralized corporations—own and operate the online worlds they play in.
GameCommons provides the infrastructure for:
- Community-owned game servers
- Federated multiplayer networks
- Self-hosted gaming communities
- Open game discovery
- Sustainable community funding
- Cross-server collaboration
- Open game development
- Long-term preservation of online games
- Modular architecture
- Federation-first
- Local-first administration
- Privacy-first
- Community ownership
- Open standards
- Vendor neutrality
- Horizontal scalability
- High availability
- Security by design
- Accessibility
- Internationalization
- Sustainable funding
- Extensible plugin ecosystem
Federation Network
GameCommons Instance
│
┌───────────┼────────────┐
│ │ │
Game Modules Core Modules Plugin Modules
Every server operates independently while participating in an optional federation of public or private GameCommons instances.
Provides the networking foundation for GameCommons.
- Instance federation
- Server discovery
- Federation synchronization
- Trust relationships
- Capability negotiation
- Cross-server communication
- Federation APIs
- Instance health monitoring
Unified authentication across hosted games.
- Local accounts
- Federated identities
- OAuth
- OpenID Connect
- LDAP
- Passkeys
- Multi-factor authentication
- Guest accounts
- Session management
Maintains information about participating servers.
- Public server listings
- Private federation support
- Instance metadata
- Server capabilities
- Health status
- Discovery indexing
Installs and manages individual game implementations.
- Module installation
- Dependency management
- Automatic updates
- Version compatibility
- Lifecycle management
- Capability registration
Manages optional platform extensions.
- Plugin installation
- Plugin updates
- Digital signature verification
- Dependency resolution
- Version management
Allows modules to advertise supported functionality.
- Capability declarations
- Service discovery
- Compatibility validation
- Dynamic feature negotiation
The communication backbone of the platform.
- Publish/Subscribe messaging
- Event routing
- Service discovery
- Internal RPC
- Distributed workflows
- Message queues
- Event replay
- Federation event propagation
- Dead-letter queues
- Webhook integration
- Workflow orchestration
- Event auditing
Coordinates multiplayer sessions.
- Matchmaking
- Lobbies
- Queue management
- Session orchestration
- Cross-server matchmaking
- Invitations
Abstract networking infrastructure.
- TCP
- UDP
- QUIC
- WebSockets
- HTTP/HTTPS
- Custom transport providers
Unified storage abstraction.
- SQLite
- PostgreSQL
- MariaDB
- Object storage
- Flat files
- Database migrations
Unified API access.
- REST
- GraphQL
- WebSockets
- gRPC
- API versioning
- Authentication
Platform-wide authorization.
- Role management
- Permission policies
- Delegated administration
- Custom roles
- Access auditing
Centralized server management.
- Server management
- Module management
- User administration
- Logs
- Configuration
- Updates
- Diagnostics
Operational monitoring.
- Metrics
- Health monitoring
- Logging
- Performance monitoring
- Alerts
- Audit logs
Security services shared by every module.
- Secure communications
- Rate limiting
- Secrets management
- Certificate management
- Abuse prevention
- Audit logging
Platform-wide notification system.
- Push notifications
- In-app notifications
- Webhooks
- Event subscriptions
Supports long-term community sustainability.
- Grant management
- Funding applications
- Milestone tracking
- Review workflows
- Community funding
- Bounties
- Treasury integration
- Financial reporting
Financial infrastructure.
- Budget management
- Revenue allocation
- Community funds
- Reserve funds
- Financial reporting
- Distribution APIs
Community reward infrastructure.
- Reward pools
- Revenue sharing
- Player rewards
- Contributor incentives
- Reputation rewards
- Automated distributions
- Reward policies
Cross-server communication.
- Global chat
- Community channels
- Private messaging
- Presence
- Rich media
- Moderation
- Federation support
Privacy-respecting analytics.
- Server analytics
- Community analytics
- Module analytics
- Financial analytics
- Dashboards
- Reporting
- Privacy-first metrics
Internationalization platform.
- Multi-language support
- Runtime localization
- Community translations
- Translation management
- Internationalization APIs
Public-facing platform.
- Community websites
- Server browser
- Public APIs
- Documentation
- Landing pages
- SEO support
Centralized configuration.
- Environment profiles
- Secret references
- Versioned configuration
- Configuration validation
Background processing.
- Scheduled jobs
- Maintenance
- Event automation
- Workflow execution
- Background workers
Shared asset infrastructure.
- Asset versioning
- CDN integration
- Game assets
- Static resources
- Content delivery
Federated discovery services.
- Game search
- Server search
- Player search
- Federation indexing
- Full-text search
- Community sponsorships
- Banner advertising
- Featured servers
- Campaign management
- Sponsor analytics
- Budget proposals
- Voting
- Treasury transparency
- Community governance
- One-time donations
- Memberships
- Fundraising campaigns
- Donation goals
- Digital storefronts
- Cosmetic items
- Digital goods
- Marketplace commissions
- Tournament brackets
- Registration
- Scheduling
- Prize management
- Federation tournaments
- Elo ratings
- Seasonal rankings
- Cross-server leaderboards
- Friends
- Parties
- Activity feeds
- Social profiles
- Guilds
- Organizations
- Community management
- Shared resources
- Voice chat
- Positional audio
- Moderation
- Recording support
- Replay recording
- Spectator mode
- Broadcasting
- Live streaming
- Broadcast overlays
- Streaming APIs
- Community events
- Calendars
- Registration
- Automated announcements
- Community news
- Patch notes
- Featured content
- Mod publishing
- Version management
- Dependency resolution
- Shared assets
- Maps
- Texture packs
- Media libraries
- Spam detection
- Abuse detection
- Content moderation
- Intelligent NPCs
- Dialogue systems
- AI behaviors
- Cheat detection
- Behavioral analysis
- Appeals workflow
- Trust scores
- Contributor reputation
- Moderation history
- Achievements
- Badges
- Progress tracking
- Virtual currencies
- Trading
- Banking
- Crafting
- Shared inventories
- Item storage
- Trading APIs
- Subscriptions
- Premium services
- Invoicing
- Automated backups
- Replication
- Restore management
- Regional directories
- Community directories
- Discovery hubs
- SDK generation
- Development tools
- Module templates
- Mobile synchronization
- Remote administration
- Push services
- Discord
- Matrix
- IRC
- Slack
- Webhooks
- Federation councils
- Shared policies
- Inter-server voting
- Classrooms
- Training servers
- Learning environments
- Research datasets
- Academic collaboration
- Experiment management
- Shared player profiles
- Universal achievements
- Cross-game identities
- Universal statistics
Every supported game is implemented as an independent module.
Examples include:
- Chess
- Trading Card Games
- First-Person Shooters
- MMORPGs
- Survival Games
- Sandbox Games
- Strategy Games
- Racing Games
- Educational Games
- Board Games
Each module defines:
- Federation capabilities
- Networking requirements
- Matchmaking behavior
- Storage requirements
- Asset management
- Plugin compatibility
- World synchronization
- Mod support
GameCommons allows independent communities to discover and connect with one another without requiring centralized ownership.
Federation supports:
- Public instances
- Private federations
- Community discovery
- Cross-server matchmaking
- Cross-server messaging
- Shared tournaments
- Shared funding initiatives
- Shared grant opportunities
- Shared player identities (optional)
GameCommons is designed to support long-term community operation through optional funding mechanisms.
Communities may choose to enable:
- Sponsorships
- Advertising
- Donations
- Grant funding
- Revenue sharing
- Marketplace commissions
- Community rewards
Every funding model remains under the control of each individual server operator.
- Fully AGPL-3.0+ compliant system
- Copyleft enforced for network deployments
- Required attribution:
- Roxanne Ardary
- https://www.roxanneardary.com/
- Specification Branding License (SBL)
- Attribution-free commercial deployment
- Pricing based on scale, usage, and deployment scope
- https://roxanneardary.com/gamecommons/
GameCommons is released under the GNU Affero General Public License v3.0 or later (AGPL-3.0+).
By contributing to any Open Arsenal project, you agree that your contributions will also be released under this license.
Please note the following:
- All contributions must comply with the AGPL-3.0+ terms.
- Under Section 7 of the license, all redistributions, forks, and derivative works must preserve attribution to: Roxanne Ardary and https://www.roxanneardary.com/.
- GameCommons specifications are free to use with attribution. A Specification Branding License can be negotiated upon request.
- The project's notice.md file tracks attribution requirements and contributor acknowledgments.
Any update that adds new contributors or modifies attribution should also update
notice.md. - When submitting a pull request, ensure that any new files maintain the attribution headers where applicable.
- Network-deployed versions of this software must also remain fully AGPL-3.0+ compliant, including exposure of source code modifications when applicable under the license.
For full legal details, please refer to the AGPL-3.0+ license and the project's notice.md file.