Spherical Posted December 1, 2018 Share Posted December 1, 2018 (edited) Greetings, I've been trying to get this mod to work for a very long time but I can't for the life of me figure out why it wont work. What I'm trying to do is to give my Rogue +1 guile every time he kills an enemy. Setup: When the rogue reaches level 1 he's given a new passive ability called "Endless Loop" (see #1).The new passive ability is created using the GenericAbilityGameData tag (see #2). Scoring a kill triggers a status effect (see #3) that rewards 1 guile (see #4). Code: #1 Progression Table Entry for the New Ability:Rogue_Mod.gamedatabundle { "Note": "PL 1 Unlock - The Endless Loop", "Category": "General", "UnlockStyle": "Unlock", "ActivationObject": "Self", "AddAbilityID": "8ae8458b-75e9-4d51-a8e8-e1c50e6701c4", "RemoveAbilityID": "00000000-0000-0000-0000-000000000000", "Prerequisites": { "MinimumCharacterLevel": 1, "PowerLevelRequirement": { "ClassID": "8efd7667-8bc9-4020-b7f6-5a91b9d04e48", "MinimumPowerLevel": 1 }, "RequiresAbilityID": "00000000-0000-0000-0000-000000000000", "Conditional": { "Operator": 0, "Components": [] }, "VisibilityConditional": { "Operator": 0, "Components": [] }, "IsMutuallyExclusiveUpgrade": "true" }} #2 Generic Ability Table:Rogue_Endless.gamedatabundle { "GameDataObjects": [{ "$type": "Game.GameData.GenericAbilityGameData, Assembly-CSharp", "DebugName": "Rogue_Endless", "ID": "8ae8458b-75e9-4d51-a8e8-e1c50e6701c4", "Components": [{ "$type": "Game.GameData.GenericAbilityComponent, Assembly-CSharp", "KeywordsIDs": [], "DisplayName": 271858309, "Description": 271858310, "UpgradeDescriptions": [], "UpgradedFromID": "00000000-0000-0000-0000-000000000000", "Vocalization": "NoVocalization", "Icon": "gui/icons/abilities/talents/ability_passive_utility.png", "UsageType": "None", "UsageValue": 0, "AbilityClassID": "8efd7667-8bc9-4020-b7f6-5a91b9d04e48", "AbilityLevel": 1, "IsPassive": "true", "StackingRuleOverride": "Default", "TriggerOnHit": "false", "IsModal": "false", "ModalGroupID": "00000000-0000-0000-0000-000000000000", "IsCombatOnly": "false", "IsNonCombatOnly": "false", "HideFromUI": "false", "HideFromCombatLog": "false", "UniqueSet": "None", "NoiseLevelID": "15743f94-1026-40b0-8e13-a667b3f66f63", "DurationOverride": 0, "OverrideEmpower": "Default", "ClearsOnMovement": "false", "CannotActivateWhileInStealth": "false", "CannotActivateWhileInvisible": "false", "ActivationPrerequisites": { "Conditional": { "Operator": 0, "Components": [] } }, "ApplicationPrerequisites": { "Conditional": { "Operator": 0, "Components": [] } }, "DeactivationPrerequisites": { "Conditional": { "Operator": 0, "Components": [] } }, "PowerLevelScaling": { "ScalingType": "Default", "BaseLevel": 0, "LevelIncrement": 1, "MaxLevel": 0, "DamageAdjustment": 1, "DurationAdjustment": 1, "BounceCountAdjustment": 0, "ProjectileCountAdjustment": 0, "AccuracyAdjustment": 0, "PenetrationAdjustment": 0 }, "StatusEffectKeywordsIDs": [], "StatusEffectsIDs": ["03152d0d-a66f-4f7c-86b0-987d1df3046e"], "VisualEffects": [], "SelfMaterialReplacementID": "00000000-0000-0000-0000-000000000000", "AttackID": "00000000-0000-0000-0000-000000000000", "AITargetingConditional": { "Conditional": { "Operator": 0, "Components": [] }, "Scripts": [] }, "AudioEventListID": "00000000-0000-0000-0000-000000000000" }, { "$type": "Game.GameData.ProgressionUnlockableComponent, Assembly-CSharp" }] }]} #3 Status Effect (Apply On Event) Table:Rogue_Endless_SE_ApplyOnEvent.gamedatabundle { "GameDataObjects": [{ "$type": "Game.GameData.StatusEffectGameData, Assembly-CSharp", "DebugName": "Rogue_Endless_SE_ApplyOnEvent", "ID": "03152d0d-a66f-4f7c-86b0-987d1df3046e", "Components": [{ "$type": "Game.GameData.StatusEffectComponent, Assembly-CSharp", "StatusEffectType": "ApplyStatusEffectOnEvent", "OverrideDescriptionString": 271858301, "UseStatusEffectValueAs": "None", "BaseValue": 0, "DynamicValue": { "Stat": "None", "SkillDataID": "00000000-0000-0000-0000-000000000000", "ClassID": "00000000-0000-0000-0000-000000000000", "MultiplyBy": 1, "Operator": "Add" }, "KeywordsIDs": [], "DurationType": "Infinite", "Duration": 0, "MaxStackQuantity": 0, "ApplicationBehavior": "UseLongerDurationIfAlreadyApplied", "ApplicationType": "ApplyOnStart", "IntervalRateID": "00000000-0000-0000-0000-000000000000", "StackedChildrenApplyEffects": "false", "ApplicationPrerequisites": { "Conditional": { "Operator": 0, "Components": [] } }, "TriggerAdjustment": { "TriggerOnEvent": "None", "TriggerOffEvent": "None", "ValidateWithAttackFilter": "false", "ParamValue": 0, "ValueAdjustment": 0, "DurationAdjustment": 0, "ResetTriggerOnEffectTimeout": "false", "MaxTriggerCount": 0, "IgnoreMaxTriggerCount": "false", "RemoveEffectAtMax": "false", "ChanceToTrigger": 1 }, "PowerLevelScaling": { "UseCharacterLevel": "false", "BaseLevel": 0, "LevelIncrement": 1, "MaxLevel": 0, "ValueAdjustment": 0, "DurationAdjustment": 0 }, "IsHostile": "false", "ClearOnCombatEnd": "false", "ClearOnRest": "false", "ClearOnFoodRest": "false", "ClearWhenAttacks": "false", "ClearOnDeath": "false", "HideFromCombatTooltip": "true", "HideFromCombatLog": "false", "HideFromUI": "false", "VisualEffects": [], "MaterialReplacementID": "00000000-0000-0000-0000-000000000000", "AttackFilter": { "KeywordsIDs": [], "KeywordLogic": "Or", "Range": "None", "ClassTypeID": "00000000-0000-0000-0000-000000000000", "Source": "None", "DefendedBy": "None", "Empowered": "false", "Disengagement": "false", "Stealthed": "false", "UseStealthLinger": "false", "PowerLevel": 0, "PowerLevelOperator": "EqualTo", "ChanceToApply": 1, "AttackHostility": "Default" }, "AttackTargetFilter": { "KeywordsIDs": [], "KeywordLogic": "Or", "Race": "None", "IsKith": "false", "HealthPercentage": 0, "HealthOperator": "EqualTo", "Distance": 0, "DistanceOperator": "EqualTo", "HasDOT": "false", "IsMarked": "false", "TargetHostility": "Default" }, "ExtraValue": 1, "OverridePenetration": 0, "DamageTypeValue": "All", "KeywordValueID": "00000000-0000-0000-0000-000000000000", "RaceValue": "None", "StatusEffectTypeValue": "None", "ItemValueID": "00000000-0000-0000-0000-000000000000", "AfflictionTypeValueID": "00000000-0000-0000-0000-000000000000", "StatusEffectsValueIDs": ["1ca9c9d5-3478-4315-b588-0dd167de5f31"], "AttackValueID": "00000000-0000-0000-0000-000000000000", "AttackOverrideValue": "None", "EventValue": "OnScoringKill", "ClassValueID": "00000000-0000-0000-0000-000000000000", "WeaponTypeValue": "None", "AttackHitType": "None", "SkillValueID": "00000000-0000-0000-0000-000000000000", "AudioEventListID": "00000000-0000-0000-0000-000000000000", "BedRestDaysMinimum": 0, "BedRestDaysMaximum": 0 }] }]} #4 Status Effect Table:Rogue_Endless_SE_AddGuile.gamedatabundle { "GameDataObjects": [{ "$type": "Game.GameData.StatusEffectGameData, Assembly-CSharp", "DebugName": "Rogue_Endless_SE_AddGuile", "ID": "1ca9c9d5-3478-4315-b588-0dd167de5f31", "Components": [{ "$type": "Game.GameData.StatusEffectComponent, Assembly-CSharp", "StatusEffectType": "AddResource", "OverrideDescriptionString": -1, "UseStatusEffectValueAs": "None", "BaseValue": 1, "DynamicValue": { "Stat": "None", "SkillDataID": "00000000-0000-0000-0000-000000000000", "ClassID": "00000000-0000-0000-0000-000000000000", "MultiplyBy": 1, "Operator": "Add" }, "KeywordsIDs": [], "DurationType": "Instant", "Duration": 0, "MaxStackQuantity": 0, "ApplicationBehavior": "UseLongerDurationIfAlreadyApplied", "ApplicationType": "ApplyOnStart", "IntervalRateID": "00000000-0000-0000-0000-000000000000", "StackedChildrenApplyEffects": "false", "ApplicationPrerequisites": { "Conditional": { "Operator": 0, "Components": [] } }, "TriggerAdjustment": { "TriggerOnEvent": "None", "TriggerOffEvent": "None", "ValidateWithAttackFilter": "false", "ParamValue": 0, "ValueAdjustment": 0, "DurationAdjustment": 0, "ResetTriggerOnEffectTimeout": "false", "MaxTriggerCount": 0, "IgnoreMaxTriggerCount": "false", "RemoveEffectAtMax": "false", "ChanceToTrigger": 1 }, "PowerLevelScaling": { "UseCharacterLevel": "false", "BaseLevel": 0, "LevelIncrement": 1, "MaxLevel": 0, "ValueAdjustment": 0, "DurationAdjustment": 0 }, "IsHostile": "false", "ClearOnCombatEnd": "false", "ClearOnRest": "false", "ClearOnFoodRest": "false", "ClearWhenAttacks": "false", "ClearOnDeath": "false", "HideFromCombatTooltip": "true", "HideFromCombatLog": "false", "HideFromUI": "false", "VisualEffects": [], "MaterialReplacementID": "00000000-0000-0000-0000-000000000000", "AttackFilter": { "KeywordsIDs": [], "KeywordLogic": "Or", "Range": "None", "ClassTypeID": "00000000-0000-0000-0000-000000000000", "Source": "None", "DefendedBy": "None", "Empowered": "false", "Disengagement": "false", "Stealthed": "false", "UseStealthLinger": "false", "PowerLevel": 0, "PowerLevelOperator": "EqualTo", "ChanceToApply": 1, "AttackHostility": "Default" }, "AttackTargetFilter": { "KeywordsIDs": [], "KeywordLogic": "Or", "Race": "None", "IsKith": "false", "HealthPercentage": 0, "HealthOperator": "EqualTo", "Distance": 0, "DistanceOperator": "EqualTo", "HasDOT": "false", "IsMarked": "false", "TargetHostility": "Default" }, "ExtraValue": 0, "OverridePenetration": 0, "DamageTypeValue": "All", "KeywordValueID": "00000000-0000-0000-0000-000000000000", "RaceValue": "None", "StatusEffectTypeValue": "None", "ItemValueID": "00000000-0000-0000-0000-000000000000", "AfflictionTypeValueID": "00000000-0000-0000-0000-000000000000", "StatusEffectsValueIDs": [], "AttackValueID": "00000000-0000-0000-0000-000000000000", "AttackOverrideValue": "None", "EventValue": "OnApply", "ClassValueID": "8efd7667-8bc9-4020-b7f6-5a91b9d04e48", "WeaponTypeValue": "None", "AttackHitType": "None", "SkillValueID": "00000000-0000-0000-0000-000000000000", "AudioEventListID": "00000000-0000-0000-0000-000000000000", "BedRestDaysMinimum": 0, "BedRestDaysMaximum": 0 }] }]} Anyone knows why this isn't working? Do I need to fulfill some kind of prerequisite (i.e. the mob has to die from a normal auto attack or similar) in order to get the +1 Guile? I'm at my wits end so any help would be greatly appreciated. Please note! All mod files can be found at my GitHub: https://github.com/Spherikal/PoE2-GameplayMods/tree/master/PoE2-RogueTweaks Edited December 4, 2018 by Spherical Editor and DesignerEnhanced User InterfaceNexus Mods | Steam Workshop Link to comment Share on other sites More sharing options...
Armakoir Posted December 2, 2018 Share Posted December 2, 2018 Heya Spherikal. I'm on mobile, so I'm limited. SE #4 should be applied as soon as the passive is trained. Is this the case? 1 My PoE2 Mods: The Class Project | Thrown Weaponry Kits | Informative Proficiency Descriptions Link to comment Share on other sites More sharing options...
Harpagornis Posted December 2, 2018 Share Posted December 2, 2018 Hmmm... thats really strange. I used your code and got an error message in the Progression screen even though i cant say why. When rebuilding the whole thing from scratch (using the same tables like you) its working perfectly fine after testing it ingame. Whenever my Rogue killed an enemy he got back +1 guile. But: Is your new talent showing up in the Progession Tree when leveling up or is just not working after killing enemies? So if its not working i would rebuild it from zero. If its still not working after that we could deliver you the code! 1 PoE II: Druid Shifter: Evolution Mod Link to comment Share on other sites More sharing options...
Spherical Posted December 2, 2018 Author Share Posted December 2, 2018 (edited) Heya Spherikal. I'm on mobile, so I'm limited. SE #4 should be applied as soon as the passive is trained. Is this the case? Heya Armakoir :D I just realized that I accidentally swapped #3 with #4 - updated my original post to make it clearer what each .gamedatabundle file does. The former #4 (now #3) should be applied whenever I kill an enemy since I'm using: "StatusEffectType": "ApplyStatusEffectOnEvent" And further down in the same file I have: "EventValue": "OnScoringKill" I thought that meant that if the requisite (OnScroingKill) is true then the game should apply the status effect (i.e. status effect ID 1ca9c9d5-3478-4315-b588-0dd167de5f31, which is the status effect that rewards the Guile point - see #4). Am I implementing this all wrong? Edited December 2, 2018 by Spherical Editor and DesignerEnhanced User InterfaceNexus Mods | Steam Workshop Link to comment Share on other sites More sharing options...
Spherical Posted December 2, 2018 Author Share Posted December 2, 2018 Hmmm... thats really strange. I used your code and got an error message in the Progression screen even though i cant say why. When rebuilding the whole thing from scratch (using the same tables like you) its working perfectly fine after testing it ingame. Whenever my Rogue killed an enemy he got back +1 guile. But: Is your new talent showing up in the Progession Tree when leveling up or is just not working after killing enemies? So if its not working i would rebuild it from zero. If its still not working after that we could deliver you the code! That is strange! Guess I'm going back to the drawing board to see if I can make it work by rebuilding it from scratch. But yes, the ability shows up fine in the progression table in-game... Editor and DesignerEnhanced User InterfaceNexus Mods | Steam Workshop Link to comment Share on other sites More sharing options...
Harpagornis Posted December 2, 2018 Share Posted December 2, 2018 (edited) ApplyStatusEffect and ScoringOnKill are perfectly fine @spherical - i am using the same setting for one of my Shifter talents! Just rebuild the whole thing maybe there is just one typo missing somewhere... happened to me more than one time... Edited December 2, 2018 by Harpagornis 1 PoE II: Druid Shifter: Evolution Mod Link to comment Share on other sites More sharing options...
Spherical Posted December 2, 2018 Author Share Posted December 2, 2018 ApplyStatusEffect and ScoringOnKill are perfectly right @spherical - i am using the same setting for one of my Shifter talents! Just rebuild the whole thing maybe there is just one typo missing somewhere... happened to me more than one time... :D Yeah, it's what I figure as well. Starting the rebuilding right now, let's hope it works better after I'm finished Editor and DesignerEnhanced User InterfaceNexus Mods | Steam Workshop Link to comment Share on other sites More sharing options...
Spherical Posted December 2, 2018 Author Share Posted December 2, 2018 (edited) Oh and here are two screenshots showing the ability both in the progression table in-game as well as on the character sheet: Screenshot #1 Screenshot #2 Edited December 2, 2018 by Spherical 1 Editor and DesignerEnhanced User InterfaceNexus Mods | Steam Workshop Link to comment Share on other sites More sharing options...
Harpagornis Posted December 2, 2018 Share Posted December 2, 2018 Yeah, that looks right so it should work perfectly fine - at least in theory! 1 PoE II: Druid Shifter: Evolution Mod Link to comment Share on other sites More sharing options...
Spherical Posted December 2, 2018 Author Share Posted December 2, 2018 (edited) Welp, spent the entire day rebuilding all my gameplay mods. A lot of new variables was missing so I thought the Rogue mod might be malfunctioning due to that but it still doesn't work. I give up. The game simply doesn't want my character to gain any Guile when killing enemies. Here are the updated files if anyone is interested: https://github.com/Spherikal/PoE2-GameplayMods/tree/master/PoE2-RogueTweaks UPDATE: I finally got it to work, apparently my main character has a faulty version of the ability activated. I need to respec in order for the mod to work properly. Edited December 2, 2018 by Spherical Editor and DesignerEnhanced User InterfaceNexus Mods | Steam Workshop Link to comment Share on other sites More sharing options...
Harpagornis Posted December 2, 2018 Share Posted December 2, 2018 (edited) Are you sure it isnt working? I tested the whole thing again and i must say: Its working perfectly here! Just try it out with my file even though you will have to modify the DisplayName and Description numbers plus the AbilityID as i am using my own PT! Edited December 2, 2018 by Harpagornis PoE II: Druid Shifter: Evolution Mod Link to comment Share on other sites More sharing options...
Spherical Posted December 2, 2018 Author Share Posted December 2, 2018 (edited) SOLUTION: Are you sure it isnt working? I tested the whole thing again and i must say: Its working perfectly here! Just try it out with my file even though you will have to modify the DisplayName and Description numbers plus the AbilityID as i am using my own PT! Managed to get it to work on a character that didn't have the ability already. Gonna try removing and then re-adding the skill using console commands to see if I can get it to work on my current character too Edit: Works on my current character after removing and then re-adding it through console commands. Edited December 6, 2018 by Spherical 2 Editor and DesignerEnhanced User InterfaceNexus Mods | Steam Workshop Link to comment Share on other sites More sharing options...
Harpagornis Posted December 2, 2018 Share Posted December 2, 2018 (edited) Ah, thats nice! Now i remember that i was running into the same problem some time ago. For whatever reason talents do not get refreshed when the char already got them. However: Happy looping @Spherical. Edited December 2, 2018 by Harpagornis 1 PoE II: Druid Shifter: Evolution Mod Link to comment Share on other sites More sharing options...
sapientNode Posted December 3, 2018 Share Posted December 3, 2018 I like this change a lot. Is the actual guile increase inside 1 file or is it in multiple locations? Link to comment Share on other sites More sharing options...
Armakoir Posted December 3, 2018 Share Posted December 3, 2018 Makes sense, Spherikal. The infinite SE is applied when the ability is trained and only at this time. It will never reapply the SE. 1 My PoE2 Mods: The Class Project | Thrown Weaponry Kits | Informative Proficiency Descriptions Link to comment Share on other sites More sharing options...
Spherical Posted December 4, 2018 Author Share Posted December 4, 2018 (edited) I like this change a lot. Is the actual guile increase inside 1 file or is it in multiple locations? It's actually scattered across a few different files. Here's a .7z-file with all my modifications to the Rogue class: https://mega.nz/#!yHYSAIDB!9ZQXjBBwy0YN37sfWZtns3UuGuLkk03iq-ffRoIFQg8 The stuff I've added are fairly self-explanatory but I'll list them here anyway: At level 1 the Rogue will be able to pick a new passive ability called "The Endless Loop", which will rewards 1 Guile per kill. Also at level 1 the Rogue will now have access to the Barbarian ability "Frenzy". When the Rogue reaches a higher level you'll be able to upgrade the ability to increase it's duration every time you kill an enemy (just like the Barbarian passive "Blood Storm"). The "Escape" ability can now be used out of combat. That's all the mod does. I've also added some new descriptions to the abilities which can be found in the .stringtable-files located in the localized-folder. Enjoy! Oh and if you don't like my other additions to the class just remove them by going into the progression table file (Rogue_Mod.gamedatabundle) as well as removing the relevant .gamedatabundle-files associated with the abilities you want to remove. Edited December 4, 2018 by Spherical Editor and DesignerEnhanced User InterfaceNexus Mods | Steam Workshop Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now