Bug fixes in the magic system.

Fixed the collision profile on the rune overlap volumes. Previously they collided with weapons, which while funny, is unintended behavior.

Fixed a order of operation issue where runes would sometimes not count as being destroyed and would not update the current number of spawned runes.

Removed references to the Input Buffer component from the Taking Damage component, the eventual goal is still to get rid of the taking damage component.

Implemented the Event Stop Magic Charge on interface event on the BP AI Parent to fix the bug where an interruption would put the NPC in a loop where they couldnt cast spells.

Put a check in the task T_ChargeSpell to make sure we arent trying to charge a spell if we already have an active one.

Another day, another shit storm of Niagara related crashes. Absolute dog shit system.

Duplicated the BTGSFunctionLibrary and named it BTGSMagicFunctionLibrary so we could rip out all of the magic functions from it to better isolate the systems form each other for less dependencies. The regular function library has a lot of dependencies related to the base object that we dont need for anything magic related.

Created a new event inside the BTGSInterface called ResetMeleeAttackOnInterface this is so we can reset melee attacks without a hard ref to the melee component inside of the BP AI Controller.

Implemented the new event inside the AI Parent so that we can now reset the melee attack without the hard ref inside the AI controller.

Created a new event inside the BTGSInterface called AIRollBackwards_OnInterface so we can force the NPC to roll backwards when they are using a bow without hard references.

Reduced the size of the Magic component from 35mb down to 2.3mb. Also reduced its number of references from over 1200 down to 165.

Removed references to the Input buffer component and melee component from the combat status component.

Created a new event inside the BTGSInterface called EndNPCBlocking_OnInterface this is so i could get rid of the hard ref inside of the combat status component.

Removed a reference to the resource component from the equipment component. The plan is still to get rid of the resource component all together at some point.

Found that all of our spell effects VFX files are not set properly passing that off to Megan to be fixed.

Found that all the colors for our destruction projectile spells aren’t nearly noticeable enough Jackie previously set all the colors on the smoke on them but not the flames leading them to all look the same. She is gonna fix those now.

Created a new interface event called UpdateCurrentNumberOfGroundSpells_OnInterface, this is to help us track and control how many ground spells the character can cast.

Created a new interface event called UpdateCurrentNumberOfSkySpells_OnInterface, this is to help us track and control how many sky spells the character can cast.

Added new variables to the BTGS Stats component for max and current number of active sky and ground spells.

Added a pure function to the BTGS Stats component to return whether or not we can cast a ground spell.

Added a pure function to the BTGS Stats component to return whether or not we can cast a sky spell.

Started debugging the issues where the NPC could cast multiple Ground spells even with our new variables and functions. The issue seems to stem from the way we originally designed ground spells to work they were and are channel spells meaning that the npc is supposed to not be able to do anything else until that spell is done, but they act more like projectile spells now in that they cast the spell and then its damage tick is handled inside the same BP_AbilityParent because these are AOE effects. I think we need to convert these to basically be handled the same way as we do rune spells. We spawn the ground spell at a location and then let that newly spawned object handle the damage tick and the updating of the total number of current active ground spells. I can’t really foresee an issue with this method so far. Ill need to continue working on it tomorrow.

Previous
Previous

Ground and Sky spell conversion to Rune Style casting

Next
Next

More work on the Magic system.