Install on macOS or Linux with Homebrew:
brew install nyg/jmxsh/jmxsh
Download the release JAR and run it directly:
java -jar jmxsh-<version>.jar
Add the repository and install:
curl -fsSL https://jmx.sh/apt/gpg.asc | sudo gpg --dearmor -o /usr/share/keyrings/jmxsh.gpg
echo "deb [signed-by=/usr/share/keyrings/jmxsh.gpg] https://jmx.sh/apt stable main" | sudo tee /etc/apt/sources.list.d/jmxsh.list
sudo apt update && sudo apt install jmxsh
Once you own the PC version, you will copy the baseq3 folder (containing pak0.pk3 ) to your Android device. This guide assumes you have legally obtained these files.
For a smooth experience, you need a source port. Here are the top three, battle-tested options.
Quake 3 Arena was designed to run on PC hardware from the late 1990s, so modern Android devices are more than powerful enough to handle it. However, to ensure a smooth, high-framerate experience, especially in demanding multiplayer battles, you can tweak a few settings. quake 3 arena android download
is arguably the best "all-in-one" source port for Android. It's a port of the ioquake3 engine that's been specifically optimized for touchscreens, controllers, and even mice (with root access).
In the pantheon of first-person shooters, few titles command as much respect as . Released in 1999, it revolutionized online multiplayer with its blazing-fast movement, precise rocket jumping, and a competitive esports scene that laid the groundwork for modern gaming. For two decades, fans have asked one question: Can I play this masterpiece on my phone? Once you own the PC version, you will
: May require troubleshooting on newer Android versions (Android 11 and above) due to scoped storage restrictions. Step 2: Install and Set Up the Game
Locate the folder path: Android -> data -> ws.openarena.swa -> files -> baseq3 (Note: Pathing may vary slightly depending on Android scoped storage rules). Paste your pak .pk3 * files into that final baseq3 folder. Step 4: Launching and Optimizing the Game Once the files are in place, you are ready to play. Open your chosen port app (e.g., QuadTouch). Select from the engine menu. Tap Launch . The classic Quake 3 main menu will load. Optimizing Controls Here are the top three, battle-tested options
But here lies the final tremor. The average mobile player, hunched over on a subway with touch controls and a spotty 4G connection, will be annihilated by a veteran on a PC with a 144Hz monitor and a wired mouse. The Android community thus self-segregates. Servers labeled “Android only” or “Noob friendly” appear, creating micro-arenas where the latency is high but the egos are low. The dream of a unified, cross-platform arena remains just that—a dream. The speed of Q3A amplifies every millisecond of input lag into a chasm of defeat.
: Designed to be used with physical input devices like gamepads, keyboards, or mice, as it lacks meaningful touch controls. : An older but popular port often used for nostalgic play. Availability : Can be found on sites like Key Feature
Cross-play with PC is fully functional. Your Android device will appear as any other client to a PC server. However, be prepared: mouse users will have an advantage over touch players.
Until then, the methods described above are the best way to experience arena shooter greatness on the go.
Automate JMX operations with scripts and pipes — perfect for monitoring, alerting, and CI/CD pipelines.
Run commands from a file:
java -jar jmxsh-<version>.jar \
-l localhost:9999 \
--input commands.txt
Pipe commands via stdin:
echo "open localhost:9999 && beans" \
| java -jar jmxsh-<version>.jar -n
| Command | Description |
|---|---|
open <host:port> | Connect to a remote JMX endpoint (RMI) |
open jmxmp://<host:port> | Connect to a remote JMX endpoint (JMXMP) |
open <pid> | Attach to a local JVM by process ID |
domains | List all MBean domains |
beans | List all MBeans (filter by domain with -d) |
bean <name> | Select an MBean for subsequent operations |
info | Show attributes and operations of the selected MBean |
get <attr> | Read an MBean attribute |
set <attr> <value> | Write an MBean attribute |
run <op> [args] | Invoke an MBean operation |
close | Disconnect from the JMX endpoint |
jvms | List local Java processes |
help | Show all available commands |
Tab completion and command history powered by JLine.
Connect via host:port (RMI), jmxmp:// (JMXMP), JMX URL, or local PID.
Browse domains, read/write attributes, invoke operations.
Run multiple commands in one line with &&.
Automate JMX operations via files or piped input.
Silent, brief, or verbose output modes.
Follows the XDG Base Directory spec — keeps your home directory clean.