A downloadable tool

Before Storm! Engine v2                                                           

Every new game starts with the same question: what engine do I build this on? Then you spend weeks writing boilerplate: entity storage, input, asset loading, collision, frame pacing.  The actual actual game ends up being the leftover.  

After Storm! Engine v2   

You write your game logic. The engine handles the rest. 

Storm! Engine v2 is a small, ECS-based 2D engine on SDL2. You write C++; real C++, no scripting layer, no hot-reload. You ship small games faster, and they break less, because the machinery underneath is tested, documented, and yours.  Modify it, add to it, break it.  It's freely yours to do as you wish. 

What's In Storm! Engine v2?

  • ECS architecture: entities, components, systems. Up to 64 ccomponent types per binary.
  • Sprite rendering: camera, z-index sorting, flip support
  •  Tilemaps: paint levels in the built-in editor, save .map files, load them at runtime.
  • Collision: box and circle colliders, contact detection with Contact{a, b, normal, depth}, begin/end callbacks, layer filtering. Pure geometry math works without the ECS at all.
  • Asset store: textures, fonts, sounds. Pack files put everything in one opaque blob.
  • Text: Text::Draw / DrawCentred / Measure over SDL_ttf.
  •  Input: keyboard, gamepad, virtual gamepad for touch, and one ActionMap binding across all of them.
  • Game state machine: scenes with frame pacing built in. 
  • Networking: UDP host/join LAN play: reliable + unreliable chunks, snapshot replication with per-client deltas, kick/ban/timeout.
  • Lighting overlay: two-layer warm/cool pass, no shaders, runs on the plain SDL2 renderer.                                         

Ships with nine example games: Platformer, shooter (1945), strategy (Realms), puzzle, JRPG, sports, and networking demos (netchat, netrepl, netplay-checkers).  Each shows a different way to load a world: tilemaps, XML, hard-coded, or networked.    

Platforms                                                                                                                        

Linux (.deb releases on GitHub), Nintendo Switch (source build), Android (source build), Windows (MinGW-w64 cross-compile).         

                                                                

Free. Whatever the !@#$ you please.

Download

Download
https://github.com/SamsWebs/storm-engine-v2/archive/refs/heads/main.zip
External

Install instructions

Current release: v2.3.1 - GitHub Releases       

Pick your platform. Prebuilt binaries are the .deb (Linux) and the .zip (Windows).