Back to the main site

Create Custom Runner

It would be amazing if you allow us to easily create a custom runner within Lutris with a GUI. Here is how I in visioned it which will give lutris more customization.

You will need to set a “Custom executable for the runner”. In the custom executable you can add something like %GameFile% or %Field1% which can be customised in each game using the custom runner.

You can choose the custom runner platform (Windows, Linux, console), and the icons associated with the runner and the runner platform.

You can choose the system options you want in the runner.

1 Like

If this is added, I would not ask anything more from Lutris. This will make any linux power user happy.

1 Like

Rather than an abstract “game file” it’d have to be something like “game-specific cli arguments”, as pretty much anything else would make no sense as a separate runner (it’d be just the same as setting up an external binary as a custom executable for the game, with repeating the whole setup process for every game).
…Actually you’d have to make a pretty strong argument for this if you want it happen as this’ll be a client-only feature (completely unrelated to the main website functionality) and there’s not much you can come up with to make it more useful than setting up custom executable per game.

Essentially all custom runner will be is a Linux runner except you can duplicate these Linux runners and change the runner name, icon, platform, and even add an emulator name to them.

I could add any game to my Lutris library using a Linux runner including wine games, steam games, browser games, or emulator games. But if I did they will all be set to the Linux platform and not properly organised by their platforms and emulator names.

In that case, it’s a matter of collection management rather than platforms. An ability to organize games by means other than the configured runner would be quite useful (although it’d make more sense to make it a generic option rather than tying it to some “custom runners”).
I believe there’s a feature of this kind planned for v0.6.

Does this feature allow you to create new “emulators” and “platforms”?

When you first install Lutris you will get a Linux runner, Wine runner, Steam runner and a Browser runner. You will also get a Linux platform and a Windows platform.

If this new feature allows you to create new platforms and runners were you can choose its name and icon then it will work for me. However if it just a new tagging feature for games, this is not what I am requesting. I would like to be able to create new runners and platforms without having to download a runner.


Isn’t that just the same as setting an external executable as the game binary? Aside from that, what you really seem to seek is a way to separate “native” games from games you run via custom programs. And apparently to make it look fancy or something. Then, isn’t that what you should be requesting?

“Fancy” I guess that what I want?

I would like more customization when it comes to organizing your games. I find many of the runners are good for non-technical people, however I know how to use Linux and how to run things with scripts. And to run anything including wine games steam games, or an emulator it can be done with a bash script. I would like to setup Lutris in a way that will allow me to organize my games without using the predefined runners but to be able to choose each games platform, emulator. For example…

CSGO
Platform: Linux
Runner: Steam

SuperTuxKart
Platform: Linux
Runner: Linux

Tomb Raider: Underworld
Platform: Windows
Runner: Wine

Mario Kart: Double Dash
Platform: Nintendo Gamecube
Runner: Dolphin

Mario Kart 64
Platform: Nintendo 64
Runner: Libretro

Instead of using all of the runners that come with Lutris which will organise the games as such, I would to make my own runners easily which will be a Linux runner except I can set the custom runner platform name, platform icon, runner name and runner icon. More options on building your own Lutris library without using predefined runners were the name and the icon of the platform and runner are unchangeable.

I would say that Lutris (at least until recently) was never really meant for any kind of organizing; the runner filters are likely incidental and more for sake of easier development than managing what you have. So if you want a game to be in a separate category, it’s really better to separate it from “runners”, as each runner is actually a python script/library which is a part of Lutris package. So, rather than tying it to implementation details of the program, it’s really better to just ignore filtering by “runners” option altogether and assign custom category for each game (those without one would be “Native” or something like that).

The ability to override the detected platform has some merit, I suppose. I imagine it would work like so: a drop-down list of platforms in the game config (perhaps with a button/toggle to switch between default & custom, like the identifier field), and a section in Lutris preferences to add/customize these platforms (with ability to change displayed platform labels and icons, IDs being fixed/generated on creation). It’d also be nice to actually see what’s selected right now (currently it’s only visible if you filter by a runner, and only because of action icons).
You can make a feature request for that end, though if you make the described feature less general-purpose you’re really gonna need to justify it for them (as it’s make the feature potentially less useful for other users).

…Actually, come to think of it, there should really be no difference to you what the “platform” of the game is (as you’re gonna run it on your PC either way) once you finish setting it up (it’s either playable or not), so if there’s really something worth organizing games by it would be the genre (and/or gameplay type).

1 Like

I made a post on github

Regarding no differences of the platform. Your are right Lutris will run our game on our linux machines, however the games were not originated for Linux except for games that were made to run on Linux. There are runners that when installed will organized the games added under that runner to the specific platform.

As I said, grouping by runner is incidental and based on a technical detail (“how do I run it”) that has absolutely nothing to do with the game itself. Once the game is installed and working, there’s absolutely no reason to consider it any different from other games installed on the same machine: you click on the shortcut, and it runs, that’s it.