Commit Graph

712 Commits

Author SHA1 Message Date
Fred Kimberley
5c8c36cf25 Merging ability system changes from the Fortnite branch. Gameplay effects can now be applied to ability system components even if they modify some attributes that are not on the ability system component. Attributes that the ability system component does not have will be skipped and other attributes, tags, etc will be applied.
[CL 2705598 by Fred Kimberley in Main branch]
2015-09-24 21:07:02 -04:00
Fred Kimberley
24a797400f Added a check for set by caller magnitudes in FGameplayEffectSpec::AttemptCalculateDurationFromDef. This prevents errors when trying to create gameplay effect specs in blueprints from definitions with set by caller magnitudes on the duration.
#codereview David.Ratti

[CL 2699678 by Fred Kimberley in Main branch]
2015-09-21 16:24:57 -04:00
David Ratti
91c5c301b3 [AUTOMERGE]
adding more logs to ensure condition that is failing

--------
Integrated using branch UE4-To-UE4-Orion (reversed) of change#2695196 by David.Ratti on 2015/09/17 10:45:14.

[CL 2699450 by David Ratti in Main branch]
2015-09-21 15:07:58 -04:00
Frank Gigliotti
635958dbed [AUTOMERGE]
Fixed ability system crash when reconnecting to a server

* Fixed crash caused by ability instances being deleted without being removed from the instance array.  This would happen to any ability that was flagged as not cancel-able.

=== Bugs Fixed ===
https://jira.ol.epicgames.net/browse/OR-6805

--------
Integrated using branch UE4-To-UE4-Orion (reversed) of change#2695342 by Frank.Gigliotti on 2015/09/17 11:42:56.

[CL 2695507 by Frank Gigliotti in Main branch]
2015-09-17 13:08:38 -04:00
Mieszko Zielinski
995ca4b4ba Expanded FActiveGameplayEffectsContainer::OnActiveGameplayEffectRemovedDelegate with a const FActiveGameplayEffect& parameter indicating removed effect #UE4
Merged over from Orion. Fixed up dependent Fortnite code.

[CL 2692135 by Mieszko Zielinski in Main branch]
2015-09-15 14:27:37 -04:00
Graeme Thornton
aa992d0cde Merging CL 2691463 to Main
Allow derived gameplay cue managers to not begin async loading of object libraries.
Reduce priority of async object library loads

[CL 2691509 by Graeme Thornton in Main branch]
2015-09-15 05:11:54 -04:00
Lina Halper
0f59150df1 #ANIM: Montage supports more than linear blending
- It uses same blend set up as blend list
 - Because of this, now we're not testing weight <ZERO_ANIMWEIGHT, but we test Blend.IsComplete
 - Now we still advance montage since if the custom curve contains longer 0, anim is likely to pause if he comes back from 0. (I had wacky test case)

 #ANIM: Single node instance's inconsistency of montage weight has been resolved

- This also contains montage update change where now montage advance prior to node update
- Also made new function for node update, so that single node instance can use that function instead of nativeupdateanimation, which happens prior to weight update causing all inconsistency
- Enabled node weight debuging define for montage, so that we can see if any other case is causing it
- This also fixes crash when montage gets terminated after weight has been updated

Merging

//depot/UE4-Orion/...

to //depot/UE4-Orion/...

[CL 2687868 by Lina Halper in Main branch]
2015-09-11 10:26:57 -04:00
Gil Gribb
b616d33a96 UE4 - Improved performance for ability system singleton.
[CL 2684408 by Gil Gribb in Main branch]
2015-09-09 07:26:39 -04:00
David Ratti
e7470dea95 [AUTOMERGE]
virtual function for gameplaycuemanager to specify whether it should async load all cues at startup

--------
Integrated using branch UE4-To-UE4-Orion (reversed) of change#2678508 by David.Ratti on 2015/09/03 09:57:33.

[CL 2678512 by David Ratti in Main branch]
2015-09-03 09:58:15 -04:00
Bob Tellez
e9f5fa882d Dev->Main Merging CL#2668915 using UE4-Fortnite-To-UE4
[CL 2675065 by Bob Tellez in Main branch]
2015-08-31 22:22:58 -04:00
Fred Kimberley
d43801a63a Merge CL 2674452 from the Fortnite branch.
Make GetAvatarActor return the avatar actor instead of the owner actor.

#RB Billy.Bramer

