Dagger Dash

Introduction

Dagger Dash is a first-person platform game where you jump and throw daggers at different types of obstacles and enemies. The main goal of the project was to create a sequence of mechanics that, in relation to the dagger and the jump, all worked together to create a fun experience. The game was also a chance for me to test my skills in 3D modeling. The development of the game took roughly 80 hours.

Specifications

  • First Person Platformer
  • Using unreal
  • Using assets made by me and Unreal starter content

Main Goals

  • Self-created assets
  • A first-person platformer with working mechanics
  • A simple structure
  • Not much downtime during game time.

What did I learn?

  • Paricle editing
  • Scripting enemies that does not use navmesh 
  • 3C scripting (jump forgiveness, camera shake)

Game Design

The Dagger!

My primary goal was to make the dagger, as a projectile, feel great to use. My solution to this was:

  • Adding a small shake to the screen when it fires and also when it hits certain objects, like crystals and enemies
  • Applying rotation to the dagger as it flies through the space of the map as a way to make it feel less static.
  • A particle system attached at the hilt of the dagger to increase the readability of the projectiles movement.

 

The Jump!

The jumping mechanic is one of the core features of the game and was prioritized as such. I quickly decided to give the jump a high peak of height as well as giving the player a lot of aerial control over it.

To add to this, I also added a slight camera shake when the player hits the ground to ensure the player that they had landed.

Problem 1

Problem: Perception of depth. There was a problem with players having issues judging distances from a first-person perspective. 

Solution: Usage of the golden ratio (*1,62) when measuring the jump distances (7 meters for a normal jump and 11 meters for a long jump).

Problem 2

Problem: Not knowing when to jump. I found that players had a hard time tracking their position in the game world.

Solution: Jump forgiveness. I implemented a Three line traces. one of them behind, one of them to the right and one of them to the left of the player character. If one of traces collided, the player is able to jump. Another solution to the problem was to implement ramps to the platforms to give clear indication where to jump. 

 

The Moving Platform

I wanted to add a mechanic to the game that needed both the dagger and the jump to work. The moving platform mechanic was able to achieve this. This feature contains of two platforms and a yellow crystal. By shooting at the crystal the two platforms move to their predetermined locations. While the platforms are moving, the color of the crystal object changes as well as the color of the platforms. The reason for this was to ensure the player that they received some sort of feedback for their actions.

Continuing, it was important for me that the game felt consistent throughout, meaning that the travel time for the platforms in the game stayed the same. As shooting crystals is something established at the start of the game, I feel confident that the player has enough understanding of the mechanic to use it throughout the game. 

Level Design

The Jump

KI
The player is able to jump around without any threats such as enemies and has no risk of falling down. 

Sho
Players are forced to complete a sequence of precision jumping without fail. If they fail, they have to run back and try again.

Ten
The player risks falling down and by doing so, restarting the level.

Ketsu 
Precision platforming with the risk of falling down and restarting the level. 

The Dagger

Ki
The player must break crystal to progress.

Sho
The player learns to hit moving targets.

Ten
The player is faced with multiple enemies while jumping on platforms.

Ketsu
Introducing the boss, teaching the player that some enemies take multiple hits.

The Moving Platform

Ki
The player activates the moving platform with the dagger. By doing this, the player learns that you have to shoot at glowing objects to progress at parts of levels.

Sho
The player has to time their jump when they are standing on a moving platform.

Ten
The player approaches another moving platform crystal but sees no platforms. When the player looks down the hole they see the platforms. The player has to hit the crystal, drop down the hole and land on the moving platforms.

Ketsu
The player has to “send” off the platform they are standing on for the other platform to appear. As all the moving platforms travel the same distance in the same amount of time, the player should be comfortable with the mechanic at this point of the game.

Closing Thoughts

I had a great time developing this game so far, and I am certain that it will continue as such. I am now creating a prototype of a scoring system that will increase the depth of the game, without adding too much complexity to it.

Another idea was to create a cable to the dagger which lets the player grapple hook. This feature is, however, something I will be looking in to at a later point.

Development

Beta

Alpha

Score system and sprint prototype