Personal Development Project - Blog Entry 4
- Martyn Bell
- Mar 14, 2019
- 4 min read
Continuing wall jump
An issue I had previously was that the rotation was only working from the world space directions, therefore the player would only rotate to 180 degrees of the world space, not 180 degrees of the actor’s forward vector.

To fix this is added a universal start rotation that was always relative to the controller’s position at the time of the button press. It then adds a 180 degree turn to the Z axis, initiating the turn.
A final issue I had was that the animation for turning was only playing once, to circumvent this, I just had to change the timeline to play the animation from start.

A change I made to the wall jump is that now the player will be launched up slightly instead of just launched outwards, this creates a sense of momentum from kicking off the wall and allows the player to reach further heights.
Taking my first visual steps
Now that the vast majority of my character work has been completed I have moved onto creating the visuals of the game, as I am not an artist I have sourced some of the models from free online download sites. I downloaded a futuristic gun model that fits the theme and look of the game very well.



The original creator was amarjeetdayal93. Who as in turn inspired by an original design from Titus Simirica.
Gameplay Alterations
I have made tweaks to the mechanics in order to deliver a more realistic flow to the free running that also makes the game harder.

To do this I made it so that the ability to double jump is not reset when you wall run, it is only reset when you hit the floor. The player is still able to jump from one wall to the other, but they have to consider the consequences of trying to reach a wall that now may be too far away.
Bug issues
I found an issue with my wall turn and jump mechanic, the issue is that the player can jump before time stops during the turn and for a very brief moment after the turn, I needed to make it so that the player either forgoes the time stop when they press space during this time, or not allow the player to.
I fixed this by adding a disable input node before the animation, not allowing them to press anything until after the animation is finished, this helps alleviate all of the issues I has previously.

Creating a basic HUD
As a result of removing the iron sights, I had to make a reticle for my gun.

I started by making a simple design in Photoshop and importing it into unreal 4. I then created a widget with the aiming reticle centralised on the screen.

I then tried to add it to the viewport, however this did not produce the desired effects as the gun sway on the animation meant it never fired directly at the reticle 100% of the time. To circumvent this I made it so that the reticle was part of the character blueprint, then linked it to the arrow that the projectiles shoot from so it is always accurate. I also projected it on the screen and not in the world space so that it didn’t clip through geometry.

Creating the enemies
To create an extra layer of challenge in my game I want to implement enemies, in pre-production I planned to create 2 different types of enemies, one type is a simple hazard wall that blocks your path and kills you if you hit it. The second is a lethal turret that kills you and returns you to your last checkpoint in the level.
Creating the hazard wall was very simple, as it requires extremely simple knowledge of the unreal engine to make. I simply added a box collision on a semi-transparent orange plane that kills you on impact.


Since I am not an artist I got a model for the turret from TurboSquid, it was a free model, created for public use by Hypnotoad0. And can be found at the following link:
After I imported the model into unreal, I added some make elements to the design, a stand so that the turret doesn’t just float.


I then began blueprinting in order to make the turret look at me when I enter its collision sphere.

This works slightly, though the turret always faces one direction, even when I rotate the turret to face where it should, the turret will always rotate away from me, and this is something I will fix at a later date.
Colour Coding
As I was getting a little lost navigating my blueprints and understanding what I had completed, I decided to colour code my blueprints to get a better sense of my progress.
Fixing the turret
To fix the turret, I needed to re-import the FBX model and this time force the axis to the unreal engines X axis, forcing the front of the model from the 3DS Max version to the Unreal version.
Finishing the turret
To finish the turret went back and basically remade how the whole system. The existing version would have been more taxing on the engine, thus I went back and instead of running the detection off of a sphere overlap, I ran it off of the location of a tagged actor relative to a float value of the centre of the turret. If the actor goes within the sphere trace radius, the turret will fire at it, but it won’t fire when the line trace for objects, from the projectile firing line, is not hitting actor that do not have the “Targetable” actor, which is everything but the character.
Comments