Posted on Leave a comment

Resources for Linux Game Developers

Hello tuxedo giants,

With the help of Raven67854 (co-host of the Offtopical Podcast and fellow gamedev) I compiled a list of resources for Linux Game Developers. It covers topics such as Streamers and Youtubers, using Unity, Services (people porting or offering porting services) and more. I’m hoping that with this resource list I can aid other game devs that are bringing their games to Linux OR give a bit more of a nudge to those who are on the fence about doing it! It’s not a complete, exhaustive list, but it should help getting you started on the journey! We need more native games on the platform, now more than ever!

Unity for Linux Developers

I published an article on this blog a few months ago about using Unity on Linux in 2019 and I was quite rough with it. For my last two projects, Farm Life and Space Mercs, I’ve been using Unity exclusively – the 2018 edition and it’s been wonderful. Marc (mdiluz) reached out to me after the article and pointed out some problems with my approach towards Unity’s “Stable” builds and the fact that the one I should use is the “experimental” 2018 version and let me say, it’s a huge difference. I will rebute the previous article soon enough but until then here’s where to get the latest Unity Hub version together with my overview on the situation!

  • Download Unit Hub 1.6.0 for Linux from here: https://forum.unity.com/threads/unity-hub-v-1-6-0-is-now-available.640792/
  • Install the 2018.4.0f1 official release version
  • 2019.1.2f1 seems to have problems with built-in packages like TextMesh Pro and the LWRP. All the errors you get on start require you to remove all the packages installed by default. I’m looking to upgrade my projects from 2018 to 2019 and I’ll update this bullet list with an article on what I did soon!

Unity 2018 is mostly stable for me with little to no crashes and really decent performance, at least compared to the 2017 version. I’ve used it to port Farm Life to linux and exclusively to work on Space Mercs with little to no problems. There are a few issues tho’, like trying to close Unity windows which requires a lot of fiddling with the mouse. But overall the performance is almost on par with the Windows counterpart. Note one thing: It does not ship with MonoDevelop or any other text editor. I recommend doing the following:

  • Download Visual Studio Code from here: https://code.visualstudio.com/docs/setup/linux
    • They have .deb, .rpm, snap packages and even a repo to use!
  • Install the .NET Core SDK on your distribution based on the article here: https://dotnet.microsoft.com/download/linux-package-manager/ubuntu18-10/sdk-current
    • There are guides for Red Hat Enterprise Linux, Ubuntu 18.10 to 14.04 (19.04 is not covered yet and there are a few problems with getting it to work on 19.04 due to missing packages – to be fixed soon), Debian 9, Fedora 27 and 28, CentOS, OpenSUse and SLES! Should cover most of your needs!
  • Open up the Unity editor and go into Edit -> Preferences -> External Tools tab
    • From External Script Editor click the drop down menu and select browse. Navigate to your the binary for Visual Studio Code and select it
      • if you don’t know where the binary for Visual Studio Code is located, open up a terminal and do: which code
      • normally it should be under /usr/bin/code
    • Create a new script inside Unity’s Project Browser and double click on it. VSCode should pop-up and work properly!

Unity seems to have really picked-up the pace with development and with the 2019 edition reaching preview status Linux is really close to becoming a first class citizen. I can, finally, wholeheartedly recommend it!

Porting your games to Linux

Linux needs more native games! I love Proton and what Valve are doing with it but using Proton doesn’t guarantee full support and games working on it at this point can break in the future with updates and due to middleware support (see the EAC scandal). I’ll say it, Proton is amazing, but native support is better! Depending on the technology your game is based on, porting to Linux can be as simple as outputting a build for it with the click of a button (Unity) to just compiling it on Linux directly. In other cases you really need to dive deep into the code and change quite a few things. Luckily, there are many solutions and services to aid you here – including hiring someone who specializes on that! We’ll start with this.

At this point in time I know of a few developers who specialize in this and, with my interactions with them, can recommend them for this task:

  • Ethan Lee
    • Website: http://www.flibitijibibo.com
    • References: Super Hexagon, Capsized, Rogue Legacy! Active developer on FNA and Proton!
  • Timothee Besset
    • Website: https://about.me/TimotheeBesset
    • Refferences: RocketLeague, Quake Live – mostly unreal engine from what I gathered.

As for known studios, there are quite a few you could reach out to! There’s Aspyr Media (Civilization VI, Start Wars Knights of the Old Republic, Geometry Wars, Broderlands 2), Feral Interactive (DiRT 4, Rise of the Tomb Raider, Hitman, Deus Ex), Abstraction Games ( Danganronpa ), RuneSoft (Ankh).

Twitter user @hardpenguin13 maintains a Github repo with a more comprehensive list of Studios and Developers porting games to Linux!

For resources, here’s a compiled list of articles and videos that can help you get started!

  • Building for Linux the smart way [Article – Leszek Godlewski]
  • Game Development with SDL2 [Video – Ryan C. Gordon, Slides ]
  • Getting Started with Linux Game Development [Video, Ryan C. Gordon, Slides]
  • Porting to Linux at Linux Conf Australia [Video – Cheeseness, Slides]
  • Linux/SteamOS Game Development [Video – Ethan Lee, Slides]
  • Cheeseness talking with Ethan [Article – interview style! Good resources and points of view on technology to use]

List of Linux Gamecasters/YouTubers

First thing’s first, the reason this list was compiled. Besides, the wonderful linux news website, GamingOnLinux I did not know other places or people (Influencers. let’s call them that) with whom to speak to put more eyeballs on my latest project. As such I reached out to Raven67854 to see if he can aid me. And he did, so be sure to thank him dearly on twitter. This is a list of Linux streamers and youtubers that can put some eyeballs on your game after you brought it to Linux!

JakeJw93 
YouTube: https://www.youtube.com/user/Jakejw93
Twitter: https://twitter.com/jakejw93

Xpander69
YouTube: https://www.youtube.com/user/Xpander666
Twitter: https://twitter.com/Xpander69
Mastadon: https://mastodon.social/@xpander69

Snowdreike
YouTube: https://www.youtube.com/user/snowdreike
Twitter: https://twitter.com/snowdreike

HexDSL
YouTube: https://www.youtube.com/user/hexdsl/
Mastadon: https://linuxrocks.online/@HexDSL

Eegee
YouTube: https://www.youtube.com/user/EtherealGaming1
Twitter: https://twitter.com/egee_irl

Penguin Recordings
YouTube: https://www.youtube.com/user/PenguinRecordings
Twitter: https://twitter.com/Sabunator

GamingTux
YouTube: https://www.youtube.com/user/GTuxTV
Twitter: https://twitter.com/gtuxtv

Holarse
YouTube: https://www.youtube.com/user/holarse
Twitter: https://twitter.com/holarse

Gotbletu
YouTube: https://www.youtube.com/user/gotbletu/

Linux4UnMe
YouTube: https://www.youtube.com/user/Linux4UnMe/

sneekylinux
YouTube: https://www.youtube.com/user/sneekylinux
Twitter: https://twitter.com/sneekylinux

quidsup
YouTube: https://www.youtube.com/user/quidsup
Twitter: https://twitter.com/quidsup

Ghost67Linux
YouTube: https://www.youtube.com/channel/UCglkWuyZDppWD2BVsyI4r3A

ChrisTitusTech
YouTube: https://www.youtube.com/user/homergfunk
Twitter: https://twitter.com/christitustech

SwitchedToLinux
YouTube: https://www.youtube.com/channel/UCoryWpk4QVYKFCJul9KBdyw
Twitter: https://twitter.com/switchedtolinux

GasGregor
YouTube: https://www.youtube.com/user/DasGregor
Twitter: https://twitter.com/DasGregor

JoeCollins
YouTube: https://www.youtube.com/user/BadEditPro
Website: https://www.ezeelinux.com/

DistroTube
YouTube: https://www.youtube.com/channel/UCVls1GmFKf6WlTraIb_IaJg
Mastadon: https://mastodon.technology/@distrotube

Bryan Lunduke
YouTube: https://www.youtube.com/user/BryanLunduke
Website: http://www.lunduke.com/
Twitter: https://twitter.com/BryanLunduke
Mastadon: https://social.librem.one/@lunduke

TheLinuxGamer
YouTube: https://www.youtube.com/user/tuxreviews
Twitter: https://twitter.com/thelinuxgamer
Mastadon: https://social.librem.one/@gbryant

GamingOnLinux
YouTube: https://www.youtube.com/user/GamingOnLinuxcom
Twitter: https://twitter.com/gamingonlinux
Mastadon: https://mastodon.social/@gamingonlinux
Website: https://www.gamingonlinux.com/

Level1Tech
YouTube: https://www.youtube.com/user/teksyndicate
Twitter: https://twitter.com/Level1Techs
Website: https://www.level1techs.com/

The Linux Experiment
YouTube: https://www.youtube.com/channel/UC5UAwBUum7CPN5buc-_N1Fw
Twitter: https://twitter.com/thelinuxexp

Linux4Poets
YouTube: https://www.youtube.com/channel/UChAZdofPrVJ4i2aXbLm_V3Q

KyLinux Cast
YouTube: https://www.youtube.com/channel/UC30WrT9v3qc4UCmDtIyH3ww

InfinitelyGalactic
YouTube: https://www.youtube.com/user/InfinitelyGalactic
Twitter: https://twitter.com/ingalactic

DwangoAC
YouTube: https://www.youtube.com/user/dwangoAC
Twitter: https://twitter.com/MrTASBot

ChrisWereDigital
YouTube: https://www.youtube.com/channel/UCAPR27YUyxmgwm3Wc2WSHLw
Mastadon: https://linuxrocks.online/@ChrisWere

Destination Linux
YouTube: https://www.youtube.com/channel/UCWJUSpXVHTaHErtGWC5qPlQ
Website: https://destinationlinux.org/

Linux Gamecast
YouTube: https://www.youtube.com/user/linuxgamecast
Twitter: https://twitter.com/VennStone
Website: https://linuxgamecast.com/

We opted to include public means of contact in the form of twitter/mastadon or their website’s contact form instead of providing a list of e-mails that can be used to spam them.

I hope this list is going to help you get started with bringing more games to Linux! Like I said in the begining – we can never have too many native games! As for me, I hope you are all aware of my Linux 1st Initiative and methodology behind my games. You can help support this initiative by becoming a patreon subscriber, and get some amazing Linux games in the process!

Good luck Giants!