April 21, 2024 by Marc Beavan
Game Dev Diary #1 Dash
![blog-feature-image](https://granitegames.gg/images/Blogs/Dash/banner.webp)
Back in the Game: A New Project from Jase Magee and Me
Jase Magee and I have created a number of games over the years, more of which can be found here. We have had a quiet few years with time in short supply. For me game dev is an itch that needs a good scratch if left for too long. This year Jase and I have decided to ease ourselves back into it with a simple project, a new project.
Starting on a new game project is an exciting one. It rarely ends up as it was originally envisioned as you chase the fun and try different things. Working in tandem with Jase brings a different persepctive (and normally some interesting artwork cough penis wizard).
Introducing Dash: Arcade Maze Runner
Our latest endeavor is code named ‘Dash’. Inspired by ‘Tomb of the Mask’, Dash is set to be an arcade-style game, a vibrant and fast-paced maze runner in a retro, pixel art environment. Players will navigate through procedurally generated levels, dodging traps and enemies while collecting power-ups and coins, with the objective of reaching the highest level possible.
Dash is envisioned primarily as a mobile-friendly game, but should also work well on a tablet and desktop. As we now also have access to a Steam Deck then it will also be targetting that so that we can have a play with that.
The Development Journey Begins
With a limited amount of time to dedicate to the project, our approach involves steady progress, I’m hoping to carve out a night or two a week and some time at the weekend devoted to development. The first sprint kicks off with the following objectives:
- Setting Up Tech Stack: We’ll be using Godot, so in this first sprint we’ll be looking to set things up cleanly and get everything organsied before it sprawls out of control.
- Game Mechanics: Establishing fundamental gameplay elements such as swipe controls, coin collection, and level completion.
- Level Generation: Implementing an algorithm to randomly generate levels that offer both challenge and variety.
Progress and Challenges
The game dev is well underway. Jase plumbed in the core game mechanic and I’ve picked up one of the many game mechanic POCs that Jase Magee has produced so have a sprint start. So far it has some placeholder art, the swipe mechanic and collisions all in place.
Procedural Level Generation
One of the general themes across all our games is procedural level generation. Tuning an algorithm to generate interesting and fun levels is a nice little technical challenge that we love to take on. For Dash, we want to create catacombs that become increasingly difficult, ramping up in size and complexity. As players advance, they will encounter a variety of obstacles, traps, and puzzles, ensuring that no two playthroughs are ever the same.
One of the things we love about procedural generation is the element of surprise and variety it brings to the game. As developers, we often find ourselves surprised by the unexpected layouts and challenges that the algorithm produces. If it’s fun and engaging for us during development and testing, we are confident it will be for all the players.
We’ll aim to get the engine to adapt to the player’s progress. Early levels might start off simpler to help players get accustomed to the controls and mechanics, but as they delve deeper into the game, they will face more intricate mazes filled with new types of traps.
Our approach involves several key techniques:
-
Randomized Room Layouts: Each level will be composed of a series of interconnected rooms, each with a unique layout. These rooms are generated based on a set of predefined templates, ensuring a balance between randomness and playability.
-
Dynamic Obstacles and Traps: To keep players on their toes, obstacles and traps within the rooms will be placed randomly. This means that even familiar rooms can present new challenges each time they are encountered.
-
Adaptive Difficulty: As players progress, the procedural algorithm will increase the difficulty by introducing more complex puzzles and trickier traps. We may also increase the speed and timing of the trap cycles. This scaling ensures that the game remains challenging and engaging, even for experienced players.
-
Varied Themes and Environments: To keep the visual experience fresh, the algorithm will also vary the themes and environments of the levels. Players might find themselves navigating through eerie, dark catacombs in one level and brightly lit, treasure-filled chambers in the next.
By combining these techniques, Dash will offer a rich and varied gameplay experience that keeps players coming back for more. Whether you’re playing on a mobile device, tablet, desktop, or Steam Deck, each session will feel like a new adventure, filled with unique challenges and rewards.
Well, that’s the plan!
Looking Ahead
Stay tuned for more updates as we continue to develop Dash. Our goal is to document the journey, sharing insights into the challenges and (hopefully) victories encountered along the way. From the intricacies of procedural level design to the excitement of testing on different platforms.
We value your feedback and enthusiasm. If you like what you read, let us know! We’re always keen to hear your thoughts, ideas, and suggestions as we move forward. Whether you’re a fellow developer, a gaming enthusiast, or just someone who loves a good maze runner, we hope you’ll find our journey intersting.