diff --git a/cache/pom.xml b/cache/pom.xml
index b33784fcadb..8cbeebb4b9a 100644
--- a/cache/pom.xml
+++ b/cache/pom.xml
@@ -29,7 +29,7 @@
net.runelite
runelite-parent
- 1.12.4
+ 1.12.5
cache
diff --git a/pom.xml b/pom.xml
index ab0687f8c46..099c9dbccd8 100644
--- a/pom.xml
+++ b/pom.xml
@@ -28,7 +28,7 @@
net.runelite
runelite-parent
- 1.12.4
+ 1.12.5
pom
RuneLite
diff --git a/runelite-api/pom.xml b/runelite-api/pom.xml
index 53c023a5944..2d569d06294 100644
--- a/runelite-api/pom.xml
+++ b/runelite-api/pom.xml
@@ -29,7 +29,7 @@
net.runelite
runelite-parent
- 1.12.4
+ 1.12.5
runelite-api
diff --git a/runelite-api/src/main/java/net/runelite/api/ItemID.java b/runelite-api/src/main/java/net/runelite/api/ItemID.java
index 4f8e2dfd06a..fec6004142b 100644
--- a/runelite-api/src/main/java/net/runelite/api/ItemID.java
+++ b/runelite-api/src/main/java/net/runelite/api/ItemID.java
@@ -15001,8 +15001,8 @@ public final class ItemID
public static final int CAMPHOR_PLANK = 31432;
public static final int IRONWOOD_PLANK = 31435;
public static final int ROSEWOOD_PLANK = 31438;
- public static final int TELEPORT_BOAT_TO_ME = 31441;
- public static final int TELEPORT_ME_TO_BOAT = 31443;
+ public static final int SUMMON_BOAT = 31441;
+ public static final int TELEPORT_TO_BOAT = 31443;
public static final int MOUNTED_GIANT_BLUE_KRILL_31445 = 31445;
public static final int MOUNTED_GIANT_BLUE_KRILL_31446 = 31446;
public static final int MOUNTED_GOLDEN_HADDOCK_31447 = 31447;
@@ -16017,5 +16017,6 @@ public final class ItemID
public static final int CAMPHOR_LOGS = 32904;
public static final int IRONWOOD_LOGS = 32907;
public static final int ROSEWOOD_LOGS = 32910;
+ public static final int JAR_OF_FEATHERS = 32921;
/* This file is automatically generated. Do not edit. */
}
\ No newline at end of file
diff --git a/runelite-api/src/main/java/net/runelite/api/NpcID.java b/runelite-api/src/main/java/net/runelite/api/NpcID.java
index 62892e40051..d5b4ce22d53 100644
--- a/runelite-api/src/main/java/net/runelite/api/NpcID.java
+++ b/runelite-api/src/main/java/net/runelite/api/NpcID.java
@@ -17,6 +17,7 @@ public final class NpcID
public static final int ABERRANT_SPECTRE_6 = 6;
public static final int ABERRANT_SPECTRE_7 = 7;
public static final int NECHRYAEL = 8;
+ public static final int SKYLARK = 9;
public static final int DEATH_SPAWN = 10;
public static final int NECHRYAEL_11 = 11;
public static final int HUDO = 12;
@@ -282,6 +283,9 @@ public final class NpcID
public static final int PELICAN = 283;
public static final int GULL_284 = 284;
public static final int GULL_285 = 285;
+ public static final int EAGLE = 286;
+ public static final int MERCENARY = 287;
+ public static final int CHARTIN_CHARLES_MCATLESS = 288;
public static final int GHOUL = 289;
public static final int DWARF = 290;
public static final int CHAOS_DWARF = 291;
@@ -1381,7 +1385,7 @@ public final class NpcID
public static final int DESERT_EAGLE = 1487;
public static final int JUNGLE_EAGLE = 1488;
public static final int POLAR_EAGLE = 1489;
- public static final int EAGLE = 1490;
+ public static final int EAGLE_1490 = 1490;
public static final int KEBBIT = 1494;
public static final int CHARLIE_1495 = 1495;
public static final int BOULDER = 1496;
@@ -1442,6 +1446,8 @@ public final class NpcID
public static final int GUARD_1551 = 1551;
public static final int GUARD_1552 = 1552;
public static final int CRAB_1553 = 1553;
+ public static final int CHARTIN_CHARLES_MCATLESS_1554 = 1554;
+ public static final int LUKE = 1555;
public static final int FIRE_WIZARD = 1556;
public static final int WATER_WIZARD = 1557;
public static final int EARTH_WIZARD = 1558;
@@ -3637,6 +3643,10 @@ public final class NpcID
public static final int FOX = 3901;
public static final int BUNNY = 3902;
public static final int BUNNY_3903 = 3903;
+ public static final int SHIPYARD_WORKER_3904 = 3904;
+ public static final int SHIPYARD_WORKER_3905 = 3905;
+ public static final int SHIPYARD_ENGINEER = 3906;
+ public static final int JOE_3907 = 3907;
public static final int BEAR_CUB = 3908;
public static final int BEAR_CUB_3909 = 3909;
public static final int UNICORN_FOAL = 3910;
@@ -3982,6 +3992,8 @@ public final class NpcID
public static final int OSMAN_4286 = 4286;
public static final int BORDER_GUARD = 4287;
public static final int BORDER_GUARD_4288 = 4288;
+ public static final int JOE_4289 = 4289;
+ public static final int CAT_4290 = 4290;
public static final int HERMAN_CARANOS = 4291;
public static final int FRANKLIN_CARANOS = 4292;
public static final int ARNOLD_LYDSPOR = 4293;
@@ -4307,7 +4319,7 @@ public final class NpcID
public static final int MINE_CART_DRIVER = 4653;
public static final int ROWDY_GUARD = 4654;
public static final int BEDABIN_NOMAD_FIGHTER = 4655;
- public static final int MERCENARY = 4656;
+ public static final int MERCENARY_4656 = 4656;
public static final int MERCENARY_4657 = 4657;
public static final int MERCENARY_4658 = 4658;
public static final int MERCENARY_4659 = 4659;
@@ -4380,6 +4392,8 @@ public final class NpcID
public static final int MOE = 4726;
public static final int LARRY_4727 = 4727;
public static final int THURGO = 4733;
+ public static final int JOINTCHIEF_MOUSER_TO_THE_SHIPYARD_OFFICE = 4734;
+ public static final int JOINTCHIEF_MOUSER_TO_THE_SHIPYARD_OFFICE_4735 = 4735;
public static final int SIR_VYVIN = 4736;
public static final int SQUIRE_4737 = 4737;
public static final int GENIE_4738 = 4738;
@@ -12342,6 +12356,13 @@ public final class NpcID
public static final int THE_SAGE_14799 = 14799;
public static final int NEVET = 14801;
public static final int NEVET_14802 = 14802;
+ public static final int SPOTTED_RAE = 14807;
+ public static final int DUCK_14808 = 14808;
+ public static final int GECKO = 14809;
+ public static final int GRUB = 14810;
+ public static final int RUSTY_CHEST = 14811;
+ public static final int TARNISHED_CHEST = 14812;
+ public static final int RUSTY_CHEST_14813 = 14813;
public static final int SPOOKY_CHAIR = 14815;
public static final int MAKO = 14816;
public static final int MORA = 14817;
@@ -12384,8 +12405,6 @@ public final class NpcID
public static final int SHELLBANE_GRYPHON = 14860;
public static final int ELDER_KELMO = 14861;
public static final int ELDER_NAMA = 14863;
- public static final int GULL_14864 = 14864;
- public static final int GULL_14865 = 14865;
public static final int HENDERSON = 14866;
public static final int ONE_EYED_ROSALEE = 14867;
public static final int CAPTAIN_DAWSON = 14868;
@@ -12630,7 +12649,6 @@ public final class NpcID
public static final int CASTAWAY_15148 = 15148;
public static final int CASTAWAY_15149 = 15149;
public static final int CASTAWAY_15150 = 15150;
- public static final int CHARTIN_CHARLES_MCATLESS = 15151;
public static final int CURRENT_DUCK = 15152;
public static final int CURRENT_DUCK_15153 = 15153;
public static final int MEATY_AURA_LOGIST = 15154;
@@ -12657,14 +12675,6 @@ public final class NpcID
public static final int DRINK_TROLL_QUEEN = 15175;
public static final int DRINK_TROLL_QUEEN_15176 = 15176;
public static final int SAILING_CAT = 15177;
- public static final int CASTAWAY_DOG = 15178;
- public static final int CASTAWAY_DOG_15179 = 15179;
- public static final int CASTAWAY_DOG_15180 = 15180;
- public static final int WILSON_15181 = 15181;
- public static final int LOG_GIRL = 15182;
- public static final int BARREL_GIRL = 15183;
- public static final int BARREL_DUDE = 15184;
- public static final int DEBRIS_DUDE = 15185;
public static final int PUNCHING_BAG = 15191;
public static final int PUNCHING_BAG_15192 = 15192;
public static final int DPS_CALC = 15193;
@@ -12711,7 +12721,6 @@ public final class NpcID
public static final int DOLPHIN = 15234;
public static final int DOLPHIN_15235 = 15235;
public static final int DOLPHIN_CALF = 15236;
- public static final int OCEAN_MAN_15237 = 15237;
public static final int JUNIOR_JIM_15238 = 15238;
public static final int JUMBO_JIM = 15239;
public static final int CREW_REGISTRAR = 15245;
@@ -12851,7 +12860,7 @@ public final class NpcID
public static final int CHAMELEON_15416 = 15416;
public static final int CHAMELEON_15417 = 15417;
public static final int CHAMELEON_15418 = 15418;
- public static final int GECKO = 15419;
+ public static final int GECKO_15419 = 15419;
public static final int GECKO_15420 = 15420;
public static final int GECKO_15421 = 15421;
public static final int GECKO_15422 = 15422;
diff --git a/runelite-api/src/main/java/net/runelite/api/NullItemID.java b/runelite-api/src/main/java/net/runelite/api/NullItemID.java
index 50e6fab458e..0cf7d23084a 100644
--- a/runelite-api/src/main/java/net/runelite/api/NullItemID.java
+++ b/runelite-api/src/main/java/net/runelite/api/NullItemID.java
@@ -16677,5 +16677,6 @@ public final class NullItemID
public static final int NULL_32918 = 32918;
public static final int NULL_32919 = 32919;
public static final int NULL_32920 = 32920;
+ public static final int NULL_32922 = 32922;
/* This file is automatically generated. Do not edit. */
}
\ No newline at end of file
diff --git a/runelite-api/src/main/java/net/runelite/api/NullNpcID.java b/runelite-api/src/main/java/net/runelite/api/NullNpcID.java
index 29d9691edc0..35a4c0af240 100644
--- a/runelite-api/src/main/java/net/runelite/api/NullNpcID.java
+++ b/runelite-api/src/main/java/net/runelite/api/NullNpcID.java
@@ -2492,6 +2492,7 @@ public final class NullNpcID
public static final int NULL_15110 = 15110;
public static final int NULL_15111 = 15111;
public static final int NULL_15123 = 15123;
+ public static final int NULL_15151 = 15151;
public static final int NULL_15186 = 15186;
public static final int NULL_15187 = 15187;
public static final int NULL_15188 = 15188;
diff --git a/runelite-api/src/main/java/net/runelite/api/NullObjectID.java b/runelite-api/src/main/java/net/runelite/api/NullObjectID.java
index b757747551a..cc2c7944ccf 100644
--- a/runelite-api/src/main/java/net/runelite/api/NullObjectID.java
+++ b/runelite-api/src/main/java/net/runelite/api/NullObjectID.java
@@ -30266,7 +30266,6 @@ public final class NullObjectID
public static final int NULL_58523 = 58523;
public static final int NULL_58524 = 58524;
public static final int NULL_58526 = 58526;
- public static final int NULL_58527 = 58527;
public static final int NULL_58528 = 58528;
public static final int NULL_58529 = 58529;
public static final int NULL_58530 = 58530;
@@ -31266,5 +31265,25 @@ public final class NullObjectID
public static final int NULL_60459 = 60459;
public static final int NULL_60460 = 60460;
public static final int NULL_60480 = 60480;
+ public static final int NULL_60531 = 60531;
+ public static final int NULL_60532 = 60532;
+ public static final int NULL_60533 = 60533;
+ public static final int NULL_60534 = 60534;
+ public static final int NULL_60535 = 60535;
+ public static final int NULL_60536 = 60536;
+ public static final int NULL_60537 = 60537;
+ public static final int NULL_60538 = 60538;
+ public static final int NULL_60539 = 60539;
+ public static final int NULL_60540 = 60540;
+ public static final int NULL_60543 = 60543;
+ public static final int NULL_60544 = 60544;
+ public static final int NULL_60545 = 60545;
+ public static final int NULL_60546 = 60546;
+ public static final int NULL_60547 = 60547;
+ public static final int NULL_60548 = 60548;
+ public static final int NULL_60549 = 60549;
+ public static final int NULL_60550 = 60550;
+ public static final int NULL_60565 = 60565;
+ public static final int NULL_60569 = 60569;
/* This file is automatically generated. Do not edit. */
}
diff --git a/runelite-api/src/main/java/net/runelite/api/ObjectID.java b/runelite-api/src/main/java/net/runelite/api/ObjectID.java
index 6e3527483ba..9814fbcbeba 100644
--- a/runelite-api/src/main/java/net/runelite/api/ObjectID.java
+++ b/runelite-api/src/main/java/net/runelite/api/ObjectID.java
@@ -1401,6 +1401,7 @@ public final class ObjectID
public static final int CHEST_2588 = 2588;
public static final int HOLE_2589 = 2589;
public static final int LADDER_2590 = 2590;
+ public static final int BUNK_BED = 2591;
public static final int LADDER_2592 = 2592;
public static final int GANGPLANK_2593 = 2593;
public static final int GANGPLANK_2594 = 2594;
@@ -8421,7 +8422,7 @@ public final class ObjectID
public static final int CHAIR_14853 = 14853;
public static final int CHEST_14854 = 14854;
public static final int BED_14855 = 14855;
- public static final int BUNK_BED = 14856;
+ public static final int BUNK_BED_14856 = 14856;
public static final int TRUNK = 14857;
public static final int LOCKER = 14858;
public static final int SARADOMIN_STAR = 14859;
@@ -28507,7 +28508,6 @@ public final class ObjectID
public static final int ROCKS_58922 = 58922;
public static final int NICKEL_ROCKS = 58923;
public static final int ROCKS_58924 = 58924;
- public static final int BARRACUDA_TRIAL_EXIT = 58925;
public static final int SCOREBOARD_58926 = 58926;
public static final int SCOREBOARD_58927 = 58927;
public static final int SCOREBOARD_58928 = 58928;
@@ -28717,7 +28717,6 @@ public final class ObjectID
public static final int SAILS_59549 = 59549;
public static final int SAILS_59550 = 59550;
public static final int SAILS_59551 = 59551;
- public static final int SAILS_59552 = 59552;
public static final int SAILS_59553 = 59553;
public static final int HELM = 59555;
public static final int HELM_59556 = 59556;
@@ -29252,5 +29251,35 @@ public final class ObjectID
public static final int GANGPLANK_60523 = 60523;
public static final int GANGPLANK_60524 = 60524;
public static final int GANGPLANK_60525 = 60525;
+ public static final int TIN_BATH_60526 = 60526;
+ public static final int TABLE_60527 = 60527;
+ public static final int RED_CORAL = 60528;
+ public static final int RED_CORAL_60529 = 60529;
+ public static final int RED_CORAL_60530 = 60530;
+ public static final int SHELVES_60541 = 60541;
+ public static final int SHELVES_60542 = 60542;
+ public static final int HELM_60551 = 60551;
+ public static final int HELM_60552 = 60552;
+ public static final int HELM_60553 = 60553;
+ public static final int HELM_60554 = 60554;
+ public static final int HELM_60555 = 60555;
+ public static final int HELM_60556 = 60556;
+ public static final int HELM_60557 = 60557;
+ public static final int HELM_60558 = 60558;
+ public static final int HELM_60559 = 60559;
+ public static final int HELM_60560 = 60560;
+ public static final int HELM_60561 = 60561;
+ public static final int HELM_60562 = 60562;
+ public static final int HELM_60563 = 60563;
+ public static final int HELM_60564 = 60564;
+ public static final int CAT_60566 = 60566;
+ public static final int WORKBENCH_60567 = 60567;
+ public static final int BOOKCASE_60568 = 60568;
+ public static final int CURSED_REMAINS = 60570;
+ public static final int A_SINGULAR_CIRCLE = 60571;
+ public static final int KATANA = 60572;
+ public static final int SHRIMP = 60573;
+ public static final int HAROLD = 60574;
+ public static final int TENTACLE_60575 = 60575;
/* This file is automatically generated. Do not edit. */
}
diff --git a/runelite-api/src/main/java/net/runelite/api/gameval/AnimationID.java b/runelite-api/src/main/java/net/runelite/api/gameval/AnimationID.java
index f502986dc58..2cb67272d86 100644
--- a/runelite-api/src/main/java/net/runelite/api/gameval/AnimationID.java
+++ b/runelite-api/src/main/java/net/runelite/api/gameval/AnimationID.java
@@ -898,6 +898,7 @@ public final class AnimationID
public static final int HUMAN_JADECUTTING = 891;
public static final int HUMAN_REDTOPAZCUTTING = 892;
public static final int HUMAN_SHEARING = 893;
+ public static final int GHOST_UPDATE_TENDRILL_READY_THRALL = 894;
public static final int HUMAN_FILLBUCKET_SANDPIT = 895;
public static final int HUMAN_COOKING = 896;
public static final int HUMAN_FIRECOOKING = 897;
@@ -10792,6 +10793,7 @@ public final class AnimationID
public static final int HUNTINGFOX_DEADFALL_CATCHING_SOUTH = 10789;
public static final int HUNTINGFOX_DEADFALL_FULL = 10790;
public static final int HUNTINGFOX_DEADFALL_CATCHINGTEST = 10791;
+ public static final int GHOST_UPDATE_TENDRILL_WALK_THRALL = 10792;
public static final int MINNOW_FISHING_SPOT_LOCATION_LOOP = 10793;
public static final int HUMAN_CRAFTING = 10794;
public static final int HUMAN_COOKING_WALKMERGE_NORESTART = 10795;
@@ -11097,6 +11099,7 @@ public final class AnimationID
public static final int HUMAN_FLETCHING_HUNTINGBOLTS_CHISEL_SINGLE = 11098;
public static final int HUMAN_CUTTING_RESTART = 11099;
public static final int HUMAN_FLETCHING_SINGLE = 11100;
+ public static final int GHOST_UPDATE_TENDRILL_ATTACK_THRALL = 11101;
public static final int HUMAN_PRAY_BLESSED_BONE_SHARDS_01 = 11102;
public static final int HUMAN_PUSHUP_01 = 11103;
public static final int NPC_HARPY_EAGLE_FLYING_IDLE_01 = 11104;
@@ -11590,6 +11593,7 @@ public final class AnimationID
public static final int WINE_JUG_SPLASH = 11592;
public static final int HUMAN_WALK_B_2LOOPS = 11593;
public static final int FX_BEAM_HUEY = 11594;
+ public static final int GHOST_UPDATE_TENDRILL_DEATH_THRALL = 11595;
public static final int SPOTANIM_ZEBAK_ATTACK_ROAR_SHORT = 11596;
public static final int NPC_PORCUPINE_COMBAT_MELEE = 11597;
public static final int NPC_PORCUPINE_COMBAT_DEATH = 11598;
@@ -11738,6 +11742,7 @@ public final class AnimationID
public static final int BREWING_FILL_GLASS = 11741;
public static final int BREWING_TURN_VALVE = 11742;
public static final int BREWING_ADD_INGREDIENT = 11743;
+ public static final int GHOST_UPDATE_TENDRILL_DEFEND_THRALL = 11744;
public static final int HUMAN_FISHING_CASTING_NPC = 11745;
public static final int NPC_MINOTAUR_BOSS_WALK_FAST = 11746;
public static final int NPC_MINOTAUR_BOSS_ATTACK_MELEE_LOUDER = 11747;
@@ -13662,5 +13667,31 @@ public final class AnimationID
public static final int FORESTRY_CAMPFIRE_BURNING_CAMPHOR_LOGS = 13667;
public static final int FORESTRY_CAMPFIRE_BURNING_IRONWOOD_LOGS = 13668;
public static final int FORESTRY_CAMPFIRE_BURNING_ROSEWOOD_LOGS = 13669;
+ public static final int SKELETON_UPDATE_CHAMPION_READY_THRALL = 13670;
+ public static final int SKELETON_UPDATE_CHAMPION_WALK_THRALL = 13671;
+ public static final int SKELETON_UPDATE_CHAMPION_ATTACK_THRALL = 13672;
+ public static final int SKELETON_UPDATE_CHAMPION_DEFEND_THRALL = 13673;
+ public static final int SKELETON_UPDATE_CHAMPION_DEATH_THRALL = 13674;
+ public static final int ZOMBIE_UPDATE_READY_NORMAL_THRALL = 13675;
+ public static final int ZOMBIE_UPDATE_WALK_NORMAL_THRALL = 13676;
+ public static final int ZOMBIE_UPDATE_WALK_LEFT_NORMAL_THRALL = 13677;
+ public static final int ZOMBIE_UPDATE_WALK_RIGHT_NORMAL_THRALL = 13678;
+ public static final int ZOMBIE_UPDATE_WALKBACKWARDS_WEAPON_THRALL = 13679;
+ public static final int ZOMBIE_UPDATE_DEATH_NORMAL_THRALL = 13680;
+ public static final int ZOMBIE_UPDATE_ATTACK_NORMAL_THRALL = 13681;
+ public static final int ZOMBIE_UPDATE_DEFEND_NORMAL_THRALL = 13682;
+ public static final int GHOST_UPDATE_THRALL_SPAWN_RAISED = 13683;
+ public static final int SKELETON_UPDATE_THRALL_SPAWN_RAISED = 13684;
+ public static final int ZOMBIE_UPDATE_THRAWL_SPAWN_RAISED = 13685;
+ public static final int SAILING_BOAT_SAIL_KANDARIN_3X10_DOWN_TO_FULL_TRIM = 13686;
+ public static final int SAILING_BOAT_SAIL_KANDARIN_3X10_HALF_TO_FULL_TRIM = 13687;
+ public static final int SAILING_BOAT_SAIL_KANDARIN_3X10_FULL_TRIM = 13688;
+ public static final int SAILING_HUMAN_SAIL_KANDARIN_3X10_FURLED_TO_DOWN = 13689;
+ public static final int SAILING_HUMAN_SAIL_KANDARIN_3X10_DOWN_TO_FURLED = 13690;
+ public static final int SAILING_HUMAN_SAIL_KANDARIN_3X10_TRIM_SAILS = 13691;
+ public static final int VFX_WIND_SAIL_3X10_01 = 13692;
+ public static final int VFX_WIND_SAIL_3X10_SPEEDBOOST01 = 13693;
+ public static final int HUMAN_WORKBENCH_CRAFTING_LOOP = 13694;
+ public static final int TURTLE_IDLE01_LOOP = 13695;
/* This file is automatically generated. Do not edit. */
}
diff --git a/runelite-api/src/main/java/net/runelite/api/gameval/DBTableID.java b/runelite-api/src/main/java/net/runelite/api/gameval/DBTableID.java
index 48798cf0827..747de726020 100644
--- a/runelite-api/src/main/java/net/runelite/api/gameval/DBTableID.java
+++ b/runelite-api/src/main/java/net/runelite/api/gameval/DBTableID.java
@@ -11907,20 +11907,30 @@ public static final class SailingChartingCore
*/
public static final int COL_SAILING_SEA = 2;
+ /**
+ * dbrow
+ */
+ public static final int COL_SAILING_SEA_SECONDARY = 3;
+
/**
* boolean
*/
- public static final int COL_GIVE_REPEAT_XP = 3;
+ public static final int COL_GIVE_REPEAT_XP = 4;
/**
* dbtable
*/
- public static final int COL_CHARTING_TYPE = 4;
+ public static final int COL_CHARTING_TYPE = 5;
/**
* dbrow
*/
- public static final int COL_HAZARD = 5;
+ public static final int COL_HAZARD = 6;
+
+ /**
+ * dbrow
+ */
+ public static final int COL_REQUIRED_DOCK = 7;
public static final class Row
{
@@ -12896,6 +12906,11 @@ public static final class SailingBoatFacilityStats
*/
public static final int COL_BOAT_MAX_WIND_MOTES = 33;
+ /**
+ * integer
+ */
+ public static final int COL_BOAT_ADDITIONAL_RECOVERY_COST_PERCENTAGE = 34;
+
public static final class Row
{
public static final int SAILING_BOAT_STATS_MERMAID_BLESSING = 8091;
@@ -14637,6 +14652,11 @@ public static final class SailingDock
*/
public static final int COL_INLINE_NAME = 2;
+ /**
+ * integer
+ */
+ public static final int COL_LEVEL_REQUIRED = 4;
+
/**
* graphic
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/gameval/InterfaceID.java b/runelite-api/src/main/java/net/runelite/api/gameval/InterfaceID.java
index f76f14e96ea..99faf930178 100644
--- a/runelite-api/src/main/java/net/runelite/api/gameval/InterfaceID.java
+++ b/runelite-api/src/main/java/net/runelite/api/gameval/InterfaceID.java
@@ -9109,9 +9109,9 @@ public static final class LevelupDisplay
public static final int WOODCUTTING = 0x00e9_0033;
public static final int COMBAT = 0x00e9_0034;
public static final int SAILING = 0x00e9_0035;
- public static final int WOODCUTTING_MODEL0 = 0x00e9_0036;
- public static final int COMBAT_MODEL0 = 0x00e9_0037;
- public static final int SAILING_GRAPHIC0 = 0x00e9_0038;
+ public static final int SAILING_MODEL0 = 0x00e9_0036;
+ public static final int WOODCUTTING_MODEL0 = 0x00e9_0037;
+ public static final int COMBAT_MODEL0 = 0x00e9_0038;
}
public static final class Deadmanloot
@@ -30564,22 +30564,22 @@ public static final class SailingLog
public static final int FILTER_TITLE_1 = 0x03a7_001e;
public static final int COMPLETION_DROPDOWN = 0x03a7_001f;
public static final int FILTER_TITLE_2 = 0x03a7_0020;
- public static final int OCEAN_DROPDOWN = 0x03a7_0021;
+ public static final int SEA_DROPDOWN = 0x03a7_0021;
public static final int FILTER_TITLE_3 = 0x03a7_0022;
- public static final int SEA_DROPDOWN = 0x03a7_0023;
- public static final int COMPLETION = 0x03a7_0024;
- public static final int COMPLETION_RECT0 = 0x03a7_0025;
- public static final int COMPLETION_INNER = 0x03a7_0026;
- public static final int LIST_CONTAINER = 0x03a7_0027;
- public static final int INFO = 0x03a7_0028;
- public static final int INFO_RECT0 = 0x03a7_0029;
- public static final int INFO_INNER = 0x03a7_002a;
- public static final int DROPDOWN = 0x03a7_002b;
- public static final int DROPDOWN_CONTENT = 0x03a7_002c;
- public static final int DROPDOWN_SCROLLER = 0x03a7_002d;
- public static final int LIST_CONTAINER_RECT0 = 0x03a7_002e;
- public static final int LIST = 0x03a7_002f;
- public static final int LIST_SCROLLBAR = 0x03a7_0030;
+ public static final int COMPLETION = 0x03a7_0023;
+ public static final int COMPLETION_RECT0 = 0x03a7_0024;
+ public static final int COMPLETION_INNER = 0x03a7_0025;
+ public static final int LIST_CONTAINER = 0x03a7_0026;
+ public static final int INFO = 0x03a7_0027;
+ public static final int INFO_RECT0 = 0x03a7_0028;
+ public static final int INFO_INNER = 0x03a7_0029;
+ public static final int DROPDOWN = 0x03a7_002a;
+ public static final int DROPDOWN_CONTENT = 0x03a7_002b;
+ public static final int DROPDOWN_SCROLLER = 0x03a7_002c;
+ public static final int LIST_CONTAINER_RECT0 = 0x03a7_002d;
+ public static final int LIST = 0x03a7_002e;
+ public static final int LIST_SCROLLBAR = 0x03a7_002f;
+ public static final int OCEAN_DROPDOWN = 0x03a7_0030;
public static final int FILTER_TITLE_4 = 0x03a7_0031;
public static final int LEVEL_DROPDOWN = 0x03a7_0032;
}
@@ -30679,26 +30679,29 @@ public static final class SailingCustomisation
public static final int FACILITY_CONTENT_RECT2 = 0x03ab_0010;
public static final int FACILITY_CLICK_LAYER = 0x03ab_0011;
public static final int FACILITY_CONTENT_RECT4 = 0x03ab_0012;
- public static final int FACILITY_DEBUG_CLICK_LAYER = 0x03ab_0013;
- public static final int FACILITY_HIGHLIGHT = 0x03ab_0014;
- public static final int FACILITY_HIGHLIGHT_RECT0 = 0x03ab_0015;
- public static final int FACILITY_SCROLLBAR = 0x03ab_0016;
- public static final int FACILITY_SCROLLBAR_RECT0 = 0x03ab_0017;
- public static final int LOADING = 0x03ab_0018;
- public static final int LOADING_RECT0 = 0x03ab_0019;
- public static final int POPUPS = 0x03ab_001a;
- public static final int POPUPS_BACKGROUND = 0x03ab_001b;
- public static final int POPUPS_CONTAINER = 0x03ab_001c;
- public static final int POPUPS_CONTENT_BORDER = 0x03ab_001d;
- public static final int POPUPS_CONTENT_BORDER_RECT0 = 0x03ab_001e;
- public static final int POPUPS_CONTENT = 0x03ab_001f;
- public static final int POPUPS_CONTENT_RECT0 = 0x03ab_0020;
- public static final int POPUPS_BUTTON = 0x03ab_0021;
- public static final int POPUPS_BUTTON_RECT0 = 0x03ab_0022;
- public static final int POPUPS_BACKGROUND_RECT0 = 0x03ab_0023;
- public static final int TOOLTIP = 0x03ab_0024;
- public static final int FACILITY_CONTENT_MAIN_RECT0 = 0x03ab_0025;
- public static final int FACILITY_CONTENT_BACKGROUND_RECT0 = 0x03ab_0026;
+ public static final int FACILITY_HIGHLIGHT = 0x03ab_0013;
+ public static final int FACILITY_HIGHLIGHT_RECT0 = 0x03ab_0014;
+ public static final int FACILITY_SCROLLBAR = 0x03ab_0015;
+ public static final int FACILITY_SCROLLBAR_RECT0 = 0x03ab_0016;
+ public static final int LOADING = 0x03ab_0017;
+ public static final int LOADING_RECT0 = 0x03ab_0018;
+ public static final int POPUPS = 0x03ab_0019;
+ public static final int POPUPS_BACKGROUND = 0x03ab_001a;
+ public static final int POPUPS_CONTAINER = 0x03ab_001b;
+ public static final int POPUPS_BORDER = 0x03ab_001c;
+ public static final int POPUPS_BORDER_RECT0 = 0x03ab_001d;
+ public static final int POPUPS_CONTENT_BORDER = 0x03ab_001e;
+ public static final int POPUPS_CONTENT_BORDER_RECT0 = 0x03ab_001f;
+ public static final int POPUPS_TEXT = 0x03ab_0020;
+ public static final int POPUPS_SCROLLBAR = 0x03ab_0021;
+ public static final int POPUPS_BUTTON = 0x03ab_0022;
+ public static final int POPUPS_BUTTON_RECT0 = 0x03ab_0023;
+ public static final int POPUPS_BACKGROUND_RECT0 = 0x03ab_0024;
+ public static final int TOOLTIP = 0x03ab_0025;
+ public static final int FACILITY_CONTENT_MAIN_RECT0 = 0x03ab_0026;
+ public static final int FACILITY_CONTENT_BACKGROUND_RECT0 = 0x03ab_0027;
+ public static final int POPUPS_TEXT_RECT0 = 0x03ab_0028;
+ public static final int POPUPS_SCROLLBAR_RECT0 = 0x03ab_0029;
}
public static final class Underwater
diff --git a/runelite-api/src/main/java/net/runelite/api/gameval/ItemID.java b/runelite-api/src/main/java/net/runelite/api/gameval/ItemID.java
index f6666b7f73c..e54d576744f 100644
--- a/runelite-api/src/main/java/net/runelite/api/gameval/ItemID.java
+++ b/runelite-api/src/main/java/net/runelite/api/gameval/ItemID.java
@@ -80918,12 +80918,12 @@ public final class ItemID
public static final int PLANK_ROSEWOOD = 31438;
/**
- * Teleport boat to me
+ * Summon boat
*/
public static final int POH_TABLET_TELEPORTBOATTOME = 31441;
/**
- * Teleport me to boat
+ * Teleport to boat
*/
public static final int POH_TABLET_TELEPORTMETOBOAT = 31443;
@@ -86046,6 +86046,11 @@ public final class ItemID
public static final int SALVAGE_TABLE_ICON_DUMMY = 32919;
public static final int TRAWLING_ICON_DUMMY = 32920;
+ /**
+ * Jar of feathers
+ */
+ public static final int JAR_OF_FEATHERS = 32921;
+
public static final class Cert
{
public static final int TWPART1 = 7;
@@ -100124,6 +100129,7 @@ public static final class Placeholder
public static final int CAMPHOR_LOGS = 32906;
public static final int IRONWOOD_LOGS = 32909;
public static final int ROSEWOOD_LOGS = 32912;
+ public static final int JAR_OF_FEATHERS = 32922;
}
/* This file is automatically generated. Do not edit. */
}
diff --git a/runelite-api/src/main/java/net/runelite/api/gameval/NpcID.java b/runelite-api/src/main/java/net/runelite/api/gameval/NpcID.java
index 5d58c7c87fb..df29c4fce58 100644
--- a/runelite-api/src/main/java/net/runelite/api/gameval/NpcID.java
+++ b/runelite-api/src/main/java/net/runelite/api/gameval/NpcID.java
@@ -50,6 +50,11 @@ public final class NpcID
*/
public static final int SLAYER_NECHRYAEL = 8;
+ /**
+ * Skylark
+ */
+ public static final int SAILING_SKYLARK = 9;
+
/**
* Death spawn
*/
@@ -1386,6 +1391,21 @@ public final class NpcID
*/
public static final int GULL2 = 285;
+ /**
+ * Eagle
+ */
+ public static final int CONCH_EAGLE_WINGED_LAND = 286;
+
+ /**
+ * Mercenary
+ */
+ public static final int PORT_ROBERTS_BAR_PATRON = 287;
+
+ /**
+ * Chartin' Charles McAtless
+ */
+ public static final int SAILING_CHARTING_TUTOR_1OP = 288;
+
/**
* Ghoul
*/
@@ -3967,12 +3987,12 @@ public final class NpcID
public static final int DRAGONSLAYER_NED_CUTSCENE = 824;
/**
- * Cabin boy Jenkins
+ * Cabin Boy Jenkins
*/
public static final int DRAGONSLAYER_JENKINS_THERE = 825;
/**
- * Cabin boy Jenkins
+ * Cabin Boy Jenkins
*/
public static final int DRAGONSLAYER_JENKINS_CUTSCENE = 826;
@@ -7319,6 +7339,16 @@ public final class NpcID
*/
public static final int CRAB_1 = 1553;
+ /**
+ * Chartin' Charles McAtless
+ */
+ public static final int SAILING_CHARTING_TUTOR_2OP = 1554;
+
+ /**
+ * Luke
+ */
+ public static final int SAILING_SHIPYARD_WORKER_10 = 1555;
+
/**
* Fire wizard
*/
@@ -18451,6 +18481,26 @@ public final class NpcID
*/
public static final int VIKING_BUNNY_2 = 3903;
+ /**
+ * Shipyard Worker
+ */
+ public static final int SAILING_SHIPYARD_WORKER_11 = 3904;
+
+ /**
+ * Shipyard Worker
+ */
+ public static final int SAILING_SHIPYARD_WORKER_12 = 3905;
+
+ /**
+ * Shipyard Engineer
+ */
+ public static final int SAILING_SHIPYARD_WORKER_13 = 3906;
+
+ /**
+ * Joe
+ */
+ public static final int SHIPYARD_DOG_NOBALL = 3907;
+
/**
* Bear Cub
*/
@@ -20212,6 +20262,16 @@ public final class NpcID
*/
public static final int BORDERGUARD2 = 4288;
+ /**
+ * Joe
+ */
+ public static final int SHIPYARD_DOG_BALL = 4289;
+
+ /**
+ * Cat
+ */
+ public static final int SHIPYARD_SAILING_CAT = 4290;
+
/**
* Herman Caranos
*/
@@ -22247,6 +22307,16 @@ public final class NpcID
*/
public static final int THURGO = 4733;
+ /**
+ * Joint-Chief Mouser to the Shipyard Office
+ */
+ public static final int SHIPYARD_CHIEF_MOUSER01 = 4734;
+
+ /**
+ * Joint-Chief Mouser to the Shipyard Office
+ */
+ public static final int SHIPYARD_CHIEF_MOUSER02 = 4735;
+
/**
* Sir Vyvin
*/
@@ -64226,6 +64296,41 @@ public final class NpcID
public static final int EVENTS_GUARDIAN_MELEE = 14805;
public static final int HW25_CHAIR_NPC_REWARD = 14806;
+ /**
+ * Spotted Rae
+ */
+ public static final int SHIPYARD_SPOTTED_RAE = 14807;
+
+ /**
+ * Duck
+ */
+ public static final int CURRENT_DUCK_ON_LAND = 14808;
+
+ /**
+ * Gecko
+ */
+ public static final int BUCCANEERS_HAVEN_GECKO_BASEMENT = 14809;
+
+ /**
+ * Grub
+ */
+ public static final int HAIRY_GRUB = 14810;
+
+ /**
+ * Rusty chest
+ */
+ public static final int RUSTY_PIRATE_THIEVING_CHEST_GLE = 14811;
+
+ /**
+ * Tarnished chest
+ */
+ public static final int TARNISHED_PIRATE_THIEVING_CHEST_GLE = 14812;
+
+ /**
+ * Rusty chest
+ */
+ public static final int REINFORCED_PIRATE_THIEVING_CHEST_GLE = 14813;
+
/**
* Spooky chair
*/
@@ -64443,16 +64548,6 @@ public final class NpcID
*/
public static final int SLAYER_GRYPHON_BOSS_GUARDIAN_VIS = 14863;
- /**
- * Gull
- */
- public static final int GRYPHON_PET_TEST = 14864;
-
- /**
- * Gull
- */
- public static final int GRYPHON_PET_DEAD_TEST = 14865;
-
/**
* Henderson
*/
@@ -65713,10 +65808,6 @@ public final class NpcID
* Castaway
*/
public static final int SAILING_CHANCE_ENCOUNTERS_RESCUE_DOG1_PASSENGER = 15150;
-
- /**
- * Chartin' Charles McAtless
- */
public static final int SAILING_CHARTING_TUTOR = 15151;
/**
@@ -65848,46 +65939,6 @@ public final class NpcID
* Sailing cat
*/
public static final int SAILING_CHARTING_DRINK_CRATE_SAILING_CAT_EFFECT = 15177;
-
- /**
- * Castaway Dog
- */
- public static final int SAILING_CASTAWAY_DOG_TEST = 15178;
-
- /**
- * Castaway Dog
- */
- public static final int SAILING_CASTAWAY_DOG_WALK_TEST = 15179;
-
- /**
- * Castaway Dog
- */
- public static final int SAILING_CASTAWAY_DOG_IDLE_TEST = 15180;
-
- /**
- * wilson
- */
- public static final int SAILING_WILSON_TEST = 15181;
-
- /**
- * log girl
- */
- public static final int SAILING_LOG_WOMAN_TEST = 15182;
-
- /**
- * barrel girl
- */
- public static final int SAILING_BARREL_WOMAN_TEST = 15183;
-
- /**
- * barrel dude
- */
- public static final int SAILING_BARRELBOAT_MAN_TEST = 15184;
-
- /**
- * debris dude
- */
- public static final int SAILING_DEBRIS_MAN_TEST = 15185;
public static final int BOAT_HP_NPC_TINY = 15186;
public static final int BOAT_HP_NPC_SMALL = 15187;
public static final int BOAT_HP_NPC_MEDIUM = 15188;
@@ -66124,11 +66175,6 @@ public final class NpcID
*/
public static final int SAILING_DOLPHIN_BABY = 15236;
- /**
- * Ocean Man
- */
- public static final int SAILING_OCEAN_MAN_TEST = 15237;
-
/**
* Junior Jim
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/gameval/ObjectID.java b/runelite-api/src/main/java/net/runelite/api/gameval/ObjectID.java
index 4b38dba6dc7..f134443135d 100644
--- a/runelite-api/src/main/java/net/runelite/api/gameval/ObjectID.java
+++ b/runelite-api/src/main/java/net/runelite/api/gameval/ObjectID.java
@@ -8168,6 +8168,11 @@ public final class ObjectID extends ObjectID1
*/
public static final int DRAGONSHIPLADDERTOP = 2590;
+ /**
+ * Bunk bed
+ */
+ public static final int AKD_SHAYZIEN_BUNKBED_SMALL = 2591;
+
/**
* Ladder
*/
diff --git a/runelite-api/src/main/java/net/runelite/api/gameval/ObjectID1.java b/runelite-api/src/main/java/net/runelite/api/gameval/ObjectID1.java
index d463cb5c760..6c1f7b8c6e8 100644
--- a/runelite-api/src/main/java/net/runelite/api/gameval/ObjectID1.java
+++ b/runelite-api/src/main/java/net/runelite/api/gameval/ObjectID1.java
@@ -71723,7 +71723,6 @@ class ObjectID1
*/
public static final int TOA_ZEBAK_BUBBLES_BLUE = 58525;
public static final int BGSOUND_SAILING_OCEAN_WATER_LOOP_01 = 58526;
- public static final int BGSOUND_SAILING_OCEAN_WATER_LOOP_02 = 58527;
public static final int BGSOUND_SAILING_COOKING_LOOP_2 = 58528;
public static final int BGSOUND_SAILING_NORTHERN_OCEAN_WIND_LOOP = 58529;
public static final int BGSOUND_SAILING_CLOCK = 58530;
@@ -73138,11 +73137,6 @@ class ObjectID1
*/
public static final int NICKELROCK1_EMPTY = 58924;
- /**
- * Barracuda trial exit
- */
- public static final int SAILING_BT_EXIT = 58925;
-
/**
* Scoreboard
*/
@@ -74605,11 +74599,6 @@ class ObjectID1
*/
public static final int SAILING_BOAT_SAILS_COLOSSAL_REGULAR = 59551;
- /**
- * Sails
- */
- public static final int DEBUG_TEST_SAILING_COLOSSAL_SAILS_DOWN = 59552;
-
/**
* Sails
*/
@@ -77718,5 +77707,175 @@ class ObjectID1
* Gangplank
*/
public static final int SAILING_GENERIC_SHIPPLANK_OFF = 60525;
+
+ /**
+ * Tin bath
+ */
+ public static final int BATH_ALDARIN01_TIN01_SMALL1 = 60526;
+
+ /**
+ * Table
+ */
+ public static final int CIVITAS_TABLE_RICH_1_SMALL1 = 60527;
+
+ /**
+ * Red Coral
+ */
+ public static final int RED_CORAL01_1X1 = 60528;
+
+ /**
+ * Red Coral
+ */
+ public static final int RED_CORAL01_2X2 = 60529;
+
+ /**
+ * Red Coral
+ */
+ public static final int RED_CORAL01_3X2 = 60530;
+ public static final int BGSOUND_SAILING_STOMRY_SEAS_WATER_WIND_LOOP_01 = 60531;
+ public static final int BGSOUND_SAILING_UNQUIET_OCEAN_WATER_WIND_LOOP = 60532;
+ public static final int BGSOUND_SAILING_PROFANE_WATERS_WATER_WIND_LOOP = 60533;
+ public static final int BGSOUND_SAILING_FETID_WATERS_WATER_WIND_LOOP = 60534;
+ public static final int BGSOUND_SAILING_FETID_SWAMP_GAS = 60535;
+ public static final int BGSOUND_SAILING_TANGLED_KELP_WATER_WIND_LOOP = 60536;
+ public static final int BGSOUND_SAILING_SUNSET_OCEAN_WATER_WIND_LOOP = 60537;
+ public static final int BGSOUND_SAILING_SUNBAKED_SEAS_WATER_WIND_LOOP = 60538;
+ public static final int BGSOUND_SAILING_NORTHERN_OCEAN_ICY_SEAS_WIND = 60539;
+ public static final int BGSOUND_SAILING_FLECKED_WATERS_ICY_WIND = 60540;
+
+ /**
+ * Shelves
+ */
+ public static final int FAI_VARROCK_SHELVES4 = 60541;
+
+ /**
+ * Shelves
+ */
+ public static final int FAI_VARROCK_SHELVES4_MIRROR = 60542;
+ public static final int RANDOMSOUND_UNQUIET_OCEAN_AMB_DISTANT_CREATURE_MOANS = 60543;
+ public static final int RANDOMSOUND_UNQUIET_OCEAN_AMB_WATER_DROPS = 60544;
+ public static final int RANDOMSOUND_SUNSET_OCEAN_AMB_WAVES = 60545;
+ public static final int RANDOMSOUND_TANGLED_KELP_SEAWEED = 60546;
+ public static final int RANDOMSOUND_FLECKED_WATERS_CRYSTAL_SPARKS = 60547;
+ public static final int RANDOMSOUND_FLECKED_WATERS_CRYSTAL_SPARKS_02 = 60548;
+ public static final int RANDOMSOUND_NORTHERN_OCEAN_CREATURE_GROANS = 60549;
+ public static final int TORCH_DIAG = 60550;
+
+ /**
+ * Helm
+ */
+ public static final int SAILING_BOAT_STEERING_KANDARIN_1X3_WOOD_UI = 60551;
+
+ /**
+ * Helm
+ */
+ public static final int SAILING_BOAT_STEERING_KANDARIN_1X3_OAK_UI = 60552;
+
+ /**
+ * Helm
+ */
+ public static final int SAILING_BOAT_STEERING_KANDARIN_1X3_TEAK_UI = 60553;
+
+ /**
+ * Helm
+ */
+ public static final int SAILING_BOAT_STEERING_KANDARIN_1X3_MAHOGANY_UI = 60554;
+
+ /**
+ * Helm
+ */
+ public static final int SAILING_BOAT_STEERING_KANDARIN_1X3_CAMPHOR_UI = 60555;
+
+ /**
+ * Helm
+ */
+ public static final int SAILING_BOAT_STEERING_KANDARIN_1X3_IRONWOOD_UI = 60556;
+
+ /**
+ * Helm
+ */
+ public static final int SAILING_BOAT_STEERING_KANDARIN_1X3_ROSEWOOD_UI = 60557;
+
+ /**
+ * Helm
+ */
+ public static final int SAILING_BOAT_STEERING_KANDARIN_2X5_WOOD_UI = 60558;
+
+ /**
+ * Helm
+ */
+ public static final int SAILING_BOAT_STEERING_KANDARIN_2X5_OAK_UI = 60559;
+
+ /**
+ * Helm
+ */
+ public static final int SAILING_BOAT_STEERING_KANDARIN_2X5_TEAK_UI = 60560;
+
+ /**
+ * Helm
+ */
+ public static final int SAILING_BOAT_STEERING_KANDARIN_2X5_MAHOGANY_UI = 60561;
+
+ /**
+ * Helm
+ */
+ public static final int SAILING_BOAT_STEERING_KANDARIN_2X5_CAMPHOR_UI = 60562;
+
+ /**
+ * Helm
+ */
+ public static final int SAILING_BOAT_STEERING_KANDARIN_2X5_IRONWOOD_UI = 60563;
+
+ /**
+ * Helm
+ */
+ public static final int SAILING_BOAT_STEERING_KANDARIN_2X5_ROSEWOOD_UI = 60564;
+ public static final int PAINTING_SCRONGLY01 = 60565;
+
+ /**
+ * <col=ffff00>Cat</col>
+ */
+ public static final int SHIPYARD_PILLOW_CAT = 60566;
+
+ /**
+ * Workbench
+ */
+ public static final int SHIPYARD_WORKBENCH = 60567;
+
+ /**
+ * Bookcase
+ */
+ public static final int SHIPYARD_BOOKCASE = 60568;
+ public static final int SHIPYARD_HEND_WAS_HERE = 60569;
+
+ /**
+ * Cursed remains
+ */
+ public static final int CURSED_REMAINS = 60570;
+
+ /**
+ * A singular circle
+ */
+ public static final int SUSPICIOUS_CIRCLE = 60571;
+
+ /**
+ * Katana
+ */
+ public static final int SAILING_KATANA = 60572;
+
+ /**
+ * Shrimp
+ */
+ public static final int SAILING_SHRIMP_RARE = 60573;
+
+ /**
+ * <col=ffff00>Harold</col>
+ */
+ public static final int SAILING_CLUE_TURTLE = 60574;
+
+ /**
+ * Tentacle
+ */
+ public static final int HAZARDOUS_WATER_PROFANE_GHOST = 60575;
/* This file is automatically generated. Do not edit. */
}
diff --git a/runelite-api/src/main/java/net/runelite/api/gameval/SpotanimID.java b/runelite-api/src/main/java/net/runelite/api/gameval/SpotanimID.java
index 08116e7c9e4..bd72fff6a45 100644
--- a/runelite-api/src/main/java/net/runelite/api/gameval/SpotanimID.java
+++ b/runelite-api/src/main/java/net/runelite/api/gameval/SpotanimID.java
@@ -3564,5 +3564,10 @@ public final class SpotanimID
public static final int VFX_STRYKEWYRM_BURROW_ATTACK01 = 3557;
public static final int VFX_STRYKEWYRM_WALK_EMERGED = 3558;
public static final int VFX_STRYKEWYRM_SUPERIOR_WALK_EMERGED = 3559;
+ public static final int SKILLCAPE_SAILING_EMOTE_SPOTANIM = 3560;
+ public static final int SKILLCAPE_AD_EMOTE_SPOTANIM = 3561;
+ public static final int VFX_WIND_SAIL_3X10_01 = 3562;
+ public static final int VFX_WIND_SAIL_3X10_SPEEDBOOST01 = 3563;
+ public static final int SHIPYARD_DOG_BALL = 3564;
/* This file is automatically generated. Do not edit. */
}
diff --git a/runelite-api/src/main/java/net/runelite/api/gameval/SpriteID.java b/runelite-api/src/main/java/net/runelite/api/gameval/SpriteID.java
index 47a6b2cc378..94615d9f153 100644
--- a/runelite-api/src/main/java/net/runelite/api/gameval/SpriteID.java
+++ b/runelite-api/src/main/java/net/runelite/api/gameval/SpriteID.java
@@ -2607,6 +2607,8 @@ public static final class Emotes
public static final int SMOOTH_DANCE = _45;
public static final int CRAZY_DANCE = _46;
public static final int PREMIER_SHIELD = _47;
+ public static final int FORTIS_SALUTE = _57;
+ public static final int CRAB_DANCE = _56;
}
public static final class EmotesLocked
@@ -10516,6 +10518,24 @@ public static final class HealthbarBold4x4
public static final int _15 = 6855;
public static final int _16 = 6856;
public static final int _17 = 6857;
+ public static final int _18 = 7293;
+ public static final int _19 = 7294;
+ public static final int _20 = 7295;
+ public static final int _21 = 7296;
+ public static final int _22 = 7297;
+ public static final int _23 = 7298;
+ public static final int _24 = 7299;
+ public static final int _25 = 7300;
+ public static final int _26 = 7301;
+ public static final int _27 = 7302;
+ public static final int _28 = 7303;
+ public static final int _29 = 7304;
+ public static final int _30 = 7305;
+ public static final int _31 = 7306;
+ public static final int _32 = 7307;
+ public static final int _33 = 7308;
+ public static final int _34 = 7309;
+ public static final int _35 = 7310;
}
public static final class IconChevron16x16
diff --git a/runelite-api/src/main/java/net/runelite/api/gameval/VarClientID.java b/runelite-api/src/main/java/net/runelite/api/gameval/VarClientID.java
index 147b0c70221..0fe1e0e9c9b 100644
--- a/runelite-api/src/main/java/net/runelite/api/gameval/VarClientID.java
+++ b/runelite-api/src/main/java/net/runelite/api/gameval/VarClientID.java
@@ -1346,5 +1346,6 @@ public final class VarClientID
public static final int CAMERA_ZOOM_SMALL_MAX = 1339;
public static final int CAMERA_ZOOM_BIG_MIN = 1340;
public static final int CAMERA_ZOOM_BIG_MAX = 1341;
+ public static final int SAILING_LAST_BOAT_HP = 1342;
/* This file is automatically generated. Do not edit. */
}
diff --git a/runelite-api/src/main/java/net/runelite/api/gameval/VarbitID.java b/runelite-api/src/main/java/net/runelite/api/gameval/VarbitID.java
index d0de5efb0c9..581b2ce6c83 100644
--- a/runelite-api/src/main/java/net/runelite/api/gameval/VarbitID.java
+++ b/runelite-api/src/main/java/net/runelite/api/gameval/VarbitID.java
@@ -6121,6 +6121,7 @@ public final class VarbitID
public static final int HALLOWED_TOME = 10361;
public static final int MYQ5_PUZZLE_COMPLETED = 10365;
public static final int ROUTE_HIDEOUT_NPCS = 10367;
+ public static final int SETTINGS_IRONMAN_CARGO_WARNING = 10385;
public static final int VARLAMORE_WYRM_AGILITY_LAP_LOOTTRACKER_INCREMENTED = 10386;
public static final int SLAYER_UNLOCK_VAMPYRES = 10388;
public static final int SLAYER_LONGER_VAMPYRES = 10389;
@@ -12672,6 +12673,7 @@ public final class VarbitID
public static final int CRAB_TRAP_CROWN_JEWEL_3 = 18404;
public static final int CRAB_TRAP_CROWN_JEWEL_4 = 18405;
public static final int CRAB_TRAP_CROWN_JEWEL_5 = 18406;
+ public static final int DARKNESS_GRACE_PERIOD = 18408;
public static final int SAILING_BT_IN_TRIAL = 18410;
public static final int SAILING_BT_JUBBLY_JIVE_PILLAR_0_STATE_PLAYER = 18411;
public static final int SAILING_BT_JUBBLY_JIVE_PILLAR_1_STATE_PLAYER = 18412;
@@ -13747,7 +13749,6 @@ public final class VarbitID
public static final int SAILING_CREW_FREMENNIK_VISIBILITY = 19499;
public static final int SAILING_CREW_SPIRIT_ANGLER_VISIBILITY = 19500;
public static final int SAILING_CREW_CAPTAIN_SIAD_VISIBILITY = 19501;
- public static final int SAILING_CREW_GHOST_JENKINS_VISIBILITY = 19502;
public static final int SAILING_CREW_ON_DOCK = 19503;
public static final int SAILING_CREW_GENERIC_1_MET = 19504;
public static final int SAILING_CREW_GENERIC_2_MET = 19505;
@@ -13837,5 +13838,8 @@ public final class VarbitID
public static final int SLAYER_UNLOCK_GRYPHONS = 19604;
public static final int SLAYER_UNLOCK_AQUANITES = 19605;
public static final int SAILING_CHARTING_DRINK_CRATE_WARNING = 19609;
+ public static final int SAILING_CREW_GHOST_JENKINS_VISIBILITY_CRANDOR = 19610;
+ public static final int SETTINGS_IRONMAN_CARGO_WARNING_TEMP = 19612;
+ public static final int SAILING_CREW_GHOST_JENKINS_VISIBILITY_CONTROL = 19613;
/* This file is automatically generated. Do not edit. */
}
diff --git a/runelite-client/pom.xml b/runelite-client/pom.xml
index a89f0fe91eb..fc18e0fd68f 100644
--- a/runelite-client/pom.xml
+++ b/runelite-client/pom.xml
@@ -29,7 +29,7 @@
net.runelite
runelite-parent
- 1.12.4
+ 1.12.5
client
@@ -41,7 +41,7 @@
nogit
false
false
- 2.0.41
+ 2.0.42
nogit
diff --git a/runelite-client/src/main/java/net/runelite/client/game/AgilityShortcut.java b/runelite-client/src/main/java/net/runelite/client/game/AgilityShortcut.java
index 2cab92eeb80..ba7eac6eea8 100644
--- a/runelite-client/src/main/java/net/runelite/client/game/AgilityShortcut.java
+++ b/runelite-client/src/main/java/net/runelite/client/game/AgilityShortcut.java
@@ -62,8 +62,6 @@ public enum AgilityShortcut
ObjectID.FOSSIL_UNDERWATER_DEEPWATER_AGIHOLE, ObjectID.FOSSIL_UNDERWATER_CAVE_OBSTACLE3, ObjectID.FOSSIL_GALLEON_SIDE_LVL1_OBSTACLE, ObjectID.FOSSIL_GALLEON_SIDELVL1_INTERIOR_OBSTACLE, ObjectID.FOSSIL_UNDERWATER_CAVE_OBSTACLE2, ObjectID.FOSSIL_UNDERWATER_CAVE_OBSTACLE1, ObjectID.FOSSIL_UNDERWATER_DEEPWATER_HOLE, ObjectID.FOSSIL_UNDERWATER_DRIFTNET_CURTAIN,
// Tree Gnome Village
ObjectID.TREEGNOMELOOSERAILING,
- // Burgh de Rott
- ObjectID.BURGH_AGILITY_SHORTCUT_FENCE,
// Taverley
ObjectID.FULLSTYLE,
// Asgarnian Ice Dungeon
@@ -128,6 +126,7 @@ public boolean matches(Client client, TileObject object)
NEMUS_RETREAT_WALL_SOUTH_WEST(24, "Broken Wall", new WorldPoint(1368, 3295, 0), ObjectID.AV_LOWWALL_CLIMB_1),
NEMUS_RETREAT_WALL_EAST(24, "Broken Wall", new WorldPoint(1389, 3309, 0), ObjectID.AV_LOWWALL_CLIMB_2),
EAGLES_PEAK_ROCK_CLIMB(25, "Rock Climb", new WorldPoint(2320, 3499, 0), ObjectID.EP_CLIMBING_ROCKS01),
+ BURGH_AGILITY_SHORTCUT_FENCE(25, "Broken Fence", new WorldPoint(3470, 3219, 0), ObjectID.BURGH_AGILITY_SHORTCUT_FENCE),
FALADOR_UNDERWALL_TUNNEL(26, "Underwall Tunnel", new WorldPoint(2947, 3313, 0), ObjectID.FALADOR_SC_CASTLEWALL_SOUTH, ObjectID.FALADOR_SC_CASTLEWALL_NORTH),
KOUREND_CATACOMBS_STONES_NORTH(28, "Stones", new WorldPoint(1613, 10071, 0), ObjectID.ZEAH_CATA_STEPSTONE),
KOUREND_CATACOMBS_STONES_SOUTH(28, "Stones", new WorldPoint(1609, 10060, 0), ObjectID.ZEAH_CATA_STEPSTONE),
@@ -193,20 +192,25 @@ public boolean matches(Client client, TileObject object)
ARCEUUS_ESSENCE_MINE_BOULDER(49, "Boulder", new WorldPoint(1774, 3888, 0), ObjectID.ARCHEUUS_RUNESTONE_SHORTCUT_BOULDER),
MORYTANIA_STEPPING_STONE(50, "Stepping Stone", new WorldPoint(3418, 3326, 0), ObjectID.FAIRY_ISLAND_NATURE_GROTTO_SHORTCUT),
SHAMAN_CAVES_JAGGED_WALL(50, "Jagged wall", null, ObjectID.CRUMBLED_WALL),
+ GREAT_CONCH_CLIFF_SHORTCUT_TOWN(50, "Rock Climb", new WorldPoint(3180, 2433, 0), ObjectID.GREAT_CONCH_CLIFF_SHORTCUT_TOWN_BOTTOM, ObjectID.GREAT_CONCH_CLIFF_SHORTCUT_TOWN_TOP),
VARROCK_SEWERS_PIPE_SQUEEZE(51, "Pipe Squeeze", new WorldPoint(3152, 9905, 0), ObjectID.VARROCK_DUNGEON_PIPE_SC),
ARCEUUS_ESSENCE_MINE_EAST_SCRAMBLE(52, "Rock Climb", new WorldPoint(1770, 3851, 0), ObjectID.ARCHEUUS_RUNESTONE_SHORTCUT_MIDGREY_TOP, ObjectID.ARCHEUUS_RUNESTONE_SHORTCUT_MIDGREY_BOTTOM),
+ ANGLERS_RETREAT_SHORTCUT(52, "Rocks", new WorldPoint(2475, 2729, 0), ObjectID.ANGLERS_RETREAT_SHORTCUT),
+ GREAT_CONCH_CLIFF_SHORTCUT_EAST_1(52, "Rock Climb", new WorldPoint(3235, 2388, 0), ObjectID.GREAT_CONCH_CLIFF_SHORTCUT_EAST_1_BOTTOM, ObjectID.GREAT_CONCH_CLIFF_SHORTCUT_EAST_1_TOP),
KARAMJA_VOLCANO_GRAPPLE_NORTH(53, "Grapple Rock", new WorldPoint(2873, 3143, 0), ObjectID.XBOWS_JUNGLETREE_KARAMJA_BASIC),
KARAMJA_VOLCANO_GRAPPLE_SOUTH(53, "Grapple Rock", new WorldPoint(2874, 3128, 0), ObjectID.XBOWS_JUNGLETREE_KARAMJA_BASIC),
ALDARIN_ROCKS(54, "Rocks", new WorldPoint(1340, 2916, 0), ObjectID.ALDARIN_CLIFF_SHORTCUT_TOP, ObjectID.ALDARIN_CLIFF_SHORTCUT_BOTTOM),
MOTHERLODE_MINE_WALL_EAST(54, "Wall", new WorldPoint(3124, 9703, 0), ObjectID.MOTHERLODE_SHORTCUT),
MOTHERLODE_MINE_WALL_WEST(54, "Wall", new WorldPoint(3118, 9702, 0), ObjectID.MOTHERLODE_SHORTCUT),
MISCELLANIA_DOCK_STEPPING_STONE(55, "Stepping Stone", new WorldPoint(2572, 3862, 0), ObjectID.MISC_DIARY_STEPPINGSTONE),
+ GREAT_CONCH_CLIFF_SHORTCUT_SOUTHEAST_BOTTOM(55, "Rock Climb", new WorldPoint(3272, 2330, 0), ObjectID.GREAT_CONCH_CLIFF_SHORTCUT_SOUTHEAST_BOTTOM, ObjectID.GREAT_CONCH_CLIFF_SHORTCUT_SOUTHEAST_TOP),
TEMPLE_OF_EYE_RUBBLE(56, "Rubble", null, ObjectID.GOTR_AGILITY_SHORTCUT_TOP, ObjectID.GOTR_AGILITY_SHORTCUT_BOTTOM),
BRIMHAVEN_DUNGEON_EAST_STEPPING_STONES_NORTH(56, "Stepping Stones", new WorldPoint(2685, 9547, 0), ObjectID.KARAMJA_DUNGEON_STEPPING_STONE_END),
BRIMHAVEN_DUNGEON_EAST_STEPPING_STONES_SOUTH(56, "Stepping Stones", new WorldPoint(2693, 9529, 0), ObjectID.KARAMJA_DUNGEON_STEPPING_STONE_END),
ISAFDAR_FOREST_OBSTACLES(56, "Trap", null, ObjectID.REGICIDE_CROSS_OVER2, ObjectID.REGICIDE_CROSS_OVER3, ObjectID.REGICIDE_CROSS_OVER2_TYRAS_CAMP, ObjectID.REGICIDE_CROSS_OVER1_TYRAS_CAMP, ObjectID.REGICIDE_CROSS_OVER1, ObjectID.REGICIDE_PITFALL_CORNER, ObjectID.REGICIDE_PITFALL_MID, ObjectID.REGICIDE_PITFALL_SIDE, ObjectID.REGICIDE_TRAP_WOODSPRING, ObjectID.REGICIDE_ROCK1_TRAP, ObjectID.REGICIDE_TRAP_TRIPWIRE),
RELEKKA_EAST_FENCE(57, "Fence", new WorldPoint(2688, 3697, 0), ObjectID.VIKING_PIKE_DEFENCE_BROKEN),
YANILLE_DUNGEON_MONKEY_BARS(57, "Monkey Bars", null, ObjectID.MONKEYBARS_END2),
+ GREAT_CONCH_CLIFF_SHORTCUT_EAST_2(57, "Rock Climb", new WorldPoint(3256, 2397, 0), ObjectID.GREAT_CONCH_CLIFF_SHORTCUT_EAST_2_BOTTOM, ObjectID.GREAT_CONCH_CLIFF_SHORTCUT_EAST_2_TOP),
PHASMATYS_ECTOPOOL_SHORTCUT(58, "Weathered Wall", null , ObjectID.ECTOPOOL_SC_WALLCLIMB, ObjectID.ECTOPOOL_SC_RAILDOWN),
ELVEN_OVERPASS_CLIFF_SCRAMBLE(59, "Rocks", new WorldPoint(2345, 3300, 0), ObjectID.ELVES_OVERPASS_SC_ROCKS_TOP, ObjectID.ELVES_OVERPASS_SC_ROCKS_BOTTOM),
ELVEN_OVERPASS_CLIFF_SCRAMBLE_PRIFDDINAS(59, "Rocks", new WorldPoint(3369, 6052, 0), ObjectID.ELVES_OVERPASS_SC_ROCKS_TOP, ObjectID.ELVES_OVERPASS_SC_ROCKS_BOTTOM),
@@ -221,6 +225,9 @@ public boolean matches(Client client, TileObject object)
SLAYER_TOWER_MEDIUM_CHAIN_FIRST(61, "Spikey Chain (Floor 1)", new WorldPoint(3421, 3550, 0), ObjectID.SLAYERTOWER_SC_CHAINBOTTOM),
SLAYER_TOWER_MEDIUM_CHAIN_SECOND(61, "Spikey Chain (Floor 2)", new WorldPoint(3420, 3551, 0), ObjectID.SLAYERTOWER_SC_CHAINTOP),
SLAYER_DUNGEON_CREVICE(61, "Narrow Crevice", new WorldPoint(2729, 10008, 0), ObjectID.SLAYER_DUNGEON_2_SC_WALL_CRACK),
+ GREAT_CONCH_STEPPING_STONE(61, "Stepping Stone", new WorldPoint(3208, 2394, 0), ObjectID.GREAT_CONCH_STEPPING_STONE),
+ LAGUNA_AURORAE_SHORTCUT_1(61, "Rocks", new WorldPoint(1152, 2804, 0), ObjectID.LAGUNA_AURORAE_SHORTCUT_1),
+ LAGUNA_AURORAE_SHORTCUT_2(61, "Rocks", new WorldPoint(1142, 2803, 0), ObjectID.LAGUNA_AURORAE_SHORTCUT_2),
MOUNT_KARUULM_UPPER(62, "Rocks", new WorldPoint(1322, 3791, 0), ObjectID.MOUNT_KARUULM_SHORTCUT_ROCKS),
NECROPOLIS_STEPPING_STONE_NORTH(62, "Stepping Stone", new WorldPoint(3293, 2706, 0), ObjectID.NECROPOLIS_STEPPING_STONE_2),
NECROPOLIS_STEPPING_STONES_SOUTH(62, "Stepping Stones", new WorldPoint(3291, 2700, 0), ObjectID.NECROPOLIS_STEPPING_STONE_1),
@@ -308,9 +315,12 @@ public boolean matches(Client client, TileObject object)
ASGARNIA_ICE_DUNGEON_ADEPT_WEST(82, "Tunnel", new WorldPoint(3012, 9549, 0), ObjectID.CAVEWALL_SHORTCUT_WYVERN_WEST),
ASGARNIA_ICE_DUNGEON_ADEPT_EAST(82, "Tunnel", new WorldPoint(3022, 9553, 0), ObjectID.CAVEWALL_SHORTCUT_WYVERN_EAST),
COF_SHORTCUT_TOP(83, "Chain", new WorldPoint(1307, 10076, 0), new WorldPoint(1436, 10075, 2), ObjectID.COF_SHORTCUT_TOP),
+ GRIMSTONE_SHORTCUT_SOUTH(83, "Ledge", new WorldPoint(2901, 10454, 0), ObjectID.GRIMSTONE_SHORTCUT_SOUTH),
IORWERTHS_DUNGEON_SOUTHERN_SHORTCUT_EAST(84, "Tight Gap", new WorldPoint(3241, 12420, 0), ObjectID.PRIF_SLAYER_DUNGEON_SHORTCUT_2A),
IORWERTHS_DUNGEON_SOUTHERN_SHORTCUT_WEST(84, "Tight Gap", new WorldPoint(3231, 12420, 0), ObjectID.PRIF_SLAYER_DUNGEON_SHORTCUT_2B),
CRANDOR_ROCK_CLIMB(84, "Rocks", new WorldPoint(2831, 3252, 0), ObjectID.CRANDOR_SHORTCUT_TOP, ObjectID.CRANDOR_SHORTCUT_BOTTOM),
+ DEEPFIN_CAVE_SHORTCUT(84, "Crevice", new WorldPoint(2081, 9203, 0), ObjectID.DEEPFIN_CAVE_SHORTCUT),
+ DEEPFIN_CAVE_SHORTCUT_ICON(84, "Crevice", new WorldPoint(2075, 9203, 0)),
ELVEN_ADVANCED_CLIFF_SCRAMBLE(85, "Rocks", new WorldPoint(2337, 3253, 0), ObjectID.ELVES_OVERPASS_SC_ROCKS_TOP, ObjectID.ELVES_OVERPASS_SC_ROCKS_BOTTOM),
ELVEN_ADVANCED_CLIFF_SCRAMBLE_PRIFDDINAS(85, "Rocks", new WorldPoint(3361, 6005, 0), ObjectID.ELVES_OVERPASS_SC_ROCKS_TOP, ObjectID.ELVES_OVERPASS_SC_ROCKS_BOTTOM),
WATERBIRTH_ISLAND_ROCKS(85, "Rocks", new WorldPoint(2546, 3750, 0), ObjectID.DAGANNOTH_WATERBIRTH_ROCK_CLIMB_AGILITY_SHORTCUT_BOTTOM, ObjectID.DAGANNOTH_WATERBIRTH_ROCK_CLIMB_AGILITY_SHORTCUT_TOP),
diff --git a/runelite-client/src/main/java/net/runelite/client/game/FishingSpot.java b/runelite-client/src/main/java/net/runelite/client/game/FishingSpot.java
index c7a02b5d1a4..daf551ef08c 100644
--- a/runelite-client/src/main/java/net/runelite/client/game/FishingSpot.java
+++ b/runelite-client/src/main/java/net/runelite/client/game/FishingSpot.java
@@ -41,7 +41,7 @@ public enum FishingSpot
NpcID._0_23_53_SALTFISH, NpcID._0_24_53_SALTFISH, NpcID._0_26_54_SALTFISH,
NpcID._0_27_59_SALTFISH, NpcID._0_39_44_SALTFISH, NpcID._0_33_43_SALTFISH,
NpcID._0_27_46_SALTFISH, NpcID._0_24_51_SALTFISH, NpcID._0_21_46_SALTFISH,
- NpcID._0_20_46_SALTFISH, NpcID._0_20_47_SALTFISH
+ NpcID._0_20_46_SALTFISH, NpcID._0_20_47_SALTFISH, NpcID._0_47_46_SALTFISH
),
LOBSTER("Lobster, Swordfish, Tuna", "Lobster", ItemID.RAW_LOBSTER,
NpcID._0_40_53_RAREFISH, NpcID._0_44_53_RAREFISH, NpcID._0_45_49_RAREFISH,
@@ -50,7 +50,9 @@ public enum FishingSpot
NpcID._0_23_53_RAREFISH, NpcID._0_26_54_RAREFISH, NpcID._0_27_59_RAREFISH,
NpcID._0_38_45_RAREFISH, NpcID._0_33_52_RAREFISH, NpcID._0_34_53_RAREFISH,
NpcID._0_35_46_RAREFISH, NpcID._0_49_43_RAREFISH, NpcID._0_24_46_RAREFISH,
- NpcID._0_21_44_RAREFISH
+ NpcID._0_21_44_RAREFISH, NpcID._0_51_37_RAREFISH, NpcID._0_49_39_RAREFISH,
+ NpcID._0_29_46_RAREFISH, NpcID._0_38_42_RAREFISH, NpcID._0_24_43_RAREFISH,
+ NpcID._0_32_49_RAREFISH, NpcID._0_33_55_RAREFISH
),
SHARK("Shark, Bass", "Shark", ItemID.RAW_SHARK,
NpcID._0_40_53_MEMBERFISH, NpcID._0_44_53_MEMBERFISH, NpcID._0_33_51_MEMBERFISH,
@@ -60,7 +62,9 @@ public enum FishingSpot
NpcID._0_18_57_MEMBERFISH, NpcID._0_19_58_MEMBERFISH, NpcID._0_18_58_MEMBERFISH,
NpcID._0_33_52_MEMBERFISH, NpcID._0_34_53_MEMBERFISH, NpcID._0_35_44_MEMBERFISH,
NpcID._0_24_46_MEMBERFISH, NpcID._0_27_46_MEMBERFISH, NpcID._0_24_51_MEMBERFISH,
- NpcID._0_19_49_MEMBERFISH
+ NpcID._0_19_49_MEMBERFISH, NpcID._0_47_41_MEMBERFISH, NpcID._0_49_37_MEMBERFISH,
+ NpcID._0_50_38_MEMBERFISH, NpcID._0_38_42_MEMBERFISH, NpcID._0_24_43_MEMBERFISH,
+ NpcID._0_18_43_MEMBERFISH, NpcID._0_29_53_MEMBERFISH, NpcID._0_33_55_MEMBERFISH
),
MONKFISH("Monkfish", ItemID.RAW_MONKFISH,
NpcID.SWAN_FISHINGSPOT
@@ -73,10 +77,12 @@ public enum FishingSpot
NpcID._0_24_55_FRESHFISH, NpcID._0_25_55_FRESHFISH, NpcID._0_26_56_FRESHFISH,
NpcID._0_19_57_FRESHFISH, NpcID._0_24_49_FRESHFISH, NpcID._0_25_50_FRESHFISH,
NpcID._0_19_53_FRESHFISH, NpcID._0_20_52_FRESHFISH, NpcID._0_21_51_FRESHFISH,
- NpcID._0_22_52_FRESHFISH
+ NpcID._0_22_52_FRESHFISH, NpcID._0_41_73_FRESHFISH, NpcID._0_52_149_FRESHFISH,
+ NpcID._0_19_48_FRESHFISH, NpcID._0_20_152_FRESHFISH, NpcID._0_50_37_FRESHFISH,
+ NpcID._0_49_38_FRESHFISH
),
LAVA_EEL("Lava eel", ItemID.LAVA_EEL,
- NpcID._0_45_152_LAVAFISH, NpcID._0_47_59_LAVAFISH
+ NpcID._0_45_152_LAVAFISH, NpcID._0_47_59_LAVAFISH, NpcID._0_42_138_LAVAFISH
),
BARB_FISH("Sturgeon, Salmon, Trout", ItemID.BRUT_STURGEON,
NpcID._0_39_54_BRUT_FISHING_SPOT, NpcID._0_19_55_BRUT_FISHING_SPOT
@@ -138,6 +144,10 @@ public enum FishingSpot
CIVITAS_ILLA_FORTIS_PARK("House Keys", "House Keys", ItemID.VARLAMORE_THIEVING_HOUSE_KEY,
NpcID.CIVITAS_PARK_FISHINGSPOT_HMM
),
+ SQUID("Squid", ItemID.RAW_JUMBO_SQUID,
+ NpcID._0_46_35_LANTERNFISH, NpcID._0_32_40_LANTERNFISH, NpcID._0_18_42_LANTERNFISH,
+ NpcID._0_32_57_LANTERNFISH
+ ),
;
private static final Map SPOTS;
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/chatcommands/ChatCommandsPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/chatcommands/ChatCommandsPlugin.java
index c9f954b15bc..4e2bf3e1fb5 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/chatcommands/ChatCommandsPlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/chatcommands/ChatCommandsPlugin.java
@@ -2745,6 +2745,11 @@ private static String longBossName(String boss)
case "fortis colosseum":
return "Sol Heredit";
+ // colosseum glory
+ case "glory":
+ case "colo glory":
+ return "Colosseum Glory";
+
case "bird egg":
case "bird eggs":
case "bird's egg":
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/AnagramClue.java b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/AnagramClue.java
index 6abc6e13ac6..6844ebf9f87 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/AnagramClue.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/AnagramClue.java
@@ -900,6 +900,13 @@ public class AnagramClue extends ClueScroll implements NpcClueScroll, ObjectClue
.area("Tal Teklan")
.question("If a death rune costs 220 coins, an air rune costs 3 coins, and a water rune costs 4 coins, how many coins do I need to cast Water Blast 17 times?")
.answer("4097")
+ .build(),
+ AnagramClue.builder()
+ .itemId(ItemID.TRAIL_MEDIUM_ANAGRAM_SAIL)
+ .text("NOT RAG")
+ .npc("Elder Torgan")
+ .location(new WorldPoint(3143, 2423, 0))
+ .area("The Summer Shore")
.build()
);
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/CoordinateClue.java b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/CoordinateClue.java
index e8152fb4dbf..89f23713da9 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/CoordinateClue.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/CoordinateClue.java
@@ -276,6 +276,11 @@ public class CoordinateClue extends ClueScroll implements LocationClueScroll
.location(new WorldPoint(1659, 3111, 0))
.directions("Dig west of the Bazaar in Civitas illa Fortis.")
.build(),
+ CoordinateClue.builder()
+ .itemId(ItemID.TRAIL_MEDIUM_SEXTANT_SAIL)
+ .location(new WorldPoint(3183, 2453, 0))
+ .directions("Center of the Great Conch.")
+ .build(),
// Hard
CoordinateClue.builder()
.itemId(ItemID.TRAIL_CLUE_HARD_SEXTANT031)
@@ -593,6 +598,12 @@ public class CoordinateClue extends ClueScroll implements LocationClueScroll
.directions("South of Shayziens' Wall.")
.enemy(SARADOMIN_WIZARD)
.build(),
+ CoordinateClue.builder()
+ .itemId(ItemID.TRAIL_HARD_SEXTANT_SAIL)
+ .location(new WorldPoint(1193, 2774, 0))
+ .directions("On Laguna Aurorae.")
+ .enemy(SARADOMIN_WIZARD)
+ .build(),
// Elite
CoordinateClue.builder()
.itemId(ItemID.TRAIL_ELITE_SEXTANT_EXP5)
@@ -841,6 +852,12 @@ public class CoordinateClue extends ClueScroll implements LocationClueScroll
.directions("South of Custodia Pass")
.enemy(SARADOMIN_WIZARD)
.build(),
+ CoordinateClue.builder()
+ .itemId(ItemID.TRAIL_ELITE_SEXTANT_SAIL)
+ .location(new WorldPoint(2081, 3184, 0))
+ .directions("On Lledrith Island")
+ .enemy(ARMADYLEAN_OR_BANDOSIAN_GUARD)
+ .build(),
// Master
CoordinateClue.builder()
.itemId(ItemID.TRAIL_CLUE_MASTER)
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/CrypticClue.java b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/CrypticClue.java
index 8e4dc48c9ba..8d2f6128568 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/CrypticClue.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/CrypticClue.java
@@ -1985,7 +1985,7 @@ public class CrypticClue extends ClueScroll implements NpcClueScroll, ObjectClue
CrypticClue.builder()
.itemId(ItemID.TRAIL_ELITE_RIDDLE_VM01)
.text("With drinks and dwarves I make my way, upon my head a glass will stay.")
- .location(new WorldPoint(1432, 9584, 0))
+ .location(new WorldPoint(1432, 9584, 1))
.npc("Funbo")
.solution("Speak to Funbo inside Cam Torum's pub.")
.build(),
@@ -2026,6 +2026,19 @@ public class CrypticClue extends ClueScroll implements NpcClueScroll, ObjectClue
.location(new WorldPoint(1388, 3216, 0))
.objectId(ObjectID.TLATI_CRATE_01_DARK_CLUE)
.solution("Search the crate south of the Auburn Forest.")
+ .build(),
+ CrypticClue.builder()
+ .itemId(ItemID.TRAIL_ELITE_RIDDLE_SAIL)
+ .text("Their bane awaits, but don't be going in there without permission.")
+ .location(new WorldPoint(3120, 2424, 0))
+ .npc("Shellbane gryphon")
+ .solution("Kill the shellbane gryphon.")
+ .build(),
+ CrypticClue.builder()
+ .itemId(ItemID.TRAIL_HARD_RIDDLE_SAIL)
+ .text("I sit on the beach and cry for those that have passed on.")
+ .location(new WorldPoint(2324, 2772, 0))
+ .solution("Dig on the beach of the Tear of the Soul")
.build()
);
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/EmoteClue.java b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/EmoteClue.java
index 03375252527..4a9b5d2d600 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/EmoteClue.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/EmoteClue.java
@@ -158,7 +158,7 @@ public class EmoteClue extends ClueScroll implements LocationClueScroll
new EmoteClue(ItemID.TRAIL_CLUE_EASY_EMOTE007, "Cheer for the monks at Port Sarim. Equip a coif, steel plateskirt and a sapphire necklace.", "Port Sarim", NEAR_THE_ENTRANA_FERRY_IN_PORT_SARIM, new WorldPoint(3047, 3237, 0), CHEER, item(ItemID.COIF), item(ItemID.STEEL_PLATESKIRT), item(ItemID.SAPPHIRE_NECKLACE)),
new EmoteClue(ItemID.TRAIL_CLUE_EASY_EMOTE025, "Clap in the main exam room in the Exam Centre. Equip a white apron, green gnome boots and leather gloves.", "Exam Centre", OUTSIDE_THE_DIGSITE_EXAM_CENTRE, new WorldPoint(3361, 3339, 0), CLAP, item(ItemID.WHITE_APRON), item(ItemID.GNOME_BOOTS_GREEN), item(ItemID.LEATHER_GLOVES)),
new EmoteClue(ItemID.TRAIL_CLUE_EASY_EMOTE002, "Clap on the causeway to the Wizards' Tower. Equip an iron medium helmet, emerald ring and a white apron.", "Wizards' Tower", ON_THE_BRIDGE_TO_THE_MISTHALIN_WIZARDS_TOWER, new WorldPoint(3113, 3196, 0), CLAP, item(ItemID.IRON_MED_HELM), item(ItemID.EMERALD_RING), item(ItemID.WHITE_APRON)),
- new EmoteClue(ItemID.TRAIL_CLUE_EASY_EMOTE014, "Clap on the top level of the mill, north of East Ardougne. Equip a blue gnome robe top, HAM robe bottom and an unenchanted tiara.", "East Ardougne", UPSTAIRS_IN_THE_ARDOUGNE_WINDMILL, new WorldPoint(2635, 3385, 3), CLAP, item(ItemID.GNOME_ROBETOP_BLUE), item(ItemID.HAM_ROBE), item(ItemID.TIARA)),
+ new EmoteClue(ItemID.TRAIL_CLUE_EASY_EMOTE014, "Clap on the top level of the mill, north of East Ardougne. Equip a blue gnome robe top, HAM robe bottom and an unenchanted tiara.", "East Ardougne", UPSTAIRS_IN_THE_ARDOUGNE_WINDMILL, new WorldPoint(2635, 3385, 2), CLAP, item(ItemID.GNOME_ROBETOP_BLUE), item(ItemID.HAM_ROBE), item(ItemID.TIARA)),
new EmoteClue(ItemID.TRAIL_MEDIUM_EMOTE_EXP3, "Clap in Seers court house. Spin before you talk to me. Equip an adamant halberd, blue mystic robe bottom and a diamond ring.", "Seers Village", OUTSIDE_THE_SEERS_VILLAGE_COURTHOUSE, new WorldPoint(2735, 3469, 0), CLAP, SPIN, item(ItemID.ADAMANT_HALBERD), item(ItemID.MYSTIC_ROBE_BOTTOM), item(ItemID.DIAMOND_RING)),
new EmoteClue(ItemID.TRAIL_CLUE_MASTER, "Clap in the magic axe hut. Beware of double agents! Equip only some flared trousers.", "Magic axe hut", OUTSIDE_THE_WILDERNESS_AXE_HUT, new WorldPoint(3191, 3960, 0), DOUBLE_AGENT_141, CLAP, item(ItemID.TRAIL_FLARED_PANTS), item(ItemID.LOCKPICK), emptySlot("Nothing else", HEAD, CAPE, AMULET, WEAPON, BODY, SHIELD, GLOVES, BOOTS, RING, AMMO)),
new EmoteClue(ItemID.TRAIL_MEDIUM_EMOTE_EXP10, "Clap your hands north of Mount Karuulm Spin before you talk to me. Equip an adamant warhammer, a ring of life and a pair of mithril boots.", "Mount Karuulm", NORTH_OF_MOUNT_KARUULM, new WorldPoint(1306, 3839, 0), CLAP, SPIN, item(ItemID.ADAMNT_WARHAMMER), item(ItemID.RING_OF_LIFE), item(ItemID.MITHRIL_ARMOURED_BOOTS)),
@@ -243,7 +243,10 @@ public class EmoteClue extends ClueScroll implements LocationClueScroll
new EmoteClue(ItemID.TRAIL_CLUE_BEGINNER, "Clap at Bob's Brilliant Axes. Equip a bronze axe and leather boots.", "Lumbridge", BOB_AXES_ENTRANCE, new WorldPoint(3231, 3203, 0), CLAP, item(ItemID.BRONZE_AXE), item(ItemID.LEATHER_BOOTS)),
new EmoteClue(ItemID.TRAIL_CLUE_BEGINNER, "Panic at Al Kharid mine.", "Al Kharid mine", null, new WorldPoint(3303, 3271, 0), PANIC),
new EmoteClue(ItemID.TRAIL_CLUE_BEGINNER, "Spin at Flynn's Mace Shop.", "Falador", null, new WorldPoint(2950, 3387, 0), SPIN),
- new EmoteClue(ItemID.TRAIL_ELITE_EMOTE_EXP17, "Salute by the Charcoal Burners. Equip a Farmer's strawhat, Shayzien platebody (5) and Pyromancer robes.", "Charcoal Burners", CHARCOAL_BURNERS, new WorldPoint(1714, 3467, 0), SALUTE, any("Farmer's strawhat", item(ItemID.TITHE_REWARD_HAT_MALE), item(ItemID.TITHE_REWARD_HAT_FEMALE)), item(ItemID.SHAYZIEN_BODY_5), item(ItemID.PYROMANCER_BOTTOM)));
+ new EmoteClue(ItemID.TRAIL_ELITE_EMOTE_EXP17, "Salute by the Charcoal Burners. Equip a Farmer's strawhat, Shayzien platebody (5) and Pyromancer robes.", "Charcoal Burners", CHARCOAL_BURNERS, new WorldPoint(1714, 3467, 0), SALUTE, any("Farmer's strawhat", item(ItemID.TITHE_REWARD_HAT_MALE), item(ItemID.TITHE_REWARD_HAT_FEMALE)), item(ItemID.SHAYZIEN_BODY_5), item(ItemID.PYROMANCER_BOTTOM)),
+ new EmoteClue(ItemID.TRAIL_EASY_EMOTE_SAIL, "Dance a jig behind the bar on the Pandemonium. Equip a right eye patch and a bronze scimitar.", "Pandemonium", PANDEMONIUM_BAR, new WorldPoint(3049, 2966, 0), JIG, item(ItemID.EYE_PATCH), item(ItemID.BRONZE_SCIMITAR)),
+ new EmoteClue(ItemID.TRAIL_ELITE_EMOTE_SAIL, "Do the crab dance by the monument on Wintumber Island. Equip a crab helmet and a crab claw.", "Wintumber Island", WINTUMBER_ISLAND, new WorldPoint(2069, 2608, 0), CRAB_DANCE, item(ItemID.HUNDRED_PIRATE_CRAB_SHELL_HELM), item(ItemID.HUNDRED_PIRATE_CRAB_SHELL_GAUNTLET)),
+ new EmoteClue(ItemID.TRAIL_CLUE_MASTER, "Bow in front of the cave on Brittle Isle. Beware of double agents! Equip a Medallion of the Deep and a rosewood blowpipe.", "Brittle Isle", BRITTLE_ISLE, new WorldPoint(1946, 4074, 0), DOUBLE_AGENT_141, BOW, item(ItemID.MEDALLION_OF_THE_DEEP), item(ItemID.ROSEWOOD_BLOWPIPE)));
private static final String UNICODE_CHECK_MARK = "\u2713";
private static final String UNICODE_BALLOT_X = "\u2717";
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/FaloTheBardClue.java b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/FaloTheBardClue.java
index 5e5d76bc675..91b0fda61ef 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/FaloTheBardClue.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/FaloTheBardClue.java
@@ -72,7 +72,8 @@ public class FaloTheBardClue extends ClueScroll implements NpcClueScroll
new FaloTheBardClue("These gloves of white won't help you fight, but aid in cooking, they just might.", item(ItemID.GAUNTLETS_OF_COOKING)),
new FaloTheBardClue("They come from some time ago, from a land unto the east. Fossilised they have become, this small and gentle beast.", item(ItemID.FOSSIL_NUMULITE)),
new FaloTheBardClue("To slay a dragon you must first do, before this chest piece can be put on you.", item(ItemID.RUNE_PLATEBODY)),
- new FaloTheBardClue("Vampyres are agile opponents, damaged best with a weapon of many components.", any("Rod of Ivandis or Ivandis/Blisterwood flail", range(ItemID.BURGH_ROD_COMMAND_FINAL_10, ItemID.BURGH_ROD_COMMAND_FINAL_1), item(ItemID.IVANDIS_FLAIL), item(ItemID.BLISTERWOOD_FLAIL)))
+ new FaloTheBardClue("Vampyres are agile opponents, damaged best with a weapon of many components.", any("Rod of Ivandis or Ivandis/Blisterwood flail", range(ItemID.BURGH_ROD_COMMAND_FINAL_10, ItemID.BURGH_ROD_COMMAND_FINAL_1), item(ItemID.IVANDIS_FLAIL), item(ItemID.BLISTERWOOD_FLAIL))),
+ new FaloTheBardClue("You won't bring me to heel, unless you have a bright red keel.", item(ItemID.SAILING_BOAT_KEEL_PART_DRAGON))
);
private static final WorldPoint LOCATION = new WorldPoint(2689, 3550, 0);
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/SkillChallengeClue.java b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/SkillChallengeClue.java
index b3166559c7b..8a54b658c68 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/SkillChallengeClue.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/SkillChallengeClue.java
@@ -251,6 +251,7 @@ enum ChallengeType
new SkillChallengeClue("Plant a watermelon seed.", item(ItemID.RAKE), item(ItemID.DIBBER), xOfItem(ItemID.WATERMELON_SEED, 3)),
new SkillChallengeClue("Activate the Chivalry prayer."),
new SkillChallengeClue("Smith a tier 2 or above Shayzien platebody.", "smith a tier 2 or above shayzien platebody.", ANY_HAMMER, xOfItem(ItemID.LOVAKITE_BAR, 4)),
+ new SkillChallengeClue("Mine some nickel.", ANY_PICKAXE),
// Master Sherlock Tasks
new SkillChallengeClue("Equip an abyssal whip in front of the abyssal demons of the Slayer Tower.", true, any("Abyssal Whip", item(ItemID.ABYSSAL_WHIP), item(ItemID.ABYSSAL_WHIP_ICE), item(ItemID.ABYSSAL_WHIP_LAVA), item(ItemID.LEAGUE_3_WHIP), item(ItemID.ABYSSAL_TENTACLE), item(ItemID.LEAGUE_3_WHIP_TENTACLE))),
new SkillChallengeClue("Smith a runite med helm.", ANY_HAMMER, item(ItemID.RUNITE_BAR)),
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/emote/Emote.java b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/emote/Emote.java
index ed87bf04b1e..ccd96508d37 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/emote/Emote.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/emote/Emote.java
@@ -58,7 +58,8 @@ public enum Emote
STAMP("Stamp", SpriteID.Emotes.STAMP),
FLAP("Flap", SpriteID.Emotes.FLAP),
PUSH_UP("Push up", SpriteID.Emotes.PUSH_UP),
- FORTIS_SALUTE("Fortis Salute", SpriteID.EmotesLocked.FORTIS_SALUTE);
+ CRAB_DANCE("Crab Dance", SpriteID.Emotes.CRAB_DANCE),
+ ;
private final String name;
private final int spriteId;
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/emote/STASHUnit.java b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/emote/STASHUnit.java
index 5a0d1fba6b3..1b6e95051d5 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/emote/STASHUnit.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/emote/STASHUnit.java
@@ -147,6 +147,9 @@ public enum STASHUnit
TWILIGHT_TEMPLE_MINE(ObjectID.HH_MEDIUM_EXP11, new WorldPoint(1668, 3287, 0)),
ORTUS_MEETS_PROUDSPIRE(ObjectID.HH_MEDIUM_EXP12, new WorldPoint(1629, 3239, 0)),
OUTSIDE_TWILIGHT_TEMPLE(ObjectID.HH_HARD_EXP7, new WorldPoint(1693, 3243, 0)),
+ PANDEMONIUM_BAR(ObjectID.HH_EASY_SAIL, new WorldPoint(3045, 2963, 0)),
+ WINTUMBER_ISLAND(ObjectID.HH_ELITE_SAIL, new WorldPoint(2072, 2608, 0)),
+ BRITTLE_ISLE(ObjectID.HH_MASTER_SAIL, new WorldPoint(1952, 4074, 0)),
;
private final int objectId;
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/hotcold/HotColdArea.java b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/hotcold/HotColdArea.java
index ea7405be365..1d62070bcf2 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/hotcold/HotColdArea.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/hotcold/HotColdArea.java
@@ -39,6 +39,7 @@ public enum HotColdArea
KARAMJA("Karamja"),
MISTHALIN("Misthalin"),
MORYTANIA("Morytania"),
+ OCEAN("Ocean"),
VARLAMORE("Varlamore"),
WESTERN_PROVINCE("Western Province"),
WILDERNESS("Wilderness"),
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/hotcold/HotColdLocation.java b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/hotcold/HotColdLocation.java
index 30d45cb96aa..c3694ac87cc 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/hotcold/HotColdLocation.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/hotcold/HotColdLocation.java
@@ -43,6 +43,7 @@
import static net.runelite.client.plugins.cluescrolls.clues.hotcold.HotColdArea.KARAMJA;
import static net.runelite.client.plugins.cluescrolls.clues.hotcold.HotColdArea.MISTHALIN;
import static net.runelite.client.plugins.cluescrolls.clues.hotcold.HotColdArea.MORYTANIA;
+import static net.runelite.client.plugins.cluescrolls.clues.hotcold.HotColdArea.OCEAN;
import static net.runelite.client.plugins.cluescrolls.clues.hotcold.HotColdArea.VARLAMORE;
import static net.runelite.client.plugins.cluescrolls.clues.hotcold.HotColdArea.WESTERN_PROVINCE;
import static net.runelite.client.plugins.cluescrolls.clues.hotcold.HotColdArea.WILDERNESS;
@@ -148,6 +149,9 @@ public enum HotColdLocation
MORYTANIA_DRAGONTOOTH_SOUTH(MASTER, new WorldPoint(3803, 3532, 0), MORYTANIA, "Southern part of Dragontooth Island.", BRASSICAN_MAGE),
MORYTANIA_SLEPE_TENTS(MASTER, new WorldPoint(3769, 3383, 0), MORYTANIA, "North-east of Slepe, near the tents.", BRASSICAN_MAGE),
NORTHEAST_OF_AL_KHARID_MINE(BEGINNER, new WorldPoint(3332, 3313, 0), MISTHALIN, "Northeast of Al Kharid Mine"),
+ SAIL_GREAT_CONCH(MASTER, new WorldPoint(3249, 2349, 0), OCEAN, "In the south-eastern mine of the Great Conch", BRASSICAN_MAGE),
+ SAIL_ISLE_OF_SERPENTS(MASTER, new WorldPoint(1856, 2415, 0), OCEAN, "On the Isle of Serpents", BRASSICAN_MAGE),
+ SAIL_DRUMSTICK_ISLE(MASTER, new WorldPoint(2139, 3562, 0), OCEAN, "On Drumstick Isle", BRASSICAN_MAGE),
VARLAMORE_BAZAAR(MASTER, new WorldPoint(1680, 3107, 0), VARLAMORE, "In the centre of the Bazaar in Civitas illa Fortis.", BRASSICAN_MAGE),
VARLAMORE_LOCUS_OASIS(MASTER, new WorldPoint(1695, 2990, 0), VARLAMORE, "Amongst the trees at the Locus Oasis.", BRASSICAN_MAGE),
VARLAMORE_RAINFOREST_CENTRE(MASTER, new WorldPoint(1312, 3108, 0), VARLAMORE, "In the centre of the Tlati Rainforest.", BRASSICAN_MAGE),
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/discord/DiscordGameEventType.java b/runelite-client/src/main/java/net/runelite/client/plugins/discord/DiscordGameEventType.java
index 55633b94a50..d62cd591ef3 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/discord/DiscordGameEventType.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/discord/DiscordGameEventType.java
@@ -430,7 +430,7 @@ enum DiscordGameEventType
REGION_MOUNT_QUIDAMORTEM("Mount Quidamortem", DiscordAreaType.REGIONS, 4662, 4663, 4918, 4919),
REGION_MR_MORDAUTS_CLASSROOM("Mr. Mordaut's Classroom", DiscordAreaType.REGIONS, 7502),
REGION_MUDSKIPPER("Mudskipper Point", DiscordAreaType.REGIONS, 11824),
- REGION_MYSTERIOUS_OLD_MAN_MAZE("Mysterious Old Man's Maze", DiscordAreaType.REGIONS, 11590, 11591, 11846, 11847),
+ REGION_MYSTERIOUS_OLD_MAN_MAZE("Mysterious Old Man's Maze", DiscordAreaType.REGIONS, 11591),
REGION_MYTHS_GUILD("Myths' Guild", DiscordAreaType.REGIONS, 9772),
REGION_NATURE_ALTAR("Nature Altar", DiscordAreaType.REGIONS, 9547),
REGION_NECROPOLIS("Necropolis", DiscordAreaType.REGIONS, 13098, 13353, 13354, 13609, 13610),
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/fairyring/FairyRing.java b/runelite-client/src/main/java/net/runelite/client/plugins/fairyring/FairyRing.java
index 76b19ee07da..137ba7e8706 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/fairyring/FairyRing.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/fairyring/FairyRing.java
@@ -72,6 +72,7 @@ public enum FairyRing
CIQ("North-west of Yanille"),
CIR("North-east of the Farming Guild", "mount karuulm konar"),
CIS("North of the Arceuus Library"),
+ CJQ("The Great Conch"),
CJR("Sinclair Mansion", "falo bard"),
CKP("Cosmic entity's plane"),
CKQ("Aldarin"),
@@ -91,6 +92,7 @@ public enum FairyRing
DKP("South of Musa Point"),
DKR("Edgeville, Grand Exchange"),
DKS("Polar Hunter area"),
+ DLP("Grimstone Dungeon"),
DLQ("North of Nardah"),
DLR("(Island) Poison Waste south of Isafdar"),
DLS("Myreque hideout under The Hollows");
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/hiscore/HiscorePanel.java b/runelite-client/src/main/java/net/runelite/client/plugins/hiscore/HiscorePanel.java
index 2fe7bef2133..9b5844b2a6d 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/hiscore/HiscorePanel.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/hiscore/HiscorePanel.java
@@ -476,7 +476,7 @@ else if (!isSkill || exp != -1L)
level = s.getLevel();
}
- if (level != -1)
+ if (level > 0)
{
label.setText(pad(formatLevel(level), skill.getType()));
}
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/interfacestyles/WidgetOffset.java b/runelite-client/src/main/java/net/runelite/client/plugins/interfacestyles/WidgetOffset.java
index 2362d4071c6..098b81d7f3b 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/interfacestyles/WidgetOffset.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/interfacestyles/WidgetOffset.java
@@ -104,6 +104,7 @@ enum WidgetOffset
FIXED_2010_MUSIC_ICON(Skin.AROUND_2010, InterfaceID.Toplevel.ICON13, 209, 2, null, null),
RESIZABLE_2005_QUESTS_ICON(Skin.AROUND_2005, InterfaceID.ToplevelOsrsStretch.ICON2, 71, -1, null, null),
+ RESIZABLE_2005_FRIENDS_CHAT_ICON(Skin.AROUND_2005, InterfaceID.ToplevelOsrsStretch.ICON7, null, 1, null, null),
RESIZABLE_2005_LOGOUT_ICON(Skin.AROUND_2005, InterfaceID.ToplevelOsrsStretch.ICON10, null, null, null, null),
RESIZABLE_2005_OPTIONS_ICON(Skin.AROUND_2005, InterfaceID.ToplevelOsrsStretch.ICON11, 137, null, null, null),
RESIZABLE_2005_EMOTE_ICON(Skin.AROUND_2005, InterfaceID.ToplevelOsrsStretch.ICON12, 171, 2, null, null),
@@ -117,6 +118,7 @@ enum WidgetOffset
RESIZABLE_BOTTOM_2005_INVENTORY_ICON(Skin.AROUND_2005, InterfaceID.ToplevelPreEoc.ICON3, 98, 1, null, null),
RESIZABLE_BOTTOM_2005_QUESTS_ICON(Skin.AROUND_2005, InterfaceID.ToplevelPreEoc.ICON2, 66, -1, null, null),
RESIZABLE_BOTTOM_2005_EQUIPMENT_ICON(Skin.AROUND_2005, InterfaceID.ToplevelPreEoc.ICON4, 131, 3, null, null),
+ RESIZABLE_BOTTOM_2005_FRIENDS_CHAT_ICON(Skin.AROUND_2005, InterfaceID.ToplevelPreEoc.ICON7, null, 1, null, null),
RESIZABLE_BOTTOM_2005_MUSIC_ICON(Skin.AROUND_2005, InterfaceID.ToplevelPreEoc.ICON13, null, 3, null, null),
RESIZABLE_BOTTOM_2005_EMOTE_ICON(Skin.AROUND_2005, InterfaceID.ToplevelPreEoc.ICON12, 133, 1, null, null),
RESIZABLE_BOTTOM_2005_STATS_ICON(Skin.AROUND_2005, InterfaceID.ToplevelPreEoc.ICON1, 32, null, null, null),
@@ -141,9 +143,9 @@ enum WidgetOffset
FIXED_2005_MAGIC_HIGHLIGHT(Skin.AROUND_2005, InterfaceID.Toplevel.STONE6, 209, 1, 32, 36),
FIXED_2005_MAGIC_ICON(Skin.AROUND_2005, InterfaceID.Toplevel.ICON6, 206, 3, null, null),
FIXED_2005_FRIENDS_CHAT_HIGHLIGHT(Skin.AROUND_2005, InterfaceID.Toplevel.STONE7, 19, null, 34, 36),
- FIXED_2005_FRIENDS_CHAT_ICON(Skin.AROUND_2005, InterfaceID.Toplevel.ICON7, 22, null, null, null),
+ FIXED_2005_FRIENDS_CHAT_ICON(Skin.AROUND_2005, InterfaceID.Toplevel.ICON7, 22, 1, null, null),
FIXED_2005_FRIENDS_HIGHLIGHT(Skin.AROUND_2005, InterfaceID.Toplevel.STONE9, 51, null, 30, 37),
- FIXED_2005_FRIENDS_ICON(Skin.AROUND_2005, InterfaceID.Toplevel.ICON9, 49, -1, null, null),
+ FIXED_2005_FRIENDS_ICON(Skin.AROUND_2005, InterfaceID.Toplevel.ICON9, 49, null, null, null),
FIXED_2005_IGNORES_HIGHLIGHT(Skin.AROUND_2005, InterfaceID.Toplevel.STONE8, 79, null, 30, 37),
FIXED_2005_IGNORES_ICON(Skin.AROUND_2005, InterfaceID.Toplevel.ICON8, 78, null, null, null),
FIXED_2005_LOGOUT_HIGHLIGHT(Skin.AROUND_2005, InterfaceID.Toplevel.STONE10, 107, 2, 45, 35),
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/timetracking/farming/FarmingWorld.java b/runelite-client/src/main/java/net/runelite/client/plugins/timetracking/farming/FarmingWorld.java
index 670e33dd022..d7b36a2ba38 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/timetracking/farming/FarmingWorld.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/timetracking/farming/FarmingWorld.java
@@ -74,6 +74,10 @@ class FarmingWorld
new FarmingPatch("", VarbitID.FARMING_TRANSMIT_A, PatchImplementation.HOPS, NpcID.FARMING_GARDENER_HOPS_5)
), 5165, 5166, 5422, 5677, 5678);
+ add(new FarmingRegion("Anglers' Retreat", 9770, false,
+ new FarmingPatch("", VarbitID.FARMING_TRANSMIT_A, PatchImplementation.HARDWOOD_TREE, NpcID.FARMING_GARDENER_HARDWOOD_TREE_5)
+ ));
+
add(new FarmingRegion("Ardougne", 10290, false,
new FarmingPatch("", VarbitID.FARMING_TRANSMIT_A, PatchImplementation.BUSH, NpcID.FARMING_GARDENER_BUSH_4)
), 10546);
@@ -212,6 +216,12 @@ public boolean isInBounds(WorldPoint loc)
new FarmingPatch("", VarbitID.FARMING_TRANSMIT_B, PatchImplementation.FRUIT_TREE, NpcID.FARMING_GARDENER_FRUIT_1)
), 9782, 9526, 9525);
+ add(new FarmingRegion("Great Conch", 12581, true,
+ new FarmingPatch("East", VarbitID.FARMING_TRANSMIT_A, PatchImplementation.CORAL, NpcID.TORTUGAN_CORAL_FARMER, 0),
+ new FarmingPatch("West", VarbitID.FARMING_TRANSMIT_B, PatchImplementation.CORAL, NpcID.TORTUGAN_CORAL_FARMER, 1),
+ new FarmingPatch("", VarbitID.FARMING_TRANSMIT_C, PatchImplementation.CALQUAT, NpcID.FARMING_GARDENER_CALQUAT_3)
+ ), 12325, 12326, 12327, 12580, 12581, 12582, 12583, 12836, 12837, 12838, 12839, 13092, 13093, 13194);
+
add(new FarmingRegion("Harmony", 15148, false,
new FarmingPatch("", VarbitID.FARMING_TRANSMIT_A, PatchImplementation.ALLOTMENT),
new FarmingPatch("", VarbitID.FARMING_TRANSMIT_B, PatchImplementation.HERB)
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/timetracking/farming/PatchImplementation.java b/runelite-client/src/main/java/net/runelite/client/plugins/timetracking/farming/PatchImplementation.java
index 90780197e49..324a9ef59dd 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/timetracking/farming/PatchImplementation.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/timetracking/farming/PatchImplementation.java
@@ -1522,286 +1522,311 @@ PatchState forVarbitValue(int value)
if (value >= 8 && value <= 10)
{
// Hammerstone Hops[Harvest,Inspect,Guide] 8181,8181,8181
- return new PatchState(Produce.HAMMERSTONE, CropState.HARVESTABLE, value - 8);
+ return new PatchState(Produce.HAMMERSTONE, CropState.HARVESTABLE, 10 - value);
}
- if (value >= 11 && value <= 15)
+ if (value >= 11 && value <= 13)
+ {
+ // Diseased Hammerstone Hops[Cure,Inspect,Guide] 8186,8187,8188
+ return new PatchState(Produce.HAMMERSTONE, CropState.DISEASED, value - 10);
+ }
+ if (value >= 14 && value <= 18)
{
// Asgarnian Hops[Inspect,Guide] 8154,8155,8156,8157,8158
- return new PatchState(Produce.ASGARNIAN, CropState.GROWING, value - 11);
+ return new PatchState(Produce.ASGARNIAN, CropState.GROWING, value - 14);
}
- if (value >= 16 && value <= 18)
+ if (value >= 19 && value <= 21)
{
// Asgarnian Hops[Harvest,Inspect,Guide] 8159,8159,8159
- return new PatchState(Produce.ASGARNIAN, CropState.HARVESTABLE, value - 16);
+ return new PatchState(Produce.ASGARNIAN, CropState.HARVESTABLE, 21 - value);
}
- if (value >= 19 && value <= 24)
+ if (value >= 22 && value <= 25)
+ {
+ // Diseased Asgarnian Hops[Cure,Inspect,Guide] 8165,8166,8167,8168
+ return new PatchState(Produce.ASGARNIAN, CropState.DISEASED, value - 21);
+ }
+ if (value >= 26 && value <= 31)
{
// Yanillian Hops[Inspect,Guide] 8288,8289,8290,8291,8292,8293
- return new PatchState(Produce.YANILLIAN, CropState.GROWING, value - 19);
+ return new PatchState(Produce.YANILLIAN, CropState.GROWING, value - 26);
}
- if (value >= 25 && value <= 27)
+ if (value >= 32 && value <= 34)
{
// Yanillian Hops[Harvest,Inspect,Guide] 8294,8294,8294
- return new PatchState(Produce.YANILLIAN, CropState.HARVESTABLE, value - 25);
+ return new PatchState(Produce.YANILLIAN, CropState.HARVESTABLE, 34 - value);
+ }
+ if (value >= 35 && value <= 39)
+ {
+ // Diseased Yanillian Hops[Cure,Inspect,Guide] 8301,8302,8303,8304,8305
+ return new PatchState(Produce.YANILLIAN, CropState.DISEASED, value - 34);
}
- if (value >= 28 && value <= 34)
+ if (value >= 40 && value <= 46)
{
// Krandorian Hops[Inspect,Guide] 8211,8212,8213,8214,8215,8216,8217
- return new PatchState(Produce.KRANDORIAN, CropState.GROWING, value - 28);
+ return new PatchState(Produce.KRANDORIAN, CropState.GROWING, value - 40);
}
- if (value >= 35 && value <= 37)
+ if (value >= 47 && value <= 49)
{
// Krandorian Hops[Harvest,Inspect,Guide] 8218,8218,8218
- return new PatchState(Produce.KRANDORIAN, CropState.HARVESTABLE, value - 35);
+ return new PatchState(Produce.KRANDORIAN, CropState.HARVESTABLE, 49 - value);
}
- if (value >= 38 && value <= 45)
+ if (value >= 50 && value <= 55)
+ {
+ // Diseased Krandorian Hops[Cure,Inspect,Guide] 8226,8227,8228,8229,8230,8231
+ return new PatchState(Produce.KRANDORIAN, CropState.DISEASED, value - 49);
+ }
+ if (value >= 56 && value <= 63)
{
// Wildblood Hops[Inspect,Guide] 8257,8258,8259,8260,8261,8262,8263,8264
- return new PatchState(Produce.WILDBLOOD, CropState.GROWING, value - 38);
+ return new PatchState(Produce.WILDBLOOD, CropState.GROWING, value - 56);
}
- if (value >= 46 && value <= 48)
+ if (value >= 64 && value <= 66)
{
// Wildblood Hops[Harvest,Inspect,Guide] 8265,8265,8265
- return new PatchState(Produce.WILDBLOOD, CropState.HARVESTABLE, value - 46);
+ return new PatchState(Produce.WILDBLOOD, CropState.HARVESTABLE, 66 - value);
+ }
+ if (value >= 67 && value <= 73)
+ {
+ // Diseased Wildblood Hops[Cure,Inspect,Guide] 8274,8275,8276,8277,8278,8279,8280
+ return new PatchState(Produce.WILDBLOOD, CropState.DISEASED, value - 66);
}
- if (value >= 49 && value <= 52)
+ if (value >= 74 && value <= 77)
{
// Barley[Inspect,Guide] 8192,8193,8194,8195
- return new PatchState(Produce.BARLEY, CropState.GROWING, value - 49);
+ return new PatchState(Produce.BARLEY, CropState.GROWING, value - 74);
}
- if (value >= 53 && value <= 55)
+ if (value >= 78 && value <= 80)
{
// Barley[Harvest,Inspect,Guide] 8196,8196,8196
- return new PatchState(Produce.BARLEY, CropState.HARVESTABLE, value - 53);
+ return new PatchState(Produce.BARLEY, CropState.HARVESTABLE, 80 - value);
+ }
+ if (value >= 81 && value <= 83)
+ {
+ // Diseased Barley[Cure,Inspect,Guide] 8201,8202,8203
+ return new PatchState(Produce.BARLEY, CropState.DISEASED, value - 80);
}
- if (value >= 56 && value <= 60)
+ if (value >= 84 && value <= 88)
{
// Jute[Inspect,Guide] 8238,8239,8240,8241,8242
- return new PatchState(Produce.JUTE, CropState.GROWING, value - 56);
+ return new PatchState(Produce.JUTE, CropState.GROWING, value - 84);
}
- if (value >= 61 && value <= 63)
+ if (value >= 89 && value <= 91)
{
// Jute[Harvest,Inspect,Guide] 8243,8243,8243
- return new PatchState(Produce.JUTE, CropState.HARVESTABLE, value - 61);
+ return new PatchState(Produce.JUTE, CropState.HARVESTABLE, 91 - value);
}
- if (value >= 64 && value <= 67)
+ if (value >= 92 && value <= 95)
{
- // Hops Patch[Rake,Inspect,Guide] 8210,8210,8210,8210
- return new PatchState(Produce.WEEDS, CropState.GROWING, 3);
+ // Diseased Jute[Cure,Inspect,Guide] 8249,8250,8251,8252
+ return new PatchState(Produce.JUTE, CropState.DISEASED, value - 91);
}
- if (value >= 68 && value <= 71)
+ if (value >= 96 && value <= 98)
{
- // Hammerstone Hops[Inspect,Guide] 8182,8183,8184,8185
- return new PatchState(Produce.HAMMERSTONE, CropState.GROWING, value - 68);
+ // Flax[Inspect,Guide] 58836,58837,58838
+ return new PatchState(Produce.FLAX, CropState.GROWING, value - 96);
}
- if (value >= 72 && value <= 74)
+ if (value >= 99 && value <= 101)
{
- // Hops Patch[Rake,Inspect,Guide] 8210,8210,8210
- return new PatchState(Produce.WEEDS, CropState.GROWING, 3);
+ // Flax[Harvest,Inspect,Guide] 58839,58839,58839
+ return new PatchState(Produce.FLAX, CropState.HARVESTABLE, 101 - value);
}
- if (value >= 75 && value <= 79)
+ if (value >= 102 && value <= 103)
{
- // Asgarnian Hops[Inspect,Guide] 8160,8161,8162,8163,8164
- return new PatchState(Produce.ASGARNIAN, CropState.GROWING, value - 75);
+ // Diseased Flax[Cure,Inspect,Guide] 58843,58844
+ return new PatchState(Produce.FLAX, CropState.DISEASED, value - 101);
}
- if (value >= 80 && value <= 82)
+ if (value >= 104 && value <= 107)
{
- // Hops Patch[Rake,Inspect,Guide] 8210,8210,8210
- return new PatchState(Produce.WEEDS, CropState.GROWING, 3);
+ // Hemp[Inspect,Guide] 58847,58848,58849,58850
+ return new PatchState(Produce.HEMP, CropState.GROWING, value - 104);
}
- if (value >= 83 && value <= 88)
+ if (value >= 108 && value <= 110)
{
- // Yanillian Hops[Inspect,Guide] 8295,8296,8297,8298,8299,8300
- return new PatchState(Produce.YANILLIAN, CropState.GROWING, value - 83);
+ // Hemp[Harvest,Inspect,Guide] 58851,58851,58851
+ return new PatchState(Produce.HEMP, CropState.HARVESTABLE, 110 - value);
}
- if (value >= 89 && value <= 91)
+ if (value >= 111 && value <= 113)
{
- // Hops Patch[Rake,Inspect,Guide] 8210,8210,8210
- return new PatchState(Produce.WEEDS, CropState.GROWING, 3);
+ // Diseased Hemp[Cure,Inspect,Guide] 58856,58857,58858
+ return new PatchState(Produce.HEMP, CropState.DISEASED, value - 110);
}
- if (value >= 92 && value <= 98)
+ if (value >= 114 && value <= 118)
{
- // Krandorian Hops[Inspect,Guide] 8219,8220,8221,8222,8223,8224,8225
- return new PatchState(Produce.KRANDORIAN, CropState.GROWING, value - 92);
+ // Cotton[Inspect,Guide] 58862,58863,58864,58865,58866
+ return new PatchState(Produce.COTTON, CropState.GROWING, value - 114);
}
- if (value >= 99 && value <= 101)
+ if (value >= 119 && value <= 121)
{
- // Hops Patch[Rake,Inspect,Guide] 8210,8210,8210
- return new PatchState(Produce.WEEDS, CropState.GROWING, 3);
+ // Cotton[Harvest,Inspect,Guide] 58867,58867,58867
+ return new PatchState(Produce.COTTON, CropState.HARVESTABLE, 121 - value);
}
- if (value >= 102 && value <= 109)
+ if (value >= 122 && value <= 125)
{
- // Wildblood Hops[Inspect,Guide] 8266,8267,8268,8269,8270,8271,8272,8273
- return new PatchState(Produce.WILDBLOOD, CropState.GROWING, value - 102);
+ // Diseased Cotton[Cure,Inspect,Guide] 58873,58874,58875,58876
+ return new PatchState(Produce.COTTON, CropState.DISEASED, value - 121);
}
- if (value >= 110 && value <= 112)
+ if (value >= 126 && value <= 131)
{
- // Hops Patch[Rake,Inspect,Guide] 8210,8210,8210
+ // Hops Patch[Rake,Inspect,Guide] 8210,8210,8210,8210,8210,8210
return new PatchState(Produce.WEEDS, CropState.GROWING, 3);
}
- if (value >= 113 && value <= 116)
+ if (value >= 132 && value <= 135)
{
- // Barley[Inspect,Guide] 8197,8198,8199,8200
- return new PatchState(Produce.BARLEY, CropState.GROWING, value - 113);
+ // Hammerstone Hops[Inspect,Guide] 8182,8183,8184,8185
+ return new PatchState(Produce.HAMMERSTONE, CropState.GROWING, value - 132);
}
- if (value >= 117 && value <= 119)
+ if (value >= 136 && value <= 138)
{
// Hops Patch[Rake,Inspect,Guide] 8210,8210,8210
return new PatchState(Produce.WEEDS, CropState.GROWING, 3);
}
- if (value >= 120 && value <= 124)
+ if (value >= 139 && value <= 141)
{
- // Jute[Inspect,Guide] 8244,8245,8246,8247,8248
- return new PatchState(Produce.JUTE, CropState.GROWING, value - 120);
+ // Dead Hammerstone Hops[Clear,Inspect,Guide] 8189,8190,8191
+ return new PatchState(Produce.HAMMERSTONE, CropState.DEAD, value - 138);
}
- if (value >= 125 && value <= 132)
+ if (value >= 142 && value <= 146)
{
- // Hops Patch[Rake,Inspect,Guide] 8210,8210,8210,8210,8210,8210,8210,8210
- return new PatchState(Produce.WEEDS, CropState.GROWING, 3);
+ // Asgarnian Hops[Inspect,Guide] 8160,8161,8162,8163,8164
+ return new PatchState(Produce.ASGARNIAN, CropState.GROWING, value - 142);
}
- if (value >= 133 && value <= 135)
+ if (value >= 147 && value <= 149)
{
- // Diseased Hammerstone Hops[Cure,Inspect,Guide] 8186,8187,8188
- return new PatchState(Produce.HAMMERSTONE, CropState.DISEASED, value - 132);
+ // Hops Patch[Rake,Inspect,Guide] 8210,8210,8210
+ return new PatchState(Produce.WEEDS, CropState.GROWING, 3);
}
- if (value >= 136 && value <= 139)
+ if (value >= 150 && value <= 153)
{
- // Hops Patch[Rake,Inspect,Guide] 8210,8210,8210,8210
- return new PatchState(Produce.WEEDS, CropState.GROWING, 3);
+ // Dead Asgarnian Hops[Clear,Inspect,Guide] 8169,8170,8171,8172
+ return new PatchState(Produce.ASGARNIAN, CropState.DEAD, value - 149);
}
- if (value >= 140 && value <= 143)
+ if (value >= 154 && value <= 159)
{
- // Diseased Asgarnian Hops[Cure,Inspect,Guide] 8165,8166,8167,8168
- return new PatchState(Produce.ASGARNIAN, CropState.DISEASED, value - 139);
+ // Yanillian Hops[Inspect,Guide] 8295,8296,8297,8298,8299,8300
+ return new PatchState(Produce.YANILLIAN, CropState.GROWING, value - 154);
}
- if (value >= 144 && value <= 147)
+ if (value >= 160 && value <= 162)
{
- // Hops Patch[Rake,Inspect,Guide] 8210,8210,8210,8210
+ // Hops Patch[Rake,Inspect,Guide] 8210,8210,8210
return new PatchState(Produce.WEEDS, CropState.GROWING, 3);
}
- if (value >= 148 && value <= 152)
+ if (value >= 163 && value <= 167)
{
- // Diseased Yanillian Hops[Cure,Inspect,Guide] 8301,8302,8303,8304,8305
- return new PatchState(Produce.YANILLIAN, CropState.DISEASED, value - 147);
+ // Dead Yanillian Hops[Clear,Inspect,Guide] 8306,8307,8308,8309,8310
+ return new PatchState(Produce.YANILLIAN, CropState.DEAD, value - 162);
}
- if (value >= 153 && value <= 156)
+ if (value >= 168 && value <= 174)
{
- // Hops Patch[Rake,Inspect,Guide] 8210,8210,8210,8210
- return new PatchState(Produce.WEEDS, CropState.GROWING, 3);
+ // Krandorian Hops[Inspect,Guide] 8219,8220,8221,8222,8223,8224,8225
+ return new PatchState(Produce.KRANDORIAN, CropState.GROWING, value - 168);
}
- if (value >= 157 && value <= 162)
+ if (value >= 175 && value <= 177)
{
- // Diseased Krandorian Hops[Cure,Inspect,Guide] 8226,8227,8228,8229,8230,8231
- return new PatchState(Produce.KRANDORIAN, CropState.DISEASED, value - 156);
+ // Hops Patch[Rake,Inspect,Guide] 8210,8210,8210
+ return new PatchState(Produce.WEEDS, CropState.GROWING, 3);
}
- if (value >= 163 && value <= 166)
+ if (value >= 178 && value <= 183)
{
- // Hops Patch[Rake,Inspect,Guide] 8210,8210,8210,8210
- return new PatchState(Produce.WEEDS, CropState.GROWING, 3);
+ // Dead Krandorian Hops[Clear,Inspect,Guide] 8232,8233,8234,8235,8236,8237
+ return new PatchState(Produce.KRANDORIAN, CropState.DEAD, value - 177);
}
- if (value >= 167 && value <= 173)
+ if (value >= 184 && value <= 191)
{
- // Diseased Wildblood Hops[Cure,Inspect,Guide] 8274,8275,8276,8277,8278,8279,8280
- return new PatchState(Produce.WILDBLOOD, CropState.DISEASED, value - 166);
+ // Wildblood Hops[Inspect,Guide] 8266,8267,8268,8269,8270,8271,8272,8273
+ return new PatchState(Produce.WILDBLOOD, CropState.GROWING, value - 184);
}
- if (value >= 174 && value <= 177)
+ if (value >= 192 && value <= 194)
{
- // Hops Patch[Rake,Inspect,Guide] 8210,8210,8210,8210
+ // Hops Patch[Rake,Inspect,Guide] 8210,8210,8210
return new PatchState(Produce.WEEDS, CropState.GROWING, 3);
}
- if (value >= 178 && value <= 180)
+ if (value >= 195 && value <= 201)
{
- // Diseased Barley[Cure,Inspect,Guide] 8201,8202,8203
- return new PatchState(Produce.BARLEY, CropState.DISEASED, value - 177);
+ // Dead Wildblood Hops[Clear,Inspect,Guide] 8281,8282,8283,8284,8285,8286,8287
+ return new PatchState(Produce.WILDBLOOD, CropState.DEAD, value - 194);
}
- if (value == 181)
+ if (value >= 202 && value <= 205)
{
- // Hops Patch[Rake,Inspect,Guide] 8210
- return new PatchState(Produce.WEEDS, CropState.GROWING, 3);
+ // Barley[Inspect,Guide] 8197,8198,8199,8200
+ return new PatchState(Produce.BARLEY, CropState.GROWING, value - 202);
}
- if (value >= 183 && value <= 184)
+ if (value >= 206 && value <= 208)
{
- // Hops Patch[Rake,Inspect,Guide] 8210,8210
+ // Hops Patch[Rake,Inspect,Guide] 8210,8210,8210
return new PatchState(Produce.WEEDS, CropState.GROWING, 3);
}
- if (value >= 185 && value <= 188)
- {
- // Diseased Jute[Cure,Inspect,Guide] 8249,8250,8251,8252
- return new PatchState(Produce.JUTE, CropState.DISEASED, value - 184);
- }
- if (value >= 189 && value <= 196)
+ if (value >= 209 && value <= 211)
{
- // Hops Patch[Rake,Inspect,Guide] 8210,8210,8210,8210,8210,8210,8210,8210
- return new PatchState(Produce.WEEDS, CropState.GROWING, 3);
+ // Dead Barley[Clear,Inspect,Guide] 8204,8205,8206
+ return new PatchState(Produce.BARLEY, CropState.DEAD, value - 208);
}
- if (value >= 197 && value <= 199)
+ if (value >= 212 && value <= 216)
{
- // Dead Hammerstone Hops[Clear,Inspect,Guide] 8189,8190,8191
- return new PatchState(Produce.HAMMERSTONE, CropState.DEAD, value - 196);
+ // Jute[Inspect,Guide] 8244,8245,8246,8247,8248
+ return new PatchState(Produce.JUTE, CropState.GROWING, value - 212);
}
- if (value >= 200 && value <= 203)
+ if (value >= 217 && value <= 219)
{
- // Hops Patch[Rake,Inspect,Guide] 8210,8210,8210,8210
+ // Hops Patch[Rake,Inspect,Guide] 8210,8210,8210
return new PatchState(Produce.WEEDS, CropState.GROWING, 3);
}
- if (value >= 204 && value <= 207)
+ if (value >= 220 && value <= 223)
{
- // Dead Asgarnian Hops[Clear,Inspect,Guide] 8169,8170,8171,8172
- return new PatchState(Produce.ASGARNIAN, CropState.DEAD, value - 203);
+ // Dead Jute[Clear,Inspect,Guide] 8253,8254,8255,8256
+ return new PatchState(Produce.JUTE, CropState.DEAD, value - 219);
}
- if (value >= 208 && value <= 211)
+ if (value >= 224 && value <= 226)
{
- // Hops Patch[Rake,Inspect,Guide] 8210,8210,8210,8210
- return new PatchState(Produce.WEEDS, CropState.GROWING, 3);
+ // Flax[Inspect,Guide] 58840,58841,58842
+ return new PatchState(Produce.FLAX, CropState.GROWING, value - 224);
}
- if (value >= 212 && value <= 216)
+ if (value >= 227 && value <= 229)
{
- // Dead Yanillian Hops[Clear,Inspect,Guide] 8306,8307,8308,8309,8310
- return new PatchState(Produce.YANILLIAN, CropState.DEAD, value - 211);
+ // Hops Patch[Rake,Inspect,Guide] 8210,8210,8210
+ return new PatchState(Produce.WEEDS, CropState.GROWING, 3);
}
- if (value >= 217 && value <= 220)
+ if (value >= 230 && value <= 231)
{
- // Hops Patch[Rake,Inspect,Guide] 8210,8210,8210,8210
- return new PatchState(Produce.WEEDS, CropState.GROWING, 3);
+ // Dead Flax[Clear,Inspect,Guide] 58845,58846
+ return new PatchState(Produce.FLAX, CropState.DEAD, value - 229);
}
- if (value >= 221 && value <= 226)
+ if (value >= 232 && value <= 235)
{
- // Dead Krandorian Hops[Clear,Inspect,Guide] 8232,8233,8234,8235,8236,8237
- return new PatchState(Produce.KRANDORIAN, CropState.DEAD, value - 220);
+ // Hemp[Inspect,Guide] 58852,58853,58854,58855
+ return new PatchState(Produce.HEMP, CropState.GROWING, value - 232);
}
- if (value >= 227 && value <= 230)
+ if (value >= 236 && value <= 238)
{
- // Hops Patch[Rake,Inspect,Guide] 8210,8210,8210,8210
+ // Hops Patch[Rake,Inspect,Guide] 8210,8210,8210
return new PatchState(Produce.WEEDS, CropState.GROWING, 3);
}
- if (value >= 231 && value <= 237)
+ if (value >= 239 && value <= 240)
{
- // Dead Wildblood Hops[Clear,Inspect,Guide] 8281,8282,8283,8284,8285,8286,8287
- return new PatchState(Produce.WILDBLOOD, CropState.DEAD, value - 230);
+ // Dead Hemp[Clear,Inspect,Guide] 58859,58860
+ return new PatchState(Produce.HEMP, CropState.DEAD, value - 238);
}
- if (value >= 238 && value <= 241)
+ if (value == 241)
{
- // Hops Patch[Rake,Inspect,Guide] 8210,8210,8210,8210
- return new PatchState(Produce.WEEDS, CropState.GROWING, 3);
+ // Dead Hemp[Inspect,Guide] 58861
+ return new PatchState(Produce.HEMP, CropState.DEAD, 3);
}
- if (value >= 242 && value <= 244)
+ if (value >= 242 && value <= 246)
{
- // Dead Barley[Clear,Inspect,Guide] 8204,8205,8206
- return new PatchState(Produce.BARLEY, CropState.DEAD, value - 241);
+ // Cotton[Inspect,Guide] 58868,58869,58870,58871,58872
+ return new PatchState(Produce.COTTON, CropState.GROWING, value - 242);
}
- if (value >= 245 && value <= 248)
+ if (value >= 247 && value <= 249)
{
- // Hops Patch[Rake,Inspect,Guide] 8210,8210,8210,8210
+ // Hops Patch[Rake,Inspect,Guide] 8210,8210,8210
return new PatchState(Produce.WEEDS, CropState.GROWING, 3);
}
- if (value >= 249 && value <= 252)
+ if (value >= 250 && value <= 253)
{
- // Dead Jute[Clear,Inspect,Guide] 8253,8254,8255,8256
- return new PatchState(Produce.JUTE, CropState.DEAD, value - 248);
+ // Dead Cotton[Clear,Inspect,Guide] 58877,58878,58879,58880
+ return new PatchState(Produce.COTTON, CropState.DEAD, value - 249);
}
- if (value >= 253 && value <= 255)
+ if (value >= 254 && value <= 255)
{
- // Hops Patch[Rake,Inspect,Guide] 8210,8210,8210
+ // Hops Patch[Rake,Inspect,Guide] 8210,8210
return new PatchState(Produce.WEEDS, CropState.GROWING, 3);
}
return null;
@@ -2165,9 +2190,99 @@ PatchState forVarbitValue(int value)
// Dead Mahogany[Clear,Inspect,Guide] 30428,30429,30430,30431,30432,30433,30434
return new PatchState(Produce.MAHOGANY, CropState.DEAD, value - 47);
}
- if (value >= 55 && value <= 255)
+ if (value >= 55 && value <= 62)
+ {
+ // Camphor sapling,Camphor tree[Inspect,Guide] 58712,58713,58714,58715,58716,58717,58718,58719
+ return new PatchState(Produce.CAMPHOR, CropState.GROWING, value - 55);
+ }
+ if (value == 63)
+ {
+ // Camphor tree[Check-health,Inspect,Guide] 58722
+ return new PatchState(Produce.CAMPHOR, CropState.GROWING, Produce.CAMPHOR.getStages() - 1);
+ }
+ if (value == 64)
+ {
+ // Camphor tree[Chop down,Inspect,Guide] 58723
+ return new PatchState(Produce.CAMPHOR, CropState.HARVESTABLE, 0);
+ }
+ if (value == 65)
+ {
+ // Camphor tree stump[Clear,Inspect,Guide] 58724
+ return new PatchState(Produce.CAMPHOR, CropState.HARVESTABLE, 0);
+ }
+ if (value >= 66 && value <= 72)
+ {
+ // Diseased Camphor[Prune,Inspect,Guide] 58725,58726,58727,58728,58729,58730,58731
+ return new PatchState(Produce.CAMPHOR, CropState.DISEASED, value - 65);
+ }
+ if (value >= 73 && value <= 79)
+ {
+ // Dead Camphor[Clear,Inspect,Guide] 58734,58735,58736,58737,58738,58739,58740
+ return new PatchState(Produce.CAMPHOR, CropState.DEAD, value - 72);
+ }
+ if (value >= 80 && value <= 87)
+ {
+ // Ironwood sapling,Ironwood tree[Inspect,Guide] 58743,58744,58745,58746,58747,58748,58749,58750
+ return new PatchState(Produce.IRONWOOD, CropState.GROWING, value - 80);
+ }
+ if (value == 88)
+ {
+ // Ironwood tree[Check-health,Inspect,Guide] 58753
+ return new PatchState(Produce.IRONWOOD, CropState.GROWING, Produce.IRONWOOD.getStages() - 1);
+ }
+ if (value == 89)
+ {
+ // Ironwood tree[Chop down,Inspect,Guide] 58754
+ return new PatchState(Produce.IRONWOOD, CropState.HARVESTABLE, 0);
+ }
+ if (value == 90)
+ {
+ // Ironwood tree stump[Clear,Inspect,Guide] 58755
+ return new PatchState(Produce.IRONWOOD, CropState.HARVESTABLE, 0);
+ }
+ if (value >= 91 && value <= 97)
+ {
+ // Diseased Ironwood[Prune,Inspect,Guide] 58756,58757,58758,58759,58760,58761,58762
+ return new PatchState(Produce.IRONWOOD, CropState.DISEASED, value - 90);
+ }
+ if (value >= 98 && value <= 104)
+ {
+ // Dead Ironwood[Clear,Inspect,Guide] 58765,58766,58767,58768,58769,58770,58771
+ return new PatchState(Produce.IRONWOOD, CropState.DEAD, value - 97);
+ }
+ if (value >= 105 && value <= 113)
+ {
+ // Rosewood sapling,Rosewood tree[Inspect,Guide] 58774,58775,58776,58777,58778,58779,58780,58781,58782
+ return new PatchState(Produce.ROSEWOOD, CropState.GROWING, value - 105);
+ }
+ if (value == 114)
+ {
+ // Rosewood tree[Check-health,Inspect,Guide] 58784
+ return new PatchState(Produce.ROSEWOOD, CropState.GROWING, Produce.ROSEWOOD.getStages() - 1);
+ }
+ if (value == 115)
+ {
+ // Rosewood tree[Chop down,Inspect,Guide] 58785
+ return new PatchState(Produce.ROSEWOOD, CropState.HARVESTABLE, 0);
+ }
+ if (value == 116)
+ {
+ // Rosewood tree stump[Clear,Inspect,Guide] 58786
+ return new PatchState(Produce.ROSEWOOD, CropState.HARVESTABLE, 0);
+ }
+ if (value >= 117 && value <= 124)
{
- // Tree patch[Rake,Inspect,Guide] 30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479
+ // Diseased Rosewood[Prune,Inspect,Guide] 58787,58788,58789,58790,58791,58792,58793,58794
+ return new PatchState(Produce.ROSEWOOD, CropState.DISEASED, value - 116);
+ }
+ if (value >= 125 && value <= 132)
+ {
+ // Dead Rosewood[Clear,Inspect,Guide] 58796,58797,58798,58799,58800,58801,58802,58803
+ return new PatchState(Produce.ROSEWOOD, CropState.DEAD, value - 124);
+ }
+ if (value >= 133 && value <= 255)
+ {
+ // Tree patch[Rake,Inspect,Guide] 30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479,30479
return new PatchState(Produce.WEEDS, CropState.GROWING, 3);
}
return null;
@@ -2427,6 +2542,84 @@ PatchState forVarbitValue(int value)
return null;
}
},
+ CORAL(Tab.SPECIAL, "Coral", false)
+ {
+ @Override
+ PatchState forVarbitValue(int value)
+ {
+ if (value >= 0 && value <= 3)
+ {
+ // Coral nursery[Inspect,Guide] 58676,58676,58676,58676
+ return new PatchState(Produce.WEEDS, CropState.GROWING, 3);
+ }
+ if (value >= 4 && value <= 7)
+ {
+ // Elkhorn coral[Inspect,Guide] 58677,58678,58679,58680
+ return new PatchState(Produce.ELKHORN_CORAL, CropState.GROWING, value - 4);
+ }
+ if (value == 8)
+ {
+ // Elkhorn coral[Collect,Inspect,Guide] 58681
+ return new PatchState(Produce.ELKHORN_CORAL, CropState.GROWING, 4);
+ }
+ if (value >= 9 && value <= 11)
+ {
+ // Diseased elkhorn coral[Prune,Inspect,Guide] 58692,58693,58694
+ return new PatchState(Produce.ELKHORN_CORAL, CropState.DISEASED, value - 8);
+ }
+ if (value >= 12 && value <= 14)
+ {
+ // Dead coral[Clear,Inspect,Guide] 58701,58702,58703
+ return new PatchState(Produce.ELKHORN_CORAL, CropState.DEAD, value - 11);
+ }
+ if (value >= 15 && value <= 18)
+ {
+ // Pillar coral[Inspect,Guide] 58682,58683,58684,58685
+ return new PatchState(Produce.PILLAR_CORAL, CropState.GROWING, value - 15);
+ }
+ if (value == 19)
+ {
+ // Pillar coral[Collect,Inspect,Guide] 58686
+ return new PatchState(Produce.PILLAR_CORAL, CropState.GROWING, 4);
+ }
+ if (value >= 20 && value <= 22)
+ {
+ // Diseased pillar coral[Prune,Inspect,Guide] 58695,58696,58697
+ return new PatchState(Produce.PILLAR_CORAL, CropState.DISEASED, value - 19);
+ }
+ if (value >= 23 && value <= 25)
+ {
+ // Dead coral[Clear,Inspect,Guide] 58704,58705,58706
+ return new PatchState(Produce.PILLAR_CORAL, CropState.DEAD, value - 22);
+ }
+ if (value >= 26 && value <= 29)
+ {
+ // Umbral coral[Inspect,Guide] 58687,58688,58689,58690
+ return new PatchState(Produce.UMBRAL_CORAL, CropState.GROWING, value - 26);
+ }
+ if (value == 30)
+ {
+ // Umbral coral[Collect,Inspect,Guide] 58691
+ return new PatchState(Produce.UMBRAL_CORAL, CropState.GROWING, 4);
+ }
+ if (value >= 31 && value <= 33)
+ {
+ // Diseased umbral coral[Prune,Inspect,Guide] 58698,58699,58700
+ return new PatchState(Produce.UMBRAL_CORAL, CropState.DISEASED, value - 30);
+ }
+ if (value >= 34 && value <= 36)
+ {
+ // Dead coral[Clear,Inspect,Guide] 58707,58708,58709
+ return new PatchState(Produce.UMBRAL_CORAL, CropState.DEAD, value - 33);
+ }
+ if (value >= 37 && value <= 255)
+ {
+ // Coral nursery[Inspect,Guide] 58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676,58676
+ return new PatchState(Produce.WEEDS, CropState.GROWING, 0);
+ }
+ return null;
+ }
+ },
SEAWEED(Tab.SPECIAL, "Seaweed", false)
{
@Override
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/timetracking/farming/PaymentTracker.java b/runelite-client/src/main/java/net/runelite/client/plugins/timetracking/farming/PaymentTracker.java
index dc735014245..46731a69ae6 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/timetracking/farming/PaymentTracker.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/timetracking/farming/PaymentTracker.java
@@ -56,7 +56,8 @@ public class PaymentTracker
"That'll do nicely, sir. Leave it with me - I'll make sure
that patch grows for you.",
"That'll do nicely, madam. Leave it with me - I'll make
sure that patch grows for you.",
"That'll do nicely. Leave it with me - I'll make sure that
patch grows for you.",
- "That'll do nicely, iknami. Leave it with me - I'll make
sure that patch grows for you."
+ "That'll do nicely, iknami. Leave it with me - I'll make
sure that patch grows for you.",
+ "Alright, leave it with me. I'll look after that nursery for
you."
);
private final Client client;
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/timetracking/farming/Produce.java b/runelite-client/src/main/java/net/runelite/client/plugins/timetracking/farming/Produce.java
index 1fe735e4788..599010335c5 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/timetracking/farming/Produce.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/timetracking/farming/Produce.java
@@ -69,8 +69,11 @@ public enum Produce
ASGARNIAN("Asgarnian", PatchImplementation.HOPS, ItemID.ASGARNIAN_HOPS, 10, 6, 0, 3),
JUTE("Jute", PatchImplementation.HOPS, ItemID.JUTE_FIBRE, 10, 6, 0, 3),
YANILLIAN("Yanillian", PatchImplementation.HOPS, ItemID.YANILLIAN_HOPS, 10, 7, 0, 3),
+ FLAX("Flax", PatchImplementation.HOPS, ItemID.FLAX, 20, 4, 0, 3),
KRANDORIAN("Krandorian", PatchImplementation.HOPS, ItemID.KRANDORIAN_HOPS, 10, 8, 0, 3),
WILDBLOOD("Wildblood", PatchImplementation.HOPS, ItemID.WILDBLOOD_HOPS, 10, 9, 0, 3),
+ HEMP("Hemp", PatchImplementation.HOPS, ItemID.HEMP, 20, 5, 0, 3),
+ COTTON("Cotton", PatchImplementation.HOPS, ItemID.COTTON_BOLL, 20, 6, 0, 3),
// Herb crops
GUAM("Guam", PatchImplementation.HERB, ItemID.GUAM_LEAF, 20, 5, 0, 3),
@@ -115,12 +118,20 @@ public enum Produce
// Hardwood
TEAK("Teak", PatchImplementation.HARDWOOD_TREE, ItemID.TEAK_LOGS, 640, 8),
MAHOGANY("Mahogany", PatchImplementation.HARDWOOD_TREE, ItemID.MAHOGANY_LOGS, 640, 9),
+ CAMPHOR("Camphor", PatchImplementation.HARDWOOD_TREE, ItemID.CAMPHOR_LOGS, 640, 9),
+ IRONWOOD("Ironwood", PatchImplementation.HARDWOOD_TREE, ItemID.IRONWOOD_LOGS, 640, 9),
+ ROSEWOOD("Rosewood", PatchImplementation.HARDWOOD_TREE, ItemID.ROSEWOOD_LOGS, 640, 10),
// Anima
ATTAS("Attas", PatchImplementation.ANIMA, ItemID.ANIMA_ATTAS, 640, 9),
IASOR("Iasor", PatchImplementation.ANIMA, ItemID.ANIMA_IASOR, 640, 9),
KRONOS("Kronos", PatchImplementation.ANIMA, ItemID.ANIMA_KRONOS, 640, 9),
+ // Coral
+ ELKHORN_CORAL("Elkhorn", PatchImplementation.CORAL, ItemID.CORAL_ELKHORN, 40, 5),
+ PILLAR_CORAL("Pillar", PatchImplementation.CORAL, ItemID.CORAL_PILLAR, 40, 5),
+ UMBRAL_CORAL("Umbral", PatchImplementation.CORAL, ItemID.CORAL_UMBRAL, 40, 5),
+
// Special crops
SEAWEED("Seaweed", PatchImplementation.SEAWEED, ItemID.GIANT_SEAWEED, 10, 5, 0, 4),
GRAPE("Grape", PatchImplementation.GRAPES, ItemID.GRAPES, 5, 8, 0, 5),
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/worldmap/FairyRingLocation.java b/runelite-client/src/main/java/net/runelite/client/plugins/worldmap/FairyRingLocation.java
index 082a39f1fd6..11656ab831e 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/worldmap/FairyRingLocation.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/worldmap/FairyRingLocation.java
@@ -64,6 +64,7 @@ enum FairyRingLocation
CIQ("CIQ", new WorldPoint(2527, 3129, 0)),
CIR("CIR", new WorldPoint(1303, 3762, 0)),
CIS("CIS", new WorldPoint(1636, 3869, 0)),
+ CJQ("CJQ", new WorldPoint(3178, 2445, 0)),
CJR("CJR", new WorldPoint(2704, 3578, 0)),
// CKP - Exists in game but not on World Map
CKQ("CKQ", new WorldPoint(1358, 2943, 0)),
@@ -81,6 +82,7 @@ enum FairyRingLocation
DKP("DKP", new WorldPoint(2899, 3113, 0)),
DKR("DKR", new WorldPoint(3126, 3496, 0)),
DKS("DKS", new WorldPoint(2743, 3721, 0)),
+ DLP("DLP", new WorldPoint(2923, 10455, 0)),
DLQ("DLQ", new WorldPoint(3422, 3018, 0)),
DLR("DLR", new WorldPoint(2212, 3101, 0));
// DLS - Exists in game but not on World Map
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/worldmap/TransportationPointLocation.java b/runelite-client/src/main/java/net/runelite/client/plugins/worldmap/TransportationPointLocation.java
index 153d96b6fce..4db8f34dabf 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/worldmap/TransportationPointLocation.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/worldmap/TransportationPointLocation.java
@@ -53,12 +53,13 @@ enum TransportationPointLocation
ISLAND_OF_STONE_TO_RELLEKKA("Ship to Rellekka", new WorldPoint(2470, 3994, 0), new WorldPoint(2621, 3692, 0)),
ISLAND_TO_APE_ATOLL("Ship to Ape Atoll", new WorldPoint(2891, 2726, 0), new WorldPoint(2802, 2706, 0)),
JATIZSO_TO_RELLEKKA("Ship to Rellekka", new WorldPoint(2420, 3780, 0), new WorldPoint(2639, 3710, 0)),
- KARAMJA_TO_PORT_SARIM("Ship to Port Sarim", new WorldPoint(2955, 3145, 0), new WorldPoint(3029, 3218, 0)),
+ KARAMJA_TO_PORTSARIM_PANDEMONIUM("Ship to Port Sarim/The Pandemonium", new WorldPoint(2954, 3145, 0)),
KARAMJA_TO_PORT_KHAZARD("Ship to Port Khazard", new WorldPoint(2763, 2957, 0), new WorldPoint(2653, 3166, 0)),
LANDSEND_TO_PORTSARIM_PORTPISCARILIUS("Ship to Port Sarim/Port Piscarilius", new WorldPoint(1503, 3398, 0)),
LUNAR_ISLE_TO_PIRATES_COVE("Ship to Pirates' Cove", new WorldPoint(2137, 3899, 0), new WorldPoint(2223, 3796, 0)),
MISCELLANIA_TO_RELLEKKA("Ship to Rellekka", new WorldPoint(2579, 3846, 0), new WorldPoint(2627, 3692, 0)),
NEITIZNOT_TO_RELLEKKA("Ship to Rellekka", new WorldPoint(2310, 3779, 0), new WorldPoint(2639, 3710, 0)),
+ PANDEMONIUM_TO_PORTSARIM_MUSA("Ship to Port Sarim/Musa Point", new WorldPoint(3065, 3003, 0)),
PESTCONTROL_TO_PORTSARIM("Ship to Port Sarim", new WorldPoint(2659, 2675, 0), new WorldPoint(3039, 3201, 0)),
PIRATES_COVE_TO_LUNAR_ISLE("Ship to Lunar Isle", new WorldPoint(2223, 3796, 0), new WorldPoint(2137, 3899, 0)),
PIRATES_COVE_TO_RELLEKKA("Ship to Rellekka", new WorldPoint(2212, 3794, 0), new WorldPoint(2620, 3695, 0)),
@@ -67,7 +68,7 @@ enum TransportationPointLocation
PORT_PISCARILIUS_TO_PORTSARIM_LANDSEND("Ship to Port Sarim/Land's End", new WorldPoint(1823, 3692, 0)),
PORTSARIM_TO_GREAT_KOUREND("Ship to Great Kourend", new WorldPoint(3054, 3244, 0), new WorldPoint(1823, 3692, 0)),
PORTSARIM_TO_ENTRANA("Ship to Entrana", new WorldPoint(3046, 3233, 0), new WorldPoint(2833, 3334, 0)),
- PORTSARIM_TO_KARAMJA("Ship to Karamja", new WorldPoint(3029, 3218, 0), new WorldPoint(2955, 3144, 0)),
+ PORTSARIM_TO_MUSAPOINT_PANDEMONIUM("Ship to Musa Point/The Pandemonium", new WorldPoint(3029, 3218, 0)),
PORTSARIM_TO_CRANDOR("Ship to Crandor", new WorldPoint(3045, 3205, 0), new WorldPoint(2839, 3261, 0)),
PORTSARIM_TO_PEST_CONTROL("Ship to Pest Control", new WorldPoint(3039, 3201, 0), new WorldPoint(2659, 2675, 0)),
RELLEKKA_TO_JATIZSO_NEITIZNOT("Ship to Jatizso/Neitiznot", new WorldPoint(2639, 3710, 0)),
@@ -115,6 +116,15 @@ enum TransportationPointLocation
SMALL_BOAT_KASTORI("Rowboat to Tal Teklan/Gloomthorn Trail", new WorldPoint(1389, 3074, 0)),
OGRE_BOAT_FELDIP("Ogre Boat to Karamja", new WorldPoint(2653, 2964, 0), new WorldPoint(2757, 3085, 0)),
OGRE_BOAT_KARAMJA("Ogre Boat to Feldip", new WorldPoint(2757, 3085, 0), new WorldPoint(2653, 2964, 0)),
+ ROW_BOAT_CONCH_NORTH("Rowboat to The Summer Short/Eastern Coast", new WorldPoint(3196, 2532, 0), new WorldPoint(3264, 2462, 0)),
+ ROW_BOAT_CONCH_EAST("Rowboat to The Summer Shore/Northern Coast", new WorldPoint(3264, 2462, 0), new WorldPoint(3190, 2371, 0)),
+ ROW_BOAT_CONCH_SUMMER_SHORE("Rowboat to The Northern Coast/Eastern Coast", new WorldPoint(3190, 2371, 0), new WorldPoint(3196, 2532, 0)),
+ ROW_BOAT_TEAR_OF_THE_SOUL("Rowboat to Isle of Souls", new WorldPoint(2320, 2780, 0), new WorldPoint(2291, 2796, 0)),
+ ROW_BOAT_ISLE_OF_SOULS("Rowboat to Tear of the Soul", new WorldPoint(2291, 2796, 0), new WorldPoint(2320, 2780, 0)),
+ ROW_BOAT_ANGLERS_RETREAT("Rowboat to Corsair Cove", new WorldPoint(2469, 2725, 0), new WorldPoint(2542, 2843, 0)),
+ ROW_BOAT_CORSAIR_COVE("Rowboat to Anglers' Retreat", new WorldPoint(2542, 2843, 0), new WorldPoint(2469, 2725, 0)),
+ ROW_BOAT_VATRACHOS_ISLAND("Rowboat to Stonecutter Outpost", new WorldPoint(1876, 2974, 0), new WorldPoint(1772, 2962, 0)),
+ ROW_BOAT_STONECUTTER_OUTPOST("Rowboat to Vatrachos Island", new WorldPoint(1772, 2962, 0), new WorldPoint(1876, 2974, 0)),
//Charter ships
CHARTER_ALDARIN("Charter Ship", new WorldPoint(1455, 2968, 0)),
@@ -122,6 +132,7 @@ enum TransportationPointLocation
CHARTER_CATHERBY("Charter Ship", new WorldPoint(2791, 3415, 0)),
CHARTER_CIVITAS_ILLA_FORTIS("Charter Ship", new WorldPoint(1743, 3136, 0)),
CHARTER_CORSAIR_("Charter Ship", new WorldPoint(2589, 2851, 0)),
+ CHARTER_DEEPFIN_POINT("Charter Ship", new WorldPoint(1943, 2753, 0)),
CHARTER_KARAMJA_NORTH("Charter Ship", new WorldPoint(2954, 3158, 0)),
CHARTER_KARAMJA_EAST("Charter Ship", new WorldPoint(2999, 3032, 0)),
CHARTER_KHAZARD("Charter Ship", new WorldPoint(2673, 3143, 0)),
@@ -129,8 +140,10 @@ enum TransportationPointLocation
CHARTER_PORT_PHASMATYS("Charter Ship", new WorldPoint(3702, 3503, 0)),
CHARTER_PORTSARIM("Charter Ship", new WorldPoint(3037, 3191, 0)),
CHARTER_TYRAS("Charter Ship", new WorldPoint(2141, 3123, 0)),
+ CHARTER_PANDEMONIUM("Charter Ship", new WorldPoint(3061, 2999, 0)),
CHARTER_PRIFDDINAS("Charter Ship", new WorldPoint(2156, 3331, 0)),
CHARTER_PRIFDDINAS_INSTANCE("Charter Ship", new WorldPoint(3180, 6083, 0)),
+ CHARTER_SUMMER_SHORE("Charter Ship", new WorldPoint(3186, 2367, 0)),
CHARTER_SUNSET_COAST("Charter Ship", new WorldPoint(1513, 2970, 0)),
//Ferries
@@ -185,6 +198,7 @@ enum TransportationPointLocation
SPIRITTREE_GNOMESTRONGHOLD("Spirit Tree", new WorldPoint(2459, 3446, 0)),
SPIRITTREE_GNOMEVILLAGE("Spirit Tree", new WorldPoint(2538, 3166, 0)),
SPIRITTREE_GRANDEXCHANGE("Spirit Tree", new WorldPoint(3184, 3510, 0)),
+ SPIRITTREE_LAGUNA_AURORAE("Spirit Tree", new WorldPoint(1202, 2787, 0)),
SPIRITTREE_PRIFDDINAS("Spirit Tree", new WorldPoint(3274, 6124, 0)),
//Carpets
@@ -232,6 +246,7 @@ enum TransportationPointLocation
WILDERNESS_LEVER_ARDOUGNE("Wilderness Lever to Deserted Keep", new WorldPoint(2559, 3309, 0), new WorldPoint(3154, 3924, 0)),
WILDERNESS_LEVER_EDGEVILLE("Wilderness Lever to Deserted Keep", new WorldPoint(3088, 3474, 0), new WorldPoint(3154, 3924, 0)),
WILDERNESS_LEVER_WILDERNESS("Wilderness Lever to Ardougne/Edgeville", new WorldPoint(3154, 3924, 0)),
+ SHIPYARD_RETURN("Return Portal", new WorldPoint(2083, 2732, 0)),
//Queztals
QUETZAL_ALDARIN("Quetzal", new WorldPoint(1388, 2899, 0)),
diff --git a/runelite-client/src/main/resources/net/runelite/client/plugins/skybox/skybox.txt b/runelite-client/src/main/resources/net/runelite/client/plugins/skybox/skybox.txt
index 829ef3659a8..b8bb31f4b7a 100644
--- a/runelite-client/src/main/resources/net/runelite/client/plugins/skybox/skybox.txt
+++ b/runelite-client/src/main/resources/net/runelite/client/plugins/skybox/skybox.txt
@@ -61,7 +61,7 @@ bounds 18 19 60 196
b 8
#B9D6FF
-R 18 39 60 64
+R 18 32 60 64
#0f0f0f
r 34 75
diff --git a/runelite-client/src/main/resources/skill_icons_small/sailing.png b/runelite-client/src/main/resources/skill_icons_small/sailing.png
index fe5effd545d..089b8ff536e 100644
Binary files a/runelite-client/src/main/resources/skill_icons_small/sailing.png and b/runelite-client/src/main/resources/skill_icons_small/sailing.png differ
diff --git a/runelite-client/src/main/scripts/SkillTabBuilder.hash b/runelite-client/src/main/scripts/SkillTabBuilder.hash
index a18251545f4..4e65153138d 100644
--- a/runelite-client/src/main/scripts/SkillTabBuilder.hash
+++ b/runelite-client/src/main/scripts/SkillTabBuilder.hash
@@ -1 +1 @@
-B16A1DEB0ECE7FFCFF3FDEE125B2E507F52A54FC16AE0ADA7A2C5EC2FE7B74EC
\ No newline at end of file
+7E1FB617628E3936009AA63912ACE2EB254991CAEBAEF7AA35C0D3299C5DE311
\ No newline at end of file
diff --git a/runelite-client/src/main/scripts/SkillTabBuilder.rs2asm b/runelite-client/src/main/scripts/SkillTabBuilder.rs2asm
index 53784c75651..903667a0d33 100644
--- a/runelite-client/src/main/scripts/SkillTabBuilder.rs2asm
+++ b/runelite-client/src/main/scripts/SkillTabBuilder.rs2asm
@@ -444,28 +444,11 @@ LABEL382:
join_string 3
ostore 3
LABEL393:
- iload 0
- iconst 23
- if_icmpeq LABEL397
- jump LABEL408
-LABEL397:
- sconst ""
- oload 0
- sconst ":"
- sconst ""
- join_string 4
- ostore 2
- sconst ""
- sconst "Releasing 19th November"
- sconst ""
- join_string 3
- ostore 3
-LABEL408:
invoke 1972
iconst 1
- if_icmpeq LABEL412
- jump LABEL439
-LABEL412:
+ if_icmpeq LABEL397
+ jump LABEL424
+LABEL397:
iconst 2367
iconst -2147483644
iconst -2147483645
@@ -479,14 +462,14 @@ LABEL412:
if_setonop
get_varc_int 218
iload 1
- if_icmpeq LABEL427
- jump LABEL438
-LABEL427:
+ if_icmpeq LABEL412
+ jump LABEL423
+LABEL412:
get_varc_int 217
iconst -1
- if_icmpeq LABEL431
- jump LABEL438
-LABEL431:
+ if_icmpeq LABEL416
+ jump LABEL423
+LABEL416:
iload 1
iconst -1
iload 2
@@ -494,9 +477,9 @@ LABEL431:
oload 3
iconst 495
invoke 2344
-LABEL438:
- jump LABEL454
-LABEL439:
+LABEL423:
+ jump LABEL439
+LABEL424:
iconst 992
iconst -2147483645
iconst -1
@@ -512,5 +495,5 @@ LABEL439:
if_setonmouserepeat
iconst 0
set_varc_int 2
-LABEL454:
+LABEL439:
return
diff --git a/runelite-jshell/pom.xml b/runelite-jshell/pom.xml
index aa4f7eda6e0..6527edb8cee 100644
--- a/runelite-jshell/pom.xml
+++ b/runelite-jshell/pom.xml
@@ -30,7 +30,7 @@
net.runelite
runelite-parent
- 1.12.4
+ 1.12.5
jshell
diff --git a/runelite-maven-plugin/pom.xml b/runelite-maven-plugin/pom.xml
index 08d28b77f33..d2b2ba7cc1e 100644
--- a/runelite-maven-plugin/pom.xml
+++ b/runelite-maven-plugin/pom.xml
@@ -29,7 +29,7 @@
net.runelite
runelite-parent
- 1.12.4
+ 1.12.5
runelite-maven-plugin