Boating Navigation by yarick.
Description: Script used to help with ships, you can press the corresponding key and the ship will travel in that direction
below are the keys i use this on the numpad
N desiredDirection 1 KeyPad 9
NE desiredDirection 2 KeyPad 6
E desiredDirection 3 KeyPad 3
SE desiredDirection 4 KeyPad 2
S desiredDirection 5 KeyPad 1
SW desiredDirection 6 KeyPad 4
W desiredDirection 7 KeyPad 7
NW desiredDirection 8 KeyPad 8
Stop desiredDirection 0 KeyPad 5
Turn desiredDirection 9 KeyPad 0 (Rotate clockwise - i use this when not moving)
It is possible on ship launch/Failed turn to get the script out of sync with your actual direction
use the following script to say the direction the scrip thinks your facing (so you can manually correct it with [TurnLeft etc)
https://outlands.uorazorscripts.com/script/4b7a8028-3b35-4a4b-b426-3c010a315a73
1#You need to create 10 scripts which call the BoatDirection script
2#Example script for North which i set to keypad 9
3
4#setvar desiredDirection 1
5#hotkey 'Play Script: AA\BoatDirection'
6
7
8####################################################################
9#Below script for me is in the AA Category and called BoatDirection
10####################################################################
11#Script assumes boat starts facing north
12#script does NOT handle failing to turn so i advise you have some buttons to recover from this
13
14if not varexist boatDirection
15 overhead 'Using Default Start'
16 //can only be N1 E3 S5 W7
17 setvar boatDirection 1
18endif
19
20if not varexist desiredDirection
21 overhead 'missing direction'
22elseif desiredDirection = 0
23 say '[Stop'
24elseif desiredDirection = 9
25 if boatDirection = 1
26 setvar boatDirection 3
27 elseif boatDirection = 3
28 setvar boatDirection 5
29 elseif boatDirection = 5
30 setvar boatDirection 7
31 elseif boatDirection = 7
32 setvar boatDirection 1
33 endif
34 say '[TurnRight'
35else
36 #Turn boat so it matches desired direction
37 if boatDirection = 1
38 if desiredDirection = 5
39 say '[TurnRight'
40 wait 600
41 say '[TurnRight'
42 setvar boatDirection 5
43 wait 600
44 elseif desiredDirection = 3 or desiredDirection = 4
45 say '[TurnRight'
46 setvar boatDirection 3
47 wait 600
48 elseif desiredDirection = 6 or desiredDirection = 7
49 say '[TurnLeft'
50 setvar boatDirection 7
51 wait 600
52 endif
53 elseif boatDirection = 3
54 if desiredDirection = 7
55 say '[TurnRight'
56 wait 600
57 say '[TurnRight'
58 setvar boatDirection 7
59 wait 600
60 elseif desiredDirection = 5 or desiredDirection = 6
61 say '[TurnRight'
62 setvar boatDirection 5
63 wait 600
64 elseif desiredDirection = 8 or desiredDirection = 1
65 say '[TurnLeft'
66 setvar boatDirection 1
67 wait 600
68 endif
69 elseif boatDirection = 5
70 if desiredDirection = 1
71 say '[TurnRight'
72 wait 600
73 say '[TurnRight'
74 setvar boatDirection 1
75 wait 600
76 elseif desiredDirection = 7 or desiredDirection = 8
77 say '[TurnRight'
78 setvar boatDirection 7
79 wait 600
80 elseif desiredDirection = 2 or desiredDirection = 3
81 say '[TurnLeft'
82 setvar boatDirection 3
83 wait 600
84 endif
85 elseif boatDirection = 7
86 if desiredDirection = 3
87 #spin
88 say '[TurnRight'
89 wait 600
90 say '[TurnRight'
91 setvar boatDirection 3
92 wait 600
93 elseif desiredDirection = 1 or desiredDirection = 2
94 say '[TurnRight'
95 setvar boatDirection 1
96 wait 600
97 elseif desiredDirection = 5 or desiredDirection = 4
98 say '[TurnLeft'
99 setvar boatDirection 5
100 wait 600
101 endif
102 endif
103
104 #go forward
105 if desiredDirection = 1 or desiredDirection = 3 or desiredDirection = 5 or desiredDirection = 7
106 say '[Forward'
107 elseif boatDirection = 1 and desiredDirection = 2
108 say '[ForwardRight'
109 elseif boatDirection = 3 and desiredDirection = 2
110 say '[ForwardLeft'
111 elseif boatDirection = 3 and desiredDirection = 4
112 say '[ForwardRight'
113 elseif boatDirection = 5 and desiredDirection = 4
114 say '[ForwardLeft'
115 elseif boatDirection = 5 and desiredDirection = 6
116 say '[ForwardRight'
117 elseif boatDirection = 7 and desiredDirection = 6
118 say '[ForwardLeft'
119 elseif boatDirection = 7 and desiredDirection = 8
120 say '[ForwardRight'
121 elseif boatDirection = 1 and desiredDirection = 8
122 say '[ForwardLeft'
123 endif
124endif
125
126#Set this to your loop script to resume your loop
127#hotkey 'Play Script: AA\Route'