Supercharge Controller Integration and Movement Project

Published February 26, 2024
Advertisement

Supercharge Controller Integration

This week was tough as far as motivation is concerned. I have been working on the same system for nearly 3 months now due to issues that keep getting reintroduced or reworks that need to be made. After the recent controller implementation I needed to work on integrating controller support for the crystal supercharging system, but the CrystalManagement script and scripts that worked with it have been refactored to the point of me needing to re-familiarize myself with them.

At the beginning of the week I needed to debug our trash can system. On the main branch (containing controller support), this system works, but on merging main into my branch, it broke. This took some time, with several small issues needing to be fixed.

Part of Trash Can ‘DeleteCrystal’ method

The next portion of my time was spent converting how the supercharge system works. Originally, the player would click on a crystal to supercharge it. But we had created a system for controller in which they select the crystal or buff they wish to use, then click where they wish for it to go. To match this, I wanted to place a ‘Supercharge’ buff at the front of our queue. The first thought was to change our queue to a linked list, but I found a link reminding me that I could write a function to extend the functionality of a queue. Here I create a method that converts the queue into a linked list, adds our object at the front, then converts the list back to a queue.

I’m now back into debugging mode. There are a few more issues that are presented when testing the movement of crystals / buffs that I will be able to finish up soon. Part of my time this weekend was taken up by an event in which we allowed people to test our game.

Supercharge Demo

Movement Project

In this project I was fairly ambitious, and I was not able to achieve each of the systems I set out to implement. The idea was to have a movement based combat system. What I did implement was a blended animation tree for WASD ground movement, rolling, and enemy knock up on a roll hit. Below I show the movement blending and rolling. The enemy is knocked upwards and forwards or upwards and backwards depending on if the player rolls from the front or back.

I ran into issues when trying to implement jumping. This whole time, my script was written with animations applying root motion in mind. When it came to jumping, I ran into an issue where I had written a whole jump and fall system before implementing the animation. When doing this, the whole system was janky for a lack of better words. The idea was originally to be able to jump off of a knocked up enemy to shove them back to the ground. I decided to stop where I did as I believe to get a good product, I would have wanted to rewrite a vast majority of my movement script. I learned a lot from this project and may incorporate it into later projects.

Movement blend tree

Roll/Knock Up
1 likes 0 comments

Comments

Nobody has left a comment. You can be the first!
You must log in to join the conversation.
Don't have a GameDev.net account? Sign up!
Advertisement