top of page

My Design Process for Dash.

Writer's picture: BowenBowen

Updated: Nov 22, 2023

I-Mechanics

I started this project by creating core mechanics, I intend to build Dash. around these mechanics. These mechanics are:

  1. Side-Scrolling Movement: The player controls a character moving through a 2D side-scrolling environment. This movement is fundamental to navigating the game's stages and avoiding obstacles.

  2. Avoiding the Closing Wall: A significant mechanic is a giant wall that constantly closes in from behind the player. The player must move forward to avoid colliding with this wall, as such a collision results in losing points.

  3. Coin Collection for Points: The primary objective is to collect coins scattered throughout the stages. Each coin collected increases the player's score, contributing to the overall goal of achieving a high score.

  4. Time-Limited Stages: The game is divided into three stages, each lasting 30 seconds. This time limit adds urgency and challenges the player to collect as many coins as possible within the given timeframe.

  5. Score Reduction on Collision: If the player collides with the wall, they lose points. This mechanic adds a layer of challenge, requiring players to balance the risk of collecting coins close to the wall against the potential loss of points.

  6. End Game Conditions: The game concludes either when the player reaches the end of the third stage or if the player's score drops to zero. This creates a dual focus for the player: to advance through the stages while also maintaining and increasing their score.

II-UX Goals

User experience is as important as the game's core mechanic, so the next step I took was to establish the following user experience goals:

  • User Experience Goal: The game aims to provide a fast-paced, challenging, and engaging experience. It focuses on quick reflexes and strategic gameplay, where players must collect coins while avoiding a closing wall. The design emphasizes immediate feedback and competitive play.

  • Target Audience: The game targets a broad range of players, including both casual and hardcore gamers. It appeals to those who enjoy fast-paced gameplay with a competitive edge. The game's design caters to players who appreciate arcade-style games and those who seek a challenging experience in a 2D platformer format.

III-Research

After establishing the above, I now have a clear path on what to build, I just have to figure out how to build it. So, researching similar games in the same genre(platformer) will be extra helpful.

  1. Picking Games to Look At: I started by checking out some cool 2D games. I played some old favorites like "Super Mario Bros." and some newer ones like "Celeste" and "Hollow Knight". These games are really popular and have some neat tricks and styles.

  2. What to Watch For: I decided to focus on things like how the game plays, the design of the levels, how it keeps players interested, how hard it gets over time, and how it looks and sounds.

  3. Getting into Each Game:

    • Playing and Watching: I either played these games myself or watched others play them online. This helped me see what's fun about them and what keeps players coming back.

    • What Players Think: I read reviews and forum posts to see what people liked and didn't like about these games. Websites like Steam, Reddit, and Metacritic were really helpful. One discussion thread on Hollow Knight's subreddit did me a big favor(You can find it here), it helped me realize some potential mechanic flaws I had, such as the wall-jumping mechanic causing the game's difficulty level to rise if implemented wrong.

    • What the Makers Say: I also looked for interviews with the people who made these games. They talked about how they came up with their ideas and the challenges they faced.

4. Comparing Them:

  • Similarities and Differences: I compared "Dash." with these games. For example, "Dash." and "Celeste" are both fast and need quick thinking, but "Dash." has this cool thing where a wall is always chasing you.

  • What's Special About "Dash.": I thought about what makes "Dash." different and cool. The mix of grabbing coins, running from the wall, and quick, exciting game levels makes it stand out.

IIII-Building the game

  • For me, building the game is a part of the design process as well. I will constantly encounter issues that weren't previously considered or expected, so I will change my design to solve these kinds of issues. An example would be when I was implementing the coin collection mechanic. Initially, I thought it would be straightforward, but as I started coding, I realized that the coins' placement significantly affected the game's difficulty. Some areas became too easy, while others were frustratingly hard.

V-Playtesting

After finishing the demo build of Dash. I presented it during the class's playtesting sessions and took notes on the playtester's feedback. Here's a log:

1. Original
  • Feedback: The movements seem rigid and unpredictable, causing players unable to predict the landing position after a jump.

  • Change made: Changed the random jump force into a fixed jump force.


  • Feedback: Coins are not visible enough, players will have to spend extra time to find coins, sometimes resulting in crashing with the wall.

  • Change made: Made the coins' visual brighter and adjusted their in-game placement positions, come coins remained hidden in order to maintain difficulty.


  • Feedback: The time limit mechanic isn't presented too clearly in-game.

  • Change made: Added a timer visual onto the UI.

2. Iteration 1
  • Feedback: Paths are not clear enough, and players get stuck in some places trying to find a viable path.

  • Change made: Added a clearer outline for obstacles and jump-able walls.


  • Feedback: Levels are too static.

  • Change made: Added a new long scrolling level.

3. Iteration 2
  • Feedback: The wall's visuals are the same, and do not fit different level environments.

  • Change made: Added different visuals for the wall according to different levels.

Iteration 3(Current Version)
20 views0 comments

Comments


bottom of page