This game was mostly made in 2020 when I had a lot of time on my hands. Then I suddenly stopped having lots of time on my hands and the project got put on hold. It is a top down shooter about saving a rock star who was abducted by aliens. The main character is a wrestler with a gun. You can punch and shoot and have to fight your way through a horde of aliens. The levels are kept rather open, the basic idea being that you have to search and collect some diamonds in each level to progress.
I developed this project in C using SDL2. Development-wise a lot more effort went into the game’s engine and the whole backend details than the game itself. But I’d learned a lot about compiling native stuff for the web via Emscripten and even got to contribute a tiny thing to the Emscripten project in the process, which was nice. Additional details include a custom, compressed format for the game’s levels and a system to smoothly and automatically switch from keyboard+mouse to gamepad controls.
You can play the game either directly in the browser or download a compiled version for Windows or Linux. I don’t plan on open sourcing this, because its mostly uncommented C11 code. If you ask nicely I might reconsider, but don’t say I didn’t warn you ;P
Controls
Keyboard
- Moving: WASD or Arrow Keys
- Shooting: Left Mouse Button or Space
- Punching: Right Mouse Button or Shift
- Pausing: Escape
Gamepad
There is also gamepad support! The basic assumption is that you use an XBox Gamepad or equivalent. i.e. a pad with two joysticks.
- Moving: Left Joystick
- Shooting: Right Joystick
- Punching: A Button
- Pausing: Start Button
Toubleshooting
Graphical issues
There are a few commandline options you can try:
--no-vsync disables VSync and can possibly mitigate some issues. If not, you
can try --no-vsync --force-sw, which forces usage of software rendering. The
game is pretty easy on the hardware, so this should not be a problem
performance wise unless you’re running this on some early 90s machine.
Gamepad is not detected
Make sure to start the game with the gamepad already plugged-in/connected.
Where is the savefile?
On Windows: The savegame is stored in share/codo-data/user/, next to the executable.
On Linux: Its either in $XDG_DATA_HOME/.local/share/flying_elbow or $HOME/.local/share/flying_elbow, depending on whether $XDG_DATA_HOME is set.
On the Web: An IndexedDB entry is used to simulate the filesystem. The file is stored there.
Credits
pipo tileset
- Author: pipoya
- Link: https://pipoya.itch.io/pipoya-rpg-tileset-32x32
font
- Author: domsson
- Link: https://opengameart.org/content/ascii-bitmap-font-oldschool
Epilogue
Anyways, thanks a lot for downloading and hopefully playing this game! If there’s something you want to tell me, drop me a mail at: slartibartfast@klockenschooster.de