[CL 2674537 by Fred Kimberley in Main branch]
2015-08-31 15:56:34 -04:00
Adric Worley
9d134e7464 #ENGINE - Integrating automation test flags refactor
- New filter flags in automationtest.h
- Compile time errors if proper flags are not specified
- Existing tests converted to new flags
- New "disabled" flag
- Filter dropdown in automation UI replaces Smoke Tests button
- Automation features are no longer compiled out in Test configuration at runtime (except in Shipping)
- Enabled automation tests to be triggered from in-game console in non-editor builds (automation controller is enabled)

NOTE: This will force licensees who use automation to update their tests.
#codereview: jason.bestimt, mike.fricker, ben.salem

[CL 2672561 by Adric Worley in Main branch]
2015-08-28 13:23:02 -04:00
Fred Kimberley
79850ed37c Change generation of prediction keys to prevent rolling over and generating invalid keys.
Merged from Fortnite branch CL 2670339

#codereview David.Ratti

[CL 2670346 by Fred Kimberley in Main branch]
2015-08-26 19:39:54 -04:00
David Ratti
4c092825ed [AUTOMERGE]
Fix case where gameplaycue editor was not updating references to notifies that were renamed prioir to being saved to disk.

--------
Integrated using branch UE4-To-UE4-Orion (reversed) of change#2669880 by David.Ratti on 2015/08/26 16:34:32.

[CL 2669881 by David Ratti in Main branch]
2015-08-26 16:34:59 -04:00
David Ratti
145cc1a8c6 [AUTOMERGE]
Make FGameplayAbilityTargetData::ApplyGameplayEffectSpec virtual and take in a non const spec for cases where we want to modify the spec in target data subclasses

--------
Integrated using branch UE4-To-UE4-Orion (reversed) of change#2669350 by David.Ratti on 2015/08/26 11:37:25.

[CL 2669710 by David Ratti in Main branch]
2015-08-26 15:13:53 -04:00
David Ratti
6d3a122bab [AUTOMERGE]
Convert granted ability level property into scalable float so that GEs can grant abilities of arbitrary levels

--------
Integrated using branch UE4-To-UE4-Orion (reversed) of change#2665101 by David.Ratti on 2015/08/21 18:15:28.

[CL 2665105 by David Ratti in Main branch]
2015-08-21 18:18:17 -04:00
David Ratti
e5654a652a [AUTOMERGE]
minor cleanup

--------
Integrated using branch UE4-To-UE4-Orion (reversed) of change#2665027 by David.Ratti on 2015/08/21 17:37:29.

[CL 2665028 by David Ratti in Main branch]
2015-08-21 17:37:45 -04:00
David Ratti
735921a5a7 [AUTOMERGE]
Add safety checks and fallbacks in GetGameplayCueManager

--------
Integrated using branch UE4-To-UE4-Orion (reversed) of change#2664473 by David.Ratti on 2015/08/21 11:19:20.

[CL 2664747 by David Ratti in Main branch]
2015-08-21 14:33:27 -04:00
David Ratti
9610c326e6 [AUTOMERGE]
Fix issue with SetByCaller GE durations
-Now default these to a duration of 1.f (arbitrary) until the SetByCaller magnitude is set. Otherwise the system will treat the GE as an instant effect and early out before the SetByCallerMagnitude can be read.

--------
Integrated using branch UE4-To-UE4-Orion (reversed) of change#2663350 by David.Ratti on 2015/08/20 15:49:52.

[CL 2663354 by David Ratti in Main branch]
2015-08-20 15:50:43 -04:00
Bart Bressler
c2aa702e22 Integrate two changes from Orion to main:
2646936 - Add analog cursor to login screen and frontend for PS4
2656390 - Fix issue on client with anim montages error correcting if the replication structure says it's stopped

[CL 2661388 by Bart Bressler in Main branch]
2015-08-19 14:50:18 -04:00
Bob Tellez
5eea5ea74c #UE4 Made Stacks optional in ApplyGameplayEffectToTarget, just like the variants of the function
#codereview Dave.Ratti

[CL 2653772 by Bob Tellez in Main branch]
2015-08-12 19:12:33 -04:00
David Ratti
fc4b91435b [AUTOMERGE]
-Added GE StackingExpirationPolicy. This can be used to do waterfall style expiration of GE stacks (remove 1 stack and reset duration)
-Added WaitGameplayEffectStackChange task

--------
Integrated using branch UE4-To-UE4-Orion (reversed) of change#2653626 by David.Ratti on 2015/08/12 17:40:40.

[CL 2653664 by David Ratti in Main branch]
2015-08-12 18:00:07 -04:00
David Ratti
afe40991c4 [AUTOMERGE]
Added optional parameter to ApplyGE* functions to take starting stack count

