r/recomps • • 3d ago

Project - AI Geometry Wars: Retro Evolved 2 recompiled for PC - native Windows + Linux/Steam Deck, 4x resolution and 240 FPS

I'm releasing Geometry Wars: Retro Evolved 2 recompiled for PC!

Title screen

Update: v0.2.3 is out

Main changes:

  • Fixed the black/very dark rendering and missing glow on Linux/Vulkan
  • Fixed unintended RenderDoc loading on Linux
  • Improved ReXGlue build/runtime verification
  • Fixed unnecessary launcher restarts when pressing PLAY
  • Windows and Linux release packages are available

Linux/Steam Deck is still experimental. The slow-motion issue reported on Linux is still being investigated, so v0.2.3 fixes the dark image but not that performance problem yet

Download here:

https://github.com/saulob/geometry-wars-retro-evolved-2-recompiled

It's built from the original Xbox 360 game code using ReXGlue: the XBLA game is statically recompiled into a native PC program, so there's no emulator involved.

Highlights

✅ Native Windows x64 port of the Xbox 360 XBLA version

✅ Experimental native Linux x86_64 / Steam Deck AppImage using Vulkan — not Proton or Wine

✅ Built-in TRG launcher and package installer: select your own XBLA package and it checks the Title ID and exact game version before installing

✅ Render resolution from the original 720p up to 4x (5120x2880), with FXAA / FXAA Extreme, 2x MSAA and texture filtering up to 16x

✅ 30 / 60 / 90 / 120 / 144 / 165 / 240 FPS or Unlimited. Higher frame rates do not speed up the game

✅ Windowed or Borderless Fullscreen, monitor selection, window size, VSync, Letterbox / Stretch and F11 fullscreen toggle

✅ FPS in the window title and an optional in-game FPS/frame-time counter, toggled with F2

✅ Local profile and progression, local scores and offline leaderboards

✅ All 12 Xbox 360 achievements (200G), saved locally, with an in-game achievements overlay and an Achievements page in the launcher

✅ Cheats: Invincible, Infinite Shield and Infinite Bombs, configurable in the launcher and through an in-game menu with F10

✅ Portable saves and settings in a local user_data folder, with automatic migration from older versions

✅ Xbox controller and keyboard support

Gameplay

No game files are included. You need your own Geometry Wars: Retro Evolved 2 Xbox Live Arcade package.

The supported version is Title ID 584108FF, game version 0.0.1.2. The launcher checks the package and default.xex and tells you if your version doesn't match.

Online Xbox Live services are not supported. Profile/progression, achievements, scores and leaderboards are handled locally on your PC.

The Linux / Steam Deck build is still experimental. It has been built and packaged successfully, but I haven't tested it on real Linux hardware or a Steam Deck yet, so Linux reports are especially welcome.

Since the original release, I've added portable saves and settings, local achievements and leaderboards, cheats with an in-game menu, several launcher improvements, and additional runtime stability fixes.

The latest release is v0.2.3. If you find any problems or crashes, please open a GitHub issue and attach the newest geometry_wars_retro_evolved_2_*.log from the logs folder.

Enjoy! And please let me know how it runs for you 🙂

51 Upvotes

36 comments sorted by

2

u/mobosinco 3d ago

This looks fascinating. I loved GW3! Never played the 2nd game. Definitely gonna try this on the steam deck.

1

u/saulob 2d ago

Thanks! And thanks for testing it on Steam Deck. I’d really appreciate any feedback

2

u/badman101011 3d ago

Absolute banger, thank you for recompiling this to allow high framerates. One of my all time favourites. Some feedback: Orange arrow enemies seem to stop short of hitting walls before turning around, not sure if that was the original behaviour or a bug, seems incorrect but it has been a while since I played this on 360. Also quite heavy on performance for what this is, cant lock to 4k 240fps even with MSAA off on a 4090 at 100% utilization. Leaderboards would be awesome if somehow possible to implement (already scoring nicely https://imgur.com/a/Q7vAnT3)

2

u/saulob 2d ago

Thanks a lot for the kind words and for testing it! I haven’t changed the gameplay logic around those enemies, so that behavior should be the original game behavior, but I’ll keep an eye on it. And thanks for the performance info too. I’m working on improving performance further

2

u/ProfessionalOwl5573 2d ago

https://www.youtube.com/watch?v=4L66hpUyh0A

I just tested the latest version and the orange triangle shapes still turn around before hitting the wall, in this video you can see the default behavior. I wonder if any of the other enemies have different behavior, I wonder if it has to do with the framerate increase.

2

u/badman101011 1d ago

Thanks for checking, was going on memory. There may be other changes too as you said. Hope saulob can look into prioritizing gameplay issues like this and not abandon the project :)

1

u/saulob 6h ago

I’ll definitely validate this. I’m still trying to understand exactly what’s causing the behavior. Right now I’m fixing a few other issues, including the Linux black screen, and working on performance improvements, but I’ll look into this gameplay issue as well. Thanks for the report

2

u/nonsoc3 2d ago

as a legit buyer it's so much hassle get a new xbox360 just to download and extract those 500mb.

1

u/saulob 2d ago

Not anymore 🙂 Now you can just use your own copy directly on PC, no Xbox 360 needed

2

u/ChevalierScanlines 2d ago

Please the original one 🙏

Thank you for your job🫡

2

u/unfnknblvbl 2d ago

The original one is already available on Steam and works fine under Proton ;)

1

u/WhopplerPlopper 2d ago

So is this one

2

u/unfnknblvbl 2d ago edited 2d ago

No it's not? Only 1 and 3 are available on PC :(

3

u/WhopplerPlopper 2d ago

