SoupDL 06

SoupDL 06 is a challenging platformer and shooter game where you launch yourself with a fireball-spewing trumpet. It's written in C with SDL for graphics/audio/input.

This game started out as just a demo for me to test out SDL, and slowly morphed into an actual game. It's one of the few games that runs smoothly on the 12-year-old thinkpad I bring to school.

You can play the game right here in your browser because emscripten exists.

Your browser does not support the HTML5 canvas, so instead of seeing the game run in-browser, you just get this lame, still screenshot of it.

Controls

  • A, D - left and right movement
  • K - jump (and boost up if shooting the trumpet downwards)
  • J - fire the trumpet
  • W - aim the trumpet up
  • S - aim the trumpet down
  • X - load the last saved game
  • 1 - set zoom to 1x
  • 2 - set zoom to 2x
  • 3 - zoom out slightly (warning: zooming out too much could freeze the web version of the game)
  • 4 - zoom in slightly
  • Q - quit the game

  • Debug/Testing Controls

    These will disturb normal gameplay.

  • R - restart map
  • E - toggle map editor mode

  • Map Editor Controls

  • Left mouse button - place the currently selected tile or entity at the cursor's position
  • Right mouse button - erase the tile or entity at the cursor's position, depending on whether a tile or entity is selected to be placed down
  • Left alt + middle mouse button - if the cursor hovers over a void rectangle, delete it, otherwise, create a new void rectangle
  • Left alt + left mouse button - move a void rectangle
  • Left alt + right mouse button - resize a void rectangle
  • W, A, S, D - pan the camera
  • 1, 2 - cycle through tiles
  • 3, 4 - cycle through entities
  • 5, 6 - cycle through the map's outside tile
  • 7, 8 - change the map editor selection dimensions
  • Equals, Minus - increase and decrease map width
  • Right and left square brackets - increase and decrease map height
  • O - open another map
  • P - save map
  • L - set up door linkage
  • Left alt + V - Set the value of the void rectangle hovered over with the cursor
  • On the technical side, soupdl features:

    As a game, soupdl features:


    This has been the most fun and ambitious project I've worked on so far.

    Links