Its been a while since my last update. I’ve been ridiculously busy,
1st, we are having to move to a new house due to our landlord retiring,
2nd, my car developed one fault after another, when finally, all repaired and working well again, someone rear ended me, resulting in whiplash and a f***ed up right arm (I should probably go back to A&E)
3rd, I’ve started my PhD. My first task here is to produce a project proposal this time in more detail and a little more academic, I have six months to get this done. Spent a lot of the time since then researching/reading for my proposal and making a AI editor in unity. This will be used to create the narrative simulator I will be developing.
For now, I’ve managed to find a bit of time to do more game dev work, I went back to my game I was making in UE.
As a nice quick little addition, I want to get some basic attacking working. Just playing an animation at this point, I will make a proper combat system later.
UE makes this stupidly simple. Like before we need a bind it to an action to do this
InputComponent->BindAction("Attack", IE_Pressed, this, &ABrawlPlayerController::OnAttack);
And finally, our code to trigger the animation
void ABrawlPlayerController::OnAttack()
{
ABrawlCharacter* Character = static_cast<ABrawlCharacter*>(GetCharacter());
if (Character && CombatMontage)
{
Character->PlayAnimMontage(CombatMontage, 1.0f);
}
}
We need to expose the animation montage to the controller so we can select which animation to play, to do this I added the following to the controller header file
UPROPERTY(EditDefaultsOnly, Category = "CombatMontage")
UAnimMontage* CombatMontage;
And for now that’s it. Next will be a combat and damage system followed by some simple AI actors to attack.

Next time will be some PhD/Unity stuff.