
Midknight Rush
Midknight Rush is a first person platformer, set in a world inspired by the Cornish landscapes. You play as a knight possessed by their own sword. The game is fast paced with some movement abilities. This was a nice little side project where I learnt a lot about making fluid movement and would love to come back to it because the core is quite fun!

My Contributions
I worked on this project as a designer/programmer with my 2 friends who are artists.
Design:
-
Level Design
-
3Cs Design
-
Playtesting
Systems:
-
Player Controller
-
Coyote Time System
-
Sword Sway
-
Player Movement Feedback
-
Special Movement Abilities(Dash, Wall Hang etc..)

Player Controller
I wanted every variable to be customizable when developing the player controller. Currently there are around 25-30 variables that can all be altered in engine that change how the player moves. For the player controller I used inspiration from 2D platformers in making the game feel smooth. I looked at adding Coyote time: A system utilised in many platformers that allows the player to jump for a small period after they have left their platform. I also looked at adding a system that allows for the player to register a jump input just before they actually land.
Running and Jumping
We liked the idea of momentum for this game, I tested various ways of utilising momentum, I scrapped the idea of the player still carrying momentum when the player isn't registering any inputs, as during testing this made the player feel as though they were on ice. I also decided that the player should have a fast acceleration.
Originally, all the jump would do, is set the upward velocity to an amount, and when the player would not be grounded the downward velocity would constantly accelerate. After play testing though, we found that the jump felt too uncontrollable and fast. So I decided to refactor the jump code, turning it into a coroutine, making sure that when the player was in a jump downward velocity would equal 0. Because of this, the jump felt more controllable and for us, we can now go into the editor and customize the jump trajectory.
Movement Abilities
Sword Dash
The sword dash is like a joust with the sword, you will get a boost of speed in the direction you are looking, so you can use it as a dash forward, upward or downwards. Where it differs from the average dash in many games, is that your sword will get stuck in walls, in which you can then gain an additional jump. so rather then a normal wall jump, you have to use the Sword Dash to do that.
Sword Slash
The sword slash is used to give player an extra degree of control, and in the future you will be able to also use as an attack to destroy boxes. If you use the slash in the air you gain an extra jump.

Level Design Walkthrough

As you can hold jump to go higher, the first task for the player is to do a jump, and then a slightly higher jump. This allows players who already subconsciously hold the jump button to breeze through, but will teach players who don't know that they can go higher by holding.
My main focus was to have players flow with each jump, and for the first level, with the placement of each island, the player will implicitly land where they are supposed to as long as they're moving. However the jumps are easy enough that newer players can slow down and think about each jump.


This jump becomes slightly harder with smaller platforms, and the added challenge of going up rather then falling down. like the last set of jumps, it's easy enough for players that slow down, however there is an increased sense of achievement when players try to do this section quickly. I wanted these jump sections to be precise enough that players going full momentum will land where they want to.