Skip to content

Commit

Permalink
Merge pull request gw2scratch#236 from Linkaaaaa/lonely-tower
Browse files Browse the repository at this point in the history
  • Loading branch information
Sejsel authored Jun 4, 2024
2 parents f990b59 + adfae1a commit fdfe74f
Show file tree
Hide file tree
Showing 13 changed files with 47 additions and 1 deletion.
1 change: 1 addition & 0 deletions ArcdpsLogManager/Controls/LogEncounterFilterTree.cs
Original file line number Diff line number Diff line change
Expand Up @@ -265,6 +265,7 @@ private Image GetCategoryIcon(EncounterCategory category)
EncounterCategory.FractalShatteredObservatory => imageProvider.GetFractalMapIcon(),
EncounterCategory.FractalSunquaPeak => imageProvider.GetFractalMapIcon(),
EncounterCategory.FractalSilentSurf => imageProvider.GetFractalMapIcon(),
EncounterCategory.FractalLonelyTower => imageProvider.GetFractalMapIcon(),
EncounterCategory.Map => imageProvider.GetTinyInstanceIcon(),
_ => null
};
Expand Down
2 changes: 2 additions & 0 deletions ArcdpsLogManager/ImageProvider.cs
Original file line number Diff line number Diff line change
Expand Up @@ -145,6 +145,7 @@ public class ImageProvider
private Lazy<Image> DarkAiKeeperOfThePeakIcon { get; } = new Lazy<Image>(Resources.GetDarkAiKeeperOfThePeakIcon);
private Lazy<Image> BothPhasesAiKeeperOfThePeakIcon { get; } = new Lazy<Image>(Resources.GetBothPhasesAiKeeperOfThePeakIcon);
private Lazy<Image> KanaxaiIcon { get; } = new Lazy<Image>(Resources.GetKanaxaiIcon);
private Lazy<Image> EparchIcon { get; } = new Lazy<Image>(Resources.GetEparchIcon);

// FESTIVALS
private Lazy<Image> FreezieIcon { get; } = new Lazy<Image>(Resources.GetFreezieIcon);
Expand Down Expand Up @@ -367,6 +368,7 @@ public Image GetTinyEncounterIcon(Encounter encounter)
Encounter.AiKeeperOfThePeakNightOnly => DarkAiKeeperOfThePeakIcon.Value,
Encounter.AiKeeperOfThePeakDayAndNight => BothPhasesAiKeeperOfThePeakIcon.Value,
Encounter.Kanaxai => KanaxaiIcon.Value,
Encounter.Eparch => EparchIcon.Value,
// FESTIVALS
Encounter.Freezie => FreezieIcon.Value,
// TRAINING AREA
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions ArcdpsLogManager/Logs/Filters/Groups/CategoryLogGroup.cs
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ public class CategoryLogGroup : LogGroup
{EncounterCategory.FractalShatteredObservatory, "Shattered Observatory" },
{EncounterCategory.FractalSunquaPeak, "Sunqua Peak" },
{EncounterCategory.FractalSilentSurf, "Silent Surf" },
{EncounterCategory.FractalLonelyTower, "Lonely Tower" },
{EncounterCategory.SpecialForcesTrainingArea, "Special Forces Training Area"},
{EncounterCategory.Other, "Uncategorized (PvE)"},
{EncounterCategory.Festival, "Festivals"},
Expand Down
1 change: 1 addition & 0 deletions ArcdpsLogManager/Resources.cs
Original file line number Diff line number Diff line change
Expand Up @@ -182,6 +182,7 @@ public static Image GetInstabilityImage(string iconName)
public static Image GetDarkAiKeeperOfThePeakIcon() => GetEncounterImage("Dark_Ai");
public static Image GetBothPhasesAiKeeperOfThePeakIcon() => GetEncounterImage("Both_Phases_Ai");
public static Image GetKanaxaiIcon() => GetEncounterImage("Mini_Kanaxai");
public static Image GetEparchIcon() => GetEncounterImage("Mini_Eparch");

// FESTIVALS
public static Image GetFreezieIcon() => GetEncounterImage("Mini_Freezie");
Expand Down
3 changes: 3 additions & 0 deletions EVTCAnalytics/GameData/Encounters/Encounter.cs
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,9 @@ public enum Encounter
// Fractals - Silent Surf
Kanaxai = 10031,

// Fractals - Lonely Tower
Eparch = 10041,

// Festivals - Wintersday
Freezie = 20001,

Expand Down
2 changes: 2 additions & 0 deletions EVTCAnalytics/GameData/Encounters/EncounterCategories.cs
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@ public static class EncounterCategories
{Encounter.AiKeeperOfThePeakNightOnly, EncounterCategory.FractalSunquaPeak},
{Encounter.AiKeeperOfThePeakDayAndNight, EncounterCategory.FractalSunquaPeak},
{Encounter.Kanaxai, EncounterCategory.FractalSilentSurf},
{Encounter.Eparch, EncounterCategory.FractalLonelyTower},
{Encounter.Freezie, EncounterCategory.StrikeMissionFestival},
{Encounter.StandardKittyGolem, EncounterCategory.SpecialForcesTrainingArea},
{Encounter.MediumKittyGolem, EncounterCategory.SpecialForcesTrainingArea},
Expand Down Expand Up @@ -102,6 +103,7 @@ public static class EncounterCategories
EncounterCategory.FractalShatteredObservatory,
EncounterCategory.FractalSunquaPeak,
EncounterCategory.FractalSilentSurf,
EncounterCategory.FractalLonelyTower,
};

