Rewriting the game from scratch in C++17 and OpenGL 1.3 / ES 1.0, using CMake as a build system and SDL as a part of a platform abstraction layer, making it a truly multiplatform experience.
Original Spelunky classic was written using GameMaker, properietary tool for creating games. License, under Derek Yu, its autor, released sources says clearly than one can use them, combined with assets freely as long as it is not for one's profit.
This is fantastic, but in the same time limiting, as an eager programmer can't build its favorite game untill GameMaker declares it will now support some retro console (which is very unlikely to happen).
But, as there are good people providing and maintaining free, homebrew toolchains (i.e devkitPro organization or pspdev group) it is still possible to reuse assets and use provided sources as a point of reference, when rewriting original sources to C++, using commonly adopted, multi-platform rendering API - OpenGL.
Currently supported platforms are:
- PSP
- Android
- Linux
- Windows
- macOS
With successful attempts to run it on such devices as Raspberry PI 3, Orange PI One, Samsung Note III.
- Spelunky-PSP devlog #1
- Spelunky-PSP devlog #2
- Spelunky-PSP devlog #3
- Software-implemented OpenGL - SpelunkyPSP on PocketGo case study
- Spelunky-PSP devlog #4
- PSP HDC 2021 - Spelunky PSP - First year of development
- Spelunky-PSP - 3D accelerometer experiment on Android
- Spelunky-PSP devlog #5
Full license text can be accessed under this link:
https://github.com/dbeef/spelunky-psp/blob/master/LICENSE
Briefly, as for my (Daniel 'dbeef' Zalega) code, I distribute it under GNU General Public License, as for Spelunky Classic game assets, I use and distribute them under Spelunky® User License v1.1b.
PSP is a trademark of Sony and is used purely for descriptive purposes. This game is not affiliated with Sony.