MIT
XMage
XMage is a free and open-source engine for playing Magic: The Gathering online — against other people or computer opponents — with full rules enforcement for more than 30,000 unique cards and over 75,000 reprints across every edition. Built as a Java client/server application, it reproduces the full card game faithfully: priority, the stack, triggered abilities, complex interactions and the complete rules engine are all handled for you, so you can concentrate on playing rather than policing the rules.
Key Features
- Full rules enforcement — the engine validates every play against the comprehensive rules, covering 30,000+ unique cards and 75,000+ reprints, including older and obscure sets.
- Play online or offline — connect to the public XMage servers to find opponents worldwide, host your own server for a private group, or play against built-in computer opponents.
- Dozens of game modes — duel, two-player, multiplayer free-for-all and tournaments, with formats such as Standard, Modern, Commander, Pauper, Oathbreaker, Historic, Freeform and Richman.
- Custom sets and formats — unofficial and custom sets (for example Star Wars) are supported alongside the official card pool.
- Deck building and limited play — a full deck editor plus draft and sealed modes for building decks from boosters.
- Card images and symbols — download the official card art, tokens and mana symbols from the client so boards render with real card images.
- Truly cross-platform — a single Java client runs on Windows, Linux, macOS and SteamOS.
- Actively developed — a large community project with 2,400+ GitHub stars and around 966 forks, shipping updates continuously.
Why Use XMage?
XMage is the closest thing to a complete, free digital implementation of Magic: The Gathering. Because it runs its own rules engine rather than scripting individual cards, unusual interactions behave the way they should, and playing a niche format or an older set is not a problem. There is no account to create on the public server, no payment and no proprietary client: download the client, press update, and you are playing. If you would rather not depend on someone else’s server, XMage’s client/server split means you can run your own server for your playgroup.
Use Cases
- Playing Magic online with friends or strangers at any hour, in any format, without owning the physical cards.
- Testing and goldfishing deck ideas against AI opponents before buying or building a paper deck.
- Running a private tournament or league on your own XMage server for a club or playgroup.
- Exploring older or niche formats — Pauper, Commander, Oathbreaker — and custom sets that rarely see digital support.
Platforms
Windows · Linux · macOS · SteamOS (Java client, requires a Java runtime)
Licence
Open source — MIT licence. The client and server are free to use, study, modify and redistribute under the terms of the repository’s MIT licence.
Similar Tools
- TripleA — a free, Java-based engine for playing deep turn-based board games with an enforced rule set; the closest directory equivalent for tabletop-style play against others.
Website
xmage.today — client downloads, the public server and project documentation. Source code: github.com/magefree/mage.
Views: 0