You can sign up to get a daily email of our articles, see the Mailing List page.
We do often include affiliate links to earn us some pennies. See more here.

Steam Play compatibility tool Luxtorpeda moves to Godot Engine for the UI

By - | Views: 18,442

Luxtorpeda is a Steam Play compatibility tool (like Proton), that allows you to run various games on Steam with Native Linux game engines.

What's the point? Well, many games on Steam are old and no longer updated. However, a growing amount have community-build game engines that dramatically upgrade them and Luxtorpeda allows you to just install them directly in Steam. I previously did a guide on how to use it, and while focused on the Steam Deck the same applies to using it on a Linux desktop:

YouTube Thumbnail
YouTube videos require cookies, you must accept their cookies to view. View cookie preferences.
Accept Cookies & Show   Direct Link

From what the developer told us in the GamingOnLinux Discord, here's what's changed in Luxtorpeda version 60:

* Move GUI to Godot, using godot-rust
    * godot-rust allows for the underlying code for downloading, extracting, etc to stay the same in rust, and then allow for fairly simple communication between Godot and rust, using the Godot signal method. The Godot layer handles user input and the UI, and rust handles all the pieces behind the scenes
    * This move makes maintaining the UI easier, with being able to use the many built-in Godot features and the editor
    * Controller and window support, such as DPI, is now handled by Godot, instead of custom code on top of SDL2
    * Instead of opening individual windows for each action (like choices, download progress, etc), one Godot window is used for the full flow until the game has closed, which should make the UI flow better
* Progress is now shown for install and setup steps, to make it clearer to the user what is going on
* [striezel] misc - fix a typo
* [striezel] Update crate dependencies
* [striezel] update actions used in GitHub Actions workflow

The big part of that is moving the UI to Godot, using godot-rust to keep all the logic inside rust. This was mainly to take advantage of Godot's easy to use editor and all the GUI tools available. This should make creating and maintaining UI easier. If you run into any issues with it, please feel free to open a issue about it or talk to me on discord.

For a quick example, with Morrowind in Steam set to use Luxtorpeda, you will see after downloading the UI that allows you to pick what to run it with:

Article taken from GamingOnLinux.com.
17 Likes
About the author -
author picture
I am the owner of GamingOnLinux. After discovering Linux back in the days of Mandrake in 2003, I constantly came back to check on the progress of Linux until Ubuntu appeared on the scene and it helped me to really love it. You can reach me easily by emailing GamingOnLinux directly.
See more from me
8 comments

☆ Promoted Comments
Full Comments
Phlebiac 23 Nov
First thing I noticed was that it quadrupled the size of the download. It's still on the small size, but made me wonder if there's a big Godot runtime statically linked in.
klh 23 Nov
Quoting: PhlebiacFirst thing I noticed was that it quadrupled the size of the download. It's still on the small size, but made me wonder if there's a big Godot runtime statically linked in.

Yet another project thinks it's a good idea to use a game engine as an UI library. What next, a notepad in Unreal?
ssj17vegeta 23 Nov
While I do enjoy seeing Godot being used for more and more projects, one can wonder what the point is for this.
hardpenguin 23 Nov
Not gonna lie, this is cool as heck. Very useful.

Also if you haven't completed Morrowind, do so now!!! OpenMW works like a charm, fully playable to 100% completion!
Thanks for the pinned comment feature, it'll help people not have to drag through comments. Here it's helpful, but in a 5 pages of comment situation, it's needed.

Thanks d10sfan for explaining the reasons too. I had to deal with electron apps and unpolished rust crates, neither experiences were fun.

Also, considering many parts of godot seems to be pretty modular, or at least possible to tear down, it's interesting to see you take this path.

Considering the tweaks and what's not reimplementations of game engines help with, it's really cool to see them brought to the masses out there. I do remember way back in 2005 trying to get some game on linux and failing to understand how the parts were split (ie art versus code) and such, so any helper tool here is godsend.
ssj17vegeta 24 Nov
Good explanation d10sfan, thanks for that. Great to see Godot becoming a solution for things other than games too, it shows its versatility.
d10sfan 4 days ago
Releasing version 61 of this, with the following. This mainly "officially" releases the new godot client, since it seems like it's been running well, along with some minor bug fixes and improvements. The last item was in relation to the binary size of the godot portion, creating my own export template build (uses the same godot code, just with different modules turned off), caused a nice decrease in the size, bringing it to about 9 mb for the archive. It's nice that Godot is modular in that regard.

### 61.0 (2022-11-29)

Everything from Pre-release 60.0 plus

* Add theme for tooltip, to improve readability
* Fixes to github action workflows, for deprecated actions
* Build custom Godot export template, to decrease the size of the resulting build
While you're here, please consider supporting GamingOnLinux on:

Reward Tiers: Patreon. Plain Donations: PayPal.

This ensures all of our main content remains totally free for everyone with no article paywalls. We also don't have tons of adverts, there's also no tracking and we respect your privacy. Just good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
Login / Register

Or login with...
Sign in with Steam Sign in with Twitter Sign in with Google
Social logins require cookies to stay logged in.