UOGamers Community

This is a sample guest message. Register a free account today to become a member! Once signed in, you'll be able to participate on this site by adding your own topics and posts, as well as connect with other members through your own private inbox!

  • To obtain new Razor updates, please reinstall Razor from our new website.

Sharing a discordance training script

Genorb

Wanderer
Hey guys, just sharing a uosteam macro I made for anyone else that is looking to train discord quickly. It works very efficiently, but I'm pretty new to uosteam and pretty amateur at coding in general, so there may be a more elegant way to code it. If you can think of any way to improve it, please let me know!

Here's what it does:
1. Prompts you to select 8 different targets to discord
2. Will keep spamming discordance on a target until you succeed, and then move on to the next target in the sequence
3. After the last target is discorded, it will invis long enough for discord to vanish
4. It also uses new instrument if one breaks before each disco attempt, so it shouldn't ever get stuck.

Here's what you should do to set it up:

Get a bag full of instruments. Tame and release 8 things on a boat or some other confined/fenced area. Always have discotargetLAST as your last target because it has the invis embedded in it.

Please hit me with some feedback if you try it out.

Here's the macro:

Code:
//Create Instrument List if it does not exist
if not listexists 'instrumentlist'
  @createlist 'instrumentlist'
endif
//Add below different types of instruments to use -- Common Ones are Added already
//Standing Harp
@pushlist 'instrumentlist' 0xeb1
//Lap Harp
@pushlist 'instrumentlist' 0xeb2
//Lute
@pushlist 'instrumentlist' 0xeb3
//Drum
@pushlist 'instrumentlist' 0xe9c
//Tambourine
@pushlist 'instrumentlist' 0xe9d
//Tambourine with red tassle
@pushlist 'instrumentlist' 0xe9e
//Select an instrument automatically to use
for 0 to 'instrumentlist'
  @findtype instrumentlist[]
  @setalias 'instrument' 'found'
endfor
if not @findalias 'discotarget1' or not inrange 'discotarget1' 20
  headmsg 'Select first discotarget'
  promptalias 'discotarget1'
endif
if not @findalias 'discotarget2' or not inrange 'discotarget2' 20
  headmsg 'Select second discotarget'
  promptalias 'discotarget2'
endif
if not @findalias 'discotarget3' or not inrange 'discotarget3' 20
  headmsg 'Select third discotarget'
  promptalias 'discotarget3'
endif
if not @findalias 'discotarget4' or not inrange 'discotarget4' 20
  headmsg 'Select fourth discotarget'
  promptalias 'discotarget4'
endif
if not @findalias 'discotarget5' or not inrange 'discotarget5' 20
  headmsg 'Select fifth discotarget'
  promptalias 'discotarget5'
endif
if not @findalias 'discotarget6' or not inrange 'discotarget6' 20
  headmsg 'Select sixth discotarget'
  promptalias 'discotarget6'
endif
if not @findalias 'discotarget7' or not inrange 'discotarget7' 20
  headmsg 'Select seventh discotarget'
  promptalias 'discotarget7'
endif
if not @findalias 'discotargetLAST' or not inrange 'discotargetLAST' 20
  headmsg 'Select last discotarget'
  promptalias 'discotargetLAST'
endif

headmsg 'Targeting 1'
for 0 to 'instrumentlist'
  @findtype instrumentlist[]
  @setalias 'instrument' 'found'
endfor
useobject 'instrument'
useskill 'Discordance'
autotargetobject 'discotarget1'
pause 8500
while @injournal 'You attempt to disrupt'
  for 0 to 'instrumentlist'
    @findtype instrumentlist[]
    @setalias 'instrument' 'found'
  endfor
  useobject 'instrument'
  clearjournal
  useskill 'Discordance'
  autotargetobject 'discotarget1'
  pause 8500
endwhile

headmsg 'Targeting 2'
for 0 to 'instrumentlist'
  @findtype instrumentlist[]
  @setalias 'instrument' 'found'
endfor
useobject 'instrument'
useskill 'Discordance'
autotargetobject 'discotarget2'
pause 8500
while @injournal 'You attempt to disrupt'
  for 0 to 'instrumentlist'
    @findtype instrumentlist[]
    @setalias 'instrument' 'found'
  endfor
  useobject 'instrument'
  clearjournal
  useskill 'Discordance'
  autotargetobject 'discotarget2'
  pause 8500
