diff options
Diffstat (limited to 'src')
5 files changed, 127 insertions, 106 deletions
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/puzzle/TicTacToe.java b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/puzzle/TicTacToe.java index e4c51e69..1683276e 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/puzzle/TicTacToe.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/puzzle/TicTacToe.java @@ -4,6 +4,7 @@ import de.hysky.skyblocker.config.SkyblockerConfigManager; import de.hysky.skyblocker.skyblock.dungeon.secrets.DungeonManager; import de.hysky.skyblocker.utils.Utils; import de.hysky.skyblocker.utils.render.RenderHelper; +import de.hysky.skyblocker.utils.tictactoe.BoardIndex; import de.hysky.skyblocker.utils.tictactoe.TicTacToeUtils; import net.fabricmc.fabric.api.client.rendering.v1.WorldRenderContext; import net.minecraft.client.MinecraftClient; @@ -49,7 +50,8 @@ public class TicTacToe extends DungeonPuzzle { try { //Only attempt to solve if the puzzle wasn't just completed and if its the player's turn - if (itemFramesThatHoldMaps.size() != 9 && itemFramesThatHoldMaps.size() % 2 == 1) { + //The low bit will always be set to 1 on odd numbers + if (itemFramesThatHoldMaps.size() != 9 && (itemFramesThatHoldMaps.size() & 1) == 1) { char[][] board = new char[3][3]; for (ItemFrameEntity itemFrame : itemFramesThatHoldMaps) { @@ -83,7 +85,7 @@ public class TicTacToe extends DungeonPuzzle { if (row == -1 || column == -1) continue; //Get the color of the middle pixel of the map which determines whether its X or O - int middleColor = mapState.colors[8256] & 255; + int middleColor = mapState.colors[8256] & 0xFF; if (middleColor == 114) { board[row][column] = 'X'; @@ -92,11 +94,11 @@ public class TicTacToe extends DungeonPuzzle { } } - int bestMove = TicTacToeUtils.getBestMove(board) - 1; + BoardIndex bestMove = TicTacToeUtils.getBestMove(board); double nextX = 8; - double nextY = 72 - (double) (bestMove / 3); - double nextZ = 17 - (bestMove % 3); + double nextY = 72 - bestMove.row(); + double nextZ = 17 - bestMove.column(); BlockPos nextPos = DungeonManager.getCurrentRoom().relativeToActual(BlockPos.ofFloored(nextX, nextY, nextZ)); nextBestMoveToMake = new Box(nextPos); diff --git a/src/main/java/de/hysky/skyblocker/utils/ItemUtils.java b/src/main/java/de/hysky/skyblocker/utils/ItemUtils.java index 64b3dcaf..32ca36ca 100644 --- a/src/main/java/de/hysky/skyblocker/utils/ItemUtils.java +++ b/src/main/java/de/hysky/skyblocker/utils/ItemUtils.java @@ -45,7 +45,7 @@ public class ItemUtils { public static final String ID = "id"; public static final String UUID = "uuid"; private static final DateTimeFormatter OBTAINED_DATE_FORMATTER = DateTimeFormatter.ofPattern("MMMM d, yyyy").withZone(ZoneId.systemDefault()).localizedBy(Locale.ENGLISH); - private static final DateTimeFormatter OLD_OBTAINED_DATE_FORMAT = DateTimeFormatter.ofPattern("MM/dd/yy h:mm a").withZone(ZoneId.of("UTC")).localizedBy(Locale.ENGLISH); + private static final DateTimeFormatter OLD_OBTAINED_DATE_FORMAT = DateTimeFormatter.ofPattern("M/d/yy h:m a").withZone(ZoneId.of("UTC")).localizedBy(Locale.ENGLISH); public static final Pattern NOT_DURABILITY = Pattern.compile("[^0-9 /]"); public static final Predicate<String> FUEL_PREDICATE = line -> line.contains("Fuel: "); private static final Gson GSON = new Gson(); //GSON Instance with no config diff --git a/src/main/java/de/hysky/skyblocker/utils/tictactoe/BoardIndex.java b/src/main/java/de/hysky/skyblocker/utils/tictactoe/BoardIndex.java new file mode 100644 index 00000000..bd9200ad --- /dev/null +++ b/src/main/java/de/hysky/skyblocker/utils/tictactoe/BoardIndex.java @@ -0,0 +1,5 @@ +package de.hysky.skyblocker.utils.tictactoe; + +public record BoardIndex(int row, int column) { + +} diff --git a/src/main/java/de/hysky/skyblocker/utils/tictactoe/TicTacToeUtils.java b/src/main/java/de/hysky/skyblocker/utils/tictactoe/TicTacToeUtils.java index fde18f27..0725b2ce 100644 --- a/src/main/java/de/hysky/skyblocker/utils/tictactoe/TicTacToeUtils.java +++ b/src/main/java/de/hysky/skyblocker/utils/tictactoe/TicTacToeUtils.java @@ -1,105 +1,119 @@ package de.hysky.skyblocker.utils.tictactoe; +import java.util.Arrays; import java.util.Collections; -import java.util.HashMap; -import java.util.Map; +import java.util.Comparator; +import java.util.stream.Stream; + +import it.unimi.dsi.fastutil.objects.Object2IntMap; +import it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap; public class TicTacToeUtils { - public static int getBestMove(char[][] board) { - HashMap<Integer, Integer> moves = new HashMap<>(); - for (int row = 0; row < board.length; row++) { - for (int col = 0; col < board[row].length; col++) { - if (board[row][col] != '\0') continue; - board[row][col] = 'O'; - int score = alphabeta(board, Integer.MIN_VALUE, Integer.MAX_VALUE, false, 0); - board[row][col] = '\0'; - moves.put(row * 3 + col + 1, score); - } - } - return Collections.max(moves.entrySet(), Map.Entry.comparingByValue()).getKey(); - } - - private static boolean hasMovesLeft(char[][] board) { - for (char[] rows : board) { - for (char col : rows) { - if (col == '\0') return true; - } - } - return false; - } - - private static int getBoardScore(char[][] board) { - for (int row = 0; row < 3; row++) { - if (board[row][0] == board[row][1] && board[row][0] == board[row][2]) { - if (board[row][0] == 'X') { - return -10; - } else if (board[row][0] == 'O') { - return 10; - } - } - } - - for (int col = 0; col < 3; col++) { - if (board[0][col] == board[1][col] && board[0][col] == board[2][col]) { - if (board[0][col] == 'X') { - return -10; - } else if (board[0][col] == 'O') { - return 10; - } - } - } - - if (board[0][0] == board[1][1] && board[0][0] == board[2][2]) { - if (board[0][0] == 'X') { - return -10; - } else if (board[0][0] == 'O') { - return 10; - } - } else if (board[0][2] == board[1][1] && board[0][2] == board[2][0]) { - if (board[0][2] == 'X') { - return -10; - } else if (board[0][2] == 'O') { - return 10; - } - } - - return 0; - } - - private static int alphabeta(char[][] board, int alpha, int beta, boolean max, int depth) { - int score = getBoardScore(board); - if (score == 10 || score == -10) return score; - if (!hasMovesLeft(board)) return 0; - - if (max) { - int bestScore = Integer.MIN_VALUE; - for (int row = 0; row < 3; row++) { - for (int col = 0; col < 3; col++) { - if (board[row][col] == '\0') { - board[row][col] = 'O'; - bestScore = Math.max(bestScore, alphabeta(board, alpha, beta, false, depth + 1)); - board[row][col] = '\0'; - alpha = Math.max(alpha, bestScore); - if (beta <= alpha) break; // Pruning - } - } - } - return bestScore - depth; - } else { - int bestScore = Integer.MAX_VALUE; - for (int row = 0; row < 3; row++) { - for (int col = 0; col < 3; col++) { - if (board[row][col] == '\0') { - board[row][col] = 'X'; - bestScore = Math.min(bestScore, alphabeta(board, alpha, beta, true, depth + 1)); - board[row][col] = '\0'; - beta = Math.min(beta, bestScore); - if (beta <= alpha) break; // Pruning - } - } - } - return bestScore + depth; - } - } + public static BoardIndex getBestMove(char[][] board) { + Object2IntOpenHashMap<BoardIndex> moves = new Object2IntOpenHashMap<>(); + + for (int row = 0; row < board.length; row++) { + for (int column = 0; column < board[row].length; column++) { + // Simulate the move as O if the square is empty to determine a solution + if (board[row][column] != '\0') continue; + board[row][column] = 'O'; + int score = alphabeta(board, Integer.MIN_VALUE, Integer.MAX_VALUE, 0, false); + board[row][column] = '\0'; + + moves.put(new BoardIndex(row, column), score); + } + } + + return Collections.max(moves.object2IntEntrySet(), Comparator.comparingInt(Object2IntMap.Entry::getIntValue)).getKey(); + } + + private static boolean hasMovesAvailable(char[][] board) { + return Arrays.stream(board).flatMap(row -> Stream.of(row[0], row[1], row[2])).anyMatch(c -> c == '\0'); + } + + private static int getScore(char[][] board) { + // Check if X or O has won horizontally + for (int row = 0; row < 3; row++) { + if (board[row][0] == board[row][1] && board[row][0] == board[row][2]) { + switch (board[row][0]) { + case 'X': return -10; + case 'O': return 10; + } + } + } + + // Check if X or O has won vertically + for (int column = 0; column < 3; column++) { + if (board[0][column] == board[1][column] && board[0][column] == board[2][column]) { + switch (board[0][column]) { + case 'X': return -10; + case 'O': return 10; + } + } + } + + // Check if X or O has won diagonally + // Top left to bottom right + if (board[0][0] == board[1][1] && board[0][0] == board[2][2]) { + switch (board[0][0]) { + case 'X': return -10; + case 'O': return 10; + } + } + + // Top right to bottom left + if (board[0][2] == board[1][1] && board[0][2] == board[2][0]) { + switch (board[0][2]) { + case 'X': return -10; + case 'O': return 10; + } + } + + return 0; + } + + private static int alphabeta(char[][] board, int alpha, int beta, int depth, boolean maximizePlayer) { + int score = getScore(board); + + if (score == 10 || score == -10) return score; + if (!hasMovesAvailable(board)) return 0; + + if (maximizePlayer) { + int bestScore = Integer.MIN_VALUE; + + for (int row = 0; row < 3; row++) { + for (int column = 0; column < 3; column++) { + if (board[row][column] == '\0') { + board[row][column] = 'O'; + bestScore = Math.max(bestScore, alphabeta(board, alpha, beta, depth + 1, false)); + board[row][column] = '\0'; + alpha = Math.max(alpha, bestScore); + + //Is this correct? Well the algorithm seems to solve it so I will assume it is + if (beta <= alpha) break; // Pruning + } + } + } + + return bestScore - depth; + } else { + int bestScore = Integer.MAX_VALUE; + + for (int row = 0; row < 3; row++) { + for (int column = 0; column < 3; column++) { + if (board[row][column] == '\0') { + board[row][column] = 'X'; + bestScore = Math.min(bestScore, alphabeta(board, alpha, beta, depth + 1, true)); + board[row][column] = '\0'; + beta = Math.min(beta, bestScore); + + if (beta <= alpha) break; // Pruning + } + } + } + + return bestScore + depth; + } + } }
\ No newline at end of file diff --git a/src/test/java/de/hysky/skyblocker/utils/ItemUtilsTest.java b/src/test/java/de/hysky/skyblocker/utils/ItemUtilsTest.java index 8f8c6507..33509228 100644 --- a/src/test/java/de/hysky/skyblocker/utils/ItemUtilsTest.java +++ b/src/test/java/de/hysky/skyblocker/utils/ItemUtilsTest.java @@ -14,7 +14,7 @@ import java.util.TimeZone; public class ItemUtilsTest { private final ItemStack DARK_CLAYMORE = ItemStack.CODEC.parse(JsonOps.INSTANCE, JsonParser.parseString("{\"id\":\"minecraft:stone_sword\",\"count\":1,\"components\":{\"minecraft:attribute_modifiers\":{\"modifiers\":[],\"show_in_tooltip\":false},\"minecraft:unbreakable\":{\"show_in_tooltip\":false},\"minecraft:lore\":[\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Gear Score: \\\"},{\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"1561 \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(5000)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Damage: \\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"+580 \\\"},{\\\"color\\\":\\\"yellow\\\",\\\"text\\\":\\\"(+30) \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(+3,339)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Strength: \\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"+517 \\\"},{\\\"color\\\":\\\"yellow\\\",\\\"text\\\":\\\"(+30) \\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"[+5] \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"(+220) \\\"},{\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"(+32) \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(+3,194.1)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Crit Damage: \\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"+133% \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(+819%)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Bonus Attack Speed: \\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"+50% \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(+77.5%)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Magic Find: \\\"},{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"+30 \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(+46.5)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Ferocity: \\\"},{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"+5 \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(+7.75)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Swing Range: \\\"},{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"+2 \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(+2.1)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[\\\" \\\",{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"[\\\"},{\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"❁\\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"] \\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"[\\\"},{\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"❁\\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"]\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"bold\\\":true,\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"\\\"},{\\\"bold\\\":true,\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"Chimera V\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Champion X\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Cleave VI\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Critical VII\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Cubism VI\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Divine Gift III\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Dragon Hunter V\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Ender Slayer VII\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Experience V\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Fire Aspect III\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"First Strike V\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Impaling III\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Lethality VI\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Looting V\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Luck VII\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Prosecute VI\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Scavenger V\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Sharpness VII\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Smoldering V\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Syphon V\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Tabasco III\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Thunderlord VII\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Titan Killer VII\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Vampirism VI\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Venomous VI\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Vicious V\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"\\\"},{\\\"color\\\":\\\"gray\\\",\\\"italic\\\":true,\\\"text\\\":\\\"That thing was too big to be called a\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"italic\\\":true,\\\"text\\\":\\\"sword, it was more like a large hunk\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"italic\\\":true,\\\"text\\\":\\\"of stone.\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Withered Bonus\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Grants \\\"},{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"+1 \\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"❁ Strength \\\"},{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"per\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"\\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"Catacombs \\\"},{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"level.\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"bold\\\":true,\\\"color\\\":\\\"light_purple\\\",\\\"obfuscated\\\":true,\\\"text\\\":\\\"a\\\"},\\\"\\\",{\\\"bold\\\":false,\\\"extra\\\":[\\\" \\\"],\\\"italic\\\":false,\\\"obfuscated\\\":false,\\\"strikethrough\\\":false,\\\"text\\\":\\\"\\\",\\\"underlined\\\":false},{\\\"bold\\\":true,\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"\\\"},{\\\"bold\\\":true,\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"MYTHIC DUNGEON LONGSWORD \\\"},{\\\"bold\\\":true,\\\"color\\\":\\\"light_purple\\\",\\\"obfuscated\\\":true,\\\"text\\\":\\\"a\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\"],\"minecraft:enchantment_glint_override\":true,\"minecraft:custom_name\":\"{\\\"extra\\\":[{\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"Withered Dark Claymore \\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"✪\\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"✪\\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"✪\\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"✪\\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"✪\\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"➎\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"minecraft:custom_data\":{\"rarity_upgrades\":1,\"hot_potato_count\":15,\"gems\":{\"JASPER_0\":{\"uuid\":\"e9881031-1b36-4c41-8d13-739685b700aa\",\"quality\":\"PERFECT\"},\"JASPER_1\":{\"uuid\":\"afb95bac-0269-4978-a3ed-f5a3e4e57338\",\"quality\":\"PERFECT\"},\"unlocked_slots\":[\"JASPER_0\",\"JASPER_1\"]},\"champion_combat_xp\":4.8087379696333125E7,\"modifier\":\"withered\",\"art_of_war_count\":1,\"upgrade_level\":10,\"id\":\"DARK_CLAYMORE\",\"enchantments\":{\"impaling\":3,\"luck\":7,\"critical\":7,\"scavenger\":5,\"ender_slayer\":7,\"fire_aspect\":3,\"experience\":5,\"divine_gift\":3,\"venomous\":6,\"dragon_hunter\":5,\"tabasco\":3,\"thunderlord\":7,\"sharpness\":7,\"cubism\":6,\"titan_killer\":7,\"lethality\":6,\"PROSECUTE\":6,\"vicious\":5,\"cleave\":6,\"smoldering\":5,\"looting\":5,\"syphon\":5,\"ultimate_chimera\":5,\"vampirism\":6,\"first_strike\":5,\"champion\":10},\"uuid\":\"098f4ac1-bf99-4829-a183-70e3a6bc8b2a\",\"timestamp\":1671157200000}}}")).getOrThrow(); - private final ItemStack DARK_CLAYMORE_OLD = ItemStack.CODEC.parse(JsonOps.INSTANCE, JsonParser.parseString("{\"id\":\"minecraft:stone_sword\",\"count\":1,\"components\":{\"minecraft:attribute_modifiers\":{\"modifiers\":[],\"show_in_tooltip\":false},\"minecraft:unbreakable\":{\"show_in_tooltip\":false},\"minecraft:lore\":[\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Gear Score: \\\"},{\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"1561 \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(5000)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Damage: \\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"+580 \\\"},{\\\"color\\\":\\\"yellow\\\",\\\"text\\\":\\\"(+30) \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(+3,339)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Strength: \\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"+517 \\\"},{\\\"color\\\":\\\"yellow\\\",\\\"text\\\":\\\"(+30) \\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"[+5] \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"(+220) \\\"},{\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"(+32) \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(+3,194.1)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Crit Damage: \\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"+133% \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(+819%)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Bonus Attack Speed: \\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"+50% \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(+77.5%)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Magic Find: \\\"},{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"+30 \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(+46.5)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Ferocity: \\\"},{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"+5 \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(+7.75)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Swing Range: \\\"},{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"+2 \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(+2.1)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[\\\" \\\",{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"[\\\"},{\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"❁\\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"] \\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"[\\\"},{\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"❁\\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"]\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"bold\\\":true,\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"\\\"},{\\\"bold\\\":true,\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"Chimera V\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Champion X\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Cleave VI\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Critical VII\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Cubism VI\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Divine Gift III\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Dragon Hunter V\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Ender Slayer VII\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Experience V\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Fire Aspect III\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"First Strike V\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Impaling III\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Lethality VI\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Looting V\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Luck VII\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Prosecute VI\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Scavenger V\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Sharpness VII\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Smoldering V\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Syphon V\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Tabasco III\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Thunderlord VII\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Titan Killer VII\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Vampirism VI\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Venomous VI\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Vicious V\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"\\\"},{\\\"color\\\":\\\"gray\\\",\\\"italic\\\":true,\\\"text\\\":\\\"That thing was too big to be called a\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"italic\\\":true,\\\"text\\\":\\\"sword, it was more like a large hunk\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"italic\\\":true,\\\"text\\\":\\\"of stone.\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Withered Bonus\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Grants \\\"},{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"+1 \\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"❁ Strength \\\"},{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"per\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"\\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"Catacombs \\\"},{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"level.\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"bold\\\":true,\\\"color\\\":\\\"light_purple\\\",\\\"obfuscated\\\":true,\\\"text\\\":\\\"a\\\"},\\\"\\\",{\\\"bold\\\":false,\\\"extra\\\":[\\\" \\\"],\\\"italic\\\":false,\\\"obfuscated\\\":false,\\\"strikethrough\\\":false,\\\"text\\\":\\\"\\\",\\\"underlined\\\":false},{\\\"bold\\\":true,\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"\\\"},{\\\"bold\\\":true,\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"MYTHIC DUNGEON LONGSWORD \\\"},{\\\"bold\\\":true,\\\"color\\\":\\\"light_purple\\\",\\\"obfuscated\\\":true,\\\"text\\\":\\\"a\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\"],\"minecraft:enchantment_glint_override\":true,\"minecraft:custom_name\":\"{\\\"extra\\\":[{\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"Withered Dark Claymore \\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"✪\\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"✪\\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"✪\\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"✪\\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"✪\\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"➎\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"minecraft:custom_data\":{\"rarity_upgrades\":1,\"hot_potato_count\":15,\"gems\":{\"JASPER_0\":{\"uuid\":\"e9881031-1b36-4c41-8d13-739685b700aa\",\"quality\":\"PERFECT\"},\"JASPER_1\":{\"uuid\":\"afb95bac-0269-4978-a3ed-f5a3e4e57338\",\"quality\":\"PERFECT\"},\"unlocked_slots\":[\"JASPER_0\",\"JASPER_1\"]},\"champion_combat_xp\":4.8087379696333125E7,\"modifier\":\"withered\",\"art_of_war_count\":1,\"upgrade_level\":10,\"id\":\"DARK_CLAYMORE\",\"enchantments\":{\"impaling\":3,\"luck\":7,\"critical\":7,\"scavenger\":5,\"ender_slayer\":7,\"fire_aspect\":3,\"experience\":5,\"divine_gift\":3,\"venomous\":6,\"dragon_hunter\":5,\"tabasco\":3,\"thunderlord\":7,\"sharpness\":7,\"cubism\":6,\"titan_killer\":7,\"lethality\":6,\"PROSECUTE\":6,\"vicious\":5,\"cleave\":6,\"smoldering\":5,\"looting\":5,\"syphon\":5,\"ultimate_chimera\":5,\"vampirism\":6,\"first_strike\":5,\"champion\":10},\"uuid\":\"098f4ac1-bf99-4829-a183-70e3a6bc8b2a\",\"timestamp\":\"12/15/22 2:20 AM\"}}}")).getOrThrow(); + private final ItemStack DARK_CLAYMORE_OLD = ItemStack.CODEC.parse(JsonOps.INSTANCE, JsonParser.parseString("{\"id\":\"minecraft:stone_sword\",\"count\":1,\"components\":{\"minecraft:attribute_modifiers\":{\"modifiers\":[],\"show_in_tooltip\":false},\"minecraft:unbreakable\":{\"show_in_tooltip\":false},\"minecraft:lore\":[\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Gear Score: \\\"},{\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"1561 \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(5000)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Damage: \\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"+580 \\\"},{\\\"color\\\":\\\"yellow\\\",\\\"text\\\":\\\"(+30) \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(+3,339)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Strength: \\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"+517 \\\"},{\\\"color\\\":\\\"yellow\\\",\\\"text\\\":\\\"(+30) \\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"[+5] \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"(+220) \\\"},{\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"(+32) \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(+3,194.1)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Crit Damage: \\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"+133% \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(+819%)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Bonus Attack Speed: \\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"+50% \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(+77.5%)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Magic Find: \\\"},{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"+30 \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(+46.5)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Ferocity: \\\"},{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"+5 \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(+7.75)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Swing Range: \\\"},{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"+2 \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(+2.1)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[\\\" \\\",{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"[\\\"},{\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"❁\\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"] \\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"[\\\"},{\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"❁\\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"]\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"bold\\\":true,\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"\\\"},{\\\"bold\\\":true,\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"Chimera V\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Champion X\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Cleave VI\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Critical VII\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Cubism VI\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Divine Gift III\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Dragon Hunter V\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Ender Slayer VII\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Experience V\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Fire Aspect III\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"First Strike V\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Impaling III\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Lethality VI\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Looting V\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Luck VII\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Prosecute VI\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Scavenger V\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Sharpness VII\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Smoldering V\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Syphon V\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Tabasco III\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Thunderlord VII\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Titan Killer VII\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Vampirism VI\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Venomous VI\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Vicious V\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"\\\"},{\\\"color\\\":\\\"gray\\\",\\\"italic\\\":true,\\\"text\\\":\\\"That thing was too big to be called a\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"italic\\\":true,\\\"text\\\":\\\"sword, it was more like a large hunk\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"italic\\\":true,\\\"text\\\":\\\"of stone.\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Withered Bonus\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Grants \\\"},{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"+1 \\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"❁ Strength \\\"},{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"per\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"\\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"Catacombs \\\"},{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"level.\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"bold\\\":true,\\\"color\\\":\\\"light_purple\\\",\\\"obfuscated\\\":true,\\\"text\\\":\\\"a\\\"},\\\"\\\",{\\\"bold\\\":false,\\\"extra\\\":[\\\" \\\"],\\\"italic\\\":false,\\\"obfuscated\\\":false,\\\"strikethrough\\\":false,\\\"text\\\":\\\"\\\",\\\"underlined\\\":false},{\\\"bold\\\":true,\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"\\\"},{\\\"bold\\\":true,\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"MYTHIC DUNGEON LONGSWORD \\\"},{\\\"bold\\\":true,\\\"color\\\":\\\"light_purple\\\",\\\"obfuscated\\\":true,\\\"text\\\":\\\"a\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\"],\"minecraft:enchantment_glint_override\":true,\"minecraft:custom_name\":\"{\\\"extra\\\":[{\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"Withered Dark Claymore \\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"✪\\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"✪\\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"✪\\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"✪\\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"✪\\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"➎\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"minecraft:custom_data\":{\"rarity_upgrades\":1,\"hot_potato_count\":15,\"gems\":{\"JASPER_0\":{\"uuid\":\"e9881031-1b36-4c41-8d13-739685b700aa\",\"quality\":\"PERFECT\"},\"JASPER_1\":{\"uuid\":\"afb95bac-0269-4978-a3ed-f5a3e4e57338\",\"quality\":\"PERFECT\"},\"unlocked_slots\":[\"JASPER_0\",\"JASPER_1\"]},\"champion_combat_xp\":4.8087379696333125E7,\"modifier\":\"withered\",\"art_of_war_count\":1,\"upgrade_level\":10,\"id\":\"DARK_CLAYMORE\",\"enchantments\":{\"impaling\":3,\"luck\":7,\"critical\":7,\"scavenger\":5,\"ender_slayer\":7,\"fire_aspect\":3,\"experience\":5,\"divine_gift\":3,\"venomous\":6,\"dragon_hunter\":5,\"tabasco\":3,\"thunderlord\":7,\"sharpness\":7,\"cubism\":6,\"titan_killer\":7,\"lethality\":6,\"PROSECUTE\":6,\"vicious\":5,\"cleave\":6,\"smoldering\":5,\"looting\":5,\"syphon\":5,\"ultimate_chimera\":5,\"vampirism\":6,\"first_strike\":5,\"champion\":10},\"uuid\":\"098f4ac1-bf99-4829-a183-70e3a6bc8b2a\",\"timestamp\":\"2/5/22 2:20 AM\"}}}")).getOrThrow(); private final ItemStack TITANIUM_DRILL_DR_X655 = ItemStack.CODEC.parse(JsonOps.INSTANCE, JsonParser.parseString("{\"id\":\"minecraft:prismarine_shard\",\"count\":1,\"components\":{\"minecraft:attribute_modifiers\":{\"modifiers\":[],\"show_in_tooltip\":false},\"minecraft:enchantments\":{\"levels\":{\"minecraft:efficiency\":5}},\"minecraft:lore\":[\"{\\\"extra\\\":[{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"Breaking Power 10\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Damage: \\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"+75\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Mining Speed: \\\"},{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"+1,810 \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"[+50] \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"(+60) \\\"},{\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"(+100)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Mining Fortune: \\\"},{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"+273 \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"(+8) \\\"},{\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"(+50)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Pristine: \\\"},{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"+7 \\\"},{\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"(+2)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Mining Wisdom: \\\"},{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"+4\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[\\\" \\\",{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"[\\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"⸕\\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"] \\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"[\\\"},{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"☘\\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"] \\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"[\\\"},{\\\"color\\\":\\\"yellow\\\",\\\"text\\\":\\\"✦\\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"]\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Compact IV \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"4,481\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Efficiency V\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Experience IV\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Fortune IV\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Pristine V\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Smelting Touch I\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"Mithril-Infused Fuel Tank\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Increases the fuel capacity to \\\"},{\\\"color\\\":\\\"dark_green\\\",\\\"text\\\":\\\"10,000\\\"},{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\".\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Drill Engine: \\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"Not Installed\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"\\\"},{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Increases \\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"⸕ Mining Speed \\\"},{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"with part\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"installed.\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"Sunny Side Goblin Egg Part\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Grants \\\"},{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"+50 \\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"☘ Mining Fortune\\\"},{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\", but fuel\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"consumption is doubled.\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Fuel: \\\"},{\\\"color\\\":\\\"dark_green\\\",\\\"text\\\":\\\"5,395\\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"/10k\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"Ability: Mining Speed Boost \\\"},{\\\"bold\\\":true,\\\"color\\\":\\\"yellow\\\",\\\"text\\\":\\\"RIGHT CLICK\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Grants \\\"},{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"+\\\"},{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"300% \\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"⸕ Mining Speed \\\"},{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"for\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"\\\"},{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"20s\\\"},{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\".\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"Cooldown: \\\"},{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"120s\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Auspicious Bonus\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Grants \\\"},{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"+8 \\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"☘ Mining Fortune\\\"},{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\", which\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"increases your chance for multiple\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"drops.\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"bold\\\":true,\\\"color\\\":\\\"light_purple\\\",\\\"obfuscated\\\":true,\\\"text\\\":\\\"a\\\"},\\\"\\\",{\\\"bold\\\":false,\\\"extra\\\":[\\\" \\\"],\\\"italic\\\":false,\\\"obfuscated\\\":false,\\\"strikethrough\\\":false,\\\"text\\\":\\\"\\\",\\\"underlined\\\":false},{\\\"bold\\\":true,\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"\\\"},{\\\"bold\\\":true,\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"MYTHIC DRILL \\\"},{\\\"bold\\\":true,\\\"color\\\":\\\"light_purple\\\",\\\"obfuscated\\\":true,\\\"text\\\":\\\"a\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\"],\"minecraft:custom_name\":\"{\\\"extra\\\":[{\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"Auspicious Titanium Drill DR-X655\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"minecraft:custom_data\":{\"rarity_upgrades\":1,\"drill_part_upgrade_module\":\"goblin_omelette_sunny_side\",\"gems\":{\"AMBER_0\":\"PERFECT\",\"JADE_0\":\"PERFECT\",\"MINING_0_gem\":\"TOPAZ\",\"MINING_0\":\"PERFECT\",\"unlocked_slots\":[\"JADE_0\",\"MINING_0\"]},\"polarvoid\":5,\"drill_fuel\":5395,\"modifier\":\"auspicious\",\"compact_blocks\":4481,\"id\":\"TITANIUM_DRILL_4\",\"enchantments\":{\"pristine\":5,\"efficiency\":5,\"fortune\":4,\"smelting_touch\":1,\"compact\":4,\"experience\":4},\"drill_part_fuel_tank\":\"mithril_fuel_tank\",\"uuid\":\"24404cec-7249-4612-b43e-0bc897384dd2\",\"timestamp\":1712894721557},\"minecraft:damage\":4605}}")).getOrThrow(); private final ItemStack ASTRAEA = ItemStack.CODEC.parse(JsonOps.INSTANCE, JsonParser.parseString("{\"id\":\"minecraft:iron_sword\",\"count\":1,\"components\":{\"minecraft:attribute_modifiers\":{\"modifiers\":[],\"show_in_tooltip\":false},\"minecraft:unbreakable\":{\"show_in_tooltip\":false},\"minecraft:lore\":[\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Gear Score: \\\"},{\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"1851 \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(5000)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Damage: \\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"+377 \\\"},{\\\"color\\\":\\\"yellow\\\",\\\"text\\\":\\\"(+30) \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(+2,205)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Strength: \\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"+250 \\\"},{\\\"color\\\":\\\"yellow\\\",\\\"text\\\":\\\"(+30) \\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"[+5] \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"(+50) \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(+1,480.5)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Crit Damage: \\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"+70% \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(+441%)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Bonus Attack Speed: \\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"+7% \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"(+7%) \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(+10.85%)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Defense: \\\"},{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"+405 \\\"},{\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"(+30) \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(+2,394)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Intelligence: \\\"},{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"+210 \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"(+125) \\\"},{\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"(+30) \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(+1,291.5)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"True Defense: \\\"},{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"+22 \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(+31)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Ferocity: \\\"},{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"+33 \\\"},{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"(+46.5)\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[\\\" \\\",{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"[\\\"},{\\\"color\\\":\\\"dark_purple\\\",\\\"text\\\":\\\"☤\\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"] \\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"[\\\"},{\\\"color\\\":\\\"aqua\\\",\\\"text\\\":\\\"⚔\\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"]\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"bold\\\":true,\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"\\\"},{\\\"bold\\\":true,\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"Ultimate Wise V\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"#AA5500\\\",\\\"text\\\":\\\"Champion X\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"#AA5500\\\",\\\"text\\\":\\\"Cleave VI\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Critical VI\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Cubism V\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"#AA5500\\\",\\\"text\\\":\\\"Dragon Hunter V\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Ender Slayer VI\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Execute V\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"#AA5500\\\",\\\"text\\\":\\\"Experience V\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"#AA5500\\\",\\\"text\\\":\\\"Fire Aspect III\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"First Strike IV\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Giant Killer VI\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"#AA5500\\\",\\\"text\\\":\\\"Impaling III\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"#AA5500\\\",\\\"text\\\":\\\"Lethality VI\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"#AA5500\\\",\\\"text\\\":\\\"Life Steal V\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Looting IV\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"#AA5500\\\",\\\"text\\\":\\\"Luck VII\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"#AA5500\\\",\\\"text\\\":\\\"Scavenger V\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"#AA5500\\\",\\\"text\\\":\\\"Smite VII\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"#AA5500\\\",\\\"text\\\":\\\"Tabasco III\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"#AA5500\\\",\\\"text\\\":\\\"Thunderlord VII\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"#AA5500\\\",\\\"text\\\":\\\"Vampirism VI\\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\", \\\"},{\\\"color\\\":\\\"blue\\\",\\\"text\\\":\\\"Venomous V\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Deals +\\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"50% \\\"},{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"damage to Withers.\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Grants \\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"+1 \\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"❁ Damage \\\"},{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"and \\\"},{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"+2 \\\"},{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"❈\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"Defense \\\"},{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"per \\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"Catacombs \\\"},{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"level.\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"Scroll Abilities:\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"Ability: Wither Impact \\\"},{\\\"bold\\\":true,\\\"color\\\":\\\"yellow\\\",\\\"text\\\":\\\"RIGHT CLICK\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Teleport \\\"},{\\\"color\\\":\\\"green\\\",\\\"text\\\":\\\"10 blocks\\\"},{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\" ahead of you.\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"Then implode dealing \\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"109,088.2\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"\\\"},{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"damage to nearby enemies. Also\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"applies the wither shield scroll\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"ability reducing damage taken and\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"granting an absorption shield for \\\"},{\\\"color\\\":\\\"yellow\\\",\\\"text\\\":\\\"5\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"yellow\\\",\\\"text\\\":\\\"\\\"},{\\\"color\\\":\\\"gray\\\",\\\"text\\\":\\\"seconds.\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"color\\\":\\\"dark_gray\\\",\\\"text\\\":\\\"Mana Cost: \\\"},{\\\"color\\\":\\\"dark_aqua\\\",\\\"text\\\":\\\"150\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"{\\\"extra\\\":[{\\\"bold\\\":true,\\\"color\\\":\\\"light_purple\\\",\\\"obfuscated\\\":true,\\\"text\\\":\\\"a\\\"},\\\"\\\",{\\\"bold\\\":false,\\\"extra\\\":[\\\" \\\"],\\\"italic\\\":false,\\\"obfuscated\\\":false,\\\"strikethrough\\\":false,\\\"text\\\":\\\"\\\",\\\"underlined\\\":false},{\\\"bold\\\":true,\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"\\\"},{\\\"bold\\\":true,\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"MYTHIC DUNGEON SWORD \\\"},{\\\"bold\\\":true,\\\"color\\\":\\\"light_purple\\\",\\\"obfuscated\\\":true,\\\"text\\\":\\\"a\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\"],\"minecraft:enchantment_glint_override\":true,\"minecraft:custom_name\":\"{\\\"extra\\\":[{\\\"color\\\":\\\"light_purple\\\",\\\"text\\\":\\\"Heroic Astraea \\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"✪\\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"✪\\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"✪\\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"✪\\\"},{\\\"color\\\":\\\"gold\\\",\\\"text\\\":\\\"✪\\\"},{\\\"color\\\":\\\"red\\\",\\\"text\\\":\\\"➎\\\"}],\\\"italic\\\":false,\\\"text\\\":\\\"\\\"}\",\"minecraft:custom_data\":{\"rarity_upgrades\":1,\"modifier\":\"heroic\",\"art_of_war_count\":1,\"dungeon_item_level\":5,\"upgrade_level\":10,\"originTag\":\"ASTRAEA_UPGRADE\",\"enchantments\":{\"impaling\":3,\"luck\":7,\"critical\":6,\"cleave\":6,\"looting\":4,\"smite\":7,\"telekinesis\":1,\"ender_slayer\":6,\"scavenger\":5,\"experience\":5,\"vampirism\":6,\"fire_aspect\":3,\"execute\":5,\"life_steal\":5,\"giant_killer\":6,\"first_strike\":4,\"venomous\":5,\"dragon_hunter\":5,\"tabasco\":3,\"thunderlord\":7,\"ultimate_wise\":5,\"cubism\":5,\"champion\":10,\"lethality\":6},\"uuid\":\"38d58369-401c-4cda-945d-759cb652c718\",\"ability_scroll\":[\"WITHER_SHIELD_SCROLL\",\"SHADOW_WARP_SCROLL\",\"IMPLOSION_SCROLL\"],\"hot_potato_count\":15,\"gems\":{\"DEFENSIVE_0\":{\"uuid\":\"1ed969b4-372e-4692-a994-4026ec480668\",\"quality\":\"PERFECT\"},\"DEFENSIVE_0_gem\":\"AMETHYST\",\"COMBAT_0\":{\"uuid\":\"77d8ef8f-2142-4a01-a6ec-1fa6352d62e4\",\"quality\":\"PERFECT\"},\"COMBAT_0_gem\":\"SAPPHIRE\"},\"champion_combat_xp\":1.381000444237401E8,\"id\":\"ASTRAEA\",\"timestamp\":1614631200000}}}")).getOrThrow(); @@ -41,7 +41,7 @@ public class ItemUtilsTest { @Test void testGetTimestamp() { - Assertions.assertEquals("December 15, 2022", ItemUtils.getTimestamp(DARK_CLAYMORE_OLD)); + Assertions.assertEquals("February 5, 2022", ItemUtils.getTimestamp(DARK_CLAYMORE_OLD)); Assertions.assertEquals("December 16, 2022", ItemUtils.getTimestamp(DARK_CLAYMORE)); // The timestamp is 1671157200000 which is December 16, 2022 in UTC Assertions.assertEquals("April 12, 2024", ItemUtils.getTimestamp(TITANIUM_DRILL_DR_X655)); Assertions.assertEquals("March 1, 2021", ItemUtils.getTimestamp(ASTRAEA)); |