Homebrew Homebrew game VoyagerNX - Nintendo Switch port of "Star Trek Voyager: Elite Force Holomatch"

faithvoid

Active Member
OP
Newcomer
Joined
May 18, 2020
Messages
29
Trophies
0
Location
Tkaronto
Website
accela.design
XP
162
Country
Canada
Hey, GBATemp, it's been a minute.

I had a lot of free time yesterday with the Facebook/Instagram outage, and for the last few months of the pandemic I've been watching a lot of Star Trek Voyager and DS9, so I decided to use yesterday's sudden free time to pay a tribute to my favourite sci-fi soap opera by porting Star Trek Voyager: Elite Force Holomatch over to the Switch via the Tulip Voyager engine. It's about 95% or so complete in my opinion, just mostly requires some tweaks with the controls and bugfixes to get botmatches working properly (as currently they cause the game to softlock at the end of a match), and to get the game to stop crashing when it's placed in sleep mode. Crossplatform multiplayer works, basic gyro works and custom maps/mods also work. Keyboard + Mouse support also works if you want an authenticly 2000s twitch-based shooter experience.

20211005_072659.jpg



Known Bugs:
  • Virtual keyboard shows up upon every launch. Not a big deal, but a slight nuisance to some people probably.
  • Sleep mode causes the game and sometimes Horizon to crash. This seems to happen in a lot of ioquake3-based ports, and I'm working on diagnosing it.
  • Solo Matches can't bypass the score screen, therefore softlocking the player. If this happens, press X to bring down the terminal, type "/quit", hit Return, then press Enter twice and it'll drop you back to HBMenu. Multiplayer & Multi Match bot matches works perfectly, though.
  • Really epic battles can cause the framerate to dip on larger maps regardless of graphical settings. I'll try to work on optimizations, but I can't guarantee I can do a ton about it. Changing the resolution to one below 720p via the q3config.cfg file may help a touch.
  • Gyro needs to be enabled/disabled from the console ("/in_gyromouse 1") due to a lack of menu options. The default gyro settings are configured for handheld mode. To properly use gyro in wireless/pro controller mode, you'll have to drop the console down and type "/in_gyromouse_yaw_axis 1". You can set it back to 0 (roll) to go back to handheld mode.
  • You tell me.
Here's the download link for v0.8.3 + Holomatch game files (641mb, around 652.4mb unzipped), and here's the GitHub repo! Just extract the .zip file to your /switch/ folder, copy over the baseEF folder from a STVEF or Holomatch installation or .zip if you're using the GitHub release, run it with HBMenu (with R, not album) and you're ready to set phasers to frag!

Basic controls:
  • Left Trigger - Alt Attack
  • Right Trigger - Attack
  • Left Bumper - Crouch (or brings up keyboard when text fields are selected)
  • Right Bumper - Jump
  • X - Use
  • Y - Taunt / Toggle Console (menu)
  • A - Select
  • D-Pad Left + Right - Left/Right Weapon Select
  • Dpad Up - Zoom
  • Dpad Down - Toggle Console (in-game)
  • Minus - Scores
  • Plus - Menu
  • Left Stick In - Vote No
  • Right Stick In - Vote Yes
 
Last edited by faithvoid,

faithvoid

Active Member
OP
Newcomer
Joined
May 18, 2020
Messages
29
Trophies
0
Location
Tkaronto
Website
accela.design
XP
162
Country
Canada
Changelogs:

Oct 14, 2021 - Released version 0.8.4
  • Gyro now automatically detects whether the user's controller is in handheld or wireless mode and adjusts the axis accordingly. Haven't tested with a pro controller, but would imagine it should work fine, as the fix specifically targets handheld mode. This means apart from finding slightly more natural gyro defaults for both handheld and wireless mode, the end user can enjoy seamless gyro controls between input methods. (Note you'll still have to enable gyro manually by typing "in_gyromouse 1" in the console or copying the hmconfig.cfg settings from the GitHub readme, as there's still no menu prompt for it). Also, properly switched to "main" branch as the, well, main branch (hello Tulip Voyager!)
Oct 13, 2021 - Released version 0.8.3
  • Rewrote fgsfdsfgs's sdl_input_nx.c from ioquake3-nx to reference current HID refactor names, therefore enabling basic gyro support. (albeit incomplete due to no menu settings and no automatic switching of yaw axis between controllers.)
