Dero Dazza’s Dirty Dash (2025)

Winner of RMIT’s Program Excellence Award

High-octane first-person speedrunner platformer. Play as the Australian eshay legend Dero Dazza, blasting through the outer suburbs of Melbourne. (Download it on itch.io)

Exhibited at the ACMI Audience Lab (2025) and RMIT Grad Show (2025).

⏱ 13 weeks • Unity • C# • GitHub • Blender • Excel • Photoshop • Substance Painter
  • Role: Lead gameplay & level designer, lead programmer, SFX, UI and VFX designer.
  • Team: 6 people
  • Playtesting: 100+/day playthroughs at ACMI • 200+ plays at RMIT Grad Show

My Responsibilities

Here’s what I was responsible for during our 13-week development period:

  • Designing mechanics (slide, mid-air slam, drift, dash, wall-run, trophy system)
  • Gameplay programming (C#)
  • GitHub repository management
  • Level design support + environment composition
  • UI/UX polish, shader/post tuning, sound design
  • Team task management
  • Playtests + analytics (heatmaps/graphs) and exhibition data collection

What I Shipped

  • Implemented the full movement system (slide / slam / drift / dash / surface alignment) and tuned it for speedrunning.
  • Built 4 Australian-style environments (placing buildings, trees, graffiti, signs, and sculpting terrain).
  • Built a modular road tileset workflow to speed up level iteration.
  • Developed an analytics pipeline (CSV logging → heatmaps/graphs) for playtest and exhibition insights.
  • Created key UI flows and polish: level select, trophies, settings, responsive tutorial prompts by input device.
  • Implemented adaptive shaders, post-processing, and VFX.
  • Built speed-adaptive sound effects.

Target Audience

From the start, the target audience was competitive players who enjoy beating best times and mastering mechanics. Therefore, I designed systems that reward speed and precision. Because movement is the core focus, I kept the in-level gameplay loop simple to avoid overwhelming first-time players.

Spawn → Explore map and collect 3 items → Unlock end goal → Finish → Retry for PB + trophy

Movement Systems

Slide
Slide
Mid-air slam
Mid-Air Slam
Drift and boost
Drift + Boost
Dash
Dash

Design challenges

  • Problem: Maintain speed without losing control → Solution: tuned friction/air control + clear “commitment” windows for each mechanic.
  • Problem: Downforce/surface alignment can cause motion sickness → Solution: camera smoothing, interpolation, and conservative rotation limits.

Rewarding Speed

To reward players for gaining speed, I added reactive speed lines, a subtle chromatic aberration + FOV boost, a speed-based pitch-changing wind sound, and trophies for beating levels under target times.

Speed visuals
Speed Visuals
Trophies
Trophies

Level Design

In collaboration with our main level designer, we structured the game to introduce and test one movement mechanic per level. After extensive playtesting, we learned that at high speed, strong sightlines are essential. We used signage, varying road heights, intro cutscenes, and a minimap to keep players oriented.

Signage
Signage
Varying road heights
Varying Road Heights
Intro cutscenes
Intro Cutscenes
Minimap
Minimap

Iteration

Early on, we had many competing mechanic ideas (including time changing based on speed). To keep scope realistic and the core loop readable, I trimmed features that didn’t directly support speedrunning clarity and focused on movement mastery.

For level iteration, playtests often revealed moments where players didn’t know where to go. A major breakthrough was switching from Unity’s ProBuilder (slow to iterate for our needs) to a snap-together road tileset. This also enabled smooth slopes, which complemented the surface alignment physics.

Road tileset pieces used for iteration

Exhibition Playtesting

Every time we ran playtests, new issues emerged—often related to beginner accessibility. Players would get lost or miss when to use a specific movement mechanic, so we continuously iterated on the levels.

Before the ACMI exhibition, I built a system that collected level completion time and player location data to identify where players were getting lost or losing large amounts of speed. It also helped reveal common routes and skill differences.

Graphs

This data was gathered from 100+ playthroughs, mostly from people who had never played the game before.

Completion time graph
Completion Time

This suggests which levels could benefit from length adjustments. Our goal was for most first clears to be achievable in under a minute.

Surprisingly, L4D had the fastest completion time despite being the hardest. This may be because players were more comfortable with the controls by then, so more testing would be needed to confirm.

Average speed graph
Average Speed

Average speed increases per level, which makes sense: each new mechanic expands the player’s options for building and maintaining speed.

Heatmaps (Level 1)

I wrote a script that samples the player’s X/Z position over time and saves it to a CSV. I then built a separate tool to interpret that data and generate top-down heatmaps.

Level 1 slowest 25%
Slowest 25% of players

This shows much higher route variation. Slower players attempted corner-cuts but often did so inefficiently, and spent more time in the central bowl/slope road area.

Level 1 fastest 25%
Fastest 25% of players

This shows much more consistency. The red/pink line highlights the single fastest route recorded.

Interestingly, it only includes one major skip over the bottom-right building—most of the optimal run stays on the road.

Level 1 bump spots
Bump Spots

These are locations where players lost a lot of speed at once. This helped identify readability/collision issues where players assumed a path was clear but collided.

Polish / Settings

With limited time, I still wanted to push polish—especially UI. Inspired by Persona 5, I used angular layouts and two-tone text. I used More Mountains Feel to add responsive hover/click feedback. Finally, I implemented mouse+keyboard and controller support, including dynamically swapping tutorial prompts based on the current input device.

Options menu
Options
Level select screen
Level Select

World Building

Aligning with our Melbourne-suburb theme, I was in charge of using the road pieces laid out by the main level designer and the models/textures provided by our artists to populate and dress the scenes.

Having lived my whole life in places like this, inspiration was close by—I often went on walks around my suburb taking reference photos. Our group also went on hikes for landscape inspiration.

Here are some screenshots from the levels that show off the environment work I did:

Environment screenshot 1 Environment screenshot 2 Environment screenshot 3 Environment screenshot 4 Environment screenshot 5 Environment screenshot 6