Playing Dead Cells on OpenBSD using IndieRunner

on 2023-01-08

People do not always realize that they can play recent games on OpenBSD (see for more information). @thfr (the person behind playonbsd) is working on a new tool to make thing even easier. This post is about me using this tool to play Dead Cells.

I wanted to play Dead Cells but I had lost my notes about the things to remove in the unzipped game before being able to play it. The advantage of IndieRunner (the name of the tool mentionned before) is that I (and you) don't have to remember any of this anymore!

In this post, I use the Dead Cells version provided by Gog and I have no idea if it works the same with the Steam version (or others). You first need to download the Linux version from the Gog website. You should obtain a file with a name similar to It may seems strange but this file is to be unzipped not executed.

I have decided to put my games on ~/.local/games and to create folders for each engine. So, in ~/.local/games/hashlink:

$ unzip ~/Downloads/ -d DeadCells/
Archive:  /home/hukadan/Downloads/
warning [/home/hukadan/Downloads/]:  820810 extra bytes at beginning or within zipfile
  (attempting to process anyway)
   creating: DeadCells/data/
   creating: DeadCells/data/noarch/
   creating: DeadCells/data/noarch/support/
  inflating: DeadCells/data/noarch/support/  
  inflating: DeadCells/data/noarch/support/gog_com.shlib  
  inflating: DeadCells/data/noarch/support/icon.png  
  inflating: DeadCells/data/noarch/support/  
   creating: DeadCells/data/noarch/support/xdg-utils/
  inflating: DeadCells/data/noarch/support/xdg-utils/xdg-open  
  inflating: DeadCells/data/noarch/support/xdg-utils/xdg-desktop-icon  
  inflating: DeadCells/data/noarch/support/xdg-utils/xdg-desktop-menu  
  inflating: DeadCells/data/noarch/support/  
   creating: DeadCells/data/noarch/support/yad/
  inflating: DeadCells/data/noarch/support/yad/  
   creating: DeadCells/data/noarch/support/yad/64/
  inflating: DeadCells/data/noarch/support/yad/64/yad  
   creating: DeadCells/data/noarch/support/yad/32/
  inflating: DeadCells/data/noarch/support/yad/32/yad  
  inflating: DeadCells/data/noarch/support/support_notice.txt  
   creating: DeadCells/data/noarch/game/
<-- skip -->
   creating: DeadCells/scripts/
  inflating: DeadCells/scripts/localization.lua  
  inflating: DeadCells/scripts/config.lua  
  inflating: DeadCells/scripts/app_localization.lua  
  inflating: DeadCells/scripts/mojosetup_init.lua  
  inflating: DeadCells/scripts/mojosetup_mainline.lua 

Now that the game has been extracted, you need to grab the IndieRunner tool which is available here. You have to clone the project and install the dependencies (the perl dependencies and hashlink for this game -- see README for more information). Now, you only have to tell IndieRunner to start the game (you can use the -d option to dryrun it):

$ script/ ~/.local/games/hashlink/DeadCells/data/noarch/game/deadcells
Launching game: Dead Cells
env LD_LIBRARY_PATH=/usr/local/lib/ hl hlboot.dat

That's it! I have to try IndieRunner on other games but it has been tested on many games already.