Homebrew WIP ioquake3-nx - an ioquake3 port

fgsfds

Well-Known Member
OP
Member
Joined
Aug 28, 2018
Messages
445
Trophies
0
Age
123
XP
3,296
Country
Russia
ioquake3 on the Switch.
Github repo: /fgsfdsfgs/ioq3
Latest version: 0.3.0 (Sep 18, 2019)
Download link

2018091906595400-DB1426D1DFD034027CECDE9C2DD914B8.jpg


2018091906204400-DB1426D1DFD034027CECDE9C2DD914B8.jpg

Some of the features of the port:
  • hardware accelerated rendering;
  • sound and music via OpenAL-Soft;
  • multiplayer (I think it works?);
  • basic gyro aiming;
  • analog controls and shit.
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.
Your baseq3 folder has to have 1.32 Point Release patch data in it (.pk3 files pak1.pk3 through pak8.pk3). ioquake3 will complain and crash if they're missing. If you don't have those files, you can get them here.
For more information on how to install and run ioquake3, including how to use it with the Quake III demo, visit their wiki, just keep in mind that your "game directory" is /switch/ioquake3.

Some notes:
  • if it crashes and exits back to HBL/Horizon silently, check /switch/ioquake3/crashlog.txt to find out what caused it;
  • 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;
  • 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;
  • 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, because I really can't be arsed to come up with something new;
  • 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;
Known issues:
  • mods are probably supported, but only ones that have q3vm files, as the port cannot load dynamic libraries;
  • 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.
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.
 
Last edited by fgsfds,

sj33

Well-Known Member
Member
Joined
Oct 22, 2013
Messages
4,072
Trophies
2
XP
4,723
Country
Japan
:D Fast work, amazing!

We're reaching the point where we should be recommending the hbmenu nsp for extra RAM.
 

sj33

Well-Known Member
Member
Joined
Oct 22, 2013
Messages
4,072
Trophies
2
XP
4,723
Country
Japan
Personal preference of course, but when homebrew is distributed as a .nro then it's simpler for end users to recommend hbmenu itself.
 
  • Like
Reactions: M7L7NK7

Admiral-Purple

Well-Known Member
Newcomer
Joined
May 25, 2018
Messages
48
Trophies
0
Age
29
XP
408
Country
United States
Works great using reinx and hblauncher as an nsp. Getting steady 60fps with 720p resolution and high quality skies turned off.
Would it be possible to map the d pad buttons to navigate the menu options in addition to the left joystick?
 
Last edited by Admiral-Purple,

fgsfds

Well-Known Member
OP
Member
Joined
Aug 28, 2018
Messages
445
Trophies
0
Age
123
XP
3,296
Country
Russia
Now no controls work when the match starts?
Kind of sounds like your q3config. cfg got reset or corrupted. You can overwrite it with the one from the release zip, or rebind stuff manually in the menu. Keep in mind that the game is subject to exFAT corruption when you close it with the Home button instead of quitting using the menu option.
Works great using reinx and hblauncher as an nsp. Getting steady 60fps with 720p resolution and high quality skies turned off.
Would it be possible to map the d pad buttons to navigate the menu options in addition to the left joystick?
Yeah, it's possible. I kind of forgot to do that, I'll add dpad controls in the next release.
 

Brunz514

Well-Known Member
Newcomer
Joined
Sep 4, 2018
Messages
45
Trophies
0
Age
38
XP
300
Country
Canada
Just playtested on sx os 1.7 starting the game from hbmenu. Looks, plays and runs great, 60 fps for the most part with sum dips to the 40s here and there. Would having the nsp hbmenu unlock a little more power too keep it and future homebrew at higher fps?
 

Brunz514

Well-Known Member
Newcomer
Joined
Sep 4, 2018
Messages
45
Trophies
0
Age
38
XP
300
Country
Canada
It would allow access to 3GB RAM which surely has an effect on framerates.
Once I start installing nsp files are they tied to the nand in someway? So far i have just used my switch for emulation, homebrew, modding skyrim and a couple back ups. No freeshop or other nsp files ever installed, will this increase my risk of being banned?
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    Xdqwerty @ Xdqwerty: Good night