Flax: Bot City Banner Image
Flax: Bot City Level Screenshot

First-person sci-fi platform-shooter - University of Brighton, Semester 2

Project Overview

My second semester at uni I had to create an FPS/RPG with the first-person-shoot template in Unreal Engine 5 (UE5). I decided to build Flax: Bot City, a momentum-driven shooter-platformer. The entire level unfolds inside a giant stylised motherboard: players bounce across PCI slots, ride conveyor belts, grind rails and battle rogue ArmBots while racing to the top of a glowing Quantum Computer.

Core Gameplay & Features

  • Layered Traversal Loop: Bounce pads → fan updrafts → Thruster Boots → rail-grinding. Each upgrade re-contextualises earlier spaces and unlocks shortcuts.
  • Physics Puzzles: Plug-and-socket gates ask players to drag (or skill-shot) a cable across platforms.
  • Expressive Combat: A burst-fire Raygun fires EMP rings that knock back airborne ArmBots; Health-Shield stations create risk-reward pockets mid-fight.
  • Environmental Guidance: Red circuit splines, uplighting and HintBot dialogue (self-voiced) steer players without intrusive UI.
Flax: Bot City Quantum Computer Screenshot
Flax: Bot City ArmBot Screenshot

Technical & Design Highlights

  • Decoupled Blueprint Architecture
    • Event Dispatchers broadcast global changes (enemy count, collectables).
    • Re-usable Actor Components (health, flying AI, spline detectors) plug into any asset.
    • Spline-based systems drive circuits, rails, conveyors and wall-run surfaces from one parent class.
  • Cross-Module Asset Planning
    • I modelled bespoke meshes in Blender—Quantum Computer, 24-pin connector, capacitors, DNA collectable, etc...
  • Custom Character Controller
    • Wall-running, thrust-fuel management, rail auto-jump and fall-damage curves are managed through a tidy CharacterState enum, camera shakes and Niagara FX.
  • AI & Animation
    • The ArmBot enemy is fully rigged and animated (idle hover + two melee swings) and driven by a behaviour-tree/blackboard.
  • Level Streaming
    • A shared environment level streams seamlessly between menu and gameplay maps, keeping load times low.

Development Process

Tools

  • UE5 (Blueprint + Niagara): Core gameplay, VFX
  • Blender: All hard-surface props, “greeble” & rigged assets.
  • Audacity: Self-recorded HintBot VO
  • Photoshop: Emissive masks & UI icons

Frequent play-tests with classmates surfaced issues—fan “yo-yo” forces, rail oscillation, sensitivity differences—fixed via distance-based force curves, direction locking and an in-game look-sensitivity slider.

Flax: Bot City Greeble Screenshot
Flax: Bot City Conveyor Screenshot

Outcome & Next Steps

Flax: Bot City demonstrates my ability to:

  • craft readable 3D levels that teach, test and remix mechanics;
  • architect modular, reusable Blueprints;
  • model and animate a coherent sci-fi asset set under tight deadlines.

Given more time I would extend conveyor physics to allow counter-movement, add holographic foliage for extra life, and fold the movement set into a larger multi-level campaign, and much more!

Game Walkthrough