Raw Power Games · Senior Programmer
Jan 2025 to presentChronicles: Medieval · Unreal Engine 5, C++
Procedural settlement generator (owner)
- Built the Unreal Engine 5 version from the team's Houdini prototype.
- Generates villages, towns and cities from designer-authored zone rules: Voronoi layout, A* main roads from entrances, zone placement by centre, road frontage or perimeter, walls, rivers and bridges.
- Outputs gameplay data for each settlement: playable area, player start, nav seed points, AI road graph and zone routes, with building IDs kept stable across regenerations.
- Walls that fit the terrain around designer chosen zones, with modules selected by landscape height.
- Custom editor mode with viewport overlays, a zone panel and one-click regeneration. Designers built 100+ settlements with it in a few months.
- Collaborated with Environment Artists to improve both the interface of the tool and the output.
Building composition system (contributor)
Prefab style groups of meshes and actors placed into the world.
- Fitting compositions into generated cells, and placement correctness.
- Runtime material overrides for gameplay-driven changes.
- Optimised editor by batching updates, added drag and drop, undo and thumbnails to the composition editor.
Map generation pipeline (owner)
- Step-based pipeline, around 30 step types, that runs terrain, settlements, buildings and roads, then saves, map-checks, cooks and submits to Perforce.
- Runs from an editor button with live progress, or headless as a commandlet on TeamCity with a per-map JSON report.
- Nightly runs regenerate every settlement that uses an updated building composition.
- Submit safeguards: a failed step or logged error blocks the submit. Fixed in-editor runs never saving, and a stall caused by editor CPU throttling PCG.
Other tools
- Audio Usage Finder: shows where an FMOD event is used, following indirect references through gameplay tags, and other references.
In-game settlements. Art by the Raw Power Games art team. More in the studio's dev blog: Crafting believable worlds in Chronicles: Medieval.