Skip to content

Commit

Permalink
Merge pull request #66 from FFXIV-CombatReborn/Alliance-Raids
Browse files Browse the repository at this point in the history
Void Ark raid series support, Crystal Towerfixes, etc
  • Loading branch information
LTS-FFXIV authored May 1, 2024
2 parents ea60e2b + 58bc861 commit 3cac4bd
Show file tree
Hide file tree
Showing 51 changed files with 728 additions and 359 deletions.
70 changes: 56 additions & 14 deletions BossMod/Modules/Endwalker/Dungeon/D05Aitiascope/D053Amon.cs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,9 @@ public enum OID : uint
Boss = 0x346E,
Helper = 0x233C,
YsaylesSpirit = 0x346F, // R2.000, x1
Ice = 0x1EB26D, // R0.500, x0 (spawn during fight), EventObj type
Unknown = 0x1EB26D, // R0.500, x0 (spawn during fight), EventObj type
Ice = 0x3470, // R6.000, x1

}

public enum AID : uint
Expand All @@ -17,7 +19,7 @@ public enum AID : uint
DarkForte = 25700, // Boss->player, 5.0s cast, single-target //Tankbuster
Entracte = 25701, // Boss->self, 5.0s cast, range 40 circle //Raidwide

DreamsOfIce = 27756, // Helper->self, 14.7s cast, range 6 circle
DreamsOfIce = 27756, // Helper->self, 14.7s cast, range 6 circle // summons ice to hide behind
Epode = 25695, // Helper->self, 8.0s cast, range 70 width 12 rect

EruptionForteVisual = 24709, // Boss->self, 3.0s cast, single-target
Expand All @@ -40,34 +42,74 @@ public enum IconID : uint
Icon_218 = 218, // player
}

class DreamsOfIce(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.DreamsOfIce), new AOEShapeCircle(6));
class Epode(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.Epode), new AOEShapeRect(70, 6));
//class DreamsOfIce(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.DreamsOfIce), new AOEShapeCircle(6));
class Epode(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.Epode), new AOEShapeRect(70, 6, 70));

class EruptionForteAOE(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.EruptionForteAOE), new AOEShapeCircle(8));
class EruptionForteAOE(BossModule module) : Components.LocationTargetedAOEs(module, ActionID.MakeSpell(AID.EruptionForteAOE), 8);

class LeftFiragaForte(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.LeftFiragaForte), new AOEShapeRect(40, 10));
class RightFiragaForte(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.RightFiragaForte), new AOEShapeRect(40, 10));
class LeftFiragaForte(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.LeftFiragaForte), new AOEShapeRect(40, 40, directionOffset: 90.Degrees()));
class RightFiragaForte(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.RightFiragaForte), new AOEShapeRect(40, 40, directionOffset: -90.Degrees()));

class ThundagaForte1(BossModule module) : Components.LocationTargetedAOEs(module, ActionID.MakeSpell(AID.ThundagaForte1), 15);
class ThundagaForte2(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.ThundagaForte2), new AOEShapeCone(20, 22.6f.Degrees()));
class ThundagaForte3(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.ThundagaForte3), new AOEShapeCone(20, 22.6f.Degrees()));

class DarkForte(BossModule module) : Components.SingleTargetCast(module, ActionID.MakeSpell(AID.DarkForte));
class Entracte(BossModule module) : Components.RaidwideCast(module, ActionID.MakeSpell(AID.Entracte));

class DreamsOfIce(BossModule module) : Components.PersistentVoidzoneAtCastTarget(module, 6, ActionID.MakeSpell(AID.DreamsOfIce), m => m.Enemies(OID.Ice).Where(v => v.EventState != 7), 0.1f);

class CurtainCall(BossModule module) : Components.CastLineOfSightAOE(module, ActionID.MakeSpell(AID.CurtainCall), 60, false)
{
public override IEnumerable<Actor> BlockerActors() => Module.Enemies(OID.Ice).Where(a => !a.IsDead);
}

