Skip to content

Commit c5bb911

Browse files
committed
Added PermaStatusEffect.xml for more effects + updated built-in FX. "what is happening"
1 parent f3e4966 commit c5bb911

File tree

6 files changed

+513
-2
lines changed

6 files changed

+513
-2
lines changed

(10)trymemode.stormmap/base.stormdata/GameData.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
<Catalog path="Mods/GameData/HeroesMod/IconGlowing.xml"/>
66
<Catalog path="Mods/GameData/HeroesMod/ModelMimic.xml"/>
77
<Catalog path="Mods/GameData/HeroesMod/PermaArmor.xml"/>
8+
<Catalog path="Mods/GameData/HeroesMod/PermaStatusEffect.xml"/>
89
<Catalog path="Mods/GameData/HeroesMod/TestHero.xml"/>
910
<Catalog path="Mods/GameData/SystemMod/TestSystem.xml"/>
1011
</Includes>

(10)trymemode.stormmap/base.stormdata/Mods/GameData/HeroesMod/PermaArmor.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,11 @@
1212
<!-- Perma-75Armor = Permanent -75 Armor -->
1313
<!-- Perma-50PhysicalArmor = Permanent -50 Physical Armor -->
1414

15-
<!-- (Yes, XML id key allow hyphen (-) symbol) -->
16-
1715
<!-- To apply in game, add the behaviour to the unit, or use the chat command: -->
1816
<!-- "addbehavior" - "adb Perma-75Armor", "adb Perma10SpellArmor" -->
1917

18+
<!-- For Permanent Status Effects, please see PermaStatusEffect.xml file. -->
19+
2020
<!-- ================================================================================== -->
2121

