Skip to content

Commit

Permalink
basic Alzadaal legacy support
Browse files Browse the repository at this point in the history
  • Loading branch information
LTS-FFXIV committed Apr 29, 2024
1 parent 8c9e973 commit b9439e8
Show file tree
Hide file tree
Showing 3 changed files with 74 additions and 25 deletions.
29 changes: 21 additions & 8 deletions BossMod/Modules/Endwalker/Dungeon/D09Alzadaal/D091Ambujam.cs
Original file line number Diff line number Diff line change
Expand Up @@ -14,25 +14,38 @@ public enum OID : uint
public enum AID : uint
{
AutoAttack = 872, // Boss->player, no cast, single-target
BigWave = 28512, // Boss->self, 5.0s cast, range 40 circle
BigWave = 28512, // Boss->self, 5.0s cast, range 40 circle //Raidwide
CorrosiveFountain = 29556, // Helper->self, 7.0s cast, range 8 circle
CorrosiveVenom1 = 29157, // CyanTentacle->self, no cast, single-target
CorrosiveVenom2 = 29158, // Helper->self, 2.5s cast, range 21 circle
CorrosiveVenomVisual = 29157, // CyanTentacle->self, no cast, single-target
CorrosiveVenomAOE = 29158, // Helper->self, 2.5s cast, range 21 circle
TentacleDig1 = 28501, // Boss->self, 3.0s cast, single-target
TentacleDig2 = 28505, // Boss->self, 3.0s cast, single-target
ToxicFountain1 = 29466, // Boss->self, 4.0s cast, single-target
ToxicFountain2 = 29467, // Helper->self, 7.0s cast, range 8 circle
ToxinShower1 = 28507, // ScarletTentacle->self, no cast, single-target
ToxinShower2 = 28508, // Helper->self, 2.5s cast, range 21 circle
ToxicFountainVisual = 29466, // Boss->self, 4.0s cast, single-target
ToxicFountainAOE = 29467, // Helper->self, 7.0s cast, range 8 circle
ToxinShowerVisual = 28507, // ScarletTentacle->self, no cast, single-target
ToxinShowerAOE = 28508, // Helper->self, 2.5s cast, range 21 circle
Unknown1 = 28502, // Boss->self, no cast, single-target
Unknown2 = 28506, // Boss->self, no cast, single-target
}


class CorrosiveFountain(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.CorrosiveFountain), new AOEShapeCircle(8));
class CorrosiveVenomAOE(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.CorrosiveVenomAOE), new AOEShapeCircle(21));
class ToxicFountainAOE(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.ToxicFountainAOE), new AOEShapeCircle(8));
class ToxinShowerAOE(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.ToxinShowerAOE), new AOEShapeCircle(21));

class BigWave(BossModule module) : Components.RaidwideCast(module, ActionID.MakeSpell(AID.BigWave));

class D091AmbujamStates : StateMachineBuilder
{
public D091AmbujamStates(BossModule module) : base(module)
{
TrivialPhase();
TrivialPhase()
.ActivateOnEnter<CorrosiveFountain>()
.ActivateOnEnter<CorrosiveVenomAOE>()
.ActivateOnEnter<ToxicFountainAOE>()
.ActivateOnEnter<ToxinShowerAOE>()
.ActivateOnEnter<BigWave>();
}
}

Expand Down
36 changes: 24 additions & 12 deletions BossMod/Modules/Endwalker/Dungeon/D09Alzadaal/D092ArmoredChariot.cs
Original file line number Diff line number Diff line change
Expand Up @@ -12,23 +12,31 @@ public enum OID : uint
public enum AID : uint
{
AutoAttack = 29132, // Boss->player, no cast, single-target
ArticulatedBits = 28441, // Boss->self, 3.0s cast, range 6 circle
Assail1 = 28456, // Boss->self, no cast, single-target
Assail2 = 28457, // Boss->self, no cast, single-target
AssaultCannon1 = 28442, // ArmoredDrudge->self, 8.0s cast, single-target
AssaultCannon2 = 28443, // ArmoredDrudge->self, 8.0s cast, single-target
AssaultCannon3 = 28444, // Helper->self, no cast, range 40 width 8 rect
AssaultCannon4 = 28445, // Helper->self, no cast, range 28 width 8 rect
CannonReflection1 = 28454, // Helper->self, 8.0s cast, single-target
CannonReflection2 = 28455, // Helper->self, no cast, range 30 ?-degree cone
DiffusionRay = 28446, // Boss->self, 5.0s cast, range 40 circle
GravitonCannon = 29555, // Helper->player, 8.5s cast, range 6 circle

ArticulatedBits = 28441, // Boss->self, 3.0s cast, range 6 circle //Persistent AOE under boss

AssaultCannonVisual1First = 28442, // ArmoredDrudge->self, 8.0s cast, single-target
AssaultCannonVisual2First = 28443, // ArmoredDrudge->self, 8.0s cast, single-target

AssaultCannonAOE1Rest = 28444, // Helper->self, no cast, range 40 width 8 rect
AssaultCannonAOE2Rest = 28445, // Helper->self, no cast, range 28 width 8 rect

DiffusionRay = 28446, // Boss->self, 5.0s cast, range 40 circle //Raidwide

UnknownAbility1 = 28448, // Boss->self, no cast, single-target
UnknownAbility2 = 28449, // Boss->self, no cast, single-target
UnknownAbility3 = 28450, // Boss->self, no cast, single-target
UnknownAbility4 = 28451, // Boss->self, no cast, single-target
UnknownAbility5 = 28452, // Boss->self, no cast, single-target
UnknownAbility6 = 28453, // Boss->self, no cast, single-target

CannonReflectionVisualFirst = 28454, // Helper->self, 8.0s cast, single-target
CannonReflectionAOERest = 28455, // Helper->self, no cast, range 30 ?-degree cone
Assail1 = 28456, // Boss->self, no cast, single-target
Assail2 = 28457, // Boss->self, no cast, single-target

GravitonCannon = 29555, // Helper->player, 8.5s cast, range 6 circle //Spread marker
//Rail Cannon tankbuster not listed
}

public enum SID : uint
Expand All @@ -43,12 +51,16 @@ public enum IconID : uint
{
Icon_329 = 329, // player
}
class DiffusionRay(BossModule module) : Components.RaidwideCast(module, ActionID.MakeSpell(AID.DiffusionRay));
class GravitonCannon(BossModule module) : Components.SpreadFromCastTargets(module, ActionID.MakeSpell(AID.GravitonCannon), 6);

class D092ArmoredChariotStates : StateMachineBuilder
{
public D092ArmoredChariotStates(BossModule module) : base(module)
{
TrivialPhase();
TrivialPhase()
.ActivateOnEnter<DiffusionRay>()
.ActivateOnEnter<GravitonCannon>();
}
}

Expand Down
34 changes: 29 additions & 5 deletions BossMod/Modules/Endwalker/Dungeon/D09Alzadaal/D093Kapikulu.cs
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,10 @@ public enum AID : uint
{
AutoAttack = 870, // Boss->player, no cast, single-target
BastingBlade = 28520, // Boss->self, 5.5s cast, range 60 width 15 rect
BillowingBolts = 28528, // Boss->self, 5.0s cast, range 80 circle
CrewelSlice = 28530, // Boss->player, 5.0s cast, single-target
BillowingBolts = 28528, // Boss->self, 5.0s cast, range 80 circle //Raidwide
CrewelSlice = 28530, // Boss->player, 5.0s cast, single-target //Tankbuster
MagnitudeOpus1 = 28526, // Boss->self, 4.0s cast, single-target
MagnitudeOpus2 = 28527, // Helper->players, 5.0s cast, range 6 circle
MagnitudeOpus2 = 28527, // Helper->players, 5.0s cast, range 6 circle //Stack marker
ManaExplosion = 28523, // Helper->self, 3.0s cast, range 15 circle
PowerSerge = 28522, // Boss->self, 6.0s cast, single-target
SpinOut = 28515, // Boss->self, 3.0s cast, single-target
Expand All @@ -25,6 +25,8 @@ public enum AID : uint
UnknownWeaponskill5 = 28529, // Helper->self, 5.0s cast, range 5 width 40 rect
UnkownAbility = 28514, // Boss->location, no cast, single-target
WildWeave = 28521, // Boss->self, 4.0s cast, single-target

//Missing Rotary Gale, spread marker mechanic
}
public enum SID : uint
{
Expand All @@ -47,13 +49,35 @@ public enum TetherID : uint
Tether_188 = 188, // Boss->Helper
}

class ManaExplosion(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.ManaExplosion), new AOEShapeCircle(15));

class BastingBlade(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.BastingBlade), new AOEShapeRect(60, 7.5f));

class UnknownWeaponskill3(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.UnknownWeaponskill3), new AOEShapeCircle(10));
class UnknownWeaponskill4(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.UnknownWeaponskill4), new AOEShapeRect(6, 3));
class UnknownWeaponskill5(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.UnknownWeaponskill5), new AOEShapeRect(5, 20));

class MagnitudeOpus2(BossModule module) : Components.StackWithCastTargets(module, ActionID.MakeSpell(AID.MagnitudeOpus2), 6, 8);
//class RotaryGale(BossModule module) : Components.SpreadFromCastTargets(module, ActionID.MakeSpell(AID.RotaryGale), 6);

class CrewelSlice(BossModule module) : Components.SingleTargetCast(module, ActionID.MakeSpell(AID.CrewelSlice));
class BillowingBolts(BossModule module) : Components.RaidwideCast(module, ActionID.MakeSpell(AID.BillowingBolts));

class D093KapikuluStates : StateMachineBuilder
{
public D093KapikuluStates(BossModule module) : base(module)
{
TrivialPhase();
TrivialPhase()
.ActivateOnEnter<ManaExplosion>()
.ActivateOnEnter<BastingBlade>()
.ActivateOnEnter<UnknownWeaponskill3>()
.ActivateOnEnter<UnknownWeaponskill4>()
.ActivateOnEnter<UnknownWeaponskill5>()
.ActivateOnEnter<MagnitudeOpus2>()
.ActivateOnEnter<CrewelSlice>()
.ActivateOnEnter<BillowingBolts>();
}
}

[ModuleInfo(BossModuleInfo.Maturity.WIP, Contributors = "CombatReborn Team", GroupType = BossModuleInfo.GroupType.CFC, GroupID = 844, NameID = 11238)]
public class D093Kapikulu(WorldState ws, Actor primary) : BossModule(ws, primary, new ArenaBoundsRect(new(110, -68), 20, 15));
public class D093Kapikulu(WorldState ws, Actor primary) : BossModule(ws, primary, new ArenaBoundsRect(new(110, -68), 15, 20));

0 comments on commit b9439e8

Please sign in to comment.