Updated January 26, 2018
I want to show you what games are available on OpenBSD or playable on game engines and emulators that run on OpenBSD. Specifics about how to run them are best left to the manuals, FAQs, and other documentation which I try to link to or show where to find them.
OpenBSD is an operating system like Microsoft Windows, MacOS, or Android. The best explanations on what OpenBSD is, what you can do with it, and how does it work come from the OpenBSD FAQ and Wikipedia. If you don't plan on using OpenBSD read the Wikipedia entry and some of the OpenBSD FAQ. If you use or plan to use OpenBSD read the manuals, OpenBSD FAQ, mailing lists, and other documentation.
Many of the links are about old games because most of what OpenBSD can run and emulate are old games. Old can also mean classic, best ever made, and great genres that are no longer commercially produced.
The demos here are about the demoscene, not the limited versions of commercial games.
Many of the game engines require the original game data from commercial games. If you are looking to buy those games your options are limited. The community has put together a list of commercial games with an OpenBSD game engine on Good Old Games which will save you time and money.
These reviews mostly deal with commercial games. AVGN is for entertainment, though he does review several of the consoles OpenBSD can emulate.
OpenBSD has exclusive games? Yes it does, except for ports. The OpenBSD ports system is only used in OpenBSD which is different from some operating systems which share a software repository. The ports repository has OpenBSD specific patches mostly for compatibility, but the games are available for other operating systems.
BSD Games are a collection of terminal games and software toys that can be installed during an install or upgrade of OpenBSD. They existed before OpenBSD and now are significantly different than the originals.
My description of pig spoils the game. Don't read the rest of this section if you want to avoid spoilers. The pig program converts English to Pig Latin which is classified as a language game. The entire manual for it is in Pig Latin which is the point of the game. I translated the manual to English.
"The pig utility reads the standard input and writes it out to standard output in Pig Latin. Useful for generating monthly reports."
The fortune manual lists a tool called strfile that isn't installed by default. It creates a .dat file required by fortune. The file format OpenBSD uses is a line with % between each fortune. Here is an example.
When in Rome, do as the Romans do. % "I returned, and saw under the sun, that the race is not to the swift, nor the battle to the strong, neither yet bread to the wise, nor yet riches to men of understanding, nor yet favour to men of skill; but time and chance happeneth to them all." - Ecclesiastes 9:11, King James Bible % "THIS IS MY PILL. It is round. It is pink. It makes me not care. Watch me take my round, pink pill ...and not care." - The Executive Coloring Book % ...
Wargames lacks a manual or any explanation how it works. It is a simple launcher for other BSD games based on the movie called WarGames. Playing the game spoils the end of the movie.
ddb is the kernel debugger that comes with OpenBSD. It includes a version of hangman similar to the one in BSD Games. This isn't an accessible game unless you can debug the OpenBSD kernel.
Ports is the third-party software repository for OpenBSD. Packages are the binary distribution of ports. Read the documentation to understand how to use both of them. Ports has readmes, extra documentation, website URLs, a software search, and more.
Many of the ports are software toys or not a game at all. I list everything in the games section of ports as I try them no matter if they are a game or not.
There are more games than what I listed. These are the ones I have tried so far. Some of them are among the best games available for OpenBSD.
I wouldn't call any of these games massive. Choria claims to be an MMORPG, but it has a single player mode and I haven't found any servers for it. Crossfire is effectively dead with 0 players nearly every time I checked the server populations.
The ManaPlus client supports Evol Online, The Land of Fire, and The Mana World. The largest one is The Mana World and it has a small dwindling player base. The total online numbers don't show that many of the players are idling in the center of a town.
Ports includes MUD clients, not servers. MUDs are the precursor to MMOs and they could be described as text based MMOs.
The Players who suit MUDs paper and A Rape in Cyberspace are great reads even if you don't play MUDs.
I would need the space of this entire document to explain how terrible browsers such as Firefox and Chromium are. All the browsers in ports are bad choices, but I think Firefox is the least worst.
The Internet Archive has so many games across many systems I thought it deserved its own section under browser games. All the games linked here run in the browser, but can't be downloaded. I found many games ran too slow to play.
Game engines need games, game data, or other files to run. Ports sometimes includes games for them, but usually don't. Some of the programs are game engine recreations, forks, or source ports.
If the game engine needs the original game data from a commercial game it will need the original install disks. A few game engines will accept Good Old Games and Steam game data, but Steam isn't available for OpenBSD. It's possible total conversions would work, but I haven't found any that do.
Blender is quite flexible for a 3D graphics program. You can make models for 3D printing, animated movies, and even games. Load the .blend file in Blender and the render menu becomes a game menu. Selecting the Start Game Engine option should work.
I read the API changes often and isn't backwards compatible. This may be why some of the games I tried didn't work.
While EDuke32 supports more than one game, it isn't doesn't support all Build engine games. None of the games it supports are free, but EDuke32 in ports comes with the shareware version of Duke Nukem 3D. None of the total conversions I tried worked with the shareware version.
Flare is a 2D action RPG engine. It comes with one short game and two more are available as mods. I wasn't able to get either of the mods to work.
I'm sorry if you came to this section looking for games because you wont find any. Hypatia is or was a game engine because development has stopped. I couldn't find any games for it. It comes with an unfinished demo the developer calls a game, but I don't.
I am not sure where to begin. The Doom franchise and all the games based on the engine have so much written about them. Luckily I don't have to say much about OpenBSD and the Doom engine.
Chocolate-Doom runs Doom, Doom II: Hell on Earth, Heretic: Shadow of the Serpent Riders, Hexen: Beyond Heretic, and Strife. PrBoom and PrBoom+ run Doom and Doom II. None of those games are free, but there are several free game data replacements. There are probably tens of thousands of mods known as WADs for Doom and Doom II.
Zauberer and Blasphemer the free data replacements for Hexen and Heretic didn't work for me in Chocolate Doom. Freedoom seems to work with both PrBoom+ and Chocolate Doom, although there was some bugs.
Yamagi Quake II only runs Quake II despite the engine being used for other games. It wants the original game data which isn't free.
Hexen II: Hammer of Thyrion is similar to Yamagi Quake II. It only runs Hexen II and it also wants the original game data which isn't free.
ioquake3 continued development on the original code. It runs Quake III Arena and requires the original game files to work. No free game data exists. The wiki says the demo files partially work, but the developers don't care about the demo.
dhewm 3 is a fork of the id Tech 4 engine and runs Doom 3 and its expansion Doom 3: Resurrection of Evil. There are no free assets available and it only works with the original game files.
GemRB runs Infinity Engine games which are 2D isometric RPGs. It requires the original game data and none of the games are free.
Instead says it is a simple text adventure interpreter, but like Ren'Py the games go beyond what the description says. Unfortunately most of the games are in Russian. I tried the few English games and all of them worked.
Aleph One is based on the original Marathon 2 engine. It runs Marathon, Marathon 2: Durandal, Marathon Infinity (Marathon 3), and 3rd party scenarios. Bungie released the Marathon game data for free years ago.
Ports has the data for the Marathon trilogy and two 3rd party scenarios. The scenario ports are nice enough to include commands to start each one, but it is possible to start Aleph One with the game directory as an argument. While it works I was only able to use software or OpenGL classic rendering. This probably varies from system to system. The few scenarios from outside ports worked, but I didn't extensively test them.
MegaZeux is a game engine similar to ZZT. The DOS version of MegaZeux is limited to text graphics. I read MegaZeux was ported to OpenBSD, but it isn't in ports so use the DOS version in DOSBox.
The controls in MegaZeux are not intuitive. Read the help file MegaZeux offers during the first configuration. If you missed it then view MZX_HELP.FIL in any text editor. It isn't plain text, but it is still readable.
Ren'Py is a visual novel game engine. It comes with two tutorial games for developers. Ren'Py on OpenBSD requires all the game files or source code to be exposed. When downloading games select the Linux version if one is available because it is most likely to have those files available.
Each game can have its own documentation and in game help systems. Ren'Py lacks a manual and most of the online documentation is for game developers. Use these lines for some basic help.
$ renpy -h $ renpy --help
Ren'Py on OpenBSD wont start because of a bug somewhere. This fix was posted on the mailing list.
$ export LD_PRELOAD=/usr/X11R6/lib/libGL.so.17.0
Ren'Py needs the full directory name of a game as an argument to start or it assumes it is in its base directory and will give you an error. Here is an example.
$ renpy /home/user_name/game_directory/
The version of Ren'Py in ports is out of date. It wouldn't run some of the newer games, but I had no problems with older ones. Check the release date of the version in ports then avoid games made after that date.
The quality of the free games runs from absolute garbage to amazing. Commercial games might work if they expose all the game files, but I didn't test any.
Solarus says it is an action RPG engine. All the games are clones of the Super Nintendo Entertainment System game The Legend of Zelda: A Link to the Past. Solarus has no manual or readme and the Solarus Wiki is nearly useless.
There are 3 games by the Solarus team in ports. The community has made 1 game and 1 demo. Solarus said my version was too new to run Tunics and too old to run the demo The Legend of Zelda: Book of Mudora.
The games in ports support a gamepad. To play them use this command.
$ solarus_run game_directory
Press F1 or D then left or right to get an in game help or option screen.
The term game engine implies that you can play many games on it, but that isn't always true. These were designed to play a single game, possibly with its expansion packs and mods.
OpenMW runs The Elder Scrolls III: Morrowind including the expansions The Elder Scrolls III: Tribunal and The Elder Scrolls III: Bloodmoon. It has support for some, but not all mods. There is no free data for it and it requires the original game data from the Microsoft Windows version.
Neither RollerCoaster Tycoon 1 or 2 were built with a game engine, but OpenRCT2 is a game engine recreation. It supports RollerCoaster Tycoon 2 and can use some of the data from the first game. There was several compilations and versions of RollerCoaster Tycoon 2 which I assume also work, but I didn't see any explicit support for them.
Return to the Roots requires not just The Settlers II game data, but specifically the Gold Edition. This is the first time I have seen any game engine require an expansion or a later edition of the game data.
Another game engine that requires the original data. CorsixTH says it can use the Good Old Games version which is surpsing since few or none of the others do. I tested the demo files and it works, but the demo has several limitations even with a game engine recreation.
OpenTTD recreates Transport Tycoon Deluxe and includes a free set of graphics and sound. If you have the original game it can still use those files, but the files are not required.
The specifications and games for RPG Maker 2000 are similar to RPGs on the Super Nintendo Entertainment System while RPG Maker 2003 is similar to the Sony Playstation. The only software available to run them is EasyRPG. At a glance the games seemed to work, but I noticed some font distortion issues in RPG Maker 2000 games.
EasyRPG is a game engine, not a game maker. That means it can only run RPG Maker 2000 and 2003 games. It can't open, design, and compile them.
I listed all interactive fiction engines here because I have never seen a website with interactive fiction game downloads focus on only one engine. There are so few ports it wouldn't make sense to split them.
This section should be called Gargoyle because I think it is the best interactive fiction program in ports. I was surprised that it supports graphics and sound. The only reason to use anything besides Gargoyle is to run Frotz in a terminal.
The Gargoyle website says the developers thought they were making the typography better than the X Windows rendering. The problem is they don't allow hinting. I don't know what fonts look better without hinting, but I haven't seen any on OpenBSD. Maybe on other operating systems it looks better.
The default fonts selected by Gargoyle look worse in Gargoyle than they do outside of it. DejaVu the default font for OpenBSD and many ports programs also looks worse without hinting. I didn't see an option to enable hinting. Maybe they hated it so much they never put it in.
The great thing for players nearly all the games are free other than a few from the 1980s when IF was still sold in stores.
ResidualVM is similar to ScummVM except it focuses on 3D graphic adventure games instead of 2D. It supports few games and none of them are free.
ScummVM runs 2D graphic adventure games that were made for other systems. Ports has the data for the CD versions of Beneath a Steel Sky and Flight of the Amazon Queen. A few more are available for free on the ScummVM website.
ScummVM supports too many game engines to list in the title. Here are just a few of those engines.
The ScummVM compatability list has all the nonfree games it supports listed while mine is only a partial list.
MAME emulates nearly every arcade system made. It also emulates other devices such as slot machines. MAME only needs the ROM files of a game to run. There is no manual so use this line to see the options.
$ sdlmame -h
MAME can start a game from the GUI or on the command line. MAME will not show the game in the GUI if the ZIP file or the directory with the ZIP file's contents has been renamed.
I included links to pictures of the cabinets because arcade games usually have instructions on the cabinet. Seeing the types of controllers, layout, and number of buttons helps to understand how to play the game.
Mednafen emulates many home game consoles and handheld game systems. Some modules require external firmware files. The documentation included with the package is the same as the documentation on Mednafen's webpage. I avoid Mednafen because the configuration is long and complex.
MESS emulates over a thousand systems including home game consoles, handheld game systems, chess machines, calculators, and so much more. Many of the popular and recent systems don't work. I found emulators dedicated to one system are better than MESS, but having one configuration and interface is convenient. MESS needs the firmware of the system it will emulate and almost always the software it will run. Same as MAME there is no manual so use this line to see the options.
$ sdlmess -h
The developers have merged MESS into MAME. Ports is still using an older version from when they were split. I don't know if this will mean the port will disappear in the future.
RetroArch is frontend for libretro cores or plugins. The cores emulate many systems.
The computer systems I listed had operating systems, but it wasn't required to play games. It seems for those that the disk images were enough to start playing.
Atari 1040STf (credit Bill Bertram, copyright CC BY-SA 2.5)
The Atari ST series had firmware and an operating system called TOS. Hatari has everything needed to play games.
Commodore PET 2001 (credit Tomislav Medak and Bill Bertram, copyright CC BY-SA 3.0)
This sections covers the list below, but there were other 8 bit systems by Commodore.
Commodore 64 (credit Evan-Amos, copyright public domain)
I briefly tested VICE and games seem to work with it. Both Frodo and VICE have the classic blue Commodore boot screen with Commodore BASIC.
Commodore Amiga 500 (credit Bill Bertram, copyright CC BY 2.5)
FS-UAE and UAE both emulate many of the Commodore Amiga systems and the firmware called Kickstart. AmigaOS wasn't required to play the games I tried.
UAE is a mess. Everything I seem to do to it causes it to crash. None of the software tests on their website work. I tried all sorts of options with no luck. When it locks and crashes it spews messages constantly and causes havoc with the window manager. It wont even exit properly without using the quit button.
FS-UAE was frustrating to get running the first time even though the package readme and the documentation covers everything. The internal firmware is enabled by setting kickstart_file = internal in the configuration file. Set the floppy_drive_0 = to a floppy image file location. Press F12 once the program is running. That is enough to get started.
Sony MSX HitBit HB-10P (credit Doppelgangland, copyright public domain)
The MSX is a standard and not a specific computer. The four generations of MSX standards are the MSX, MSX2, MSX2+, and MSX Turbo R. I imagine there was problems over the years between implementations of that standard, but I didn't see any problems emulating games.
openMSX supports cassettes, cartridge ROMs, disk files, and so on. It also emulates the firmware and can use a directory as a disk. I have never seen a game or emulator on OpenBSD that uses the menu key until now.
See Sega SG-1000 in Game Console Emulation.
ZX Spectrum 48K (credit Bill Bertram, license CC BY-SA 2.5)
Fuse worked with the games I tried and it didn't require any extra files to run ZX Spectrum games.
There is so much to say about every console. Each one of these systems could fill a book by themselves. I am fairly brief with each section to prevent this from turning into an emulation document. I didn't put specific information and resources about MESS and Mednafen because they are covered in multiple system emulation. I suggest getting a gamepad because it works better than using a keyboard and mouse.
There are several game consoles that don't require firmware, but I haven't found any homebrew games for the following yet.
MESS emulates all of those systems. Once I find homebrew games for any of those systems I will add a section for them.
Atari 2600 (credit Evan-Amos, copyright public domain)
Neither MESS nor Stella require any firmware because whatever the Atari 2600 needs is included with the game.
Atari 2600 Jr (credit Evan-Amos, copyright public domain)
Atari Jaguar with Atari Jaguar CD (credit Evan-Amos, copyright public domain)
Virtual Jaguar is the only Atari Jaguar emulator in ports. I haven't seen any games use the number pad and I hope I don't. I wasn't able to get many of the games and demos to run unless they were in a certain format. None of the Atari Jaguar CD games I tried worked.
Interton Electronic VC 4000 (credit Evan-Amos, copyright CC BY-SA 3.0)
Like many other obscure game consoles there isn't a homebrew scene for the Interton Electronic VC 4000. The good news is one homebrew game exists and that gives me a reason to make this section. I strongly encourage you to try it so you too can say you played Flappy Bird for the Interton Electronic VC 4000 on OpenBSD. Clearly the pinnacle of gaming has been reached.
NEC TurboGrafx-16 (credit Evan-Amos, copyright public domain)
There are few homebrew games for NEC TurboGrafx-16 also known as the NEC PC Engine. I think it's because it wasn't a popular system, it looks difficult to program for, and the media contains whatever BIOS the system needs.
Nintendo 64 (credit Evan-Amos, copyright public domain)
Mupen64Plus is the only working emulator in ports for the Nintendo 64 that emulates the firmware. It includes all the needed plugins to work and has 3D acceleration support in OpenBSD. It only requires a game to run.
Nintendo DS Lite (credit Evan-Amos, copyright public domain)
DeSmuME is the only Nintendo DS emulator in ports and it emulates the DS firmware. It supports using a gamepad, keyboard, and mouse. In OpenBSD a mouse can also be a touchscreen or graphics tablet. This might be useful since the DS used a stylus. I found some of the games nearly impossible to play without a stylus, but when I tried a graphics tablet it wasn't any better than the mouse. Maybe a touch screen with a stylus might work better. I didn't test if the microphone support works.
Nintendo Entertainment System (credit Evan-Amos, public domain)
The Nintendo Entertainment System also known as the NES and Nintendo Famicom had so many variants and clones it would be difficult to list them all, but here are just a few.
Nintendo Famicom with Disk System(credit Evan-Amos, public domain)
Luckily none of that is important to emulating the NES on OpenBSD.
Nintendo Game Boy (credit Evan-Amos, copyright public domain)
VBA-M and Gambatte have command line and graphical versions. I prefer the command line, but neither of them could correctly use my gamepad without the graphical configuration. VBA-M gives Pango warnings and crashes when configuring a controller. mGBA has limited options and is best used as a RetroArch core. I suggest using Gambatte's graphical version for now.
Nintendo Game Boy Color (credit Evan-Amos, copyright public domain)
Nintendo Game Boy Advance (credit Evan-Amos, copyright public domain)
The options for Nintendo Game Boy Advance emulation are similar to the Game Boy except without Gambatte.
Nintendo Game Boy Advance SP Mark 1 (credit Evan-Amos, copyright CC BY-SA 3.0)
Super Nintendo Entertainment System (credit Evan-Amos, copyright CC BY-SA 3.0)
The SNES also known as the Super Famicom in Japan was the follow up to the NES. As for as emulating it on OpenBSD I think Mednafen is a good choice, but I recommend Snes9x.
Nintendo Super Famicom (credit Evan-Amos, copyright public domain)
Sega Genesis (credit Evan-Amos, copyright CC BY-SA 3.0)
The Sega Genesis also known as the Sega Mega Drive had an odd history of peripherals. The Sega CD was a base that the Genesis plugged into. Then the Sega 32X plugged into the top loader of the Genesis. Even though the 32X and CD were peripherals they were also another game console. This created a patchwork monstrosity. I only discuss the original Genesis in this section because the emulation scene lists each of those systems separately.
Sega Master System (credit Evan-Amos, copyright public domain)
The Sega Master System is also known as the Sega Mark III.
Sega Saturn (credit Evan-Amos, copyright public domain)
I don't have much to say about the Sega Saturn because I had no luck emulating games with Yabause, but it does emulate the firmware.
Sega SG-1000 (credit Evan-Amos, copyright CC BY-SA 3.0)
Some of the clones and variants of the Sega SG-1000 include
Sega SC-3000 (credit Bilby, copyright CC BY 3.0)
The emulation websites I saw lumped the SG-1000 together with the Sega Master System. Both are similar, but different systems. None of the Sega SG-1000 emulators in ports require firmware.
Sony PlayStation SCPH-5001 (credit Evan-Amos, copyright public domain)
Both PCSX-Reloaded and the core for RetroArch emulate the Sony PlayStation BIOS, but PCSX-Reloaded is broken on Intel GPUs. So if you do use an Intel GPU your only choice is RetroArch unless you have the PlayStation firmware. Ports knows about the PCSX-Reloaded bug, but decided not to mark the port broken nor put a warning on it.
Sony PlayStation PSone (credit Evan-Amos, copyright public domain)
Sony PlayStation Portable PSP-1000 (credit Evan-Amos, copyright public domain)
I added live CDs with games here. None of these require an emulated disk.
Fedora has live DVDs it calls spins. One of the spins is a distribution of games for x86-64. Most are duplicates of what is in ports, but a few are not available in OpenBSD.
The live DVD has a problem in QEMU with APIC. When Fedora starts press tab and add a space then the word noapic to the line of kernel options then press enter. The emulated display will stay blank for a long time while Fedora loads. Some games don't work and the 3D games will cause problems. I tested this live DVD in QEMU, but it may work on Bochs.
The ReactOS live CD runs on x86 and x86-64 emulators. I tested it with QEMU, though it should work with Bochs and MESS. ReactOS comes with Solitaire, Spider Solitaire, and WinMine. Both the solitaire games are clones of the card games with the same names in Microsoft Windows. WinMine is a Microsoft Minesweeper clone.
Operating systems that are emulated directly and don't need to be installed inside another emulator are listed here. Live CDs have their own section under emulation.
DOSBox is the only DOS emulator in ports. It is designed to run DOS games, but supports any DOS software including Microsoft Windows 1, 2, 3, 95, 98, and ME. It usually doesn't need any extra files to run games. Some of its great features are using a directory as a filesystem and using ISO files without mounting the image in OpenBSD first.
There are many thousands of DOS games made over the last few decades. To play any of them you need to know how to use DOS. If you know how to use a shell and terminal then DOS is easy to learn. Don't forget to read manual and package readme because you will need them.
There is a known bug in DOSBox on OpenBSD that causes games to run slower as the cycle count increases. The best way to find the best cycle count is to run a game that has audio and lower the speed until the audio sounds right. Put the cycle count outputted by DOSBox in cycles= in the [cpu] section of the DOSBox configuration. For me 33000 cycles worked best, but 40000 to 50000 was acceptable. CPU Speed Test said 40000-50000 cycles in DOSBox is around the speed of an early Intel Pentium 1. If games freeze or DOSBox crashes try lowering the cycle count.
Games popup in unexpected places like a text editor. Software not intended to emulate or run games that includes one is listed here.
One of the old jokes about GNU Emacs says it's an operating system in need of a text editor. It shouldn't surprise anyone that it includes several games it calls amusements. More are available as addons. Both types of games are similar to the BSD Games collection.
Many of the addon games are clones of other popular games.
Full copyright licenses of works used on this page.
This document is licensed as WTFPL version 2.0.