2222
<!-- Force a XML key to ##syntax## will crash the game WTF? ... Brute force it then...-->
Lines changed: 236 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,236 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<Catalog xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://raw.githubusercontent.com/jamiephan/HeroesOfTheStorm_Gamedata/master/xsd/latest.xsd">
3+
4+
<!-- This file added permanent status effects, like unstoppable/fear -->
5+
<!-- To have a status effect, simply add the following behaviors (e.g using tools such as "adb" chat command): -->
6+
7+
<!-- For Permanent +/- Armors, please see PermaArmor.xml file. -->
8+
9+
<!-- ╔═════════════════════════════════════════════════════════════╗ -->
10+
<!-- ║ - Buffs - ║ -->
11+
<!-- ╠═════════════════════════════════════════════════════════════╣ -->
12+
<!-- ║ PermaAbsorbing (e.g Yrel's R ........Ardent Defender) ║ -->
13+
<!-- ║ PermaEvade (e.g Illidan's E......Evasion) ║ -->
14+
<!-- ║ PermaInvulnerable (e.g Uther's R........Divine Shield) ║ -->
15+
<!-- ║ PermaParry (e.g Varian's W.......Parry) ║ -->
16+
<!-- ║ PermaProtect (e.g Medivh's W ......Force of Will) ║ -->
17+
<!-- ║ PermaStasis (e.g Nazeebo's lv13...Ice Block) ║ -->
18+
<!-- ║ PermaSprint (e.g Arthas's lv20....Death's Advance) ║ -->
19+
<!-- ║ PermaStealth (e.g Nova's Trait.....Permanent Cloak ) ║ -->
20+
<!-- ║ PermaUnkillable (e.g Zuljin's R.......Tazdingo) ║ -->
21+
<!-- ║ PermaUnstoppable (e.g Anubarak's E.....Burrow Charge) ║ -->
22+
<!-- ║ PermaUntargetable (e.g Valeera's R......Smoke Bomb) ║ -->
23+
<!-- ╚═════════════════════════════════════════════════════════════╝ -->
24+
25+
<!-- ╔═════════════════════════════════════════════════════════════╗ -->
26+
<!-- ║ - Debuffs - ║ -->
27+
<!-- ╠═════════════════════════════════════════════════════════════╣ -->
28+
<!-- ║ PermaBlind (e.g Johanna's E......Shield Glare) ║ -->
29+
<!-- ║ PermaDisplacement (e.g ETC's W..........Face Melt) ║ -->
30+
<!-- ║ PermaFear (e.g Guldan's R.......Horrify) ║ -->
31+
<!-- ║ PermaMindControl (e.g Sylvanas's R.....Mind Control) ║ -->
32+
<!-- ║ PermaRevealed (e.g Tassadar's lv13..Oracle) ║ -->
33+
<!-- ║ PermaRoot (e.g Malfurion's E....Entangling Roots) ║ -->
34+
<!-- ║ PermaSilence (e.g Sylvanas's R.....Wailing Arrow) ║ -->
35+
<!-- ║ PermaSleep (e.g Ana's E..........Sleep Dart) ║ -->
36+
<!-- ║ PermaSlow (e.g Arthas's E.......Frozen Tempest) ║ -->
37+
<!-- ║ PermaTimeStop (e.g Zeratul's R......Void Prison) ║ -->
38+
<!-- ║ PermaStun (e.g Muradin's Q......Strom Bolt) ║ -->
39+
<!-- ║ PermaTaunt (e.g Varian's R.......Taunt) ║ -->
40+
<!-- ╚═════════════════════════════════════════════════════════════╝ -->
41+
42+
43+
44+
45+
46+
47+
48+
49+
<!-- ============================================================= -->
50+
<!-- ======================== Buffs ============================== -->
51+
52+
<!-- // TODO Make effects separate from the heroes FX, so using the actual ability will not override the effect -->
53+
54+
<!-- Absorbing (// TODO figure how to absorb to heal...)-->
55+
<CBehaviorBuff id="PermaAbsorbing">
56+
<Alignment value="Positive" />
57+
<BehaviorCategories index="Restorable" value="1" />
58+
<BehaviorCategories index="Absorbing" value="1" />
59+
<DamageResponse Chance="1" Priority="96" ModifyFraction="0">
60+
<ModifyScoreArray Value="SelfHealing" />
61+
<RecordBehaviorShieldDamage value="1" />
62+
</DamageResponse>
63+
</CBehaviorBuff>
64+
65+
<!-- Evade-->
66+
<CBehaviorBuff id="PermaEvade" parent="StormEvasion" />
67+
<CActorSimple id="PermaEvadeSimpleFx">
68+
<!-- On Enable -->
69+
<On Terms="Behavior.PermaEvade.On" Send="Create" />
70+
<On Terms="ActorCreation" Send="Create IllidanEvasionCastSound" />
71+
<On Terms="ActorCreation" Target="_Unit" Send="SetOpacity 0.500000 0.100000 Opacity" />
72+
<On Terms="ActorCreation" Target="_Unit" Send="ModelMaterialApply IllidanEvasionGlaze" />
73+
74+
<!-- On Disable -->
75+
<On Terms="Behavior.PermaEvade.Off" Send="Destroy" />
76+
<On Terms="ActorDestruction" Target="_Unit" Send="ClearOpacity 0.250000 Opacity" />
77+
<On Terms="ActorDestruction" Target="IllidanEvasionGlaze" Send="AnimBracketStop BSD" />
78+
</CActorSimple>
79+
80+
<!-- Invulnerable -->
81+
<!-- PermaInvulnerable (Built in) -->
82+
<CActorSimple id="PermaInvulnerableSimpleFX">
83+
<!-- On Enable -->
84+
<On Terms="Behavior.PermaInvulnerable.On" Send="Create" />
85+
<On Terms="ActorCreation" Send="Create AnduinHolyWordSalvationBuffFX" />
86+
<On Terms="ActorCreation" Target="_Unit" Send="ModelMaterialApply AnduinHolyWordSalvationBuffGlazeFX" />
87+
<!-- On Disable -->
88+
<On Terms="Behavior.PermaInvulnerable.Off" Send="Destroy" />
89+
<On Terms="ActorDestruction" Target="AnduinHolyWordSalvationBuffFX" Send="AnimBracketStop BSD" />
90+
<On Terms="ActorDestruction" Target="AnduinHolyWordSalvationBuffGlazeFX" Send="AnimBracketStop BSD" />
91+
</CActorSimple>
92+
93+
<!-- Parry -->
94+
<CBehaviorBuff id="PermaParry" parent="StormProtect">
95+
<BehaviorCategories index="Protected" value="0" />
96+
<BehaviorCategories index="Evasion" value="1" />
97+
<DamageResponse TargetFilters="-;Player,Ally" Priority="95">
98+
<Kind index="Ability" value="0" />
99+
</DamageResponse>
100+
</CBehaviorBuff>
101+
<CActorSimple id="PermaParrySimpleFX">
102+
<!-- On Enable -->
103+
<On Terms="Behavior.PermaParry.On" Send="Create" />
104+
<On Terms="ActorCreation" Send="Create VarianParryActiveSound" />
105+
<On Terms="ActorCreation" Target="_Unit" Send="ModelMaterialApply VarianParryActiveGlaze" />
106+
107+
<!-- On Disable -->
108+
<On Terms="Behavior.PermaParry.Off" Send="Destroy" />
109+
<On Terms="ActorDestruction" Target="VarianParryActiveGlaze" Send="AnimBracketStop BSD" />
110+
</CActorSimple>
111+
112+
113+
<!-- Protect -->
114+
<CBehaviorBuff id="PermaProtect" parent="StormProtect" />
115+
<CActorSimple id="PermaProtectSimpleFX">
116+
<!-- On Enable -->
117+
<On Terms="Behavior.PermaProtect.On" Send="Create" />
118+
<On Terms="ActorCreation" Send="Create Medivh_ForceOfWill_Impact" />
119+
<On Terms="ActorCreation" Target="_Unit" Send="Create MedivhForceOfWillBuffFX" />
120+
121+
<!-- On Disable -->
122+
<On Terms="Behavior.PermaProtect.Off" Send="Destroy" />
123+
<On Terms="ActorDestruction" Target="MedivhForceOfWillBuffFX" Send="AnimBracketStop BSD" />
124+
</CActorSimple>
125+
126+
<!-- Stasis -->
127+
<!-- PermaStasis (Built in) -->
128+
<CBehaviorBuff id="PermaStasis">
129+
<!-- Add Disable movement and weapon to build in-->
130+
<Modification>
131+
<ModifyFlags index="DisableAbils" value="1" />
132+
<ModifyFlags index="SuppressCloak" value="1" />
133+
<ModifyFlags index="SuppressFidgeting" value="1" />
134+
<ModifyFlags index="SuppressMoving" value="1" />
135+
<ModifyFlags index="DisableWeapons" value="1" />
136+
</Modification>
137+
</CBehaviorBuff>
138+
<CActorSimple id="PermaStasisSimpleFX">
139+
<!-- On Enable -->
140+
<On Terms="Behavior.PermaStasis.On" Send="Create" />
141+
<On Terms="ActorCreation" Target="::Main" Send="SetTintColor 129,129,129 0.25 OneShot Active" />
142+
<On Terms="ActorCreation" Target="_Unit" Send="AnimSetPausedAll" />
143+
<!-- On Disable -->
144+
<On Terms="Behavior.PermaStasis.Off" Send="Destroy" />
145+
<On Terms="ActorDestruction" Target="::Main" Send="ClearTintColor 0.25 Active" />
146+
<On Terms="ActorDestruction" Target="_Unit" Send="AnimSetPausedAll 0" />
147+
</CActorSimple>
148+
149+
<!-- Sprint -->
150+
<CBehaviorBuff id="PermaSprint" parent="StormSprint">
151+
<Modification>
152+
<UnifiedMoveSpeedFactor value="0.25" />
153+
</Modification>
154+
</CBehaviorBuff>
155+
156+
<!-- Stealth -->
157+
<CBehaviorBuff id="PermaStealth" parent="StormPersistentCloak" />
158+
159+
<!-- Unkillable -->
160+
<CBehaviorBuff id="PermaUnkillable">
161+
<InfoFlags index="AlwaysUseGameText" value="1" />
162+
<BehaviorCategories index="Restorable" value="1" />
163+
<BehaviorCategories index="Unkillable" value="1" />
164+
<DisplayDuration index="Self" value="1" />
165+
<DisplayDuration index="Ally" value="1" />
166+
<DisplayDuration index="Neutral" value="1" />
167+
<DisplayDuration index="Enemy" value="1" />
168+
<DamageResponse>
169+
<Chance value="1" />
170+
<Priority value="23" />
171+
<Fatal value="1" />
172+
<RecordBehaviorShieldDamage value="1" />
173+
<RestoreLifeAfterFatal value="1" />
174+
<ModifyFraction value="0" />
175+
<ModifyMinimumDamage value="1" />
176+
<ProvideCategories index="Shield" value="1" />
177+
<PreventCategories index="Shield" value="1" />
178+
</DamageResponse>
179+
</CBehaviorBuff>
180+
181+
<!-- Unstoppable -->
182+
<!-- PermaUnstoppable (Built in) -->
183+
184+
<!-- Untargetable -->
185+
<CBehaviorBuff id="PermaUntargetable" parent="StormUnrevealableCloak" />
186+
187+
188+
<!-- ============================================================== -->
189+
<!-- ========================= Debuffs ============================ -->
190+
191+
<!-- Blind -->
192+
<!-- PermaBlind (Built in)-->
193+
194+
<!-- Displacement (// TODO Effects)-->
195+
<CBehaviorBuff id="PermaDisplacement" parent="PushPullParent" />
196+
197+
<!-- Fear -->
198+
<!-- PermaFear (Built in)-->
199+
200+
<!-- Mind Control -->
201+
<CBehaviorBuff id="PermaMindControl" parent="PermaSilence">
202+
<BehaviorCategories index="MindControl" value="1" />
203+
<Modification>
204+
<!-- <ModifyFlags index="SuppressMoving" value="1" /> -->
205+
<ModifyFlags index="DisableWeapons" value="1" />
206+
</Modification>
207+
</CBehaviorBuff>
208+
209+
<!-- Poly -->
210+
<!-- PermaPoly (Built in)-->
211+
212+
<!-- Revealed -->
213+
<CBehaviorBuff id="PermaRevealed" parent="StormReveal" />
214+
215+
<!-- Root -->
216+
<!-- PermaRoot (Built in)-->
217+
218+
<!-- Silence -->
219+
<!-- PermaSilence (Built in)-->
220+
221+
<!-- Sleep -->
222+
<!-- PermaSleep (Built in)-->
223+
224+
<!-- Slow -->
225+
<!-- PermaSlow (Built in)-->
226+
227+
<!-- Time Stop -->
228+
<!-- PermaTimeStop (Built in)-->
229+
230+
<!-- Stun -->
231+
<!-- PermaStun (Built in)-->
232+
233+
<!-- Taunt -->
234+
<CBehaviorBuff id="PermaTaunt" parent="StormTauntParent" />
235+
236+
</Catalog>

0 commit comments

Comments
 (0)