Ioquake3-NX Switch

From GameBrew
ioquake3-nx by fgsfdsfgs
Ioquake3nx.png
General
Authorfgsfdsfgs
TypeShooter
Version0.3.0-nx
LicenseGPL-2.0
Last Updated2019/09/18
Links
0.3.0-nx - Updated NRO for 16.X
Website
Source

ioquake3-nx is an ioquake3 port on the Switch.

ioquake3 is an open-source game engine designed to run Quake III: Arena and its mods. It was based on the source code released in 2005, allowing the game to be modified and improved by the community. ioquake3 offers numerous improvements over the original engine, such as increased compatibility with modern operating systems, enhanced graphics and sound, and improved networking capabilities.

Features

  • Hardware accelerated rendering.
  • Sound and music via OpenAL-Soft.
  • Multiplayer (I think it works?).
  • Basic gyro aiming.
  • Analog controls.

Installation

To install it, unzip ioquake3nx_030.zip to the root of your SD card, then copy the baseq3 folder from your Quake III installation to /switch/ioquake3/. Do not overwrite any files if asked.

Make sure the baseq3 folder contains files pak0.pk3 through pak8.pk3, i.e. you have installed the 1.32 Point Release patch onto your Quake 3 installation.

For more information on how to install and run ioquake3, including how to use it with the Quake III demo, visit their websiete, just keep in mind that your "game directory" is /switch/ioquake3.

Run ioquake3-nx from Homebrew Launcher. It's recommended to either use NSP hbmenu or set up hbloader to run in regular app mode in Atmosphere, because applet mode memory might not be enough in some cases.

If it crashes and exits back to HBL/Horizon silently, check /switch/ioquake3/crashlog.txt to find out what caused it.

Notes: MrDudue has released an updated version of ioquake3NX, which supports firmware 16.x.

User guide

Notes

  • You can change the resolution in System options, but real 1080p is currently not supported.
  • You can rebind controls in the Controls menu, analogs are also bindable.
  • You can host and connect to servers from the serverlist or by entering the IP ("Specify" button).
  • You might notice that this is an almost exact copy of the NXQuake, Quakespasm and NXQuake2 threads.

Controls

  • in menus, A acts as the Left Mouse Button, B acts as the Right Mouse Button and the left analog moves the cursor.
  • You can bring up swkbd in menus by pressing L, but it works slightly weird: stuff you enter will just get added to the end of the input field, to edit it you have to move the in-game cursor and use R to delete characters.
  • You can also bring up swkbd by entering showosk in console, you can also bind the command to a button in q3config.cfg and use it in-game.
  • Right analog sensitivity is controlled by the console variables j_pitch (up/down) and j_yaw (left/right), you can edit their values in q3config.cfg.

Other versions/Updates

  • Updated ioquake3nx.nro - Updated .nro by mrdude for Firmware 16.x (use with fgsfdsfgs's ioquake3-nx, support multiplayer mode) (2023/06/09).
  • OpenArenaNX - A port of ioquake3 + OpenArena for the Nintendo Switch by faithvoid. Support Firmware 16+ (2323/06/28).
  • ioquake3-nx - Updated ioquake3-nx by danifunker to support Firmware 12.1 (2021/08/25).

Screenshots

ioquake3nx.pngioquake3nx2.png

Known issues

  • Mods are probably supported, but only ones that have q3vm files, as the port cannot load dynamic lbraries.
  • Sometimes exiting the game via the Exit menu button hangs it, feel free to exit using the Home button when that happens.
  • Q3VM runs in interpreter mode, since it has no JIT compiler for aarch64, which means it's pretty slow.
  • Some stuff, like connecting to modded online servers, requires more memory than is provided in applet mode, meaning it will crash the game unless you run it from NSP hbmenu, make a standalone NSP out of it or properly set up hbloader in Atmosphere.

Changelog

v0.3.0 2019/09/18

  • Added basic gyro aiming (thanks @jfenton).
  • Fixed USB keyboard handling (thanks @jfenton).
  • Tweaked menu and console controls.
  • Removed old broken graphics crap.
  • Synced with upstream.
  • Rebuilt with latest libnx.

. v0.2.0 2018/03/18

  • Weird-ass pk3 caching system is gone (this also fixes music playback).
  • Added Home button exit handling.
  • Added swkbd support (press L to bring it up in menus).
  • Sound is now handled by openal-soft.
  • Updated libs to their latest versions (thanks jfenton for making it work with libnx 2.0).

Credits

  • These people for ioquake3.
  • fincs, Armada651, Subv and probably others for their work on the OpenGL/mesa/libdrm stuff.
  • jfenton for PRing libnx 2.0-related changes, gyroscope controls and some fixes.
  • Some nice people in the ReiSwitched Discord for help and testing.
  • id Software for the game itself.

External links

Advertising: