rainbow-joe
rainbow-joe copied to clipboard
A classic 2D platformer game in the spirit of the 1990s.
THIS REPOSITORY HAS DISCONTINUED
This project is no longer maintained.
Rainbow Joe
About
Rainbow Joe is a classic 2D platformer game in the spirit of the 1990s written in C using SDL2 and the TMX Map Format (Tile Map XML). It is also a constantly evolving project I work on to exercise C programming and to learn about the basic concepts of game development.
Follow-on project: Boondock Sam.
Last but not least: follow-on project of Janitor Jamboree which I have discarded.
Trivia
The quite odd game title was generated using The Video Game Name Generator.
Why C?
A question I hear alot is why I'm using C for this project instead of a modern
language like Rust, Haskell or [insert your preferred language here]
, because
writing games in C is neither a easy thing to do nor very common (these days).
The main reason is obvious and I already mentioned it in the introduction: to get exercise in C programming. And writing a game in C seemed like a fun way of getting some.
Nevertheless: I hope you find the code of this project useful. If so, feel free to use it in any way you want. Just consider buying me a beer in case we meet someday.
Screenshot
Click to open in full-resolution.
Dependencies and how to compile
The program has been successfully compiled with the following libraries:
libxml2 2.9.8
sdl2 2.0.8
sdl2_image 2.0.3
sdl2_mixer 2.0.2
zlib 1.2.11
To compile Rainbow Joe under Linux simply enter:
make
If you're on NixOS enter:
nix-shell
make
To generate the documentation using doxygen enter:
doxygen
Releases
There are also Windows builds that can be found here: Releases.
Controls
A: move left
D: move right
ESCAPE: pause
LSHIFT: hold to run
SPACE: jump / unpause
1: set default zoom level
2: zoom out
3: zoom in
F: hold to move camera freely
UP: move camera up
DOWN: move camera down
LEFT: move camera left
RIGHT: move camera right
Q: quit
License
This project is licenced under the "THE BEER-WARE LICENCE". See the file LICENCE.md for details.
TMX C Loader by Bayle Jonathan is licenced under a BSD 2-Clause "Simplified" Licence. See the file COPYING for details.
inih by Ben Hoyt is licensed the New BSD licence. See the file LICENSE.txt for details.
Magic Cliffs Environment by Luis Zun aka ansimuz. Licenced under CC BY 4.0.
All other graphic, sound & music resources are dedicated to public domain and have been found on OpenGameArt.org.