Cmushi
Members-
Posts
36 -
Joined
-
Last visited
Content Type
Profiles
Forums
Blogs
Everything posted by Cmushi
-
I might haven been overthinking it. I can just create 5 abilities that each adds +1 engagement and triggers with the condition "not IsEngagedByAnyone(Guid)" using Slot0, Slot1, Slot2, Slot3 and Slot4 as Guid. Only problem that is left is how to limit to not trigger on self. Anyone know of a condition that checks if specific slot is occupied by self?
-
You already added it, that's insane! Edit: Tried it out and it works perfectly. I hoped that I could search condition as well as I can't figure out how to input them in the search query. How do you search for empty, not empty and "IsHealthPercentage(This, LessThanOrEqualTo, 50)" ActivationPrequistes? I tried the following but none seem to work: *GenericAbility.ActivationPrerequisites=empty *GenericAbility.ActivationPrerequisites=null *GenericAbility.ActivationPrerequisites=" " *GenericAbility.ActivationPrerequisites!=empty not *GenericAbility.ActivationPrerequisites=empty *GenericAbility.ActivationPrerequisites=not empty *GenericAbility.ActivationPrerequisites=IsHealthPercentage(This, LessThanOrEqualTo, 50) *GenericAbility.ActivationPrerequisites="IsHealthPercentage(This, LessThanOrEqualTo, 50)"
-
To add more context, the ability grants +1 engagement for each non engaged ally. I think I need to create 4 variants* of the ability using IsEngagedByCount(Guid, EqualTo, 1-4*) as activationConditional to scale it with the number of non engaged allies. Does IsEngagedByCount count the number of engagments of Guid or the number of Guid that are engaged? Whats the difference between PartyAll and PartyAny as Guid in IsEngagedByCount?
-
I am trying to implement an ability similar to Brilliant Tactician (grant status effect to self if all allies have specified condition) but with a scalable status effect that scales on the number of allies with a specified condition instead. I usually try to find a similar ability that already exists ingame and tweak it but I cannot find any except for Brilliant Tactician being the closest. I might be wrong but Brilliant Tactician seems to only trigger on if all or none condition and cannot be tweaked to for each condition. If I have to create the ability from scratch: Create an ability aura that affects allies with a specified condition This aura grants them another ability aura that affects the original user which grants them the scalable status effect The problem that I notice is that aura can only grant status effects and not abilities and I am unsure if there is way to create ability granting auras.
-
When using conditionals in Progression Tables, the auto-complete lists all conditionals, including non-Progression Tables conditionals. I was made aware of this since some conditionals did not not work and saw that there are different conditionals category in https://eternity.obsidian.net/game-data-formats/conditionals. Would it be possible to restrict conditions to their usage? For example: "ProgressionTableHasAbility" appears only Progression Tables conditional auto-completes. "CanUseAbility" and "HasAbility" in RPG (conversations?). "HasActiveAbility" in Targeting Filter (status effects or AI commands?).
-
I noticed that the Paladin ability, Aegis of Loyalty, grants intellect immunity to an ally which is similar to what I am trying to achieve. I copied the implementation, as it triggers an effect when hitting allies but it still did not work. Ability: ApplyOnEvent SE: Immunity SE: I tested Immunity SE by calling it directly via the ability (and skipping ApplyOnEvent SE). "Immunity" appeared in the log after casting Chill Fog on self. This never happened when Chill Fog hit allies while the ability was active. I then tested ApplyOnEvent SE by replacing the Immunity SE with Restore_SE_Heal. Heal only appeared on one ally and not the rest. What I can conclude is the ApplyOnEvent SE is being triggered once and combined with the Immunity SE is preventing from not triggering at all. Are there any changes that can resolve this issue?
-
Thanks @Kvellen. Asking as none of them work in ProgressionTables Conditionals except for ProgressionTableHasAbility. I tried CanUseAbility (even using isItemEquipped(This, Specific_Grimoire)) to check if the Wizard has access to the spell via grimoire but it does not seem to work. I think although the mentioned conditions are usable in ProgressionTables Conditionals, only conditionals with ProgressionTableHas are functional.
-
After countless days figuring out and failing on how to make aoe spells target foes only, I decided that the next best approach is to create copies of wizard spells and tweak their attack to foe only (similarly to Watershaper spells). With the spells restricted to foes only, the problem that I am facing is how to make them available for the wizard to use them. My plan is to add an ability that when activated, foe only aoe spells will replace their original copy for a short duration. I have implemented the restriction for foe only aoe spells by adding the activation ability in their ActivationPrerequisites, however I cannot find a way to make them hidden until the wizard has unlocked the spell and has the activation ability on. I am aware and tried adding the activation ability in VisibilityConditional in BaseProgressionTableAppend but it does not work. I tried switching Category, UnlockStyle and even adding alwaysFalse in VisibilityConditional, but for some reason, the foe only aoe spells are always visible. Is there an alternative way of making abilities visible or hidden on the activation of a seperate ability?
-
For some reason the following ability only activates on self. I tried different status effects but it still only affected self. Is this a bug or did I miss something? { "$type": "Game.GameData.AuraAbilityGameData, Assembly-CSharp", "DebugName": "Cmushi_Spellweaver_Selective_Spellweave", "ID": "a5e25a8f-2484-4d28-9e48-df4f898d14ff", "Components": [ { "$type": "Game.GameData.GenericAbilityComponent, Assembly-CSharp", "KeywordsIDs": [], "DisplayName": 1565691082, "Description": 1565691091, "DescriptionTactical": -1, "UpgradeDescriptions": [], "UpgradedFromID": "00000000-0000-0000-0000-000000000000", "Vocalization": "AbilityCast", "Icon": "Cmushi_Spellweaver_Selective_Spellweave", "UsageType": "Spell", "UsageValue": 0, "AbilityClassID": "acfd1303-4699-4939-91eb-6ac46d4af0bd", "AbilityLevel": 1, "IsPassive": "false", "StackingRuleOverride": "Default", "TriggerOnHit": "false", "IsModal": "false", "ModalGroupID": "00000000-0000-0000-0000-000000000000", "IsCombatOnly": "true", "IsNonCombatOnly": "false", "HideFromUI": "false", "ShowStatusEffects": "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": [ "c0cc58ee-8ef5-4bf7-9dce-f24d30c6c624" ], "RandomizeStatusEffect": "false", "VisualEffects": [], "SelfMaterialReplacementID": "00000000-0000-0000-0000-000000000000", "AttackID": "00000000-0000-0000-0000-000000000000", "AITargetingConditional": { "Conditional": { "Operator": 0, "Components": [] }, "Scripts": [] }, "AudioEventListID": "ca3fbf1d-69ac-4a94-b4fb-3ed1044fc6b5", "GrantedViaScript": "false" }, { "$type": "Game.GameData.AuraAbilityComponent, Assembly-CSharp", "AuraRadius": -1, "ValidTargetTypes": "Ally", "AffectedTargetConditional": { "Conditional": { "Operator": 0, "Components": [] } } }, { "$type": "Game.GameData.ProgressionUnlockableComponent, Assembly-CSharp" } ] }
-
How do I create a wizard ability that make allies immune to aoe spells cast by the wizard? I have done the following: Created an aura ability with Ally as ValidTargetTypes Created a status effect with 999 AOEDefense Added Class Wizard, Source Spell, Target Type AOE as AttackFilter in the status effect (not sure if correct)? I think I need to use ApplicationPrerequisites instead of AttackFilter but I do not know which condition to use. Anyone can point out the correct setup?
-
Create the following folder structure ->override->your mod folder->atlases and the following 2 files inside: SpellAbilityIcons.png SpellAbilityIcons.txt In the image file you can add image icons sized 42 x 42 and add 2 empty pixel between each icon. In the text file add the following lines: First_Icon = 0 0 42 42 Second_Icon = 44 0 42 42 Third_Icon = 0 44 42 42 etc First_Icon is the name that you will give to an icon which will be used to be referenced in the editor, 0 0 are x y coordinates and 42 42 are icon size. So first icon is at the top left of the file, second under the first while third right of first. If you setup everthing correctly, you should be able to view your icons when you open your mod folder inside the editor. If something is unclear, I suggest you download a mod from nexus such as community patch and check how the folder for icons is set up. Hope this helps. Edit: You can also find most of the icons in the wikia.
-
Working on wizard subclass, I am looking for a way to extend durations again but it seems that there are 3 possible solutions: "StatusEffectDurationAdjustment"/"StatusEffectDurationMultiplier" 's which "Adjusts/Multiplies the duration of status effects of the specified Status Effects Value applied to the target by Value." Problem is that I need to add all possible wizard status effects with duration (big list) and the description seems to indicate that it will apply to status effects that a target already have, which means that you cannot extend the duration before casting a spell. "OutgoingAfflictionTypeDurationMult" but it only affects Inspirations and Afflications durations of casting spells. Increasing Intellect/Power Level while decreasing the AOE and Will/Healing, Damage, Defense, Accuracy and Penetration. Any other solution that anyone might know of?
-
I tried adjusting usageValue but it seems it does not affect power pool costs. I then added "IsClassPowerPoolCount(This, Wizard, GreaterThanOrEqualTo, 2)" in ActivationPrerequisites and adding addResource statuseffect that removes 2 casts but it seems I might be missing a way to specify it to level 1 spells. Are there any values that needs to be modified that I might have missed?
-
Tried all 4 TriggerOnEvent but now the power level is not being applied. To add more details, I am adding a one per encounter ability to Wild Mind subclass called "Mind Surge " that when activated, will provide a 10 power level bonus to cipher spells with 100% chance of a Wild Surge. The 100% Wild Surge is triggering but I need to tweak Wild Mind ability to avoid triggering when Mind Surge is triggered. Power Level Status Effect: 100% Wild Surge Status Effect (copied Wild_Mind_SE_AttackOnEvent and tweaked DurationType->OneHitUse and chanetoapply->100 Both status effects are referenced to an ability: