Magic Another Game Engine
Find a file
2020-06-18 18:59:40 -04:00
Mage Merge pull request #6504 from SpeedProg/fix_target_card_in_opponent_graveyard 2020-06-19 00:34:37 +02:00
Mage.Client * Adding M21 to Scryfall Image support sets. 2020-06-16 10:43:26 +02:00
Mage.Common * Some minor code clean up. 2020-06-16 10:42:53 +02:00
Mage.Plugins Prepare new release 2020-01-09 08:55:26 +04:00
Mage.Server * Allow player names with space for the init.txt test help. 2020-06-12 16:10:07 +02:00
Mage.Server.Console Update Mage.Client, Mage.Server.Console, and AbilityPicker LaF to use the supported class name. 2020-04-25 14:02:14 -04:00
Mage.Server.Plugins * Some minor code and text clean up. 2020-06-12 15:14:28 +02:00
Mage.Sets updated JMP spoiler and reprints 2020-06-18 18:59:40 -04:00
Mage.Tests - Fix test 2020-06-18 17:14:32 -05:00
Mage.Verify Implement garruk cards (#6650) 2020-06-16 21:09:26 -04:00
repository/com/googlecode/jspf/jspf-core Added local repository to pom 2012-07-25 20:22:18 +03:00
Utils updated JMP spoiler and reprints 2020-06-18 18:59:40 -04:00
.gitignore Added Visual Studio Code (vscode) and .factorypath maven files to .gitignore. Also .idea pattern now restricted to folder type. (#6410) 2020-04-13 18:52:13 -04:00
.travis.yml temporarily disabling sonarcloud support 2019-01-05 13:01:35 -05:00
clean_dbs.sh make clean_dbs.sh executable 2015-11-08 22:32:42 -08:00
LICENSE.txt add current MIT license to root 2018-06-02 17:48:28 +02:00
pom.xml * Updated com.google.guava dependency to 29.0-jre. 2020-06-16 08:02:06 +02:00
readme.md include performance tweak guide for Linux 2020-01-10 06:05:35 -03:00
RemoveHeaders.java remove all MIT copyright notices from files 2018-06-02 17:59:49 +02:00
sonar-project.properties added sonarcloud support (hopefully it works) 2019-01-05 11:29:35 -05:00

XMage — Magic, Another Game Engine

Join the chat at https://gitter.im/magefree/mage Build Status

XMage allows you to play Magic against one or more online players or computer opponents. It includes full rules enforcement for over 19.200 unique cards (over 37.400 counting all cards from different editions, you can find event custom sets like Star Wars). All regular sets have nearly all the cards implemented. A more detailed information which cards are implemented can be found here.

It's support single matches and tournaments with dozens game modes like duel, multiplayer, standard, modern, commander, pauper, oathbreaker, freeform and much more.

There are public servers where you can play XMage against other players. You can also host your own server to play against the AI and/or your friends.

XMage community:

Servers status:

Features

  • Multiplatform app: Windows, Linux, MacOS;
  • Deck editor (support multiple deck formats and deck sources);
  • Two player duel or a multiplayer free-for-all game with up to 10 players;
  • Computer AI opponents;
  • Players rating system (Glicko);
  • Supports special formats like Commander (up to 10 players), Oathbreaker, Cube, Tiny Leaders, Super Standard, Historic Standard and more;
  • Single matches or tournaments supported (elimination or swiss type handling), which can be played with up to 16 players:
    • Booster (also Cube) draft tournaments (4-16)
    • Sealed (also from Cube) tournaments (2-16)

Issues / bugs

Before you create a new issue, take a look at the List of things already fixed but not yet released to avoid creating uneccessary new issues. Also there is always a bug thread in the Official XMage forum which we check regularly.

Installation

  • Download latest XMage launcher file and put it to any folder like D:\games\xmage;
  • You need to have Java version 8 or later to run it;
  • If you can't run it then create run-LAUNCHER.cmd text file in launcher folder and put that line to it and save as ANSI format:
    • java -Djava.net.preferIPv4Stack=true -jar XMageLauncher-0.3.8.jar

Look here for more detailed instructions. Here you can find a log of the latest changes.

Performance tweaks

If you have a good GPU, it's very likely you'll be able increase performance by a lot through extra Java flags.

XMage runs on JRE 8, so this link should give you the available flags.

How to enable the extra flags

  1. Launch XMage
  2. In the menu bar from the launcher, click on "Settings", which will open up the Settings Window
  3. Go to the "Java" tab
  4. You can pass extra flags by editing the "Client java options" text field

Linux guide

Enable OpenGL

Link

-Dsun.java2d.opengl=true

Caveat: There's a bug with the file chooser when OpenGL is enabled (you use the file chooser when you, for instance, try to load a deck from disk). The suggested workaround will make the game crash, so it's not an option.

Workaround: When using i3, you're able to work around the bug by toggling the "floating" capabilities of the window and forcing it to re-render.

Enable XRender

Link

-Dsun.java2d.xrender=true

Bigger upfront heap size

SO explanation

This is not guaranteed to yield improvements, but it depends on your use-case. If you have a lot of RAM to spare, you might as well increase the initial heap size for good measure.

-Xms1G -Xmx2G

Developer

If you are interested in developing XMage, here are some useful resources: