Skip to content

Instantly share code, notes, and snippets.

@mrintrepide
Last active April 14, 2024 09:21
Show Gist options
  • Star 8 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save mrintrepide/6bf1bf5cc087928009545d4d28c4af08 to your computer and use it in GitHub Desktop.
Save mrintrepide/6bf1bf5cc087928009545d4d28c4af08 to your computer and use it in GitHub Desktop.
Wayland Native Games Compatibility List
Game Wayland Engine Info
Aragami no Unity SDL2: crash
Baba Is You no Multimedia Fusion 2 SDL2: crash
Bastion yes* FNA-XNA SDL2 preload mouse KO, xbox pad OK
BattleBlock Theater® no - SDL2: crash
Besiege no Unity SDL2 : no effect
BioShock Infinite yes* Unreal Engine 3 SDL2 preload
BIT.TRIP Presents... Runner2: Future Legend of Rhythm Alien no - SDL2: crash
Black Mesa yes* Source SDL2 preload
Borderlands 2 no Unreal Engine 3 SDL2: error
Celeste yes* FNA-XNA SDL2 preload
Chivalry: Medieval Warfare yes* Unreal Engine 3 SDL2 preload mouse KO
Cities: Skylines no Unity launcher fail to start game
Counter-Strike: Global Offensive yes* Source SDL2 preload
Crusader Kings II no Clausewitz Engine SDL2: crash
Day of Infamy yes* Source SDL2 preload
Dead Cells no - SDL2: crash
Deus Ex: Mankind Divided no Dawn Engine SDL2: no visible window
DiRT Rally no Ego Engine SDL2: no visible window
Distance no - SDL2 : no effect
Dreamfall Chapters no Unity SDL2 : no effect
Euro Truck Simulator 2 no Prism3D SDL2 : no effect
Europa Universalis IV no Clausewitz Engine SDL2: crash
EVERSPACE™ no Unreal Engine 4 SDL2: crash
Factorio no - SDL2 : no effect
fault - milestone one yes* Ren'Py SDL2 preload
FEZ yes* FNA-XNA SDL2 preload
From the Depths no - SDL2: no visible window
FTL: Faster Than Light no - SDL2 : no effect
Game Dev Tycoon no NW.js SDL2 : no effect
Garry's Mod yes* Source SDL2 preload
Gear Up no - SDL2 : no effect
Guns of Icarus Online no Unity SDL2 : no effect
Hearts of Iron IV no Clausewitz Engine launcher fail to start game
HITMAN™ no - SDL2: no visible window
Hollow Knight no Unity SDL2: no visible window
Iconoclasts no Construct 3 SDL2 : no effect
Indivisible yes* - SDL2 preload
Insurgency yes* Source SDL2 preload
ISLANDERS no Unity SDL2: crash
Kerbal Space Program no Unity SDL2: crash
Left 4 Dead 2 yes* Source SDL2 preload
Life is Strange - Episode 1 no Unreal Engine 3 SDL2: crash
Life is Strange 2 yes* Unreal Engine 4 SDL2 preload
Life is Strange: Before the Storm no Unity SDL2: no visible window
Mad Max no Apex Engine SDL2: no visible window
Metro 2033 : Redux no 4A Engine SDL2 : OpenGL 4.0 or later has not been found
Metro Last Light : Redux no 4A Engine SDL2 : OpenGL 4.0 or later has not been found
Minecraft no LWJGL LWJGL crash
Mini Metro no Unity SDL2: crash
Momodora: Reverie Under The Moonlight no GameMaker Studio SDL2 : no effect
Northgard no - SDL2: crash
PAYDAY 2 no Diesel Engine SDL2: crash
Portal no Source SDL2: logo and crash
Portal 2 yes* Source SDL2 preload
Project Zomboid LWJGL XWayland: compatibility mode
Robocraft no Unity SDL2: no visible window
Rocket League® yes* Unreal Engine 3 SDL2 preload Native RL deprecated, for online game need Proton/RocketLeague
Saints Row IV yes* - SDL2 preload
Saints Row: The Third yes* - SDL2 preload
Seers Isle no - XWayland crash
Shadow of the Tomb Raider yes* - SDL2 preload
Shan Gui (山桂) no - XWayland crash
Sid Meier's Civilization® V no Gamebryo SDL2: crash
Snow Light no - SDL2: logo and crash
Sound of Drop - fall into poison - yes* - SDL2 preload
Star Conflict no Hammer Engine SDL2: crash
Stellaris no Clausewitz Engine SDL2: crash
Terraria yes* FNA-XNA SDL2 preload mouse KO
The Coma: Recut no - SDL2: crash
The Witcher 2: Assassins of Kings Enhanced Edition yes* REDengine SDL2 preload need mouse border calibration
Tomb Raider no - SDL2: no visible window
Transistor no - SDL2: logo and crash
Unturned no Unity SDL2: crash
VA-11 Hall-A: Cyberpunk Bartender Action no GameMaker Studio SDL2 : no effect
War Thunder no - SDL2 : no effect
We. The Revolution no - SDL2: no visible window
Whispering Willows no Unity SDL2: crash
XCOM® 2 no Unreal Engine 3 SDL2: crash
@hch12907
Copy link

hch12907 commented Jul 23, 2022

For games with Clausewitz Engine, it is possible to run them in Wayland with the following launch options:

SDL_DYNAMIC_API=/usr/lib64/libSDL2-2.0.so SDL_VIDEODRIVER=wayland %command%

Tested on Arch Linux. You need to install sdl2 package before doing this.

@IPlayZed
Copy link

What does no effect mean?

@mrintrepide
Copy link
Author

What does no effect mean?

Game start but with XWayland

@IPlayZed
Copy link

So which one is supposed to be the "works on Wayland"?

@hch12907
Copy link

hch12907 commented Oct 18, 2022

The games that are marked with yes* can work on Wayland natively, but they require some tinkering with the environment variables. I suppose that when a game is marked yes (without the asterisk) that means they can run on Wayland natively without any configuration. Those that are marked with no require XWayland to run.

@IPlayZed
Copy link

The games that are marked with yes* can work on Wayland natively, but they require some tinkering with the environment variables. I suppose that when a game is marked yes (without the asterisk) that means they can run on Wayland natively without any configuration. Those that are marked with no require XWayland to run.

Well, there are only yes* titles...
By tinkering, do you mean setting the SDL variable to Wayland?

@hch12907
Copy link

hch12907 commented Oct 30, 2022

By tinkering, do you mean setting the SDL variable to Wayland?

Yes, but it also includes setting other variables such as SDL_DYNAMIC_API or LD_PRELOAD to the appropriate values (if needed).

@IPlayZed
Copy link

IPlayZed commented Oct 30, 2022

By tinkering, do you mean setting the SDL variable to Wayland?

Yes, but it also includes setting other variables such as SDL_DYNAMIC_API or LD_PRELOAD to the appropriate values (if needed).

How do you know which variables should be set and their appropriate values?

@hch12907
Copy link

How do you know which variables should be set and their appropriate values?

So far it has been trial-and-error. If setting SDL_VIDEODRIVER crashes the game or has no effect, I try SDL_DYNAMIC_API (see my first comment on this). If that still doesn't work, I consider that the game is not going to work with Wayland.

@IPlayZed
Copy link

It would be great if someone had some experience through trial and error would comment it here and it could be added as an additional column, so people reading this know exactly what parameters to you when possible.

@yuckdevchan
Copy link

yuckdevchan commented Jan 1, 2023

Do you know the env variable needed for Garry's Mod. I tried putting the variables you mentioned like this: SDL_VIDEODRIVER=wayland for example, but it doesn't work, the game has no menu options and break my mouse cursor for my entire desktop. I'm using sway. @hch12907

@hch12907
Copy link

hch12907 commented Jan 3, 2023

Does Gmod use SDL2?

@yuckdevchan
Copy link

Does Gmod use SDL2?

I am fairly sure it does use SDL2.

@Vixea
Copy link

Vixea commented Feb 26, 2023

https://www.protondb.com/app/1088090
I suggest adding this game as far as I can tell answer is yes*, Unreal Engine 4, SDL2 Environment var(SDL_VIDEODRIVER=wayland)
and in the future it will use UE5

@yuckdevchan
Copy link

https://www.protondb.com/app/1088090 I suggest adding this game as far as I can tell answer is yes*, Unreal Engine 4, SDL2 Environment var(SDL_VIDEODRIVER=wayland) and in the future it will use UE5

Thanks

@NoXPhasma
Copy link

Factorio added Wayland support with Version 1.1.77.

Added support for Wayland on Linux. To enable it, set SDL_VIDEODRIVER=wayland in your environment. (thanks to raiguard)

@hch12907
Copy link

Crusader Kings 2 runs on Wayland using the launch options:

SDL_DYNAMIC_API=/usr/lib64/libSDL2-2.0.so SDL_VIDEODRIVER=wayland %command%

@Vixea
Copy link

Vixea commented Apr 1, 2023

Path Of Titans: Also works with using SDL_VIDEODRIVER=wayland(Native)
(Crashes on entering a server or entering singleplayer

@spazziale
Copy link

spazziale commented Apr 22, 2023

VirtuaVerse run (and works) on wayland with SDL_DYNAMIC_API and SDL_VIDEODRIVER=wayland.
I have updated some info and added a workaround for flatpak launchers:
https://github.com/marc0x1/Wayland-Native-Games-Compatibility-List
Feel free to check it and fork it

@tx00100xt
Copy link

Serious Sam Classic The First Encounter
Serious Sam Classic The Second Encounter
https://github.com/tx00100xt/SeriousSamClassic-VK
Run on Wayland natively without any configuration. (Arch linux/Gentoo linux. I haven't tested it on other distributions.)

@AngelBePro
Copy link

Don't know why, but Unturned runs perfectly fine on wayland natievly using SDL_VIDEODRIVER=wayland %command%. Update the list.

@tiziodcaio
Copy link

Portal works. Rimworld works

@hch12907
Copy link

Factorio is now Wayland native, making it the first game in this list to be yes without an asterisk

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment