Created: 12 days ago on 10/21/2025, 12:57:08 AMUpdated: 12 days ago on 10/21/2025, 02:07:36 AM
Description: Hail and thanks for checking out my script!
This is a script meant to be used for boating. It's designed to be used when you first dock onto water and in-between fights. It's meant for the PVM Harpooner builds (with/without parry).
##TO RUN THIS MOSTLY FAULT-FREE, YOU MUST HAVE THE FRAY COOLDOWN TIMER ADDED TO YOUR COOLDOWNS.XML##
This script will do the following (not necessarily in this order):
Sets overhead mode (2 different modes or 0 for nothing at all)
Activates Spell Siphon (requires magic arrow scroll)
Checks for spyglass
Initializes repair flags
Reloads ship cannons
Verifies boating mastery chain and activates (as set by user in-script)
Equips harpoon
Opens ship hotbars
Checks ship presence (if not, runs [dock command and stops script)
Readies crew
Begins main repair loop
Repairs guns
Repairs sails
Repairs hull
Confirms all repairs complete
Starts background script
It is not really meant for combat use, so attempt at your own peril :) and0z0r on discord your feedback!
# ===============================
# BOAT PRIMER / REPAIR SCRIPT — PIRATE EDITION v0.4a
#
# PLEASE ADD THE "FRAY" COOLDOWN FOR THIS TO WORK PROPERLY!! (PM and0z0r in Discord)
#
# CHANGELOG (v0.4a - brief)
## - Default overhead mode stays 2 (brief tags) manual flips only
## - Colorized overheads in commands: setup=68, ops=94, errors=33, complete=88
## - Single-bracket yell syntax everywhere (e.g., yell [reload)
## - Ship presence check after [shiphotbars] using ingump hull
## - Comments cleaned (no inline color codes) varexist checks only
## ===============================
@clearsysmsg
if not varexist overheads
setvar! overheads 2
endif
# ===============================
# INTRO BANNER
# ===============================
if overheads = 1
overhead "## BOATING PRIMER ##" 68
endif
if overheads = 2
overhead "# PRIMER #" 68
endif
wait 1500
# ===============================
# SPELL SIPHON (REQUIRES MAGIC ARROW SCROLL)
# ===============================
if skill "resist" > 0 and not findbuff "Spell Siphon"
if findtype 0x1F32 backpack as zscroll
dclick zscroll
wft 2000
target self
if overheads = 1
overhead "Spell Siphon Activated!" 68
endif
if overheads = 2
overhead "# SIPHON #" 68
endif
else
if findtype "magic arrow scroll" backpack as zscroll2
dclick zscroll2
wft 2000
target self
if overheads = 1
overhead "Spell Siphon Activated!" 68
endif
if overheads = 2
overhead "# SIPHON #" 68
endif
endif
endif
endif
# ===============================
# SPYGLASS (OPTIONAL)
# ===============================
if findtype 5365 backpack as zspyglass
yell [spyglass
if overheads = 1
overhead "Scoping the seas!" 68
endif
if overheads = 2
overhead "# SCAN #" 68
endif
else
if overheads = 1
overhead "No spyglass found!" 33
endif
if overheads = 2
overhead "# NO SPYGLASS #" 33
endif
endif
getlabel backpack pingcheck
# ===============================
# LOCAL FLAGS
# ===============================
setvar! guns_repaired 0
setvar! sails_repaired 0
setvar! hull_repaired 0
# ===============================
# PREP: RELOAD / MASTERY CHAIN / HARPOON / UI
# ===============================
@clearsysmsg
yell [reload
if overheads = 1
overhead "Cannons be loadin’! Stand clear!" 68
endif
if overheads = 2
overhead "# RELOADING #" 68
endif
wait 1000
# Mastery chain (user-defined variable "chain1")
if not varexist chain1
if overheads = 1
overhead "Ye forgot yer mastery chain, ye scallywag!" 33
endif
if overheads = 2
overhead "# NO CHAIN #" 33
endif
setvar chain1
endif
if find chain1 backpack
getlabel chain1 chain_label
if active in chain_label
if overheads = 1
overhead "The chain be active and hummin’, Cap’n!" 68
endif
if overheads = 2
overhead "# CHAIN ACTIVE #" 68
endif
else
wait 1000
menu chain1 0
if overheads = 1
overhead "Chain be set! We’re ready to sail!" 68
endif
if overheads = 2
overhead "# CHAIN ON #" 68
endif
endif
else
if overheads = 1
overhead "Blimey! The mastery chain’s gone missin’!" 33
endif
if overheads = 2
overhead "# CHAIN MISSING #" 33
endif
endif
# Equip harpoon if you have fishing skill
if skill "fishing" > 0
if lhandempty
if findtype 31169 backpack as harpoon
dclick harpoon
if overheads = 1
overhead "Harpoon in hand — ready to skewer sea beasts!" 68
endif
if overheads = 2
overhead "# HARPOON #" 68
endif
else
if overheads = 1
overhead "No harpoon in the hold, ye lazy deckhand!" 33
endif
if overheads = 2
overhead "# NO HARPOON #" 33
endif
endif
else
if overheads = 1
overhead "Yer mitts already be full, matey!" 68
endif
if overheads = 2
overhead "# HAND OCCUPIED #" 68
endif
endif
endif
# Open Hotbars
@clearsysmsg
yell [shiphotbars
wait 800
# ===============================
# VERIFY SHIP PRESENCE
# ===============================
if not ingump hull
wait 800
yell dock
if overheads = 1
overhead "We be on land, Cap’n! Dockin’ to regroup!" 33
endif
if overheads = 2
overhead "# NO SHIP #" 33
endif
stop
endif
getlabel backpack pingcheck
# Ready Crew
@clearsysmsg
yell [readycrew
getlabel backpack pingcheck
if overheads = 1
overhead "Crew be roused ‘n ready for duty!" 68
endif
if overheads = 2
overhead "# READY #" 68
endif
# ===============================
# MAIN REPAIR LOOP
# ===============================
while guns_repaired = 0 or sails_repaired = 0 or hull_repaired = 0
# -------------------------------
# GUNS
# -------------------------------
while guns_repaired = 0
if cooldown "Fray"
if overheads = 1
overhead "Hold fast! We’re in the Fray — the deck be too hot for fixin’!" 94
endif
if overheads = 2
overhead "# FRAY #" 94
endif
while cooldown "Fray"
wait 1000
endwhile
getlabel backpack pingcheck
endif
@clearsysmsg
yell [repairguns
if overheads = 2
overhead "# GUN REP #" 94
endif
getlabel backpack pingcheck
if insysmsg "That ship's guns do not need to be repaired."
setvar! guns_repaired 1
if overheads = 1
overhead "Cannons be shipshape — no patchin’ needed!" 94
endif
if overheads = 2
overhead "# GUN OK #" 94
endif
break
endif
if findbuff "entangled"
if overheads = 2
overhead "# ENTANGLED #" 94
endif
while findbuff "entangled"
wait 200
endwhile
if cooldown "Fray"
if overheads = 1
overhead "Fray still ragin’ — stand by on the cannon patches!" 94
endif
if overheads = 2
overhead "# FRAY #" 94
endif
while cooldown "Fray"
wait 1000
endwhile
getlabel backpack pingcheck
endif
@clearsysmsg
if insysmsg "Guns repaired" or insysmsg "That ship's guns do not need to be repaired."
setvar! guns_repaired 1
if overheads = 1
overhead "Cannons fixed ‘n primed fer blastin’!" 94
endif
if overheads = 2
overhead "# GUN DONE #" 94
endif
break
endif
else
@clearsysmsg
waitforsysmsg "Guns repaired" 5000
getlabel backpack pingcheck
if insysmsg "Guns repaired"
setvar! guns_repaired 1
if overheads = 1
overhead "Cannons patched ‘n ready t’ roar!" 94
endif
if overheads = 2
overhead "# GUN DONE #" 94
endif
break
endif
endif
endwhile
# -------------------------------
# SAILS
# -------------------------------
while sails_repaired = 0
if cooldown "Fray"
if overheads = 1
overhead "Hold the lines! Fray’s upon us — no stitchin’ sails just yet!" 94
endif
if overheads = 2
overhead "# FRAY #" 94
endif
while cooldown "Fray"
wait 1000
endwhile
getlabel backpack pingcheck
endif
@clearsysmsg
yell [repairsails
if overheads = 2
overhead "# SAIL REP #" 94
endif
getlabel backpack pingcheck
if insysmsg "That ship's sails do not need to be repaired."
setvar! sails_repaired 1
if overheads = 1
overhead "The canvas be crisp — sails need no mending!" 94
endif
if overheads = 2
overhead "# SAIL OK #" 94
endif
break
endif
if findbuff "entangled"
if overheads = 2
overhead "# ENTANGLED #" 94
endif
while findbuff "entangled"
wait 200
endwhile
if cooldown "Fray"
if overheads = 1
overhead "Fray still blowin’ — belay them needles!" 94
endif
if overheads = 2
overhead "# FRAY #" 94
endif
while cooldown "Fray"
wait 1000
endwhile
getlabel backpack pingcheck
endif
@clearsysmsg
if insysmsg "Sails repaired" or insysmsg "That ship's sails do not need to be repaired."
setvar! sails_repaired 1
if overheads = 1
overhead "Sails mended ‘n catchin’ the wind again!" 94
endif
if overheads = 2
overhead "# SAIL DONE #" 94
endif
break
endif
else
@clearsysmsg
waitforsysmsg "Sails repaired" 5000
getlabel backpack pingcheck
if insysmsg "Sails repaired"
setvar! sails_repaired 1
if overheads = 1
overhead "Sails patched — she’ll fly again!" 94
endif
if overheads = 2
overhead "# SAIL DONE #" 94
endif
break
endif
endif
endwhile
# -------------------------------
# HULL
# -------------------------------
while hull_repaired = 0
if cooldown "Fray"
if overheads = 1
overhead "Hands off the planks! Fray be boilin’ — wait fer clear seas!" 94
endif
if overheads = 2
overhead "# FRAY #" 94
endif
while cooldown "Fray"
wait 1000
endwhile
getlabel backpack pingcheck
endif
@clearsysmsg
yell [repairhull
if overheads = 2
overhead "# HULL REP #" 94
endif
getlabel backpack pingcheck
if insysmsg "That ship's hull does not need to be repaired."
setvar! hull_repaired 1
if overheads = 1
overhead "Hull be solid as a sea serpent’s hide!" 94
endif
if overheads = 2
overhead "# HULL OK #" 94
endif
break
endif
if findbuff "entangled"
if overheads = 2
overhead "# ENTANGLED #" 94
endif
while findbuff "entangled"
wait 200
endwhile
if cooldown "Fray"
if overheads = 1
overhead "Fray ain’t done — keep yer tar warm!" 94
endif
if overheads = 2
overhead "# FRAY #" 94
endif
while cooldown "Fray"
wait 1000
endwhile
getlabel backpack pingcheck
endif
@clearsysmsg
if insysmsg "Hull repaired" or insysmsg "That ship's hull does not need to be repaired."
setvar! hull_repaired 1
if overheads = 1
overhead "Hull patched up tight — no leaks this voyage!" 94
endif
if overheads = 2
overhead "# HULL DONE #" 94
endif
break
endif
else
@clearsysmsg
waitforsysmsg "Hull repaired" 5000
getlabel backpack pingcheck
if insysmsg "Hull repaired"
setvar! hull_repaired 1
if overheads = 1
overhead "Hull be seaworthy once more!" 94
endif
if overheads = 2
overhead "# HULL DONE #" 94
endif
break
endif
endif
endwhile
endwhile
# ===============================
# COMPLETION
# ===============================
if overheads = 1
overhead "All fixin’s be done, Cap’n! Hoist the colors ‘n make for open waters!" 88
endif
if overheads = 2
overhead "# COMPLETE #" 88
endif
getlabel backpack pingcheck
# ===============================
# OPTIONAL: START BACKGROUND SCRIPT
# ===============================
wait 650
hotkey "Play Script: ##SCRIPT RUNNER##"
Original Version Saved - 10/21/2025, 12:57:08 AM - 12 days ago
Boating Primer Script (Repair/Equip/Reload/Dock)
No changes to display