Homebrew Homebrew game Half Life 2 (Source Engine) - Switch Port

  • Thread starter Thread starter Nagaa
  • Start date Start date
  • Views Views 990
  • Replies Replies 16
  • Likes Likes 13

Nagaa

Well-Known Member
Member
Joined
Nov 8, 2020
Messages
126
Reaction score
192
Trophies
0
XP
1,265
Country
France
Half Life 2 (nillerusr Source engine) - Nintendo Switch port

This is a wrapper/port of the Android version of the Android Source Engine from nillerusr (v1.16.29 - 1.17.0025).
It loads the original game binary, patches it and runs it.
It's basically as if we emulate a minimalist Android environment in which we natively run the original Android binary as is.

My biggest Switch port so far, episodes 1 and 2 are supported.

The game is fairly CPU intensive, running it with overclock is recommended.

Report any issues you run into.

Credits :
TheOfficialFloW & fgsfds for the vita so-loader
nillerusr for the Android Source engine port this wraps

Available here :
https://github.com/NaGaa95/hl2_nx/

2052061505572600-58053604AA34D390412A97239F58311A.jpg
 
Last edited by Nagaa,
That's the biggest win for me from all those android projects. I'm a big fan of Half Life, never played it on gamepad so it's time to try. Thanks
Post automatically merged:

Also hyperlink is wrong. It leads to layton repo
Post automatically merged:

Also wouldn't be better to give episodes separate folders? Because currently you can't store all 3 games at once.
 
Last edited by masagrator,
DAFUQ? I knew Vita had a source port for Half Life 1, but HL2?

Incredible.
This is made from scratch, not based on an already made vita port

That's the biggest win for me from all those android projects. I'm a big fan of Half Life, never played it on gamepad so it's time to try. Thanks
Post automatically merged:

Also hyperlink is wrong. It leads to layton repo
Post automatically merged:

Also wouldn't be better to give episodes separate folders? Because currently you can't store all 3 games at once.
Fixed the link thanks

Not sure to understand about the episodes folder, it's already in separate folder (episodic/ep2) and you can store the 3 games at once only need a small config.txt edit between boot
 
  • Like
Reactions: linkenski
Not sure to understand about the episodes folder, it's already in separate folder (episodic/ep2) and you can store the 3 games at once only need a small config.txt edit between boot
It's not mentioned in readme so i assumed it works by replacing original data
 
ah, i understand now where my misunderstanding came from. I wasn't aware that with 20 year anniversary update they merged episodes into base game.
 
Last edited by masagrator,
Tried to use "20th Anniversary Update" ep2 / hl2 / episodic / platform data files. The games starts OK, but in-game physical Switch buttons don't respond at all :( except the '+' menu button, only touchscreen works, and visual glitches occurs like these:

test (7).jpg

It's something wrong with my data files, right?
 
Last edited by mathew77,
Tried to use "20th Anniversary Update" ep2 / hl2 / episodic / platform data files. The games starts OK, but in-game physical Switch buttons don't respond at all :( except the '+' menu button, only touchscreen works, and visual glitches occurs like these:

View attachment 578234

It's something wrong with my data files, right?
Need to use Android version files I guess.
 
  • Like
Reactions: mathew77
Tried to use "20th Anniversary Update" ep2 / hl2 / episodic / platform data files. The games starts OK, but in-game physical Switch buttons don't respond at all :( except the '+' menu button, only touchscreen works, and visual glitches occurs like these:

View attachment 578234

It's something wrong with my data files, right?
You need to enable the gamepad in game settings
For the graphical issues, 20th Anniversary Update is not supported you need to get the legacy version
PC Steam build / Android NVIDIA Port can be used
 
  • Like
Reactions: mathew77
Tried to use "20th Anniversary Update" ep2 / hl2 / episodic / platform data files. The games starts OK, but in-game physical Switch buttons don't respond at all :( except the '+' menu button, only touchscreen works, and visual glitches occurs like these:

View attachment 578234

It's something wrong with my data files, right?
Use android port!
 
  • Like
Reactions: mathew77
Half Life 2 (nillerusr Source engine) - Nintendo Switch port

This is a wrapper/port of the Android version of the Android Source Engine from nillerusr (v1.16.29 - 1.17.0025).
It loads the original game binary, patches it and runs it.
It's basically as if we emulate a minimalist Android environment in which we natively run the original Android binary as is.

My biggest Switch port so far, episodes 1 and 2 are supported.

The game is fairly CPU intensive, running it with overclock is recommended.

Report any issues you run into.

Credits :
TheOfficialFloW & fgsfds for the vita so-loader
nillerusr for the Android Source engine port this wraps

Available here :
https://github.com/NaGaa95/hl2_nx/

View attachment 578191
First of all, you’re an absolute legend for doing this! Second - what do I need to do with the source engine apk and where do I need to put it? Can’t really work it out from the GitHub. Cheers in advance and GOOD WORK!!
 
First of all, you’re an absolute legend for doing this! Second - what do I need to do with the source engine apk and where do I need to put it? Can’t really work it out from the GitHub. Cheers in advance and GOOD WORK!!

download source engine .apk, open it with 7z then follow github instructions (in red) :

/switch/hl2_nx/
hl2_nx.nro
lib/ <- all 27 .so files from the APK's lib/arm64-v8a/
assets/extras_dir.vpk <- from the APK's assets/
files/ <- the fonts from the APK's assets/ (dejavusans.ttf,
dejavusans-bold.ttf, DroidSansFallback.ttf,
LiberationMono-Regular.ttf, Itim-Regular.otf)

hl2/ <- from the game data (the big one: hl2_pak, textures, sounds, maps...)
episodic/ <- episode 1 (Optional)
ep2/ <- episode 2 (Optional)
platform/ <- from the game data

27 .so files are in \lib\arm64-v8a\ → decompress to /switch/hl2_nx/lib/
4 .ttf / 1 .otf fonts are in \assets\ → decompress to /switch/hl2_nx/files/

everything else comes from the game(s) apk (HL2/Episod1/Episod2). But same as source engine : open .apk with 7z then go hunt the needed files.
 
Why use the Android version, this can compile without android and run much faster? It uses the same engine as quake and quake2 and some of quake 3 all which run fine on switch without needing the Android version. I'm not complaining I'm just pointing out that this is a slow inneficient way to run this game.
 
Why use the Android version, this can compile without android and run much faster? It uses the same engine as quake and quake2 and some of quake 3 all which run fine on switch without needing the Android version. I'm not complaining I'm just pointing out that this is a slow inneficient way to run this game.
The .so is native ARM code running directly on the Switch CPU, the wrapper just forwards system/GL calls, so it runs at basically native speed
Quake doesn't use the same engine has Half Life 2 at all

The source engine is available here : https://github.com/nillerusr/source-engine
Feel free to port it into a native libnx build :)
 
Why use the Android version, this can compile without android and run much faster? It uses the same engine as quake and quake2 and some of quake 3 all which run fine on switch without needing the Android version. I'm not complaining I'm just pointing out that this is a slow inneficient way to run this game.

You're likely thinking of HL1/Goldsrc which from what I've read a significant rewrite (I've seen 75% thrown around) of the Quake engine.

HL2 itself runs on the Source engine.

All three Quakes also use different engines, referred to as Quake, id tech 2 and id tech 3.
 
  • Like
Reactions: AmeliaFox

Site & Scene News

Popular threads in this forum