--------
Integrated using branch UE4-To-UE4-Orion (reversed) of change#2653624 by David.Ratti on 2015/08/12 17:40:31.

[CL 2653663 by David Ratti in Main branch]
2015-08-12 18:00:03 -04:00
David Ratti
5c0cdeb508 [AUTOMERGE]
Added GetActiveGameplayEffectDebugString for blueprint debugging

--------
Integrated using branch UE4-To-UE4-Orion (reversed) of change#2653621 by David.Ratti on 2015/08/12 17:40:15.

[CL 2653661 by David Ratti in Main branch]
2015-08-12 17:59:56 -04:00
David Ratti
5f7c504854 Integration from development branch:
CL 2651151
Fix GameplayCues being invoked from ActiveGameplayEffectsContainer::NetDeltaSerialize when there are unmapped objects, which can cause GCs to be invoked with incomplete information in their EffectContext.
- Fixes Phase link GC not having SourceObject info to link from volume to caster

CL 2649496
Fix OptionalExternalTarget for WaitGameplayTag* tasks

CL 2644908
AbilityTask_WaitGameplayEvent. Allows abilities to explicitly listen for Gameplay Events (previously could only be activated from them).

CL 2644751
Tracking cases where AGameplayAbilityTargetActor fails to remove delegates from the ASC it applied them to - hoping to track down cause of #OR-5548 crash (that was fixed with nullptr checks)

CL 2643962
Fix occasional crash in AGameplayAbilityTargetActor - added nullptr checks, can't assume we have a valid OwningAbility pointer. #OR-5548

CL 2643797
GameplayEffect GrantedAbilities respect Effect inhibition (ongoing tag requirements) - abilities are applied/removed/cancelled based on whether the ongoing tags are met or not.
Previously, if application tags passed, target would have the granted ability for full duration of effect application, even if the ongoing tags weren't met
Fixes Rampage's E (which applies Juggernaut tag) not granting CC immunity after already being affected by the CC effects #OR-4019

CL 2643360
Fix ensures on exiting PIE - trying to spawn new instanced cue during level cleanup #OR-5521
Level being cleaned up, TravelMode triggering a GC removal that tries to spawn an instanced cue actor to handle the cue
ASC now are marked as unregistered during the unregistration process - previously they would DestroyActiveState() and then mark themselves as unregistered. There was nothing during DestroyActiveState() that allowed any system to know that they were in the process of being unregistered.
GameplayCues are now not handled by OrionChars that are pending kill or have ASCs that are pending kill or unregistered (or do not have ASCs)

CL 2642415
GetModfiedAttributeMagnitude - support for getting amount attribute changes from an applied GE spec

CL 2642414
Add support for periodic effects to WaitGameplayEffectApplied/Self

CL 2642413
Added delegate for periodic effects executing on target/self
Move PruneModifierAttributes to the constructor of FGameplayEffectSpecForRPC. This is to allow server code to look at the modified attribute list even if the GC doesn't need it.
Remove ApplyStackingLogicPostApplyAsSource function since it wasn't doing anything.

CL 2641147
Added DestroyActiveState to ASC so unregistering the component while in-flight abilities are active do not crash.
Added option for reusing player states when they become inactive instead of duplicated them.
Fixed crash for returning players during JIP.

CL 2637792
Temp fix for simulated ability tasks not having valid AbilitySystemComponents and crashing

CL 2637461
Orion game code fixes to go along with Integration from UE4-Stable @ CL 2634937. This includes all 4.9 revisions up to CL 2633546, which includes all UE4 (main) revisions up to CL 2613150. Note: many fixes were spot integrated after CL 2613150.

CL 2637431
Integration from UE4-Stable @ CL 2634937. This includes all 4.9 revisions up to CL 2633546, which includes all UE4 (main) revisions up to CL 2613150. Note: many fixes were spot integrated after CL 2613150.

CL 2635403
Add support for AbilitySystemComponent end debug display to flood to new columns to avoid cases where there's too much info to fit on one screen

CL 2635282
Added title text to AbilitySystemComponent end debug key cycling - contains category of debug information along with avatar and owner info and their respective roles. Saves brain cycles on figuring out what you're looking at (and if you're on local player vs simulated, etc.)

CL 2634858
Ability system debug component draw debug
Added view "Attributes" to only show attributes
Don't draw attributes in "aggregator view" if they have no active aggregators (inhibited still draw)
Show level on GEs with level > 1

[CL 2651831 by David Ratti in Main branch]
2015-08-11 17:01:31 -04:00