Angry Duck Diver

Angry Duck Diver was created as part of the 2016 Train Jam (March 10th to March 12th).

It’s a bullet-heavy vertical scrolling shmup/STG which contains neither ducks nor diving. Instead you have to constantly balance your avarice and cowardice, building up bonuses and choosing the ideal moment to bank your points before you are destroyed.

The theme was maximum capacity and I interpreted that as a risk/reward mechanic where you increase your bonus gauge as you approach maximum capacity, but you also increase your hit box and risk destruction, losing all your unbanked points.

Train Jam
The Train Jam was an amazing experience, both as a jam and as a journey. The scenery is gorgeous and inspiring, and jammer disciplines seemed much more diverse / evenly spread than I’m used to at local jams (which tend to skew heavily towards programmers). I’m certainly planning on doing it again next year. However, one downside was the venue for the theme announcement/team formation before boarding the train; it was narrow and loud so it was hard to hear pitches or mingle with different folks pre-jam, and so I didn’t form or join a team before we got on the train.

This was my first jam working solo, and while it let me stare out of the window at the scenery as much as I wanted, I wouldn’t recommend it. Coordination was easier (especially since there was no internet for most of the jam, avoiding having to sneakernet files back and forth), but polish and achievable scope definitely suffered by going it alone. I finished the game, built some neat bullet spawning tech (barely scratched the surface with the current enemies), and had enough time to get some enemy variety done, but ran out of time before I could tune the waves for progressive difficulty or implement a boss fight (just a few more hours…)


  • Move with WASD, ZQSD, or Arrow keys
  • Fire with Space or LMB
  • Bank with Shift or RMB
  • Escape to Quit

How to play

  • Enemies are made of delicious coins, so you should shoot them
  • They are very protective of those coins, so avoid touching them or getting shot by them
  • Eating coins increases your bonus gauge but makes you fat
  • Banking protects points at the cost of draining your bonus gauge
  • Aim to beat your own high score and improve your average bonus rating

Additional Credits

  • Used resources from several UE4 samples (allowed as part of UE4 EULA)
  • ‘Lives left’ icon from Kenney (CC0 license)
  • ‘Drag racing chimes’ sound from… (CC0 license)
  • ‘Music’ is ‘Kozoro, Ryzu, Unison & Evence – Ascend’ by Ninety9Lives (provided for use in jam, unknown license)
  • The scenery on the train ride

Download and Play
The PC download and prereqs installer are available here

Unzip and run AngryDuckDiver.exe on Windows to play the game (you may need to download and run UE4PrereqSetup_x86.exe first if you haven’t run a UE4 game before)

About the name
I used Fancy Game Namer to come up with ideas as usual, and thought up a salvage game where a duck dives off a boat and collects treasure onto their boat. The theme of Maximum Capacity gave it the same core risk/reward mechanic where you had to decide how much treasure to gather and when to head back into harbor or risk capsizing. By the time I’d boarded the train, I had already pivoted into a shmup due to the easier art requirements of an abstract shooter instead of having to find/make a duck, boat, and treasure, causing a slight name mismatch.