class ThundagaForte(BossModule module) : Components.GenericAOEs(module, ActionID.MakeSpell(AID.Strophe))
{
private List<Actor> _castersThundagaForte2 = new();
private List<Actor> _castersThundagaForte3 = new();

private static readonly AOEShape _shapeThundagaForte2 = new AOEShapeCone(20, 22.6f.Degrees());
private static readonly AOEShape _shapeThundagaForte3 = new AOEShapeCone(20, 22.6f.Degrees());

public override IEnumerable<AOEInstance> ActiveAOEs(int slot, Actor actor)
{
if (_castersThundagaForte2.Count > 0)
return _castersThundagaForte2.Select(c => new AOEInstance(_shapeThundagaForte2, c.Position, c.CastInfo!.Rotation, c.CastInfo!.NPCFinishAt));
else
return _castersThundagaForte3.Select(c => new AOEInstance(_shapeThundagaForte3, c.Position, c.CastInfo!.Rotation, c.CastInfo!.NPCFinishAt));
}

public override void OnCastStarted(Actor caster, ActorCastInfo spell)
{
CastersForSpell(spell.Action)?.Add(caster);
}

public override void OnCastFinished(Actor caster, ActorCastInfo spell)
{
CastersForSpell(spell.Action)?.Remove(caster);
}

private List<Actor>? CastersForSpell(ActionID spell) => (AID)spell.ID switch
{
AID.ThundagaForte2 => _castersThundagaForte2,
AID.ThundagaForte3 => _castersThundagaForte3,
_ => null
};
}

class D053AmonStates : StateMachineBuilder
{
public D053AmonStates(BossModule module) : base(module)
{
TrivialPhase()
.ActivateOnEnter<DreamsOfIce>()
//.ActivateOnEnter<DreamsOfIce>()
.ActivateOnEnter<Epode>()
.ActivateOnEnter<EruptionForteAOE>()
//.ActivateOnEnter<LeftFiragaForte>()
//.ActivateOnEnter<RightFiragaForte>()
.ActivateOnEnter<LeftFiragaForte>()
.ActivateOnEnter<RightFiragaForte>()
.ActivateOnEnter<CurtainCall>()
.ActivateOnEnter<ThundagaForte1>()
.ActivateOnEnter<ThundagaForte2>()
.ActivateOnEnter<ThundagaForte3>()
.ActivateOnEnter<ThundagaForte>()
//.ActivateOnEnter<ThundagaForte3>()
.ActivateOnEnter<DarkForte>()
.ActivateOnEnter<Entracte>();
}
Expand Down
10 changes: 9 additions & 1 deletion BossMod/Modules/Heavensward/Alliance/A11Cetus/A11Cetus.cs
Original file line number Diff line number Diff line change
@@ -1,11 +1,19 @@
namespace BossMod.Heavensward.Alliance.A11Cetus;

class ElectricSwipe(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.ElectricSwipe), new AOEShapeCone(25, 30.Degrees()));
class BodySlam(BossModule module) : Components.LocationTargetedAOEs(module, ActionID.MakeSpell(AID.BodySlam), 10);
class Immersion(BossModule module) : Components.RaidwideCast(module, ActionID.MakeSpell(AID.Immersion));
class ElectricWhorl(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.ElectricWhorl), new AOEShapeDonut(7, 60));
class ExpulsionAOE(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.Expulsion), new AOEShapeCircle(14));
class ExpulsionKnockback(BossModule module) : Components.KnockbackFromCastTarget(module, ActionID.MakeSpell(AID.Expulsion), 30, stopAtWall: true);
class BiteAndRun(BossModule module) : Components.ChargeAOEs(module, ActionID.MakeSpell(AID.BiteAndRun), 2.5f);