/// <summary>
Expand Down
1 change: 1 addition & 0 deletions EVTCAnalytics/GameData/Encounters/EncounterCategory.cs
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ public enum EncounterCategory
FractalShatteredObservatory = 302,
FractalSunquaPeak = 303,
FractalSilentSurf = 304,
FractalLonelyTower = 305,
Map = 2000,
}
}
1 change: 1 addition & 0 deletions EVTCAnalytics/GameData/Encounters/EncounterNames.cs
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ public static class EncounterNames
{Encounter.AiKeeperOfThePeakNightOnly, "Ai, Keeper of the Peak – Dark"},
{Encounter.AiKeeperOfThePeakDayAndNight, "Ai, Keeper of the Peak – Both Phases"},
{Encounter.Kanaxai, "Kanaxai, Scythe of House Aurkus"},
{Encounter.Eparch, "Eparch" },
{Encounter.Freezie, "Freezie"},
{Encounter.StandardKittyGolem, "Standard Kitty Golem"},
{Encounter.MediumKittyGolem, "Medium Kitty Golem"},
Expand Down
15 changes: 14 additions & 1 deletion EVTCAnalytics/GameData/GameBuilds.cs
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,8 @@ public static class GameBuilds
public static int AhdashimRelease = 97235;

/// <summary>
/// The release of Cosmic Observatory Challenge Mode, which revamped the health of the normal mode as well.
/// The release of Cosmic Observatory Challenge Mode, which revamped the health of the normal mode as well.<br></br>
/// https://wiki.guildwars2.com/wiki/Game_updates/2023-11-07
/// </summary>
public static int CosmicObservatoryCMRelease = 153978;

Expand All @@ -22,5 +23,17 @@ public static class GameBuilds
/// Note that there were more health changes to this encounter, make sure this is what you mean.
/// </remarks>
public static int TempleOfFebeHealthFix = 158968;

/// <summary>
/// Lonely Tower release, no challenge mode.<br></br>
/// https://wiki.guildwars2.com/wiki/Game_updates/2024-05-21
/// </summary>
public static int LonelyTowerRelease = 163141;

/// <summary>
/// Lonely Tower Challenge Mode release.<br></br>
/// https://wiki.guildwars2.com/wiki/Game_updates/2024-06-04
/// </summary>
public static int LonelyTowerCMRelease = 163807;
}
}
2 changes: 2 additions & 0 deletions EVTCAnalytics/GameData/SpeciesIds.cs
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,8 @@ public static class SpeciesIds
// Silent Surf
public const int KanaxaiNM = 25572;
public const int KanaxaiCM = 25577;
// Lonely Tower
public const int Eparch = 26231;

// Festivals
public const int Freezie = 21333;
Expand Down
15 changes: 15 additions & 0 deletions EVTCAnalytics/Processing/EncounterDataProvider.cs
Original file line number Diff line number Diff line change
Expand Up @@ -658,6 +658,21 @@ private IEncounterData GetPvEEncounterData(Encounter encounter, Agent mainTarget
finalFallbackMode: null))))
.Build();
}
case Encounter.Eparch:
{
return GetDefaultBuilder(encounter, mainTarget)
.WithResult(new AnyCombinedResultDeterminer(
new AgentKillingBlowDeterminer(mainTarget),
new BuffAppliedBelowHealthThresholdDeterminer(mainTarget, 0.2f, SkillIds.Determined)))
.WithModes(new ConditionalModeDeterminer(
(gameBuild != null && gameBuild < GameBuilds.LonelyTowerCMRelease,
new AgentHealthModeDeterminer(mainTarget, 31_000_000, EncounterMode.Normal)),
(true, new FallbackModeDeterminer(
new AgentHealthModeDeterminer(mainTarget, 18_000_000, EncounterMode.Normal),
new AgentHealthModeDeterminer(mainTarget, 32_000_000, EncounterMode.Challenge),
finalFallbackMode: null))))
.Build();
}
default:
return GetDefaultBuilder(encounter, mainTarget, mergeMainTarget: false).Build();
}
Expand Down
4 changes: 4 additions & 0 deletions EVTCAnalytics/Processing/EncounterIdentifier.cs
Original file line number Diff line number Diff line change
Expand Up @@ -172,6 +172,8 @@ public Encounter IdentifyEncounter(Agent mainTarget, IReadOnlyList<Agent> agents
return Encounter.Kanaxai;
case SpeciesIds.KanaxaiCM:
return Encounter.Kanaxai;
case SpeciesIds.Eparch:
return Encounter.Eparch;
case SpeciesIds.Freezie:
return Encounter.Freezie;
case SpeciesIds.IcebroodConstruct:
Expand Down Expand Up @@ -323,6 +325,8 @@ public IEnumerable<Encounter> IdentifyPotentialEncounters(ParsedBossData bossDat
return new[] { Encounter.Kanaxai };
case SpeciesIds.KanaxaiCM:
return new[] { Encounter.Kanaxai };
case SpeciesIds.Eparch:
return new[] { Encounter.Eparch };
case SpeciesIds.Freezie:
return new[] { Encounter.Freezie };
case SpeciesIds.IcebroodConstruct:
Expand Down

0 comments on commit fdfe74f

Please sign in to comment.