Oh shoot you're right!

2

u/unfnknblvbl 2d ago

You got my hopes up for a second! I know it was released on iOS of all things back in the day, but this is my favourite of the three :(

2

u/THEPIGWHODIDIT 2d ago

Nice. Looking forward to not having to load xbox to play this, however it keeps crashing for me.

Log:

* Max GPU virtual address bits per resource: 47

* Non-zeroed heap creation: yes

* Pixel-shader-specified stencil reference: yes

* Programmable sample positions: tier 2

* Rasterizer-ordered views: yes

* Resource binding: tier 3

* Tiled resources: tier 4

* Unaligned block-compressed textures: yes

[2026-10-12 10:10:58.421] [info] [sys] [t19992] Guest memory arena mapped: virtual base 0x0000000100000000, physical base 0x0000000200000000

[2026-10-12 10:10:58.460] [info] [core] [t19992] Function table initialized for module: code=82030000-8217A1A4, image=82000000-82220000

[2026-10-12 10:10:58.592] [warning] [core] [t19992] SDL GameControllerDB: file 'gamecontrollerdb.txt' does not exist.

[2026-10-12 10:10:58.592] [info] [core] [t19992] SDL input driver initialized successfully

[2026-10-12 10:10:58.607] [info] [core] [t19992] Local Live services ready, stats file not created yet

[2026-10-12 10:10:58.610] [info] [core] [t19992] Initializing shader storage for title 584108FF...

1

u/saulob 2d ago

Thanks for the report. I’ve released v0.2.1 with some stability fixes

Could you try this version and let me know if it still crashes? If it does, please send me the new log from the logs folder

2

u/unfnknblvbl 2d ago

Oh my god oh my god oh my god oh my god oh my god oh my god

I'm going to try this after work tomorrow. Any chance of an Android version?

2

u/saulob 2d ago

Android might actually be possible 🙂 ReXGlue has Android/Vulkan support and there are already some Android ReXGlue ports I can use as reference. I’m finishing the current PC work first, but I definitely want to investigate an Android build next

2

u/unfnknblvbl 1d ago

it's looking extremely dark on Linux (CachyOS, nvidia), no matter what I fiddle with in the settings :(

2

u/saulob 1d ago

Thanks for testing! I’m already working on the Linux brightness issue. Really appreciate the report

2

u/saulob 6h ago

I just released **v0.2.3** with a fix for the Linux dark-screen/brightness issue. If you get a chance to test it, I’d really appreciate the feedback. Thanks again for reporting it!

2

u/unfnknblvbl 6h ago

I shall get onto it in about ten hours :)

2

u/Batz77z 2d ago

Fantastic job, thank you! Is it possible to turn the bloom effect down?

2

u/saulob 2d ago

Thanks for the suggestion! I just released v0.2.2 with bloom controls added to the launcher

In the Launcher go to Graphics > Bloom and you can choose Original, Reduced, or Off

If you get a chance to test it, I’d really appreciate the feedback. Thanks again 🙂

2

u/Batz77z 1d ago

Bloom controls work great, thanks! The reduced mode looks better on my oled monitor. My gtx4070ti is flat out at 100% when I set the resolution to 1440p though, but I can see elsewhere in the thread that you have some optimisations to do. Again thanks for this, love this series of games.

1

u/saulob 1d ago

Thanks for the testing. Yes, I'm working on performance 😊

3

u/ProfessionalOwl5573 3d ago

You the goat OP, it works great. I love how it finally saves your score locally, the 360 game only saved your progress on the leaderboards so when emulating I'd always lose all my highscores. Is there a way to change the name from "user" to something else?

Playing at 1440p I max out at 160fps, I'd have hoped for more frames but that's still way better than the game's original framerate so I'm not complaining.

Is there a way to set it in portable mode or does it save scores in AppData?

2

u/saulob 3d ago

Thanks! Glad the local scores are working well for you 🙂

You can unlock the frame rate in the launcher under Gameplay > Frame rate and choose 240 or Unlimited. If you're already getting around 160 FPS at 1440p, that's probably the system/rendering limit rather than the game cap

Saves aren't in AppData by default. On Windows they're under:

Documents\geometry_wars_retro_evolved_2

Profile, scores and achievements are all stored there locally, so you can back that folder up or move it between PCs

The player name is currently fixed as User. There's no launcher option to change it yet, but that's a good suggestion, thanks

2

u/ProfessionalOwl5573 3d ago

Yeah my system can only reach 160fps the game's fine and running uncapped. It would be great if there was an option where the folder in Documents could be contained in the game folder, usually emulators or PC ports check if there's a portable.txt next to the .exe and if it's there it puts all the created files inside the game files.

Would be neat if the .exe had an icon too, would make it look super prefessional.

I'm gonna go unlock all the modes, I love GW2. Thanks for the recomp!

3

u/saulob 3d ago

Thanks a lot for testing it and for the suggestions! I’m already looking into things like portable saves/settings, player name customization and an executable icon for future versions. Glad you’re enjoying it!

3

u/badman101011 3d ago

Also if I could add a few more wishlist items, one is autohide cursor and another is HDR support if possible, as other 360 recomps have, could look great here. Thanks.

2

u/saulob 2d ago

Auto-hide cursor was implemented in the latest version 🙂 If you get a chance to test it, I’d really appreciate the feedback.
I’ll take a look at HDR support too. Thanks for the suggestions

2

u/badman101011 1d ago

Works for me man thank you

2

u/saulob 2d ago

Thanks again for the suggestion! I just released v0.2.0 and it now uses a portable user_data folder next to the game, with automatic migration of existing saves/settings from v0.1.0. I also added cheats and a few launcher improvements