[ModuleInfo(BossModuleInfo.Maturity.WIP, Contributors = "CombatReborn Team", GroupType = BossModuleInfo.GroupType.CFC, GroupID = 120, NameID = 4613)]
public class A11Cetus(WorldState ws, Actor primary) : BossModule(ws, primary, new ArenaBoundsCircle(new(-288, -3), 35))
{
protected override void DrawEnemies(int pcSlot, Actor pc)
{
Arena.Actors(Enemies(OID.Boss), ArenaColor.Enemy);
Arena.Actor(PrimaryActor, ArenaColor.Enemy);
Arena.Actors(Enemies(OID.HybodusPup), ArenaColor.Enemy);
Arena.Actors(Enemies(OID.Hybodus), ArenaColor.Enemy);
Arena.Actors(Enemies(OID.Hydrosphere), ArenaColor.Enemy);
Expand Down
28 changes: 11 additions & 17 deletions BossMod/Modules/Heavensward/Alliance/A11Cetus/A11CetusEnums.cs
Original file line number Diff line number Diff line change
Expand Up @@ -9,33 +9,27 @@ public enum OID : uint
Hybodus = 0x13F8, // R3.300, x?
Hydrocore = 0x13FA, // R2.400, x?
Hydrosphere = 0xEEE, // R1.600, x?
Actoreef = 0xEEF, // R1.000, x?
Actor1e8fb8 = 0x1E8FB8, // R2.000, x?, EventObj type
Actor1e9dd7 = 0x1E9DD7, // R2.000, x?, EventObj type
Actor1e9dd9 = 0x1E9DD9, // R2.000, x?, EventObj type
Actor1e9dd8 = 0x1E9DD8, // R2.000, x?, EventObj type
Actor1e8f2f = 0x1E8F2F, // R0.500, x?, EventObj type
Actor1e9e3d = 0x1E9E3D, // R0.500, x?, EventObj type
}

public enum AID : uint
{
AutoAttack1 = 872, // Boss->player, no cast, single-target
Hydrocannon = 5155, // Boss->self, no cast, range 22+R width 6 rect
ElectricSwipe = 5156, // Boss->self, 2.5s cast, range 17+R 60-degree cone
BodySlam = 5158, // Boss->location, 4.0s cast, range 10 circle
Immersion = 5159, // Boss->self, 3.0s cast, range 80+R circle
Symbiosis = 5157, // Boss->self, 2.0s cast, single-target
AutoAttack2 = 870, // Hybodus->player, no cast, single-target
Hydrobomb = 5162, // Cetus->self, no cast, range 10 circle
Jaws = 5165, // Hybodus->player, no cast, single-target

BiteAndRun = 5166, // HybodusPup->player, 15.0s cast, width 5 rect charge
BodySlam = 5158, // Boss->location, 4.0s cast, range 10 circle
ElectricSwipe = 5156, // Boss->self, 2.5s cast, range 17+R 60-degree cone
ElectricWhorl = 5161, // Boss->self, 4.0s cast, range 60 circle
Expulsion = 5160, // Boss->self, 3.0s cast, range 6+R circle
FeedingCall1 = 5163, // Boss->self, no cast, ???
FeedingCall2 = 5395, // Cetus->self, no cast, ???
FeedingCall3 = 5164, // Cetus->self, no cast, ???
Hydrobomb = 5162, // Cetus->self, no cast, range 10 circle
Hydrocannon = 5155, // Boss->self, no cast, range 22+R width 6 rect
Immersion = 5159, // Boss->self, 3.0s cast, range 80+R circle
Jaws = 5165, // Hybodus->player, no cast, single-target
Symbiosis = 5157, // Boss->self, 2.0s cast, single-target // Ads summon
Water = 5168, // Hydrocore->player, 1.0s cast, single-target
Expulsion = 5160, // Boss->self, 3.0s cast, range 6+R circle
BiteAndRun = 5166, // HybodusPup->player, 15.0s cast, width 5 rect charge
}

public enum SID : uint
Expand All @@ -61,4 +55,4 @@ public enum IconID : uint
public enum TetherID : uint
{
Tether_3 = 3, // Hydrosphere->Hydrocore
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,13 @@ class A11CetusStates : StateMachineBuilder
{
public A11CetusStates(BossModule module) : base(module)
{
TrivialPhase();
TrivialPhase()
.ActivateOnEnter<ElectricSwipe>()
.ActivateOnEnter<BodySlam>()
.ActivateOnEnter<Immersion>()
.ActivateOnEnter<ElectricWhorl>()
.ActivateOnEnter<ExpulsionAOE>()
.ActivateOnEnter<ExpulsionKnockback>()
.ActivateOnEnter<BiteAndRun>();
}
}
Original file line number Diff line number Diff line change
@@ -1,5 +1,19 @@
namespace BossMod.Heavensward.Alliance.A12IrminsulSawtooth;

class WhiteBreath(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.WhiteBreath), new AOEShapeCone(28, 60.Degrees()));
class MeanThrash(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.MeanThrash), new AOEShapeCone(12, 60.Degrees()));
class MeanThrashKnockback(BossModule module) : Components.KnockbackFromCastTarget(module, ActionID.MakeSpell(AID.MeanThrash), 10, stopAtWall: true);
class MucusBomb(BossModule module) : Components.SpreadFromCastTargets(module, ActionID.MakeSpell(AID.MucusBomb), 10);
class MucusSpray(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.MucusSpray2), new AOEShapeDonut(6, 20));
class Rootstorm(BossModule module) : Components.RaidwideCast(module, ActionID.MakeSpell(AID.Rootstorm));
class Ambush(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.Ambush), new AOEShapeCircle(9));
class AmbushKnockback(BossModule module) : Components.KnockbackFromCastTarget(module, ActionID.MakeSpell(AID.Ambush), 30, stopAtWall: true);

