Unreal Engine Livestream - Action RPG: Gameplay Abilities System - Jan 31 - Live from HQ


WHAT

The Action RPG sample game has gone through changes since its initial release, and in this week’s livestream Sam Deiter and Paulo Souza will walk you through what has changed and why. They will demonstrate how you can add new weapons and abilities, as well as address some of the questions that were not answered in the previous Action RPG stream.

WHEN
Thursday, Jan 31 @ 2:00PM ET - Countdown

WHERE
Twitch
Youtube
Facebook

WHO
Sam Deiter - Sr. Technical Writer - @Sam_Deiter](http://twitter.com/sam_deiter)
Paulo Souza - Unreal Engine Evangelist - @unrealpaulo](http://twitter.com/unrealpaulo)
Amanda Bott - Community Manager - @amandambott](http://twitter.com/amandambott)
Victor Brodin - Community Manager - @victor1erp](http://twitter.com/victor1erp)

RELEVANT
Previous livestream
Action RPG Documentation

COMMUNITY SPOTLIGHT

Piczle Colors

Spykebots

Amber County
https://forums.unrealengine.com/community/released-projects/1576684

ARCHIVE

2 Likes

Awesome!

Looking forward to it! Action RPG is a great resource.

Very cool…

Have to make it a point to tune into the live feed…
Will try and come up with some decent questions beforehand…

Ben Zeigler mentioned that GameplayCue system is due to some changes.

What are those changes going to be ? (;.

Great topic for a stream!

I have some questions:

  1. Is there a chance that you expose the system completely for Blueprints in the near future without having to dig into C++ to use it?

  2. Is the ability system production ready or work in progress? Are there features that don’t work in the current version?

  3. Why is it a plugin and not part of the engine?

  4. Can it be used to create global effects that are persistant between levels? Like “All enemies of type ‘vampire’ have +50% attack speed”?

Looking forward to watching the stream!

Looking forward to it (I didn’t follow what has been updated so far in ActionRPG)! Though it is written for SinglePlayer and MultiPlayer setup needs to be different, it is still a good resource of how designers intended GAS to be used.

  1. An overview of WaitNetSync usages/client side prediction might be interesting for many.

1- the system aimed for performance. you cant get great performance with blueprints. ue c++ is not that complicated. i actually find blueprint way more complicated than c++
2- it was used in paragon and fortnite. so i would say it is solid.
3- not every game needs GAS so it makes sense to make it a plugin. why is this a problem at all ?
4- why would you save attributes level wide ? you should put these attributes in your characters.

Please talk about multiplayer some, specifically locally predicting application and removal of effects.

How can we create a scoped prediction window outside of abilities (say from a fire and forget projectile) on demand?

Is there a way to set the cooldowns to not be overwritten by the server when they rep back from activation in local predicted abilities?

Which replication modes do Fortnite and Paragon use? Full, Mixed, or Minimal?

Yes, BP is slower in general but for some projects you won’t even notice the difference in performance and it would be a user friendly feature if the system would work without having to touch C++.

Sounds good :slight_smile: I’m not sure where I read about uncompleted features / the system’s current state but as far as I remember, there were some unfinished parts

Just curious about it

I’m just interested how the system would handle those situations and how the workflow would look like. Let’s say you want to double the attack speed of all enemies for 30 seconds. Even for the ones that have not actually spawned when the ability was used. When they spawn, they should be affected by the buff. So I wonder about the correct way to add such a feature to a game with the system.

I’m really hoping there will be a better documentation about the system soon, because I think it’s extremely powerful and well designed.

Best regards,
Daniel

Looking forward to it!

Really Awesome!

About the questions, i hope you guys can enlight me

I’m trying to create a action rpg game by myself, but honestly i’m having some issues.

1- I’m trying to implement a dash system like nier automata (you can dash 8-way and them sprint) but somehow i can’t manage to make it work. I’m stuck there for days trying to get likeish results :frowning:

2- How you would setup combos such as O + X, Square, Upper directional + X? I cant get nowhere near to combos like Bayonetta/DMC. How to setup 2 keys input in the combos and make them changeable between themselves?

3- What about Grab enemies and finish them off like god of war? Can’t even imagine how this works

Please spend a significant time covering all the key multiplayer aspects of the system or this livestream will be a waste of time.

There really is no point in using this for a single player game when it was designed for MOBA’s.

Go indepth about multiplayer setups, best settings, replication, projectile prediction so on.

Thank you and keep up the great work! I use this plugin personally and it is powerful

Hi! Great template! Have used it as a base for my souls-like for the past 6 months now, and have found it a great resource for learning the GameplayAbilities system!

  1. How would you make an equipped item change your stats (such as increasing attackpower)?

  2. What changes/approach would be needed to make loot with generated stats? Wouldn’t the weapons assets currently stored as data assets be unsuitable to that purpose? (functionality scenario: you trade with a merchant, and his **items **for sale have randomly generated stats that change every time you open the store, if you buy an item it is stored in your inventory with the stats you bought it with, and it is saved between play sessions, essentially having become a “unique” asset.)

  3. How would you make a GE_GameplayAbility that takes “special input”, such as the first button press throws out a mine, and a second button press detonates it? I wonder about this since I want to avoid cluttering up my playercontroller or character with variables and functions pertaining to the input of specific abilities.

I and other developers in my team using ability system from when it was published. It is a great framework to use when one trying to build some moba like game. So, at first, I want to say thank you Epic for publishing it!

For discussion on the Livestream it would be very useful to clarify this topics:

  1. Attribute calculation flaw. It is not clear from source code the order, conditions, and params of events like PreAttributeChange, PostGameplayEffectExecute and so on.

  2. In ActionRpg there is example of using PostGameplayEffectExecute to callback some event in game on Instant Effect application. But how to callback some event when effect with duration is applied to buff character speed on 10 sec for example?

  3. There is specific issue with effect recalculation. Lets say Character has move speed attribute (base=500,current=500). Then we buff it for 10 seconds like so (base=500,current=700), and then we apply instant effect on level up to buff speed on 100 more points. We expect move speed to become (base=600,current=800). But from ability system we get some other numbers like (base=570,current=750), i don’t remember exactly what the latest numbers are, but I’am sure they are not that we are expecting them to be.

  4. Please, give us more info about Modifiers, Executions, ExecutionCalculation and their calculation rules in Effects. Can we use them to make Effects with damage based on distance from explosion? For now we are using SetByCallerMagnitude node with calculations on Blueprint side, but it would be great to now how to do it with custom ExecutionCalculation or so.

  5. May be we should have effect modifiers calculation algorithm explained in the docs?

  6. Local Predicted Abilities are supposed to be great in multiplayer environment, but there is lack of info and examples of how the one should make such ability blueprints in the right way. There are some notes in source code, but it is very complex system to understand from sources without additional docs and info.

  7. Can you tell us more info about using Ability Targeting actors?

  8. What is the right workflow to use Gameplay Cues?

  9. We have specific issue with Gameplay Cues. They are working on owning client and listen server from the Editor, but in the Development build particles that they should show are absent. Do we need some additional settings for them to be present in Development or Production builds?

Please, explain clearly the PredictionKeys, best practices for revert the Ability when server denies its execution and tips for weak precition. This is very unclear everywhere. Thanks!

We had technical difficulties and had to postpone the stream until next week. Really sorry about this folks, everything was working fine this morning.

That’s okay. Hopefully you guys will spend more time on the questions being asked here.

My main question which I hope is addressed is how to correctly set up abilities that are Locally Predicted for a multiplayer environment. At the moment, if I spawn a projectile in the ability, it spawns 2 of them, one for the client and one on the server. This looks bad from the client POV because he sees two projectiles. The Proxy clients only see the Server spawned projectile which is fine.

So, what’s the best practice for setting up projectiles for a multiplayer environment?

Yeeees!! Great topic for a stream!

I am trying to expand the equipment system in the example so that each item can have multiple abilities, and when the player equips an item in the inventory they can choose what skill will be used (E.g.: The weapons have multiple possible attacks, and the potions can be drunk or thrown). and an item needs to be wielded to be used (e.g. A potion can be wielded just like a weapon)

What do you think would be the best way to implement this?

did this happen ? cant find the video on youtube