Devlog 1: Research


Introduction

Hello visitor and welcome to our game project for the course Group Projects at DAE Howest. 

Our team consists of two coders, Dries and Santi, two artists, Robin and Toshko, and our sound designer, Wouter. Together, we're diving into an exciting project—a fast-paced, adrenaline-fueled game inspired by Speedrunners! Over the next few weeks, we'll be bringing this vision to life and sharing our journey with you through our weekly Devlog. Stay tuned for all the thrills, challenges, and behind-the-scenes action!

Our game is a fast-paced, side-scrolling splitscreen racing game. The core idea is a competitive platforming race where up to four players run, jump, and grapple through a looping 2D course, trying to outrun and eliminate each other.

For our first development update, we’ll walk you through our initial prototypes and the creation of our art bible. This week, we tackled several research questions to determine what worked, what didn’t, and what looked great versus what needed improvement. To keep things structured, we’ve divided our update into two sections: Art, Coding and Sound design. Let’s dive in!


Art

Style

The game is going to feature robots in a kid-friendly cardboard-like art style which is a combination between 2D sprite sheet animation for the characters and key elements and 3D workflow for the environment and assets, with round shapes and vibrant colours. The game focuses on readability with simple hand-painted textures and a low poly modelling approach. We will be using a PBR workflow. However, to keep the paper-like feel, all objects will be non-metal and any "metal" would have to be painted in.  The characters will be illustrated in Adobe Photoshop and animated in After Effects.

Environment

After careful research and analyzation of our ideas and games with similar styles. We decided it will take place in a junkyard/steampunk world while maintaining the kid friendly feeling. What we're trying to achieve is a parallax side scrolling environment with animated elements and fun visuals to gaze upon without being too distracting.

What's next...?

We would like to focus on more concept art for our characters and assets and to implement them in our prototype for testing. After we're fully set on a design we would add it to the Art Bible and further upon it s that new comers have an easier time understanding the style.


Coding

Unity for SpeedRunners

SpeedRunners is a game that blends fast-paced 2D movement with some physics-based interactions (like grappling hooks). Unity is particularly well-suited for this type of game because:

  • 2D & 3D Flexibility: Unity excels at mixing 2D and 3D elements, making it easier to implement things like the depth effects in backgrounds or physics-based grappling mechanics. This also perfectly suited for the paper mario style we are going to try.
  • Faster Prototyping: Since SpeedRunners relies on quick, precise movement, Unity allows for rapid testing and iteration, refining gameplay mechanics efficiently.
  • Lightweight Engine: Unity is resource-efficient, meaning it can run smoothly on a wide range of devices without requiring the high-end capabilities of Unreal. This is ideal for a game like SpeedRunners, which needs fast performance and low latency for competitive play.

Why Not Unreal?

Unreal Engine 4 is a powerful engine, but for a game like SpeedRunners, it might be overkill because:

  • Heavier Resource Usage: Unreal is designed for high-fidelity 3D graphics and complex physics, which SpeedRunners doesn't really need.
  • Blueprints vs. Traditional Scripting: Unreal’s Blueprint system allows for visual scripting, which is great for quick prototyping, but Unity’s traditional C# scripting is often more scalable for a 2D physics-based multiplayer game.

Conclusion:

Unity’s efficiency, ease of prototyping, and lightweight nature made it an excellent choice for SpeedRunners. The game benefits from fast iteration times, smooth online multiplayer, and responsive 2D physics, all of which are crucial for a competitive racing experience. If it had been built in Unreal, it might have required more resources and a more complex workflow than necessary for a game of this style.

Player Controller

Movement is one of the most crucial aspects of a fast-paced game like SpeedRunners. To achieve tight, responsive, and fluid controls, we can take inspiration from Celeste, a platformer known for its precision and feel. By implementing this controller we will ensure the following:

  • Coyote time = Jump after leaving the platform for a moment
  • Jump buffering = Be able to jump sooner before you land
  • Variable jump height = control over the jump
  • Edge detection = Nudge the player over an edge
  • Clamped fall speed = Easier control while falling
  • Apex modifiers = Given moment of anti-gravity during the apex of your jump to land more easily

More information can be found in the following video or you can download the prototype demo where we implemented these features:


Sound Design

For our project I researched Speedrunners, Steamworld Dig and Steamworld Heist. Our game's experience will feel similar to that of Speedrunners, an arcade racing game. Something that stood out in that game is the high energy music. The sound effects themselves were rather sparse and lacked some impact, something we can do better. But the high energy music that changes based on the phases in the game were interesting for us. A main game loop OST with a slightly more energetic version when a "sudden death" is reached. We decided to go for an overal robot themed aesthetic with some elements of steampunk which pushed me to research other games with robotic themes. These were of the Steamworld universe, specifically Steamworld Dig and Heist 1 and 2. These games feature very complex music and sound effects either with a Western Cowboy aesthetic or a Scifi Space theme using submarine sounding audio. Most if not all player and NPC sounds in these games are very impactful and all sound like they are coming from heavy, dense robots. Something to think about for our game! Technically speaking we are thinking of using a global audio manager instance that delegates scriptable objects that hold audio assets and modulations for these sounds. We figure that this will allow for a fast workflow for non-coders if they wish to test specific sounds in our scenes. Ideally the audio system should feel easy to use for everyone!

Wot I Think: SteamWorld Heist | Rock Paper Shotgun

Things to we need to research:

Art research:

  1. Duck Detective: The Secret Salami
  2. Epistory typing chronicles
  3. Grapple Dog

Prototype / Coding research:

  • PlayerController
    • How fast should our characters move?
    • How high and fast should the characters jump?
    • Do the characters have a constant speed or a variable speed with different phases? (Celeste style, initial acceleration, top speed and acceleration curve)
  • The grapple hook
    • Should the hook have a complete 360 degree angle?
    • Should the hook have a specific range around our character? 180 – 90 or even 45 degrees in both left and right directions?
    • How to scale acceleration caused due to being pulled by the Grapplehook?
    • Does the GrappleHook event impede movement?
  • Test camera follow movement and scale of screenspace vs characters and level
  • Work on level prototype

We hope to see you next week!!!

Get Group20Scrappled

Leave a comment

Log in with itch.io to leave a comment.