Skip to content

Commit

Permalink
M1S-M3S updates
Browse files Browse the repository at this point in the history
  • Loading branch information
xpdota committed Aug 7, 2024
1 parent 915a08b commit 0ba3a7f
Show file tree
Hide file tree
Showing 12 changed files with 130,113 additions and 27 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -252,7 +252,15 @@ public int getOrder() {
compareLists(rawStorage, actualMarks, expectedAMs);
}

List<String> tooCloseFailures = new ArrayList<>();

List<String> assortedFailures = new ArrayList<>();

for (CalloutInitialValues actualCall : actualCalls) {
if (actualCall.text().endsWith("(NOW)")) {
assortedFailures.add("Call [%s] ends with '(NOW)', indicating possible wrong event or late call");
}
}

CalloutInitialValues last = null;
long minDelta = minimumMsBetweenCalls();
if (minDelta > 0) {
Expand All @@ -262,14 +270,14 @@ public int getOrder() {
long delta = actualCall.ms() - last.ms();
// Negative delta happens for logs with multiple pulls, since the time resets to zero
if (delta >= 0 && delta < minDelta) {
tooCloseFailures.add("Call [%s] was too close (%dms) to call [%s]".formatted(actualCall.toStringShort(), delta, last.toStringShort()));
assortedFailures.add("Call [%s] was too close (%dms) to call [%s]".formatted(actualCall.toStringShort(), delta, last.toStringShort()));
}
}
last = actualCall;
}
if (!tooCloseFailures.isEmpty()) {
throw new AssertionError("Issues with callouts which were too close to one another:\n" + String.join("\n", tooCloseFailures));
}
}
if (!assortedFailures.isEmpty()) {
throw new AssertionError("Issues with callouts which were too close to one another:\n" + String.join("\n", assortedFailures));
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ private int getPlayerHeartStacks() {
@HandleEvents
public void poisonMechs(EventContext context, AbilityUsedEvent event) {
// Splash of venom/love
if (event.abilityIdMatches(0x9184)) {
if (event.abilityIdMatches(0x9184, 0x9B08)) {
context.accept(spreadLater.getModified());
lastPosionBuff = PoisonBuff.SPREAD;
}
Expand Down Expand Up @@ -147,10 +147,13 @@ else if (pb == PoisonBuff.BUDDY){
if (pb == PoisonBuff.SPREAD) {
s.updateCall(spread);
}
else {
else if (pb == PoisonBuff.BUDDY){
s.updateCall(buddies);
}

else {
log.error("No poison buff!");
}
resetPoisonBuff();
});

@NpcCastCallout(value = 0x91A9, suppressMs = 100)
Expand Down

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
package gg.xp.xivsupport.triggers.Arcadion;

import gg.xp.xivsupport.events.triggers.util.CalloutInitialValues;
import gg.xp.xivsupport.events.triggers.util.CalloutVerificationTest;

import java.util.List;

public class M2sSecondaryTest
extends CalloutVerificationTest {
@Override
protected String getFileName() {
return "/m2s_anon_2.log";
}

@Override
protected List<CalloutInitialValues> getExpectedCalls() {
return List.of(
call(6364, "Raidwide", "Raidwide (4.7)"),
call(18468, "Buddy Later", "Buddy Later"),
call(23814, "In", "In (5.2)"),
call(29286, "Buddy", "Buddy"),
call(40456, "Spread Later", "Spread Later"),
call(42591, "Out of Middle", "Out of Middle (5.2)"),
call(48070, "Spread", "Spread"),
call(56223, "Tank Stack", "Tank Stack (3.7)"),
call(71642, "Raidwide", "Raidwide (9.9)"),
call(82748, "Out+Cardinals", "Out+Cardinals"),
call(88933, "Out+Intercards", "Out+Intercards"),
call(91908, "In+Intercards", "In+Intercards"),
call(99369, "Avoid Towers", "Avoid Towers"),
call(133656, "Out", "Out (3.7)"),
call(146818, "Take Stack", "Take Stack"),
call(164053, "In+Intercards", "In+Intercards"),
call(170223, "Out+Intercards", "Out+Intercards"),
call(173220, "Out+Cardinals", "Out+Cardinals"),
call(182686, "Raidwide", "Raidwide (4.7)"),
call(197888, "Tank Cleaves", "Tank Cleaves (3.7)"),
call(207043, "Bait Lines", "Bait Lines (2.7)"),
call(246465, "Raidwide", "Raidwide (9.9)"),
call(262597, "Buddy Later", "Buddy Later"),
call(273850, "Avoid Stacks", "Avoid Stacks"),
call(279830, "Spread", "Spread"),
call(291534, "Out of Middle", "Out of Middle (5.2)"),
call(297027, "Buddy", "Buddy"),
call(306221, "Raidwide", "Raidwide (4.7)"),
call(329537, "Buddy Later", "Buddy Later"),
call(331681, "Bait Lines and Puddles", "Bait Lines and Puddles (2.7)"),
call(337848, "Drop Puddle", "Drop Puddle"),
call(363830, "Light Parties", "Light Parties (4.7)"),
call(371949, "Tank Cleaves", "Tank Cleaves (3.7)"),
call(383688, "Out of Middle", "Out of Middle (5.2)"),
call(389171, "Buddy", "Buddy"),
call(405586, "Raidwide", "Raidwide (9.9)"),
call(413813, "Long Defamation", "Long Defamation (46.0)"),
call(420697, "Spread Later", "Spread Later"),
call(422840, "In+Intercards", "In+Intercards"),
call(429003, "Out+Intercards", "Out+Intercards"),
call(431998, "Out+Cardinals", "Out+Cardinals"),
call(434861, "Avoid Defamation", "Avoid Defamation"),
call(439782, "Soak Tower", "Soak Tower"),
call(442463, "Out+Cardinals", "Out+Cardinals"),
call(448667, "Out+Intercards", "Out+Intercards"),
call(451659, "In+Intercards", "In+Intercards"),
call(454911, "Out", "Out (4.9)"),
call(459778, "Avoid Towers", "Avoid Towers"),
call(467104, "Out of Middle", "Out of Middle (5.2)"),
call(472561, "Spread", "Spread"),
call(480727, "Raidwide", "Raidwide (4.7)"),
call(494938, "Tank Cleaves", "Tank Cleaves (3.7)"),
call(511552, "Raidwide", "Raidwide (4.3)"),
call(516151, "Group 3 with Bime Dumame", "Group 3 with Bime Dumame (44.0)"),
call(518653, "Group 1: Fofopu Fopu and Wunono Wuno", "Group 1: Fofopu Fopu and Wunono Wuno (9.5)"),
call(527683, "Raidwide", "Raidwide (4.7)"),
call(532916, "Group 2: Dadaboqu Sasaboqu and Gaganeki Bubuneki", "Group 2: Dadaboqu Sasaboqu and Gaganeki Bubuneki (11.2)"),
call(544801, "Raidwide", "Raidwide (4.7)"),
call(549988, "Pop with Bime Dumame", "Pop with Bime Dumame (10.2)"),
call(561910, "Raidwide", "Raidwide (4.7)"),
call(567095, "Group 4: Zozolalu Titilalu and Wuwuhuga Zizihuga", "Group 4: Zozolalu Titilalu and Wuwuhuga Zizihuga (11.1)"),
call(579030, "Raidwide", "Raidwide (4.7)"),
call(596342, "Enrage", "Enrage (9.7)")
);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
package gg.xp.xivsupport.triggers.Arcadion;

import gg.xp.xivsupport.events.triggers.util.CalloutInitialValues;
import gg.xp.xivsupport.events.triggers.util.CalloutVerificationTest;

import java.util.List;

public class M2sTest
extends CalloutVerificationTest {
@Override
protected String getFileName() {
return "/m2s_anon.log";
}

@Override
protected List<CalloutInitialValues> getExpectedCalls() {
return List.of(
call(5082, "Raidwide", "Raidwide (4.7)"),
call(17202, "Spread Later", "Spread Later"),
call(22774, "In", "In (5.2)"),
call(28254, "Spread", "Spread"),
call(39433, "Buddy Later", "Buddy Later"),
call(41611, "Out of Middle", "Out of Middle (5.2)"),
call(47088, "Buddy", "Buddy"),
call(55245, "Tank Cleaves", "Tank Cleaves (3.7)"),
call(70621, "Raidwide", "Raidwide (9.9)"),
call(81718, "Out+Cardinals", "Out+Cardinals"),
call(87877, "Out+Intercards", "Out+Intercards"),
call(90861, "In+Intercards", "In+Intercards"),
call(98300, "Take 1 Towers", "Take 1 Towers"),
call(132537, "Out", "Out (3.7)"),
call(145687, "Don't Stack", "Don't Stack"),
call(163099, "In+Intercards", "In+Intercards"),
call(169291, "Out+Intercards", "Out+Intercards"),
call(172271, "Out+Cardinals", "Out+Cardinals"),
call(181717, "Raidwide", "Raidwide (4.7)"),
call(196957, "Tank Stack", "Tank Stack (3.7)"),
call(206090, "Bait Lines", "Bait Lines (2.7)"),
call(245540, "Raidwide", "Raidwide (9.9)"),
call(261633, "Buddy Later", "Buddy Later"),
call(272861, "Avoid Stacks", "Avoid Stacks"),
call(278831, "Spread", "Spread"),
call(290551, "In", "In (5.2)"),
call(296033, "Buddy", "Buddy"),
call(305202, "Raidwide", "Raidwide (4.7)"),
call(328754, "Buddy Later", "Buddy Later"),
call(330892, "Bait Lines and Puddles", "Bait Lines and Puddles (2.7)"),
call(352034, "Drop Puddle", "Drop Puddle"),
call(363034, "Light Parties", "Light Parties (4.7)"),
call(371149, "Tank Stack", "Tank Stack (3.7)"),
call(382902, "Out of Middle", "Out of Middle (5.2)"),
call(388381, "Buddy", "Buddy"),
call(404800, "Raidwide", "Raidwide (9.9)"),
call(413029, "Long Defamation", "Long Defamation (46.0)"),
call(419931, "Spread Later", "Spread Later"),
call(422066, "In+Intercards", "In+Intercards"),
call(428255, "Out+Intercards", "Out+Intercards"),
call(431235, "Out+Cardinals", "Out+Cardinals"),
call(434039, "Avoid Defamation", "Avoid Defamation"),
call(439024, "Soak Tower", "Soak Tower"),
call(441698, "Out+Cardinals", "Out+Cardinals"),
call(447886, "Out+Intercards", "Out+Intercards"),
call(450868, "In+Intercards", "In+Intercards"),
call(454117, "Out", "Out (4.9)"),
call(459012, "Avoid Towers", "Avoid Towers"),
call(466311, "Out of Middle", "Out of Middle (5.2)"),
call(471786, "Spread", "Spread"),
call(479933, "Raidwide", "Raidwide (4.7)"),
call(494144, "Tank Stack", "Tank Stack (3.7)"),
call(510525, "Raidwide", "Raidwide (4.3)"),
call(515117, "Group 4 with Kunana Kuna", "Group 4 with Kunana Kuna (62.0)"),
call(517704, "Group 1: Titijada Nanajada and Lalale Lale", "Group 1: Titijada Nanajada and Lalale Lale (9.4)"),
call(526720, "Raidwide", "Raidwide (4.7)"),
call(531899, "Group 2: Lelecho Lecho and Dedefa Defa", "Group 2: Lelecho Lecho and Dedefa Defa (11.2)"),
call(543832, "Raidwide", "Raidwide (4.7)"),
call(549099, "Group 3: Fufute Fute and Sichiketi Teketi", "Group 3: Fufute Fute and Sichiketi Teketi (10.0)"),
call(560976, "Raidwide", "Raidwide (4.7)"),
call(566197, "Pop with Kunana Kuna", "Pop with Kunana Kuna (10.9)")
);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
package gg.xp.xivsupport.triggers.Arcadion;

import gg.xp.xivsupport.events.triggers.util.CalloutInitialValues;
import gg.xp.xivsupport.events.triggers.util.CalloutVerificationTest;

import java.util.List;

public class M3sTest
extends CalloutVerificationTest {
@Override
protected String getFileName() {
return "/m3s_anon.log";
}

@Override
protected List<CalloutInitialValues> getExpectedCalls() {
return List.of(
call(6003, "Raidwide - Multi Hit", "Raidwide - Multi Hit (4.7)"),
call(15360, "Tank Buster - Multi Hit", "Tank Buster - Multi Hit (4.7)"),
call(30416, "Out and Spread", "Out and Spread (6.7)"),
call(40302, "Out into Role Pairs", "Out into Role Pairs (7.7)"),
call(54781, "Raidwide - Multi Hit", "Raidwide - Multi Hit (4.7)"),
call(72211, "Knockback Towers", "Knockback Towers (3.7)"),
call(76189, "Side Towers to Corners", "Side Towers to Corners"),
call(87318, "Corner Towers to Center", "Corner Towers to Center"),
call(90568, "Center Tower to Northeast", "Center Tower to Northeast"),
call(136451, "In and Partners", "In and Partners (6.7)"),
call(146341, "Knockback into Spreads", "Knockback into Spreads (7.7)"),
call(160777, "Raidwide - Multi Hit", "Raidwide - Multi Hit (4.7)"),
call(172276, "Tank Buster - Multi Hit", "Tank Buster - Multi Hit (4.7)"),
call(207832, "Northwest safe", "Northwest safe"),
call(212690, "Southwest safe", "Southwest safe"),
call(219465, "In and Spread", "In and Spread (6.7)"),
call(228818, "Raidwide - Multi Hit", "Raidwide - Multi Hit (4.7)"),
call(254748, "Northeast Safe, Long Fuse", "Northeast Safe, Long Fuse"),
call(265614, "Spread", "Spread"),
call(270653, "Knockback into Role Pairs", "Knockback into Role Pairs (7.7)"),
call(293729, "Pop Fuses Sequentially", "Pop Fuses Sequentially (3.7)"),
call(298634, "Short Fuse", "Short Fuse (26.0)"),
call(349244, "Tank Buster - Multi Hit", "Tank Buster - Multi Hit (4.7)"),
call(384756, "Multiple Raidwides", "Multiple Raidwides (5.7)"),
call(397274, "Out", "Out (3.0)"),
call(400524, "In", "In (2.2)"),
call(403027, "Knockback into Buddies", "Knockback into Buddies (7.9)"),
call(411212, "Buddies", "Buddies"),
call(428675, "Northeast safe", "Northeast safe"),
call(445693, "Move", "Move"),
// TODO Also, this should call out boss direction
call(449657, "Northwest safe, Get Hit By Boss", "Northwest safe, Get Hit By Boss"),
call(456520, "Southwest safe", "Southwest safe"),
call(463333, "Out into Spreads", "Out into Spreads (7.7)"),
call(478886, "Raidwide - Multi Hit", "Raidwide - Multi Hit (4.7)"),
call(492520, "Tank Buster - Multi Hit", "Tank Buster - Multi Hit (4.7)"),
call(512842, "Spinning", "Spinning (3.7)"),
call(516808, "Short Fuse", "Short Fuse"),
call(520371, "Counter-Clockwise", "Counter-Clockwise (5.2)"),
call(534228, "Spread", "Spread"),
call(539304, "Spread", "Spread"),
call(541039, "Out and Partners", "Out and Partners (6.7)"),
call(550397, "Raidwide - Multi Hit", "Raidwide - Multi Hit (4.7)"),
call(571114, "Knockback Towers", "Knockback Towers (3.7)"),
call(575085, "Side Towers to Corners", "Side Towers to Corners"),
call(586220, "Corner Towers to Center", "Corner Towers to Center"),
call(589604, "Center Tower to West", "Center Tower to West"),
call(596734, "East Safe", "East Safe"),
call(610060, "Tank Buster - Multi Hit", "Tank Buster - Multi Hit (4.7)"),
call(651098, "Multiple Raidwides", "Multiple Raidwides (5.7)")
);
}
}
Loading

0 comments on commit 0ba3a7f

Please sign in to comment.