Super Shiny

Go to homepage

A platformer game and engine for Windows XP and Windows 11 written in C++17 and SDL2

You can download it from my GitHub repository and compile it from source.

This is a platformer game and engine intended to work on both modern and retro computers.
I developed it in C++17 and used the permissive-licensed SDL2 library.
It currently supports Windows 11 and Windows XP, and you can build it from source.
The source code is available on GitHub as well as the instructions.
The engine is licensed under the same permissive license as SDL2, but the game-specific code and assets are half-open half-proprietary, fair use style, basically.

You play as my mascot Shiny the Scalefloof in my childhood summer destination of Červar-Porat and do the typical block-smashing, obstacle course jumping AND bubbleshooting action. The idea is that Shiny is grossed out by bigtech enshittification and brings forth his Frutiger Aero terraformation superpowers to the test so he could make the environment the way we all envisioned it 20 years ago.

In the demo level, you can smash blocks and use Shiny's bubbleshooting ability to activate bubblable blocks and destroy spikes. The goal for now is to collect keys to advance to the victory screen. It's more of an engine rather than a game as this game is my graduation project for the Machina Game Dev Academy so I can enter the gamedev industry, as well as a tech demo to prove that retro devices can still play games AND be made games to play on and develop games on and for.

Yes, you heard me right. This is an actual Lenovo ThinkPad X61 Tablet running Windows XP. The toolchain I chose is CodeBlocks version 17.12 which is the last version working on Windows XP. I managed to get C++17 support by frankensteining this compiler to work with this specific version of the development environment.
All I needed to do was matchmake the exact dependencies as well as add these additional compilation parameters.
The whole development folder is portable so you can program the engine and the game on the go.
What a perfect way to detach from the online world when it gets toxic.
and when it's time to show to your coding friends, it will work on Visual Studio 2022 as long as you install CMake and other dependencies listed in the installation instructions.
What a way to seek the sunshine~

The game supports joypad input and has customizable input binding. It also has full-screen capabilities including some neat scaling features to make your game look best for your monitor. To accomodate the retro devices, the game runs at 1024x768, and it was presented as such in the retro section at Zagreb Games Week 2025.
It was a blast!
Friends were made, memories were recorded and I even drew my scalefloof on top of this Volkswagen van and set him as the wallpaper.
It's what I like to do every year.

Zagreb Games Week 2025 – Preview

Tap or click a thumbnail to open the fullscreen viewer.

Technical info

Currently supported operating systems:

  • Windows XP 32-bit
  • Windows 11 64-bit

Engine features (as of v0.1.2.1):

  • Decoupled engine components
  • Communication between components via Contexts
  • Additional encapsulation with PassKeys and Accessors
  • InputManager that supports Keyboard and SDL_Joystick (other methods are WIP)
  • Borderless Fullscreen, Integral/Fractional scaling setting
  • Rebindable controls
  • Levels are loaded from INI files
  • Settings are saved into config.ini
  • Volume control
  • Game pauses when joystick is disconnected
  • In-house entity management system
  • Decoupling game from engine (see main.cpp)
  • Exposing engine via Contexts and Accessors so that dev/designer/user code never actually uses the actual engine objects
  • Registration of Scenes, Entities and Menus
  • Menu system
  • Pause system
  • Entities have Physics and Physics Abilities to allow for multiple kinds of situations
  • Tile-based collision
  • Parallax scrolling
  • Sprite animation system
  • Own minimalistic geometry library (with SDL2 interop)
  • Collision callback system

The first alpha version was very limited to accommodate for the deadline of Zagreb Games Week 2025.

The post-con alpha version is a mini-overhaul over the engine's frozen features and is intended for hiring purposes.

Acknowledgements

Special thanks to my buddies:
  • Devee
  • Lilithe
  • Wilt
and my mother in the other dimension

Hvala ti za sve

ChatGPT Plus was used for refactoring, research, debugging, syntax error correction and code review.

WithEXE_Mirror was entirely written via my prompt using ChatGPT Plus. I could not waste time on reinventing robocopy.exe for Windows XP just because Microsoft didn't ship it.

Many suddenly copypasted parts of code (e.g. Breakenzi, GML sub-engine) are from my previous projects from when I was daydreaming about one day making my own fully fledged C++ game engine.


Download Super Shiny for Windows XP
Download Super Shiny for Windows 11

And join my Discord server.

Thank you for playing!

Now go out, touch grass and collect a lot of sunshine.

Profile photo