This week I implemented bouncing off of enemies heads. Using a test blueprint which I created which was a box with 2 cube hit boxes, one to act as the body of the enemy and another to act as the “head” of the enemy to bounce off of. I then implemented a Blueprint Interface to act as an intermediary between the test enemy and the player.
The interface was set up so that it stores a variable for a vector of +1200Z. This is then called by the enemy when the head hitbox overlaps with another object. To make sure that this doesn’t misfire it checks if the overlapping object implements the interface before continuing. Then it uses a message node to call the event in the overlapping actor.
When the player receives this message it will fire the event jump force node and launch the character +1200Z.
This week I have been researching what I will need to do to implement my next target mechanic. This mechanic is going to be the ability to jump off of enemy heads
The current plan to implement this will be by having the player character have a hitbox placed just below their feet, this will then have an on overlap event that will fire when it is overlapping with an object that is tagged as an enemy. This is to prevent the event firing on other objects by accident. When this is true the blueprint can have an impulse force applied to simulate a jump, if possible I would rather have it so that we use an actual jump event but I don’t yet know if this would be possible to do.
Another measure I want to take when developing this feature is to make it so that it can only activate on a hitbox that will be placed at enemies heads so that the player doesn’t just jump when they run into an enemy.
This week the main goal was to fix some bugs with the player controller I was made aware of this week. These problems occurred when a placeholder asset was introduced to the controller. The problems were that the animations were rotated 90 degrees to the right causing movement to look janky and also the player controller was spinning rapidly whenever the player controller would input any movement.
These problems have been fixed by us moving the test mesh we are using from the inherited mesh slot to within an invisible cube, as this seems to not cause the camera’s parent scene actor’s yaw value to rubber band causing spinning.
After fixing this change we had an issue with the combo system for attacking, so I helped to correct the issues.
Before the changes the attack system would play the first animation and get stuck with the IsAttacking variable not updating correctly causing the player to lose the ability to attack. To fix this we removed the IsAttacking variable and replaced it instead with a delay after the left mouse input is received to delay the attacks, so the player cant attack too quickly.