Skip to content

Commit

Permalink
basic Fell Court support
Browse files Browse the repository at this point in the history
  • Loading branch information
LTS-FFXIV committed Apr 29, 2024
1 parent b9439e8 commit acdeede
Show file tree
Hide file tree
Showing 4 changed files with 85 additions and 38 deletions.
18 changes: 0 additions & 18 deletions BossMod/BossMod.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -20,15 +20,6 @@
<RestorePackagesWithLockFile>true</RestorePackagesWithLockFile>
</PropertyGroup>

<ItemGroup>
<Compile Remove="Modules\Endwalker\Dungeon\D09Alzadaal\D091Ambujam.cs" />
<Compile Remove="Modules\Endwalker\Dungeon\D09Alzadaal\D092ArmoredChariot.cs" />
<Compile Remove="Modules\Endwalker\Dungeon\D09Alzadaal\D093Kapikulu.cs" />
<Compile Remove="Modules\Endwalker\Dungeon\D10FellCourt\D101EvilDreamers.cs" />
<Compile Remove="Modules\Endwalker\Dungeon\D10FellCourt\D102Beatrice.cs" />
<Compile Remove="Modules\Endwalker\Dungeon\D10FellCourt\D103Scarmiglione.cs" />
</ItemGroup>

<!-- <PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
<OutputPath>$(AppData)\XIVLauncher\devPlugins\BossMod\</OutputPath>
</PropertyGroup>-->
Expand All @@ -39,15 +30,6 @@
</Content>
</ItemGroup>

<ItemGroup>
<None Include="Modules\Endwalker\Dungeon\D09Alzadaal\D091Ambujam.cs" />
<None Include="Modules\Endwalker\Dungeon\D09Alzadaal\D092ArmoredChariot.cs" />
<None Include="Modules\Endwalker\Dungeon\D09Alzadaal\D093Kapikulu.cs" />
<None Include="Modules\Endwalker\Dungeon\D10FellCourt\D101EvilDreamers.cs" />
<None Include="Modules\Endwalker\Dungeon\D10FellCourt\D102Beatrice.cs" />
<None Include="Modules\Endwalker\Dungeon\D10FellCourt\D103Scarmiglione.cs" />
</ItemGroup>

<ItemGroup>
<Using Include="System" />
<Using Include="System.Collections" />
Expand Down
12 changes: 10 additions & 2 deletions BossMod/Modules/Endwalker/Dungeon/D10FellCourt/D101EvilDreamers.cs
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ public enum AID : uint
UniteMare3 = 29628, // EvilDreamer1->self, 10.0s cast, range 12 circle
DarkVision = 29627, // EvilDreamer4->self, 15.0s cast, range 41 width 5 rect
UnknownAbility2 = 29629, // EvilDreamer4->location, no cast, single-target

// Void Gravity missing, stack marker mechanic
}

public enum SID : uint
Expand All @@ -31,12 +31,20 @@ public enum TetherID : uint
Tether_14 = 14, // SmallerBoss->SmallerBoss
}

class UniteMare1(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.UniteMare1), new AOEShapeCircle(6));
class UniteMare2(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.UniteMare2), new AOEShapeCircle(6));
class UniteMare3(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.UniteMare3), new AOEShapeCircle(12));
class DarkVision(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.DarkVision), new AOEShapeRect(41, 2.5f));

class D101EvilDreamersStates : StateMachineBuilder
{
public D101EvilDreamersStates(BossModule module) : base(module)
{
TrivialPhase();
TrivialPhase()
.ActivateOnEnter<UniteMare1>()
.ActivateOnEnter<UniteMare2>()
.ActivateOnEnter<UniteMare3>()
.ActivateOnEnter<DarkVision>();
}
}

Expand Down
50 changes: 37 additions & 13 deletions BossMod/Modules/Endwalker/Dungeon/D10FellCourt/D102Beatrice.cs
Original file line number Diff line number Diff line change
Expand Up @@ -10,33 +10,57 @@ public enum OID : uint

public enum AID : uint
{
_AutoAttack_Attack = 872, // Boss->player, no cast, single-target
BeatificScorn1 = 29811, // Boss->self, 4.0s cast, single-target
BeatificScorn2 = 29814, // Boss->self, no cast, single-target
BeatificScorn3 = 29815, // Boss->self, no cast, single-target
BeatificScorn4 = 29816, // Boss->self, no cast, single-target
AutoAttack = 872, // Boss->player, no cast, single-target

BeatificScorn1 = 29811, // Boss->self, 4.0s cast, single-target //Visual
BeatificScorn2 = 29814, // Boss->self, no cast, single-target //Visual
BeatificScorn3 = 29815, // Boss->self, no cast, single-target //Visual
BeatificScorn4 = 29816, // Boss->self, no cast, single-target //Visual

BeatificScorn5 = 29817, // Helper->self, 10.0s cast, range 9 circle
DeathForeseen1 = 29821, // Helper->self, 5.0s cast, range 40 circle
DeathForeseen2 = 29828, // Helper->self, 8.0s cast, range 40 circle
EyeOfTroia = 29818, // Boss->self, 4.0s cast, range 40 circle
Hush = 29824, // Boss->player, 5.0s cast, single-target
UnknownAbility1 = 29819, // Boss->self, no cast, single-target
UnknownAbility2 = 29820, // Boss->location, no cast, single-target
VoidNail = 29823, // Helper->player, 5.0s cast, range 6 circle

EyeOfTroia = 29818, // Boss->self, 4.0s cast, range 40 circle //Raidwide

Hush = 29824, // Boss->player, 5.0s cast, single-target //Tankbuster
VoidNail = 29823, // Helper->player, 5.0s cast, range 6 circle //spread

Voidshaker = 29822, // Boss->self, 5.0s cast, range 20 120-degree cone
UnknownAbility1 = 29819, // Boss->self, no cast, single-target
UnknownAbility2 = 29820, // Boss->location, no cast, single-target //Likely Toric Void: A ring AoE around the outside of the area, used at the same time as Eye of Troia.
// Missing Antipreasure stack marker
}

public enum IconID : uint
{
_Gen_Icon_218 = 218, // player
_Gen_Icon_139 = 139, // player
Icon_218 = 218, // player
Icon_139 = 139, // player
}

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

class DeathForeseen1(BossModule module) : Components.CastGaze(module, ActionID.MakeSpell(AID.DeathForeseen1));
class DeathForeseen2(BossModule module) : Components.CastGaze(module, ActionID.MakeSpell(AID.DeathForeseen2));

class Voidshaker(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.Voidshaker), new AOEShapeCone(20, 60.Degrees()));

class VoidNail(BossModule module) : Components.SpreadFromCastTargets(module, ActionID.MakeSpell(AID.VoidNail), 6);
class Hush(BossModule module) : Components.SingleTargetCast(module, ActionID.MakeSpell(AID.Hush));
class EyeOfTroia(BossModule module) : Components.RaidwideCast(module, ActionID.MakeSpell(AID.EyeOfTroia));

class D102BeatriceStates : StateMachineBuilder
{
public D102BeatriceStates(BossModule module) : base(module)
{
TrivialPhase();
TrivialPhase()
.ActivateOnEnter<BeatificScorn5>()
.ActivateOnEnter<DeathForeseen1>()
.ActivateOnEnter<DeathForeseen2>()
.ActivateOnEnter<Voidshaker>()
.ActivateOnEnter<VoidNail>()
.ActivateOnEnter<Hush>()
.ActivateOnEnter<EyeOfTroia>();
}
}

Expand Down
43 changes: 38 additions & 5 deletions BossMod/Modules/Endwalker/Dungeon/D10FellCourt/D103Scarmiglione.cs
Original file line number Diff line number Diff line change
Expand Up @@ -17,23 +17,33 @@ public enum AID : uint
BlightedBladework1 = 30259, // Boss->location, 10.0s cast, single-target
BlightedBladework2 = 30260, // Helper->self, 11.0s cast, range 25 circle
BlightedSweep = 30261, // Boss->self, 7.0s cast, range 40 180-degree cone