endwhile

headmsg 'Targeting 3'
for 0 to 'instrumentlist'
  @findtype instrumentlist[]
  @setalias 'instrument' 'found'
endfor
useobject 'instrument'
useskill 'Discordance'
autotargetobject 'discotarget3'
pause 8500
while @injournal 'You attempt to disrupt'
  for 0 to 'instrumentlist'
    @findtype instrumentlist[]
    @setalias 'instrument' 'found'
  endfor
  useobject 'instrument'
  clearjournal
  useskill 'Discordance'
  autotargetobject 'discotarget3'
  pause 8500
endwhile

headmsg 'Targeting 4'
for 0 to 'instrumentlist'
  @findtype instrumentlist[]
  @setalias 'instrument' 'found'
endfor
useobject 'instrument'
useskill 'Discordance'
autotargetobject 'discotarget4'
pause 8500
while @injournal 'You attempt to disrupt'
  for 0 to 'instrumentlist'
    @findtype instrumentlist[]
    @setalias 'instrument' 'found'
  endfor
  useobject 'instrument'
  clearjournal
  useskill 'Discordance'
  autotargetobject 'discotarget4'
  pause 8500
endwhile

headmsg 'Targeting 5'
for 0 to 'instrumentlist'
  @findtype instrumentlist[]
  @setalias 'instrument' 'found'
endfor
useobject 'instrument'
useskill 'Discordance'
autotargetobject 'discotarget5'
pause 8500
while @injournal 'You attempt to disrupt'
  for 0 to 'instrumentlist'
    @findtype instrumentlist[]
    @setalias 'instrument' 'found'
  endfor
  useobject 'instrument'
  clearjournal
  useskill 'Discordance'
  autotargetobject 'discotarget5'
  pause 8500
endwhile

headmsg 'Targeting 6'
for 0 to 'instrumentlist'
  @findtype instrumentlist[]
  @setalias 'instrument' 'found'
endfor
useobject 'instrument'
useskill 'Discordance'
autotargetobject 'discotarget6'
pause 8500
while @injournal 'You attempt to disrupt'
  for 0 to 'instrumentlist'
    @findtype instrumentlist[]
    @setalias 'instrument' 'found'
  endfor
  useobject 'instrument'
  clearjournal
  useskill 'Discordance'
  autotargetobject 'discotarget6'
  pause 8500
endwhile

headmsg 'Targeting 7'
for 0 to 'instrumentlist'
  @findtype instrumentlist[]
  @setalias 'instrument' 'found'
endfor
useobject 'instrument'
useskill 'Discordance'
autotargetobject 'discotarget7'
pause 8500
while @injournal 'You attempt to disrupt'
  for 0 to 'instrumentlist'
    @findtype instrumentlist[]
    @setalias 'instrument' 'found'
  endfor
  useobject 'instrument'
  clearjournal
  useskill 'Discordance'
  autotargetobject 'discotarget7'
  pause 8500
endwhile

headmsg 'Targeting LAST'
for 0 to 'instrumentlist'
  @findtype instrumentlist[]
  @setalias 'instrument' 'found'
endfor
useobject 'instrument'
useskill 'Discordance'
autotargetobject 'discotargetLAST'
while not buffexists 'Invisibility'
  if @injournal 'You play jarring music'
    cast "Invisibility"
    waitfortarget 15000
    target! 'self'
    pause  19000
  else
    pause 8500
    clearjournal
    for 0 to 'instrumentlist'
      @findtype instrumentlist[]
      @setalias 'instrument' 'found'
    endfor
    useobject 'instrument'
    useskill 'Discordance'
    autotargetobject 'discotargetLAST'
  endif
endwhile
clearjournal
 
Last edited:

Genorb

Wanderer
Fixed a couple things:

Made instrument list so that it cycles to new ones when they break. Can also have multiple types of instruments now.
Made it cast invis immediately following last successful disco instead of pausing first.
 

Genorb

Wanderer
Hey thanks. Training disco is just boring enough that it motivated me to learn some uosteam syntax, haha.
 
Top