class ShockwaveStomp(BossModule module) : Components.CastLineOfSightAOE(module, ActionID.MakeSpell(AID.ShockwaveStomp), 60, false)
{
public override IEnumerable<Actor> BlockerActors() => Module.Enemies(OID.Irminsul).Where(a => !a.IsDead);
}

[ModuleInfo(BossModuleInfo.Maturity.WIP, Contributors = "CombatReborn Team", PrimaryActorOID = (uint)OID.Irminsul, GroupType = BossModuleInfo.GroupType.CFC, GroupID = 120, NameID = 4623)]
public class A12IrminsulSawtooth(WorldState ws, Actor primary) : BossModule(ws, primary, new ArenaBoundsCircle(new(0, 130), 35))
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,32 +7,29 @@ public enum OID : uint
SawtoothHelper = 0x1B2, // R0.500, x?, mixed types
SawtoothHelper2 = 0x13F0, // R7.500, x?, 523 type
ArkKed = 0x13F2, // R1.500, x?
Actor1e8f2f = 0x1E8F2F, // R0.500, x?, EventObj type
Actor1e8fb8 = 0x1E8FB8, // R2.000, x?, EventObj type
Actor1e9e1f = 0x1E9E1F, // R2.000, x?, EventObj type
Actor1e9e43 = 0x1E9E43, // R2.000, x?, EventObj type
}

public enum AID : uint
{
Attack1 = 5210, // Irminsul->player, no cast, single-target
Attack2 = 5207, // Sawtooth->players, no cast, range 6+R ?-degree cone
MeanThrash = 5209, // Sawtooth->self, 2.5s cast, range 6+R 120-degree cone
Attack3 = 878, // ArkKed->player, no cast, single-target
Thunderstrike = 5244, // ArkKed->self, no cast, range 10+R width 3 rect

Ambush = 5172, // SawtoothHelper2->self, 3.5s cast, range 9 circle
Unknown1 = 5332, // Sawtooth->self, no cast, single-target
VoidWall = 5203, // SawtoothHelper->Sawtooth, no cast, single-target
VoidWard = 5204, // SawtoothHelper->Irminsul, no cast, single-target
Unknown2 = 5173, // Sawtooth->Irminsul, no cast, single-target
Unknown3 = 5339, // Sawtooth->self, no cast, single-target
MeanThrash = 5209, // Sawtooth->self, 2.5s cast, range 6+R 120-degree cone
MucusBomb = 5205, // SawtoothHelper->players, no cast, ???
MucusSpray1 = 5206, // Sawtooth->self, 3.0s cast, single-target
MucusSpray2 = 5472, // SawtoothHelper->self, no cast, range 20 circle
ShockwaveStomp = 5213, // Sawtooth->self, 15.0s cast, ???
PulseOfTheVoid = 5211, // Irminsul->self, no cast, range 18 circle
Unknown4 = 5368, // SawtoothHelper->self, no cast, single-target
Rootstorm = 5212, // Irminsul->self, 3.0s cast, range 100 circle
ShockwaveStomp = 5213, // Sawtooth->self, 15.0s cast, ???
Thunderstrike = 5244, // ArkKed->self, no cast, range 10+R width 3 rect
Unknown1 = 5332, // Sawtooth->self, no cast, single-target
Unknown2 = 5173, // Sawtooth->Irminsul, no cast, single-target
Unknown3 = 5339, // Sawtooth->self, no cast, single-target
Unknown4 = 5368, // SawtoothHelper->self, no cast, single-target
VoidWall = 5203, // SawtoothHelper->Sawtooth, no cast, single-target
VoidWard = 5204, // SawtoothHelper->Irminsul, no cast, single-target
WhiteBreath = 5208, // Sawtooth->self, 3.5s cast, range 22+R 120-degree cone
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,15 @@ class A12IrminsulSawtoothStates : StateMachineBuilder
{
public A12IrminsulSawtoothStates(BossModule module) : base(module)
{
TrivialPhase();
TrivialPhase()
.ActivateOnEnter<WhiteBreath>()
.ActivateOnEnter<MeanThrash>()
.ActivateOnEnter<MeanThrashKnockback>()
.ActivateOnEnter<MucusBomb>()
.ActivateOnEnter<MucusSpray>()
.ActivateOnEnter<Rootstorm>()
.ActivateOnEnter<Ambush>()
.ActivateOnEnter<AmbushKnockback>()
.ActivateOnEnter<ShockwaveStomp>();
}
}
Original file line number Diff line number Diff line change
@@ -1,12 +1,21 @@
namespace BossMod.Heavensward.Alliance.A13Cuchulainn;

class CorrosiveBile1(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.CorrosiveBile1), new AOEShapeCone(25, 45.Degrees()));
class FlailingTentacles2(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.FlailingTentacles2), new AOEShapeRect(39, 3.5f));
class Beckon(BossModule module) : Components.SelfTargetedAOEs(module, ActionID.MakeSpell(AID.Beckon), new AOEShapeCone(36.875f, 30.Degrees()));
class BileBelow(BossModule module) : Components.RaidwideCast(module, ActionID.MakeSpell(AID.BileBelow));
class Pestilence(BossModule module) : Components.RaidwideCast(module, ActionID.MakeSpell(AID.Pestilence));
class BlackLung(BossModule module) : Components.RaidwideCast(module, ActionID.MakeSpell(AID.BlackLung));
class GrandCorruption(BossModule module) : Components.RaidwideCast(module, ActionID.MakeSpell(AID.GrandCorruption));
class FlailingTentacles2Knockback(BossModule module) : Components.KnockbackFromCastTarget(module, ActionID.MakeSpell(AID.FlailingTentacles2), 30, stopAtWall: true);


[ModuleInfo(BossModuleInfo.Maturity.WIP, Contributors = "CombatReborn Team", GroupType = BossModuleInfo.GroupType.CFC, GroupID = 120, NameID = 4626)]
public class A13Cuchulainn(WorldState ws, Actor primary) : BossModule(ws, primary, new ArenaBoundsCircle(new(287.984f, 138.750f), 35))
{
protected override void DrawEnemies(int pcSlot, Actor pc)
{
Arena.Actors(Enemies(OID.Boss), ArenaColor.Enemy);
Arena.Actor(PrimaryActor, ArenaColor.Enemy);
Arena.Actors(Enemies(OID.Foobar), ArenaColor.Enemy);

}
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,43 +8,26 @@ public enum OID : uint
PlanarFissure = 0x1416, // R2.000, x?
Foobar = 0x1417, // R2.400, x?
BlackPhlegm = 0x1415, // R1.500, x?
Actor1e8fb8 = 0x1E8FB8, // R2.000, x?, EventObj type
Actor1e9de8 = 0x1E9DE8, // R2.000, x?, EventObj type
Actor1e9ded = 0x1E9DED, // R2.000, x?, EventObj type
Actor1e9dee = 0x1E9DEE, // R2.000, x?, EventObj type
Actor1e9def = 0x1E9DEF, // R2.000, x?, EventObj type
Actor1e9deb = 0x1E9DEB, // R2.000, x?, EventObj type
Actor1e9e1d = 0x1E9E1D, // R0.500, x?, EventObj type
Actor1e9de9 = 0x1E9DE9, // R2.000, x?, EventObj type
Actor1e9dd4 = 0x1E9DD4, // R2.000, x?, EventObj type
Actor1e9dd3 = 0x1E9DD3, // R2.000, x?, EventObj type
Actor1e8f2f = 0x1E8F2F, // R0.500, x?, EventObj type
Actor1e9de7 = 0x1E9DE7, // R2.000, x?, EventObj type
Actor1e9dec = 0x1E9DEC, // R2.000, x?, EventObj type
Actor1e9df0 = 0x1E9DF0, // R2.000, x?, EventObj type
Actor1e9dea = 0x1E9DEA, // R2.000, x?, EventObj type
Actor1e9e4c = 0x1E9E4C, // R0.500, x?, EventObj type
}


public enum AID : uint
{
AutoAttack = 872, // Boss/Foobar->player, no cast, single-target
Beckon = 5184, // Boss->self, 7.0s cast, range 30+R 60-degree cone
BileBelow = 5181, // Boss->self, 6.0s cast, ???
BileBombardment = 5177, // CuchulainnHelper->location, 3.0s cast, range 8 circle
BlackLung = 5182, // Boss->self, 3.0s cast, range 80+R circle
CorrosiveBile1 = 5174, // Boss->self, 2.0s cast, single-target
CorrosiveBile2 = 5175, // CuchulainnHelper->self, no cast, range 18+R ?-degree cone
Malaise = 5176, // Boss->self, no cast, single-target
BileBombardment = 5177, // CuchulainnHelper->location, 3.0s cast, range 8 circle
Corruption = 5191, // BlackPhlegm->self, no cast, range 5+R circle
FlailingTentacles1 = 5178, // Boss->self, 5.0s cast, single-target
FlailingTentacles2 = 5179, // CuchulainnHelper->self, 5.0s cast, range 32+R width 7 rect
GrandCorruption = 5192, // BlackPhlegm->self, no cast, range 80+R circle
IdolOfImpurity = 5180, // Boss->self, 3.0s cast, single-target
VoidPact = 5183, // Boss->self, 3.0s cast, single-target
Beckon = 5184, // Boss->self, 7.0s cast, range 30+R 60-degree cone
Malaise = 5176, // Boss->self, no cast, single-target
Pestilence = 5188, // Boss->self, 4.0s cast, range 80+R circle
BlackLung = 5182, // Boss->self, 3.0s cast, range 80+R circle
Corruption = 5191, // BlackPhlegm->self, no cast, range 5+R circle
BileBelow = 5181, // Boss->self, 6.0s cast, ???
GrandCorruption = 5192, // BlackPhlegm->self, no cast, range 80+R circle

VoidPact = 5183, // Boss->self, 3.0s cast, single-target
}

public enum SID : uint
Expand All @@ -64,11 +47,3 @@ public enum SID : uint
TheHeatOfBattle = 365, // none->player, extra=0xA
ReducedRates = 364, // none->player, extra=0x1E
}

public enum IconID : uint
{
}

public enum TetherID : uint
{
}
Loading

0 comments on commit 3cac4bd

Please sign in to comment.