Thanks to all that reviewed, especially for the critiques!
@alex-de-la-cour : regarding your suggestion, originally there was a plan to have a salvage collection element - this would fill up the remaining time in the fight phase and would force prioritizing actions in later waves.
@someone : one of the many, many things that didn't make it due to me being unable to put in sufficient prep time was minimizing the distribution. 90% of the game archives' contents is actually the full Java Runtime. Minimizing both that and the archive of the game itself (`game.jar`) would reduce the size to something like 30 MB.
Interesting that you got that exception. I suspect it's because one of the objects got destroyed between the collision itself and its handling code. Thanks for reporting that!