To enable gyro support, you have to open the console menu in-game, type "/in_gyromouse 1". The stock gyro configuration is meant for handheld use, so if you're using a pro/wireless controller you'll have to also type "/in_gyromouse_yaw_axis 1" (and if you want to go back to handheld type the last command with a 0 instead of 1).

Oct 09, 2021 - Released Version 0.8.2
  • Cosmetic changes (changing references of Lilium to Tulip, higher-resolution .nro icon, etc.)
Oct 06, 2021 - Released version 0.8.1!
  • Built on top of Tulip Voyager instead of Lilium Voyager for futureproofing + QOL changes.
Oct 05, 2021 - Released version 0.8.0!
  • MP3 support is now enabled, so menu sounds and announcer sounds now work as expected.
  • Reset keybindings to stock for keyboard + mouse, added "vote no" command to left stick in and "vote yes" command to right stick in for voting in multiplayer.
  • Enabled auto-download on multiplayer servers as I've been able to confirm that custom maps + mods seem to work perfectly.
Short gameplay video coming soon!
 
Last edited by faithvoid,

faithvoid

Active Member
OP
Newcomer
Joined
May 18, 2020
Messages
29
Trophies
0
Location
Tkaronto
Website
accela.design
XP
162
Country
Canada
Hey..I was just wondering if you'll maybe port Elite Force 1/2? Id play that shit hard
I really want to, and when I started this project I was originally intending to, but the singleplayer source code of Elite Force 1/2 doesn't exist and all the reverse engineering efforts are far from complete (I'm thinking Spearmint engine has a good chance since it's aiming for all sorts of cross-compatibility with single-player ioquake3 games but that's a ways away.).

But the day it's possible, I'm definitely gonna try to port it.
 

fatsquirrel

Well-Known Member
Member
Joined
Nov 11, 2013
Messages
2,613
Trophies
1
Age
33
XP
3,090
Country
I really want to, and when I started this project I was originally intending to, but the singleplayer source code of Elite Force 1/2 doesn't exist and all the reverse engineering efforts are far from complete (I'm thinking Spearmint engine has a good chance since it's aiming for all sorts of cross-compatibility with single-player ioquake3 games but that's a ways away.).

But the day it's possible, I'm definitely gonna try to port it.
cheers! id love to replay elite force with added portability xD
that and noone lives forever <3
 
  • Like
Reactions: faithvoid

faithvoid

Active Member
OP
Newcomer
Joined
May 18, 2020
Messages
29
Trophies
0
Location
Tkaronto
Website
accela.design
XP
162
Country
Canada
To anyone interested in experimenting with gyro controls: the latest build (0.8.4) now automatically detects whether you're in handheld or controller mode and sets the "in_gyromouse_yaw_axis" cvar accordingly, so now all you need to do to enable gyro support is type "/in_gyromouse 1" at the console or add it to your hmconfig.cfg file! This means no more manually alternating between yaw axis modes to fix gyro handling via the console when switching between handheld/controller mode.

I've found them to be pretty nice to use so far (and zapping someone with a phaser that you're actually aiming at them feels fantastic), but could definitely use community recommendations for sane gyro defaults for the .cfg file!
 
  • Like
Reactions: bruteX

thelement

Member
Newcomer
Joined
May 10, 2016
Messages
13
Trophies
0
Age
32
XP
71
Country
United States
Any chance of this adding to hb store or tinfoil? Not wanting to have to pop the sd in and out every update. Thanks for the port btw very cool
 
  • Like
Reactions: faithvoid

faithvoid

Active Member
OP
Newcomer
Joined
May 18, 2020
Messages
29
Trophies
0
Location
Tkaronto
Website
accela.design
XP
162
Country
Canada
Any chance of this adding to hb store or tinfoil? Not wanting to have to pop the sd in and out every update. Thanks for the port btw very cool
It's on the HB Store at the moment! Also, an easier way to apply updates instead of popping out your SD card would be using an FTP client such as sys-ftpd (that's how I do it when I'm debugging builds). I don't know how to nor really care to bring it over to Tinfoil though since I'm staunchly against Blawar and any software he's developed, sorry.
 
General chit-chat
Help Users
  • No one is chatting at the moment.
    KennieDaMeanie @ KennieDaMeanie: https://youtube.com/shorts/52YAkk71E90?feature=share