This macro will ONLY WORK IN FELUCCA, based on my targettileoffset, and not in Trammel.
It's pretty much plug-and-play, just make sure you have the required tools; Hatchet (equipped), Carpenter's Hammer, and Woodworker Keys. It will chop at the tree you are facing, but make sure you are facing it at a major direction (N, S, E, W) and within 1 tile. Once you've hit 375 in weight it will then search your bag, chop each log type, and then place them in to your Woodworker keys.
UPDATED: Now includes all log-types up to 120 Carpentry.
This is NOT flawless and it DOES require you to be at your keyboard, respect the rules!
Feel free change the system message or colors to overhead text if you want, but I prefer system.
Let me know if you have any questions/comments.
Code: Select all
//Wyrmstorm's LJ & Chopping Macro for UOSteam
//You will need a Hatchet, Carpenter's Hammer, and Woodworker Keys
//Updated 3/11/18
while not @injournal 'enough wood here' "system"
if weight <= '375'
useobject! 'LeftHand'
pause 200
waitingfortarget 1500
if direction == 0
targettileoffset! 0 -1 0
elseif direction == 1
targettileoffset! 1 -1 0
elseif direction == 2
targettileoffset! 1 0 0
elseif direction == 3
targettileoffset! 1 1 0
elseif direction == 4
targettileoffset! 0 1 0
elseif direction == 5
targettileoffset! -1 1 0
elseif direction == 6
targettileoffset! -1 0 0
elseif direction == 7
targettileoffset! -1 -1 0
endif
pause 2500
else
@canceltarget!
@clearjournal
if not listexists 'Logs'
createlist 'Logs'
pushlist 'Logs' 0x1bdd
endif
pause 200
if @findtype '0x102a' '0' 'backpack' 'any' 'any'
@setalias 'Hammer' 'Found'
//chopping the items
if @findtype '0x1bdd' '0' 'backpack' 'any' 'any'
@setalias 'Logs' 'Found'
sysmsg 'Chopping logs.'
useobject 'Hammer'
waitforgump 949095101 15000
replygump 0x38920abd 7
waitforgump 949095101 15000
replygump 0x38920abd 6
waitforgump 949095101 15000
replygump 0x38920abd 1
waitforgump 949095101 15000
replygump 0x38920abd 2
waitforgump 949095101 15000
@target! 'Logs'
pause 500
endif
if @findtype '0x1bdd' '1262' 'backpack' 'any' 'any'
@setalias 'Logs' 'Found'
sysmsg 'Chopping logs.'
useobject 'Hammer'
waitforgump 949095101 15000
replygump 0x38920abd 7
waitforgump 949095101 15000
replygump 0x38920abd 13
waitforgump 949095101 15000
replygump 0x38920abd 1
waitforgump 949095101 15000
replygump 0x38920abd 2
waitforgump 949095101 15000
@target! 'Logs'
pause 500
endif
if @findtype '0x1bdd' '961' 'backpack' 'any' 'any'
@setalias 'Logs' 'Found'
sysmsg 'Chopping logs.'
useobject 'Hammer'
waitforgump 949095101 15000
replygump 0x38920abd 7
waitforgump 949095101 15000
replygump 0x38920abd 20
waitforgump 949095101 15000
replygump 0x38920abd 1
waitforgump 949095101 15000
replygump 0x38920abd 2
waitforgump 949095101 15000
@target! 'Logs'
pause 500
endif
if @findtype '0x1bdd' '355' 'backpack' 'any' 'any'
@setalias 'Logs' 'Found'
sysmsg 'Chopping logs.'
useobject 'Hammer'
waitforgump 949095101 15000
replygump 0x38920abd 7
waitforgump 949095101 15000
replygump 0x38920abd 27
waitforgump 949095101 15000
replygump 0x38920abd 1
waitforgump 949095101 15000
replygump 0x38920abd 2
waitforgump 949095101 15000
@target! 'Logs'
pause 500
endif
if @findtype '0x1bdd' '1281' 'backpack' 'any' 'any'
@setalias 'Logs' 'Found'
sysmsg 'Chopping logs.'
useobject 'Hammer'
waitforgump 949095101 15000
replygump 0x38920abd 7
waitforgump 949095101 15000
replygump 0x38920abd 34
waitforgump 949095101 15000
replygump 0x38920abd 1
waitforgump 949095101 15000
replygump 0x38920abd 2
waitforgump 949095101 15000
@target! 'Logs'
pause 500
endif
if @findtype '0x1bdd' '488' 'backpack' 'any' 'any'
@setalias 'Logs' 'Found'
sysmsg 'Chopping logs.'
useobject 'Hammer'
waitforgump 949095101 15000
replygump 0x38920abd 7
waitforgump 949095101 15000
replygump 0x38920abd 41
waitforgump 949095101 15000
replygump 0x38920abd 1
waitforgump 949095101 15000
replygump 0x38920abd 2
waitforgump 949095101 15000
@target! 'Logs'
pause 500
endif
if @findtype '0x1bdd' '1271' 'backpack' 'any' 'any'
@setalias 'Logs' 'Found'
sysmsg 'Chopping logs.'
useobject 'Hammer'
waitforgump 949095101 15000
replygump 0x38920abd 7
waitforgump 949095101 15000
replygump 0x38920abd 48
waitforgump 949095101 15000
replygump 0x38920abd 1
waitforgump 949095101 15000
replygump 0x38920abd 2
waitforgump 949095101 15000
@target! 'Logs'
pause 500
endif
if @findtype '0x1bdd' '43' 'backpack' 'any' 'any'
@setalias 'Logs' 'Found'
sysmsg 'Chopping logs.'
useobject 'Hammer'
waitforgump 949095101 15000
replygump 0x38920abd 7
waitforgump 949095101 15000
replygump 0x38920abd 55
waitforgump 949095101 15000
replygump 0x38920abd 1
waitforgump 949095101 15000
replygump 0x38920abd 2
waitforgump 949095101 15000
@target! 'Logs'
pause 500
endif
if @findtype '0x1bdd' '1152' 'backpack' 'any' 'any'
@setalias 'Logs' 'Found'
sysmsg 'Chopping logs.'
useobject 'Hammer'
waitforgump 949095101 15000
replygump 0x38920abd 7
waitforgump 949095101 15000
replygump 0x38920abd 62
waitforgump 949095101 15000
replygump 0x38920abd 1
waitforgump 949095101 15000
replygump 0x38920abd 2
waitforgump 949095101 15000
@target! 'Logs'
pause 500
endif
if @findtype '0x1bdd' '114' 'backpack' 'any' 'any'
@setalias 'Logs' 'Found'
sysmsg 'Chopping logs.'
useobject 'Hammer'
waitforgump 949095101 15000
replygump 0x38920abd 7
waitforgump 949095101 15000
replygump 0x38920abd 69
waitforgump 949095101 15000
replygump 0x38920abd 1
waitforgump 949095101 15000
replygump 0x38920abd 2
waitforgump 949095101 15000
@target! 'Logs'
pause 500
endif
if @findtype '0x1bdd' '37' 'backpack' 'any' 'any'
@setalias 'Logs' 'Found'
sysmsg 'Chopping logs.'
useobject 'Hammer'
waitforgump 949095101 15000
replygump 0x38920abd 7
waitforgump 949095101 15000
replygump 0x38920abd 76
waitforgump 949095101 15000
replygump 0x38920abd 1
waitforgump 949095101 15000
replygump 0x38920abd 2
waitforgump 949095101 15000
@target! 'Logs'
pause 500
endif
if @findtype '0x1bdd' '1153' 'backpack' 'any' 'any'
@setalias 'Logs' 'Found'
sysmsg 'Chopping logs.'
useobject 'Hammer'
waitforgump 949095101 15000
replygump 0x38920abd 7
waitforgump 949095101 15000
replygump 0x38920abd 83
waitforgump 949095101 15000
replygump 0x38920abd 1
waitforgump 949095101 15000
replygump 0x38920abd 2
waitforgump 949095101 15000
@target! 'Logs'
pause 500
endif
pause 1000
replygump 0x38920abd 0
pause 500
endif
if not listexists 'woodkeys'
createlist 'woodkeys'
endif
@pushlist 'woodkeys' '0x1bd4' // Shafts
@pushlist 'woodkeys' '0x1bd1' // Feathers
@pushlist 'woodkeys' '0x1bd7' // All types of wood
for 0 to woodkeys
while @findtype 'woodkeys[]'
@setalias 'woods' 'found'
usetype '0x176b' '88' 'backpack'
waitforgump 173511501 15000
replygump 0xa57934d 17
waitforgump 173511501 15000
waitfortarget 15000
@target! 'woods'
waitforgump 173511501 15000
endwhile
endfor
@replygump 0xa57934d 0
@canceltarget
@removelist 'woodkeys'
@unsetalias 'woods'
sysmsg 'Completed with Woodworker Keys.'
pause 1000
endif
//
if @injournal 'enough wood here' "system"
sysmsg 'WOOD DEPLETED - NEXT TREE' '20'
pause 200
endif
endwhile
//
@canceltarget!
@clearjournal