XMage runs on a wide range of operating systems and Java runtimes, which means the same symptom can have different root causes depending on your setup. This page collects the most frequently reported problems and their known fixes — work through the accordion that matches your situation before opening a new issue.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/magefree/mage/llms.txt
Use this file to discover all available pages before exploring further.
Version Mismatch
Before diving into platform-specific issues, confirm that your client and server are running the exact same version. XMage does not support cross-version connections. If you connect to a public server and see an immediate disconnect, a cryptic error, or missing cards, a version mismatch is almost always the cause.- Check the version displayed in the launcher title bar.
- Check the version listed on the public servers page.
- Re-download the latest launcher from xmage.today if they differ.
Connection Refused
If the client reports “connection refused” or times out when joining a server:- Confirm the server is actually running (check server status).
- XMage uses ports 17171 (game traffic) and 17179 (HTTPS/status). Make sure your firewall and any router NAT rules allow outbound connections on both ports.
- If you are self-hosting, ensure those ports are open for inbound traffic and that the server config points to the correct bind address.
- Antivirus software or a VPN can silently block these ports — try temporarily disabling them to isolate the problem.
All-Platform Issues
Program freezes on startup (white, blue, or black screen)
Program freezes on startup (white, blue, or black screen)
- Outdated or incompatible Java version. XMage requires Java 8 or later. Download the latest JRE from java.com and make sure the launcher is pointed at it under
Settings > Java. - Graphics driver issue. GPU-accelerated rendering can deadlock on some driver versions. Add
-Dsun.java2d.d3d=false(Windows) or-Dsun.java2d.opengl=false(Linux/macOS) to the Client java options field inSettings > Javato force software rendering. - Corrupted installation. Delete the XMage folder entirely and re-download a fresh copy from xmage.today.
Can't download card images, or download stops partway through
Can't download card images, or download stops partway through
- XMage fetches card images from third-party image sources. Those sources can be rate-limited, temporarily offline, or geo-blocked.
- Try switching the image source in
Settings > Imagesto an alternative provider and restart the download. - If all sources fail, try again later — the most common cause is a temporary outage on the provider’s side.
- A slow or unstable internet connection can also cause the downloader to stall. Ensure you have a stable connection and retry; the downloader will pick up from where it left off.
Can't run client: 'could not open ...jvm.cfg'
Can't run client: 'could not open ...jvm.cfg'
- Open the XMage Launcher.
- Go to
Settings > Java. - Update the Java path field to point at the
java.exe(Windows) orjavabinary of your current JRE installation. - If you are unsure of the path, run
where java(Windows) orwhich java(Linux/macOS) in a terminal.
No text, or buttons are too small in the launcher
No text, or buttons are too small in the launcher
Windows
Ugly cards, distorted buttons, or GUI drawing artifacts
Ugly cards, distorted buttons, or GUI drawing artifacts
Pixelated images, icons, and text (HiDPI / high-resolution displays)
Pixelated images, icons, and text (HiDPI / high-resolution displays)
macOS
Can't open the launcher — macOS blocks it
Can't open the launcher — macOS blocks it
/path/to/XMageLauncher with the actual path to the launcher file.Community reference: Reddit comment.Can't run XMage on Apple Silicon (M1 / M2)
Can't run XMage on Apple Silicon (M1 / M2)
aarch64 (ARM64) architecture. The standard x86-64 JRE will not work — even under Rosetta 2 emulation the JVM may fail.Fix: Download and install an ARM-native JDK, such as:Then point the XMage Launcher at the new JRE under Settings > Java.Full discussion: GitHub issue #8406.Client freezes in GUI (connect dialog, new match dialog)
Client freezes in GUI (connect dialog, new match dialog)
Linux
Running on non-standard OS or hardware (e.g. Raspberry Pi)
Running on non-standard OS or hardware (e.g. Raspberry Pi)
- You need an ARM-compatible JRE (e.g. Azul Zulu ARM, Eclipse Temurin).
- Some lightweight desktop environments or minimal Linux builds lack required libraries (e.g. GTK, libXext).
- The launcher may need to be run directly via
java -jarrather than through a shell script if execute permissions are lost.
Ugly GUI and drawing artifacts on Linux
Ugly GUI and drawing artifacts on Linux
XRender and OpenGL flags that can also resolve rendering artifacts.