Engine: Unreal Engine 5
Role: Solo Developer (48-Hour Game Jam)
Key Skills: Procedural Logic, Vector Math, Collision Filtering, Scope Management.
Summary: A 48-hour solo development sprint for MicroJam 051. The theme was "Christmas" with a surprise constraint: "You start with nothing." I developed a "demake" of Capcom's 1942, featuring a custom procedural spawning system and parallax flight simulation. The project focused on rapid prototyping and modular blueprint logic to meet the strict deadline.
Procedural Enemy Formations (Math > Manual Placement)
To replicate the rigid, diagonal flying columns of the arcade classic without manually placing hundreds of actors, I built a parametric spawner. I utilized a For Loop to drive the spawn count, feeding the index into a custom math function. By using a Select node to multiply the X/Y coordinates by -1, 0, or 1, the system procedurally generates straight or diagonal formations on the fly.
The resulting diagonal formation in-game.
The "Select" node logic that drives the offset direction.
Safety & Bounds Checking
In a game jam environment, bugs are inevitable, but game-breaking bugs must be prevented. I implemented strict bounds checking within the math library. A Clamp node ensures that no matter the result of the formation calculation, enemies strictly spawn within the playable bounds of the level (-4000 to 4000), preventing actors from spawning off-camera or effectively breaking the game loop.
The Squad Spawner loop showing the data flow from Random Lane generation into the Formation Math macro.
Challenge: The "Friendly Fire" Physics Bug
The Issue: During the final hours of development, the enemy AI began destroying itself immediately upon spawning. The projectiles were colliding with the mesh of the enemy that fired them, triggering the "OnHit" destroy event instantly.
The Solution: I established distinct Object Channels for PlayerProjectile and EnemyProjectile. I then configured the collision response settings within the specific Actor Blueprints to explicitly Ignore their respective projectile channels. This ensured that while projectiles would still register hits on opposing forces and world geometry, they would pass harmlessly through their instigators immediately upon firing.
Challenge: The Constraint ("Start With Nothing")
The Issue: The prompt required the player to begin with zero capabilities. In a shooter game, starting without a weapon or vehicle is usually a failure state.
The Solution: I integrated the constraint into the narrative and mechanics. The player starts on foot as Santa, vulnerable and flightless. The first objective is to "build" the vehicle by collecting sleigh parts. This turned the constraint into a progression mechanic that naturally transitions into the core "1942" gameplay loop.