Fast Travel by alcon188
Description from the author:
# Fast Travel by Alcon
# Use Moongate, Magery, Chivalry, or Camping to travel to a specified location using one button.
# Works on multiple characters if they have their Favorite rune in the same slot of their respective books.
# Last Edited 12/12/24
// Cut the multiple runebook related variables, turns out they break everything in their current iteration
#/#/# IMPORTANT #/#/#
# There is a feature that automatically uses a Recall scroll if you are out of reagents
# Relevant characters must have a cooldown named Regs with a Trigger for Overhead Message:
# More reagents are needed for this spell
# Recommend that the cooldown be 10 seconds
// After additional testing I've found that in some cases the hotkey needs to be pressed multiple times for the switch to happen, haven't found a fix yet.
###
# Set your Moongate preferences for all Moongate types (Blue, Red, Gold, Ghost)
###
#Set this to 1 to return to whatever city you used last instead of a Favorite one
@setvar! MoongateToLastCity 0
@setvar! FavoriteCity 14
# Anchors Rest 10
# Andaria 11
# Cambria 12
# Horseshoe Bay 13
# Outpost 14
# Prevalia 15
# Terran 16
# Totem 17
# Shelter Island 18
# Corpse Creek 19
###
# Set your Recall preferences for Runebooks and Rune Tomes
###
@setvar! AlwaysUseScroll 0
@setvar! BookFavoriteRune 5
@setvar! BookFavoriteScroll 2
@setvar! TomeFavoriteRune 200
@setvar! TomeFavoriteScroll 100
### Runebook Numbers
# 1st Rune Slot 5 # 1st Scroll Slot 2
# 2nd Rune Slot 11 # 2nd Scroll Slot 8
# 3rd Rune Slot 17 # 3rd Scroll Slot 14
# 4th Rune Slot 23 # 4th Scroll Slot 20
# 5th Rune Slot 29 # 5th Scroll Slot 26
# 6th Rune Slot 35 # 6th Scroll Slot 32
# 7th Rune Slot 41 # 7th Scroll Slot 38
# 8th Rune Slot 47 # 8th Scroll Slot 44
# 9th Rune Slot 53 # 9th Scroll Slot 50
# 10th Rune Slot 59 # 10th Scroll Slot 56
# 11th Rune Slot 65 # 11th Scroll Slot 62
# 12th Rune Slot 71 # 12th Scroll Slot 68
# 13th Rune Slot 77 # 13th Scroll Slot 74
# 14th Rune Slot 83 # 14th Scroll Slot 80
# 15th Rune Slot 89 # 15th Scroll Slot 86
# 16th Rune Slot 95 # 16th Scroll Slot 92
### Rune Tome Numbers
# 1st Rune Slot 200 # 1st Scroll Slot 100
# 2nd Rune Slot 201 # 2nd Scroll Slot 101
# 3rd Rune Slot 202 # 3rd Scroll Slot 102
# ... # ...
# 26th Rune Slot 225 # 26th Scroll Slot 125
###
# Set your Hiking preferences
###
@setvar! FavoriteHikingCategory 103
@setvar! FavoriteHikingSpot 26
@setvar! MyFavoriteHikingSpotIsOnTheFirstPage 1
### Hiking Numbers, set category and location
# Dungeons 101 # For location, the top of the page is 20
# Healer Caravans 102 # and it counts up as you go down the page
# Moongates 103 #
# New Player 104 #
# Personal 105 #
# Points of Interest 106 # E.G. I want to go to Prevalia Bog Caravan
# Shrines 107 # @setvar! FavoriteHikingCategory 102
# Sub-Dungeon 108 # @setvar! FavoriteHikingSpot 30
# Townships 109 # @setvar! MyFavoriteHikingSpotIsOnTheFirstPage 0
####################################################################################################
###### DO NOT EDIT BELOW THIS UNLESS YOU WANT TO BREAK THE SCRIPT ##################################
####################################################################################################
@setvar! ChivGateBlocked 0
if findtype "blue moongate" true as gate
while not gumpexists 3773199800
dclick gate
endwhile
if MoongateToLastCity = 0
waitforgump 3773199800
gumpresponse FavoriteCity
endif
waitforgump 3773199800
gumpresponse 2
elseif skill "Chivalry" >= 90 and SwitchToRecall = 0
while ChivGateBlocked = 0
clearsysmsg
say '[sacredjourney'
wait 150
if insysmsg "You must wait another"
@setvar! ChivGateBlocked 1
@setvar SwitchToRecall 1
loop
endif
waitforgump 1482653814
gumpresponse 4
wait 150
if insysmsg "You have been in combat too recently"
@setvar! ChivGateBlocked 1
@setvar SwitchToRecall 1
gumpclose
loop
elseif insysmsg "A mysterious force prevents your spell"
@setvar! ChivGateBlocked 1
@setvar SwitchToRecall 1
gumpclose
loop
else
// do nothing
endif
waitforgump 1387930325
while not findtype "moongate" true
endwhile
dclicktype "moongate" true
waitforgump 3899019871
gumpresponse 2
stop
endwhile
elseif findtype "runebook" backpack
if skill "Magery" >= 60 and AlwaysUseScroll = 0 and OutOfRegs = 0
if findlayer self righthand as found
@setvar! weapon_equipped found
endif
if findlayer self lefthand as found
@setvar! shield_equipped found
endif
dclicktype 'runebook' backpack
waitforgump 1551740969
gumpresponse BookFavoriteRune
wait 500
if cooldown Regs > 1
@setvar OutOfRegs 1
wait 500
loop
endif
wait 2000
if not findlayer self righthand and weapon_equipped = found
dclick weapon_equipped
endif
if not findlayer self lefthand and shield_equipped = found
wait 500
dclick shield_equipped
endif
else
if findlayer self righthand as found
@setvar! weapon_equipped found
endif
if findlayer self lefthand as found
@setvar! shield_equipped found
endif
dclicktype 'runebook' backpack
waitforgump 1551740969
gumpresponse BookFavoriteScroll
wait 2500
if not findlayer self righthand and weapon_equipped = found
dclick weapon_equipped
endif
if not findlayer self lefthand and shield_equipped = found
wait 500
dclick shield_equipped
endif
endif
@setvar SwitchToRecall 0
@setvar OutOfRegs 0
elseif findtype "runetome" backpack
if skill "Magery" >= 60 and AlwaysUseScroll = 0 and OutOfRegs = 0
if findlayer self righthand as found
@setvar! weapon_equipped found
endif
if findlayer self lefthand as found
@setvar! shield_equipped found
endif
dclicktype 'runetome' backpack
waitforgump 167090027
gumpresponse TomeFavoriteRune
waitforgump 167090027
gumpresponse 10
wait 500
if cooldown Regs > 1
@setvar OutOfRegs 1
wait 500
loop
endif
wait 2000
if not findlayer self righthand and weapon_equipped = found
dclick weapon_equipped
endif
if not findlayer self lefthand and shield_equipped = found
wait 500
dclick shield_equipped
endif
else
if findlayer self righthand as found
@setvar! weapon_equipped found
endif
if findlayer self lefthand as found
@setvar! shield_equipped found
endif
dclicktype 'runetome' backpack
waitforgump 167090027
gumpresponse TomeFavoriteScroll
wait 2500
if not findlayer self righthand and weapon_equipped = found
dclick weapon_equipped
endif
if not findlayer self lefthand and shield_equipped = found
wait 500
dclick shield_equipped
endif
endif
@setvar SwitchToRecall 0
@setvar OutOfRegs 0
elseif skill "Camping" >= 60
while not findtype "campfire" ground 0 1 8
if not findtype "kindling" backpack
overhead "No kindling" 34
stop
endif
dclicktype "kindling" backpack
clearsysmsg
wait 5000
endwhile
while findtype "campfire" ground 0 1 8
while not insysmsg "Your campfire is now secure."
endwhile
dclicktype 'atlas' backpack
waitforgump 341416395
gumpresponse FavoriteHikingCategory
waitforgump 341416395
if MyFavoriteHikingSpotIsOnTheFirstPage = 0
gumpresponse 16
waitforgump 341416395
endif
gumpresponse FavoriteHikingSpot
waitforgump 341416395
gumpresponse 14
stop
endwhile
else
overhead 'No way home' 34
endifUse Moongate, Magery, Chivalry, or Camping to travel to a specified location using one button. Works on multiple characters if they have their favorite rune in the same slot of their respective books.
Feedback welcome, message me on Discord.