CorruptorsPitch1 = 30245, // Boss->self, no cast, single-target
CorruptorsPitch2 = 30247, // Helper->self, no cast, range 60 circle
CorruptorsPitch3 = 30248, // Helper->self, no cast, range 60 circle
CorruptorsPitch4 = 30249, // Helper->self, no cast, range 60 circle

CreepingDecay = 30240, // Boss->self, 4.0s cast, single-target
CursedEcho = 30257, // Boss->self, 4.0s cast, range 40 circle
CursedEcho = 30257, // Boss->self, 4.0s cast, range 40 circle //raidwide

Nox = 30241, // Helper->self, 5.0s cast, range 10 circle

RottenRampage1 = 30231, // Boss->self, 8.0s cast, single-target
RottenRampage2 = 30232, // Helper->location, 10.0s cast, range 6 circle
RottenRampage3 = 30233, // Helper->players, 10.0s cast, range 6 circle

UnknownAbility1 = 30237, // Boss->location, no cast, single-target
UnknownAbility2 = 30244, // Boss->self, no cast, single-target

UnknownWeaponskill = 30234, // Boss->self, no cast, single-target
VacuumWave = 30236, // Helper->self, 5.4s cast, range 40 circle
VoidVortex1 = 30243, // Helper->players, 5.0s cast, range 6 circle

VacuumWave = 30236, // Helper->self, 5.4s cast, range 40 circle //knockback

VoidVortex1 = 30243, // Helper->players, 5.0s cast, range 6 circle //spread
VoidVortex2 = 30253, // Boss->self, no cast, single-target
VoidVortex3 = 30254, // Helper->players, 5.0s cast, range 6 circle
VoidVortex3 = 30254, // Helper->players, 5.0s cast, range 6 circle //stack

// missing firedamp, tankbuster
}

public enum SID : uint
Expand All @@ -55,12 +65,35 @@ public enum TetherID : uint
{
Tether_206 = 206, // Boss->3AE4
}
class VoidVortex1(BossModule module) : Components.SpreadFromCastTargets(module, ActionID.MakeSpell(AID.VoidVortex1), 6);
class VoidVortex3(BossModule module) : Components.StackWithCastTargets(module, ActionID.MakeSpell(AID.VoidVortex3), 6, 8);

class VacuumWave(BossModule module) : Components.KnockbackFromCastTarget(module, ActionID.MakeSpell(AID.VacuumWave), 30, stopAtWall: true);

class BlightedBedevilment(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.BlightedBedevilment), new AOEShapeCircle(9));
class BlightedBladework2(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.BlightedBladework2), new AOEShapeCircle(9));
class Nox(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.Nox), new AOEShapeCircle(10));

class RottenRampage2(BossModule module) : Components.LocationTargetedAOEs(module, ActionID.MakeSpell(AID.RottenRampage2), 6);

class BlightedSweep(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.BlightedSweep), new AOEShapeCone(40, 90.Degrees()));

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

class D103ScarmiglioneStates : StateMachineBuilder
{
public D103ScarmiglioneStates(BossModule module) : base(module)
{
TrivialPhase();
TrivialPhase()
.ActivateOnEnter<VoidVortex1>()
.ActivateOnEnter<VoidVortex3>()
.ActivateOnEnter<VacuumWave>()
.ActivateOnEnter<BlightedBedevilment>()
.ActivateOnEnter<BlightedBladework2>()
.ActivateOnEnter<Nox>()
.ActivateOnEnter<RottenRampage2>()
.ActivateOnEnter<BlightedSweep>()
.ActivateOnEnter<CursedEcho>();
}
}

Expand Down

0 comments on commit acdeede

Please sign in to comment.