reznok / GMCAbilitySystem

An Unreal Engine plugin that adds an ability system to the General Movement Component plugin
MIT License
27 stars 12 forks source link

Not being able to add active tags to targets via abilities #75

Open rafadsm opened 1 month ago

rafadsm commented 1 month ago

Im trying to add an active tag to a target pawn, coming from the server through an ability. im facing an issue that it only works if i have the "rollback server pawns" option toggled off, when it is on it simply doesnt work at all

if i attempt the same thing, but instead of doing it via ability, doing it just from a key input for example, directly to the server, it also works

considering that this option comes turned on by default, im wondering if theres currently something wrong with it or if im missing something about it.

Im using unreal engine 5.4.1, dev branch

Aherys commented 1 month ago

On 5.3.2, can't reproduce the issue.

rafadsm commented 1 month ago

I recorded a small demonstration of the problem, maybe this can help better to understand what is happening

https://streamable.com/u9hrc9

coyotezin commented 1 month ago

experiencing the same issue on 5.4.0, disabling "roll back server pawns" does seem to fix it but doesnt sound like an ideal workaround

Aherys commented 1 month ago

Hello could you provide your project for repro ?

Or at least showing how you setup your ability.

rafadsm commented 1 month ago

Hello could you provide your project for repro ?

Or at least showing how you setup your ability.

As I mentioned above, I recorded a short demonstration video In the video I show how I used the functions, adding active tags through the ability on a target only works with the rollback server pawn disabled, while doing the same in other places that are not an ability works without deactivating this option

At the moment I don't have time to access the desktop and upload the project I hope the video can demonstrate the problem and how to replicate it would also be grateful if @coyotezin could upload a project if there was time

the comment: https://github.com/reznok/GMCAbilitySystem/issues/75#issuecomment-2121603135

Aherys commented 1 month ago

Yup, i've aknowledge the video, however i would like to know how you attribute the tag in your ability, that why either a repro, either a screenshot of the ability blueprint will help.

rafadsm commented 1 month ago

Yup, i've aknowledge the video, however i would like to know how you attribute the tag in your ability, that why either a repro, either a screenshot of the ability blueprint will help.

Well, everything is shown in the video provided -_-, 0:05 pawn codes, 0:26 ability codes, 1:00 testing ability with RollBackServerPawns enabled, 2:00 disabling RollBackServerPawns & testing again

But anyway, I did upload of project based on GMC Demo with the same codes to reproduce the problem

Make sure to use PlayAsClient netmode and with 2 Players [E] key will try to add active tag in ability to looking target [Q] will run same code of ability, but in pawn class and will works

Also, you need to add ur own GMC & GMCAbilitySystem plugins to the project

Project: https://github.com/rafadsm/GMCv2_Demo

Aherys commented 1 month ago

My bad.

After, for my defense, this is the issue with video, they are really not usefull to demonstrate code as we can't navigate in and i'm pretty sure you can easily understand that we also have our own job and life, please remember this is volontary based support : Help us to help you =)

Aherys commented 1 month ago

I was able to reproduce the issue. I think the issue is the tag is writted by another GMC component inside a GMC component happening after output state of the tag array is writted, meaning that the value is erased everytime.

I will provide a fix in one-two days (or more a work around) on DeepWorlds fork, dunno when or if it will be merged with dev tho.

Aherys commented 1 month ago

Hello,

So the issue was much more complexe to fix than expected, and require a lot of modification. We have an experimental first version who is working (only for effect ATM, so you need to go trough an effect).

https://github.com/DeepWorldsSA/DeepWorlds_GMCAbilitySystem/tree/BL-232-ExternalEffectAndTag

rafadsm commented 1 month ago

Hi, thank you very much for your interest in helping solve this. Im sorry about the work, i ended up seeing that a lot of changes were needed.

Aherys commented 1 month ago

It's fine, cause we need this feature too haha.

We will also add the same process for Ability, and simple tag addition. For the moment, it just require the checkbox "Outer Activation" when you want to use the outer application of an effect.

We will work on a process to have an automatic detection, to make it more fluent for end user.