-
Notifications
You must be signed in to change notification settings - Fork 116
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
-> Created modules for the following: 110, 120, 130, and 140 -> Went through and made the folllowing changes: -> Added a global hint for floor 100, gave a tip for using a resolution there for the Adds -> Floor 110 forgot to add the Contributor field (woops) -> Floor 20 -> I forgot to add the Palace Hornets to show up in the minimap, also gave them a priority of targeting if using AI mode -> Floor 30 -> Made the formatting the same as floor 130 (personal preference of naming scheme) + made it show a different hint to tell players to move to the center of the arena after x4 cast are made. -> Floor 40 -> Added priority targeting for the NightmareBhoots if using VBM's targeting system (they need to die first) -> ARF module -> 3rd boss -> formatting error? surprised that slipped through the cracks
- Loading branch information
1 parent
e26bd81
commit 7b0cb3b
Showing
9 changed files
with
240 additions
and
10 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
57 changes: 57 additions & 0 deletions
57
BossMod/Modules/Heavensward/DeepDungeon/PalaceOfTheDead/D120Kirtimukha.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,57 @@ | ||
namespace BossMod.Modules.Heavensward.DeepDungeon.PalaceOfTheDead.D120Kirtimukha; | ||
|
||
public enum OID : uint | ||
{ | ||
Boss = 0x1819, // R3.600, x1 | ||
DeepPalaceHornet = 0x1905, // R0.400, x0 (spawn during fight) | ||
} | ||
|
||
public enum AID : uint | ||
{ | ||
AutoAttack = 6499, // Boss->player, no cast, single-target | ||
AutoAttackAdds = 6498, // DeepPalaceHornet->player, no cast, single-target | ||
AcidMist = 7134, // Boss->self, 3.0s cast, range 6+R circle | ||
BloodyCaress = 7133, // Boss->self, no cast, range 8+R 120-degree cone | ||
FinalSting = 919, // DeepPalaceHornet->player, 3.0s cast, single-target | ||
GoldDust = 7135, // Boss->location, 3.0s cast, range 8 circle | ||
Leafstorm = 7136, // Boss->self, 3.0s cast, range 50 circle | ||
RottenStench = 7137, // Boss->self, 3.0s cast, range 45+R width 12 rect | ||
} | ||
|
||
class AcidMist(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.AcidMist), new AOEShapeCircle(9.6f)); | ||
class BossAdds(BossModule module) : Components.Adds(module, (uint)OID.DeepPalaceHornet) | ||
{ | ||
public override void AddAIHints(int slot, Actor actor, PartyRolesConfig.Assignment assignment, AIHints hints) | ||
{ | ||
foreach (var e in hints.PotentialTargets) | ||
e.Priority = (OID)e.Actor.OID switch | ||
{ | ||
OID.DeepPalaceHornet => 2, | ||
OID.Boss => 1, | ||
_ => 0 | ||
}; | ||
} | ||
} | ||
class BloodyCaress(BossModule module) : Components.Cleave(module, ActionID.MakeSpell(AID.BloodyCaress), new AOEShapeCone(11.6f, 60.Degrees()), activeWhileCasting: false); | ||
class FinalSting(BossModule module) : Components.SingleTargetCast(module, ActionID.MakeSpell(AID.FinalSting), "Final sting is being cast! \nKill the add or take 98% of your hp!"); | ||
class GoldDust(BossModule module) : Components.LocationTargetedAOEs(module, ActionID.MakeSpell(AID.GoldDust), 8); | ||
class Leafstorm(BossModule module) : Components.RaidwideCast(module, ActionID.MakeSpell(AID.Leafstorm)); | ||
class RottenStench(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.RottenStench), new AOEShapeRect(47.6f, 6)); | ||
|
||
class D120KirtimukhaStates : StateMachineBuilder | ||
{ | ||
public D120KirtimukhaStates(BossModule module) : base(module) | ||
{ | ||
TrivialPhase() | ||
.ActivateOnEnter<AcidMist>() | ||
.ActivateOnEnter<BossAdds>() | ||
.ActivateOnEnter<BloodyCaress>() | ||
.ActivateOnEnter<FinalSting>() | ||
.ActivateOnEnter<GoldDust>() | ||
.ActivateOnEnter<Leafstorm>() | ||
.ActivateOnEnter<RottenStench>(); | ||
} | ||
} | ||
|
||
[ModuleInfo(BossModuleInfo.Maturity.Contributed, Contributors = "LegendofIceman", GroupType = BossModuleInfo.GroupType.CFC, GroupID = 210, NameID = 5384)] | ||
public class D120Kirtimukha(WorldState ws, Actor primary) : BossModule(ws, primary, new(-300, -235), new ArenaBoundsCircle(24)); |
64 changes: 64 additions & 0 deletions
64
BossMod/Modules/Heavensward/DeepDungeon/PalaceOfTheDead/D130Alfard.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,64 @@ | ||
using BossMod.Heavensward.Dungeon.D06AetherochemicalResearchFacility.D062Harmachis; | ||
|
||
namespace BossMod.Modules.Heavensward.DeepDungeon.PalaceOfTheDead.D130Alfard; | ||
|
||
public enum OID : uint | ||
{ | ||
Boss = 0x181A, // R4.800, x1 | ||
FireVoidPuddle = 0x1E8D9B, // R0.500, x0 (spawn during fight), EventObj type | ||
IceVoidPuddle = 0x1E8D9C, // R0.500, x0 (spawn during fight), EventObj type | ||
} | ||
|
||
public enum AID : uint | ||
{ | ||
AutoAttack = 6501, // Boss->players, no cast, range 6+R ?-degree cone | ||
BallOfFire = 7139, // Boss->location, no cast, range 6 circle | ||
BallOfIce = 7140, // Boss->location, no cast, range 6 circle | ||
Dissever = 7138, // Boss->self, no cast, range 6+R 90-degree cone | ||
FearItself = 7141, // Boss->self, 2.0s cast, range 54+R circle | ||
} | ||
|
||
class Dissever(BossModule module) : Components.Cleave(module, ActionID.MakeSpell(AID.Dissever), new AOEShapeCone(10.8f, 45.Degrees()), activeWhileCasting: false); | ||
class BallofFire(BossModule module) : Components.PersistentVoidzone(module, 6, m => m.Enemies(OID.FireVoidPuddle).Where(z => z.EventState != 7)); | ||
class BallofIce(BossModule module) : Components.PersistentVoidzone(module, 6, m => m.Enemies(OID.IceVoidPuddle).Where(z => z.EventState != 7)); | ||
class FearItself(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.FearItself), new AOEShapeDonut(5, 50)); | ||
|
||
class Hints(BossModule module) : BossComponent(module) | ||
{ | ||
public int NumCasts { get; private set; } | ||
|
||
public override void OnEventCast(Actor caster, ActorCastEvent spell) | ||
{ | ||
if ((AID)spell.Action.ID is AID.BallOfFire or AID.BallOfIce or AID.FearItself) | ||
++NumCasts; | ||
|
||
if (NumCasts >= 5) | ||
{ | ||
NumCasts = 0; | ||
} | ||
} | ||
|
||
public override void AddGlobalHints(GlobalHints hints) | ||
{ | ||
if (NumCasts < 4) | ||
hints.Add($"Bait the boss away from the middle of the arena. \n{Module.PrimaryActor.Name} will cast x2 Fire Puddles & x2 Ice Puddles. \nAfter the 4th puddle is dropped, run to the middle."); | ||
if (NumCasts >= 4) | ||
hints.Add($"Run to the middle of the arena! \n{Module.PrimaryActor.Name} is about to cast a donut AOE!"); | ||
} | ||
} | ||
|
||
class D130AlfardStates : StateMachineBuilder | ||
{ | ||
public D130AlfardStates(BossModule module) : base(module) | ||
{ | ||
TrivialPhase() | ||
.ActivateOnEnter<Dissever>() | ||
.ActivateOnEnter<BallofFire>() | ||
.ActivateOnEnter<BallofIce>() | ||
.ActivateOnEnter<FearItself>() | ||
.ActivateOnEnter<Hints>(); | ||
} | ||
} | ||
|
||
[ModuleInfo(BossModuleInfo.Maturity.Contributed, Contributors = "LegendofIceman", GroupType = BossModuleInfo.GroupType.CFC, GroupID = 211, NameID = 5397)] | ||
public class D130Alfard(WorldState ws, Actor primary) : BossModule(ws, primary, new(-300, -235), new ArenaBoundsCircle(25)); |
59 changes: 59 additions & 0 deletions
59
BossMod/Modules/Heavensward/DeepDungeon/PalaceOfTheDead/D140AhPuch.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,59 @@ | ||
namespace BossMod.Modules.Heavensward.DeepDungeon.PalaceOfTheDead.D140AhPuch; | ||
|
||
public enum OID : uint | ||
{ | ||
Boss = 0x181B, // R3.800, x1 | ||
DeepPalaceFollower = 0x1906, // R1.800, x0 (spawn during fight) | ||
AccursedPoxVoidZone = 0x1E8EA9, // R0.500, x0 (spawn during fight), EventObj type | ||
} | ||
|
||
public enum AID : uint | ||
{ | ||
AutoAttack = 6498, // Boss->player, no cast, single-target | ||
AccursedPox = 7146, // Boss->location, 3.0s cast, range 8 circle | ||
AncientEruption = 7142, // Boss->location, 2.5s cast, range 4 circle | ||
Blizzard = 967, // DeepPalaceFollower->player, 1.0s cast, single-target | ||
EntropicFlame = 7143, // Boss->self, 3.0s cast, range 50+R width 8 rect | ||
Scream = 7145, // Boss->self, 3.0s cast, range 30 circle | ||
ShadowFlare = 7144, // Boss->self, 3.0s cast, range 25+R circle | ||
} | ||
|
||
class Adds(BossModule module) : Components.Adds(module, (uint)OID.DeepPalaceFollower) | ||
{ | ||
public override void AddAIHints(int slot, Actor actor, PartyRolesConfig.Assignment assignment, AIHints hints) | ||
{ | ||
foreach (var e in hints.PotentialTargets) | ||
e.Priority = (OID)e.Actor.OID switch | ||
{ | ||
OID.DeepPalaceFollower => 2, | ||
OID.Boss => 1, | ||
_ => 0 | ||
}; | ||
} | ||
} | ||
class AccursedPox(BossModule module) : Components.LocationTargetedAOEs(module, ActionID.MakeSpell(AID.AccursedPox), 8); | ||
class AncientEruption(BossModule module) : Components.LocationTargetedAOEs(module, ActionID.MakeSpell(AID.AncientEruption), 4); | ||
class AncientEruptionZone(BossModule module) : Components.PersistentInvertibleVoidzone(module, 4, m => m.Enemies(OID.AccursedPoxVoidZone).Where(z => z.EventState != 7)); | ||
class EntropicFlame(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.EntropicFlame), new AOEShapeRect(53.8f, 4)); | ||
class Scream(BossModule module) : Components.RaidwideCast(module, ActionID.MakeSpell(AID.Scream), "Raidwide + Fear, Adds need to be dead by now"); | ||
class ShadowFlare(BossModule module) : Components.RaidwideCast(module, ActionID.MakeSpell(AID.ShadowFlare)); | ||
|
||
|
||
|
||
class D140AhPuchStates : StateMachineBuilder | ||
{ | ||
public D140AhPuchStates(BossModule module) : base(module) | ||
{ | ||
TrivialPhase() | ||
.ActivateOnEnter<Adds>() | ||
.ActivateOnEnter<AccursedPox>() | ||
.ActivateOnEnter<AncientEruption>() | ||
.ActivateOnEnter<AncientEruptionZone>() | ||
.ActivateOnEnter<EntropicFlame>() | ||
.ActivateOnEnter<Scream>() | ||
.ActivateOnEnter<ShadowFlare>(); | ||
} | ||
} | ||
|
||
[ModuleInfo(BossModuleInfo.Maturity.Contributed, Contributors = "LegendofIceman", GroupType = BossModuleInfo.GroupType.CFC, GroupID = 212, NameID = 5410)] | ||
public class D140AhPuch(WorldState ws, Actor primary) : BossModule(ws, primary, new(-300, -237), new ArenaBoundsCircle(25)); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters