







Overview
// UE editor — cross-shaped level, enemy placements
Peril Crab is a 2D top-down Doom-like shooter built on a shared group framework at Staffordshire University (GAME30510 — Games Design Foundations, Level 3, 2023/24). The game was pre-built — a fixed framework with hard-coded parameters — and the assignment was to design a compelling level within it.
NomNom's role was entirely design-focused: building the level inside Unreal Engine by placing enemies, items, checkpoints, doors, switches, and boss skull triggers. There was no game code to write — the challenge was purely spatial design, enemy pacing, player flow, and documentation.
The deliverables covered every layer of the level: annotated design maps (environment, collectables, doors/switches, enemies, spawn triggers, critical path, explorer's path), detailed enemy diagrams with stats and attack patterns, a Quick Point Table comparing all seven enemy types, player weapon sheets, and full input mapping designs — including an optional controller implementation.
Level Design
The level uses a cross/plus-shaped layout — a branching dungeon-like structure built on dark tile floors with green slime/acid pools in open areas. The shape naturally creates multiple routes through the same space, supporting a semi-non-linear experience without requiring complex branching logic from the framework.
The design philosophy was that boss rooms escalate in difficulty as the player progresses — new enemy types are introduced progressively so the player has time to learn attack patterns before more dangerous variants appear. Boss room spawn counts were tuned down after initial testing revealed they were too punishing.
Switches gate certain rooms: some doors require a numbered switch to be pressed first, and blue switches require the blue key to be held. This forces the player to explore the level thoroughly rather than running straight for the exit.
// ANNOTATED DESIGN MAPS — SCROLL TO EXPLORE
Enemy Roster
// Eye Guard — ranged sentinel
// Zombie — melee grunt
Each enemy type was fully documented — behaviour states (idle, movement, attack), stat values, and tactical notes on how they interact with the player. Enemies are introduced progressively as the player moves deeper into the level.
Balance Design
The Quick Point Table scores each enemy 1–7 across Health, Damage, Speed, and Range — a design reference tool for balancing encounters and weapon effectiveness. Ratings where multiple enemies share a value reflect matching underlying stats.
| Enemy | Health | Damage | Speed | Range |
|---|---|---|---|---|
| Snipper | 1 | 2 (−5 HP) | 6 | 3 |
| Grenade Crab | 5 | 5 (−20 HP) | 4 | 5 |
| Gun Crab | 6 | 7 (−20 HP ×3) | 7 | 7 |
| Eye | 5 | 6 (−20 HP) | 5 | 6 |
| Eye Guard | 7 | 4 (−10 HP) | 5 | 6 |
| Skull Guy | 4 | 3 (−10 HP) | 2 | 2 |
| Zobombie | 2 | 1 (−5/−20 HP) | 1 | 1 |
Arsenal
// Blaster — standard starting weapon
// Plasma Rifle — mid-tier rapid fire
// Grenade Launcher — area denial weapon
Four weapons are available in the level, each placed in specific locations — some gated behind keys or switches — to reward thorough exploration over rushing the critical path.
Challenges & Lessons
Working with a hard-coded framework meant that some intended design ideas couldn't be realised — if a system wasn't part of the framework, it simply wasn't available. Designing around these constraints required understanding exactly what the framework supported before committing to any layout idea.
Boss room difficulty was a recurring calibration challenge. Initial spawn counts caused rooms to be overwhelming — enemies couldn't be engaged individually because new ones spawned faster than the player could clear. Lowering spawn counts gave the player breathing room without making rooms trivial.
The Eye enemy's shield mechanic — where it could shoot through its own shield but player bullets couldn't — required careful placement in the level. Rooms where Eyes could use their shield in open spaces were far more dangerous than corridor fights, so shield-capable enemies were positioned with intent.