YokoInjection: Porovnání verzí

Z EreborWiki
Přejít na: navigace, hledání
(Skripty)
 
(Není zobrazeno 9 mezilehlých verzí od 3 dalších uživatelů.)
Řádka 94: Řádka 94:
  
 
=== Skripty ===
 
=== Skripty ===
Pod následujícím odkazem najdete základní skripty - léčení obvazy včetně vrácení zbraně do ruky, loot, vypisování životů nad vaší postavou, sběr šípů.
 
  
* '''[http://freetexthost.com/romj2aaml5 základní skripty]'''
+
<div class="toccolours mw-collapsible mw-collapsed">
 +
* Balík základních skriptů - léčení obvazy včetně vrácení zbraně do ruky, loot, vypisování životů nad vaší postavou, sběr šípů.
 +
------
 +
<div class="mw-collapsible-content">
  
 +
<nowiki>
  
 
<div class="toccolours mw-collapsible" style="width:40em;">
 
 
<code>
 
 
sub banda()
 
sub banda()
var zbran
+
  var zbran
UO.SetArm("zbran")
+
  UO.SetArm("zbran")
UO.WaitTargetObject("self")
+
  UO.WaitTargetObject("self")
UO.UseType('0x0E21')
+
  UO.UseType('0x0E21')
wait(300)
+
  wait(300)
UO.Arm("zbran")
+
  UO.Arm("zbran")
 
end sub
 
end sub
  
 
sub hp()
 
sub hp()
var HP_priebezne_self
+
  var HP_priebezne_self
while 1==1
+
  while 1==1
HP_priebezne_self = uo.gethp("self")
+
    HP_priebezne_self = uo.gethp("self")
wait(100)
+
    wait(100)
if uo.gethp("self") < HP_priebezne_self and not uo.dead() then
+
    if uo.gethp("self") < HP_priebezne_self and not uo.dead() then
uo.charprint(0x0028,"-" + str(HP_priebezne_self - uo.gethp("self")) + " (" + str(uo.gethp("self")) + ")")
+
      uo.charprint(0x0028,"-" + str(HP_priebezne_self - uo.gethp("self")) + " (" + str(uo.gethp("self")) + ")")
end if
+
    end if
if uo.gethp("self") > HP_priebezne_self + 5 and not uo.dead() then
+
    if uo.gethp("self") > HP_priebezne_self + 5 and not uo.dead() then
uo.charprint(0x010F,"+" + str(uo.gethp("self") - HP_priebezne_self) + " (" + str(uo.gethp("self")) + ")")
+
      uo.charprint(0x010F,"+" + str(uo.gethp("self") - HP_priebezne_self) + " (" + str(uo.gethp("self")) + ")")
end if
+
    end if
wend
+
  wend
 
end sub
 
end sub
  
 
sub loot()  
 
sub loot()  
VAR WaitTime=10
+
  VAR WaitTime=10
VAR Exit=0, i  
+
  VAR Exit=0, i  
DIM Loot[38]
+
  DIM Loot[38]
 +
 
 +
  Loot[0]=0x0E76 ;Bag
 +
  Loot[1]=0x0eed ;gold
 +
  Loot[2]=0x0F8D ;spider silk
 +
  Loot[3]=0x0F86 ;mandrake root
 +
  Loot[4]=0x0E21 ;bandage
 +
  Loot[5]=0x0F7B ;Blood Moss
 +
  Loot[6]=0x0F84 ;garlic
 +
  Loot[7]=0x0F7A ;blackpearls
 +
  Loot[8]=0x0F8C ;sulforous ash
 +
  Loot[9]=0x0F87 ;eon vocka
 +
  Loot[10]=0x1BD1 ;perie
 +
  Loot[11]=0x0F80 ;Daemon bones
 +
  Loot[12]=0x0F8B ;Pumice
 +
  Loot[13]=0x0F89 ;Obsidian
 +
  Loot[14]=0x0f88 ;Nightshade
 +
  Loot[15]=0x0f85 ;Ginseng
 +
  Loot[16]=0x0F83 ;an Execution's Cap
 +
  Loot[17]=0x0F8E ;a Serpent's Scale
 +
  Loot[18]=0x0F91 ;Wyrm's Heart
 +
  Loot[19]=0x0F8A ;PigIron
 +
  Loot[20]=0x0E76 ;Batohy
 +
  Loot[21]=0x0F78 ;Batwings
 +
  Loot[22]=0x1BEF ;Ingots
 +
  Loot[23]=0x0F26 ;Diamanty
 +
  Loot[24]=0x1F03 ;Róby
 +
  Loot[25]=0x14EB ;Treassure Map
 +
  Loot[26]=0x1420 ;Cobbweb
 +
  Loot[27]=0x108A ;reflex ring
 +
  Loot[28]=0x1848 ;elixir
 +
  Loot[29]=0x09D0 ;God's Apple
 +
  Loot[30]=0x1BFB ;Crosbow Bolt
 +
  Loot[31]=0x0F82 ;Dragon's Blood
 +
  Loot[32]=0x1078 ;kuze
 +
  Loot[33]=0x0F81 ;Fertir Dirt
 +
  Loot[34]=0x0F8F ;grave dust
 +
  Loot[35]=0x0F7D ;Vials of Blood
 +
  Loot[36]=0x0F7E ;Bones
 +
  Loot[37]=0x0F78 ;Batwingy
 +
 
 +
  UO.UseObject('lastcorpse')
 +
  UO.SetArm('temp')
 +
  UO.WaitTargetObject('lastcorpse')
 +
  UO.UseType('0x0F51'); <-- SEM PATRI ID DYKY
 +
  UO.SetReceivingContainer('sacek')
 +
  wait(500)
 +
  UO.Arm('temp')
 +
  wait(500)
 +
 
 +
  For i=0 to 37
 +
    UO.FindType(Loot[i],-1,'ground')
 +
    if UO.GetQuantity('finditem') then
 +
      UO.Grab(STR(0),'finditem')
 +
      wait(WaitTime)
 +
    endif
 +
 
 +
    if UO.GetQuantity('lastcorpse') then
 +
      UO.FindType(Loot[i],-1,'lastcorpse')
 +
      if UO.GetQuantity('finditem') then
 +
        UO.Grab(STR(0),'finditem')
 +
      endif
 +
      wait(WaitTime)
 +
    endif
 +
  next
 +
end sub
 +
 
 +
sub sipy()
 +
  var e
 +
  dim sber[2]
 +
  sber[0] = "0x1BFB"
 +
  sber[1] = "0x0F3F"
 +
  sber[2] = "0x38D8"
 +
 
 +
  for e = 0 to 2
 +
    repeat
 +
      uo.set("finddistance","4")
 +
      uo.findtype(sber[e],"-1","ground")
 +
      if uo.findcount() > 0 then
 +
        UO.moveitem("finditem","-1","sacek")
 +
        wait(1000)
 +
      end if
 +
    until uo.findcount() < 2
 +
  next
 +
  uo.print("Hotovo")
 +
end sub</nowiki>
 +
 
 +
</div></div>
 +
{{Clear}}
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed">
 +
* Skripty od hráče Marw
 +
------
 +
<div class="mw-collapsible-content">
 +
 
 +
<nowiki>
 +
 
 +
sub kudla()
 +
    uo.deletejournal()
 +
    UO.Say('.throw')
 +
    wait(200)
 +
    if uo.injournal("Nemas zadny cil") or uo.injournal("Pokusila jsi se hodit") then
 +
    uo.Print("---Nejde hazet---")
 +
    uo.Print("---Zkus to bliz---")
 +
    else
 +
    uo.Print("---Hazim---")
 +
    wait(5000)
 +
    uo.Print("---No tak hazej---")
 +
 
 +
    END IF
 +
 
 +
end sub
 +
 
 +
sub leap()
 +
    UO.Say('.leap')
 +
    uo.Print("---LEAPUJU!!---")
 +
    wait(4000)
 +
    uo.Print("---MUZEM LEAPOVAT---")
 +
end sub
 +
 
 +
sub GH()
 +
    UO.say('.potionheal')
 +
    Uo.Print('----PIJU HEAL----')
 +
    wait(30000)
 +
    UO.Print('---MUZEME DALSI HEAL---')
 +
end sub
  
Loot[0]=0x0E76 ;Bag
+
sub mob()
Loot[1]=0x0eed ;gold
+
    UO.say('.potionmobility')
Loot[2]=0x0F8D ;spider silk
+
    Uo.Print('----PIJU MOBILITU----')
Loot[3]=0x0F86 ;mandrake root
+
    wait(30000)
Loot[4]=0x0E21 ;bandage
+
    UO.Print('---POZOR MUZES BYT PARLY,RADSI PIJ---')
Loot[5]=0x0F7B ;Blood Moss
+
end sub
Loot[6]=0x0F84 ;garlic
 
Loot[7]=0x0F7A ;blackpearls
 
Loot[8]=0x0F8C ;sulforous ash
 
Loot[9]=0x0F87 ;eon vocka
 
Loot[10]=0x1BD1 ;perie
 
Loot[11]=0x0F80 ;Daemon bones
 
Loot[12]=0x0F8B ;Pumice
 
Loot[13]=0x0F89 ;Obsidian
 
Loot[14]=0x0f88 ;Nightshade
 
Loot[15]=0x0f85 ;Ginseng
 
Loot[16]=0x0F83 ;an Execution's Cap
 
Loot[17]=0x0F8E ;a Serpent's Scale
 
Loot[18]=0x0F91 ;Wyrm's Heart
 
Loot[19]=0x0F8A ;PigIron
 
Loot[20]=0x0E76 ;Batohy
 
Loot[21]=0x0F78 ;Batwings
 
Loot[22]=0x1BEF ;Ingots
 
Loot[23]=0x0F26 ;Diamanty
 
Loot[24]=0x1F03 ;Róby
 
Loot[25]=0x14EB ;Treassure Map
 
Loot[26]=0x1420 ;Cobbweb
 
Loot[27]=0x108A ;reflex ring
 
Loot[28]=0x1848 ;elixir
 
Loot[29]=0x09D0 ;God's Apple
 
Loot[30]=0x1BFB ;Crosbow Bolt
 
Loot[31]=0x0F82 ;Dragon's Blood
 
Loot[32]=0x1078 ;kuze
 
Loot[33]=0x0F81 ;Fertir Dirt
 
Loot[34]=0x0F8F ;grave dust
 
Loot[35]=0x0F7D ;Vials of Blood
 
Loot[36]=0x0F7E ;Bones
 
Loot[37]=0x0F78 ;Batwingy
 
  
UO.UseObject('lastcorpse')
+
sub energypvm()
UO.SetArm('temp')
+
    Repeat
UO.WaitTargetObject('lastcorpse')  
+
    uo.deletejournal()
;
+
    Uo.Cast("Energy Bolt")
UO.UseType('0x0F51'); <-- SEM PATRI ID DYKY
+
    uo.waittargetlast("")
;
+
    Wait(3200)
UO.SetReceivingContainer('sacek')  
+
    Until Uo.InJournal("Body of")
wait(500)  
+
end sub
UO.Arm('temp')
 
wait(500)
 
  
For i=0 to 37
+
sub HP()
UO.FindType(Loot[i],-1,'ground')
+
    var HP_priebezne_self
if UO.GetQuantity('finditem') then
+
    while not uo.dead()
UO.Grab(STR(0),'finditem')
+
    HP_priebezne_self = uo.gethp("self")
wait(WaitTime)  
+
    wait(100)
endif
+
    if uo.gethp("self") < HP_priebezne_self and not uo.dead() then
 +
    uo.charprint(0x0026,"-" + str(HP_priebezne_self - uo.gethp("self")) + " (" + str(uo.gethp("self")) + ")")
 +
    end if
 +
    if uo.gethp("self") > HP_priebezne_self + 5 and not uo.dead() then
 +
    uo.charprint(0x01FA,"+" + str(uo.gethp("self") - HP_priebezne_self) + " (" + str(uo.gethp("self")) + ")")
 +
    end if
 +
    wend
 +
end sub
  
if UO.GetQuantity('lastcorpse') then
+
sub Hiding()
UO.FindType(Loot[i],-1,'lastcorpse')  
+
    UO.WarMode ('0')
if UO.GetQuantity('finditem') then
+
    UO.UseSkill ('Hiding')
UO.Grab(STR(0),'finditem')
 
endif
 
wait(WaitTime)
 
endif
 
next
 
 
end sub
 
end sub
  
sub sipy()  
+
sub banda()
var e
+
    UO.UseType(0x0E21,0x0000)
dim zber[2]
+
    UO.WaitTargetSelf()
zber[0] = "0x1BFB"  
+
end sub
zber[1] = "0x0F3F"
+
 
zber[2] = "0x38D8"
+
sub pvmloot()
for e = 0 to 2
+
uo.findtype("0x0E76","-1","my")
repeat  
+
if uo.findcount()==1 then
uo.set("finddistance","4")  
+
uo.addobject("lootbagl","finditem")
uo.findtype(zber[e],"-1","ground")  
+
wait(100)
 +
end if
 +
var i,n 
 +
var k
 +
Dim A[80]
 +
;uo.charprint(0x0481,"PvM loot ON")
 +
repeat
 +
repeat
 +
wait(100)
 +
until Uo.hex2int(uo.getgraphic("lastcontainer"))==0x2006 and Uo.getserial("lastcontainer")<>k
 +
k=Uo.getserial("lastcontainer")
 +
uo.deletejournal()
 +
Uo.set('quiet','1')
 +
A[1] = 0x0E76 ; Item baglik
 +
A[2] = 0x0EED ; penize
 +
A[3] = 0x0F8D ; spider silk
 +
A[4] = 0x0F7B ; blood moss
 +
A[5] = 0x0F86 ; mandrake roots
 +
A[6] = 0x0F8C ; sulfurous ash
 +
A[7] = 0x0F88 ; nightshade
 +
A[8] = 0x0F7A ; black perla
 +
A[9] = 0x0F89 ; obsidian
 +
A[10] = 0x0F84 ; garlick
 +
A[11] = 0x0F87 ; eyes of newt
 +
A[12] = 0x0F83 ; executioners cup
 +
A[13] = 0x0F91 ; wyrms hearts
 +
A[14] = 0x0F8F ; grave dust
 +
A[15] = 0x0F8E ; nox crystal
 +
A[16] = 0x0F80 ; dragon bone
 +
A[17] = 0x0F8B ; pumice
 +
A[18] = 0x0F78 ; batwings
 +
A[19] = 0x0F7D ; daemon blood
 +
A[20] = 0x0F82 ; dragon blood
 +
A[21] = 0x0F8A ; pig iron
 +
A[22] = 0x0F81 ; fertile dirt
 +
A[23] = 0x0F85 ; ginseng
 +
A[24] = 0x0F7E ; bones
 +
A[25] = 0x14EB ; tajemna mapa (FLIP)
 +
A[26] = 0x14EC ; tajemna mapa (FLIP)
 +
A[27] = 0x0F26 ; Diamant
 +
A[28] = 0x19B7 ; ore
 +
A[29] = 0x0F11 ; saphires
 +
A[30] = 0x0F16 ; amethyst
 +
A[31] = 0x0F0F ; star saphires
 +
A[32] = 0x0F13 ; asi citrin
 +
A[33] = 0x0F18 ; neco podobneho
 +
A[34] = 0x1712 ; boty
 +
A[35] = 0x0F10 ; ddrahokam
 +
A[36] = 0x0F15 ; ddrahokam2
 +
A[37] = 0x1078 ; kůže
 +
A[38] = 0x0C79 ; jídlo
 +
A[39] = 0x0C5C ; jídlo
 +
A[40] = 0x103B ; jídlo
 +
A[41] = 0x09E9 ; jídlo
 +
A[42] = 0x0C6A ; jídlo
 +
A[43] = 0x09D1 ; jídlo
 +
A[44] = 0x1040 ; jídlo
 +
A[45] = 0x098C ; jídlo
 +
A[46] = 0x1728 ; jídlo
 +
A[47] = 0x09EC ; jídlo
 +
A[48] = 0x172A ; jídlo
 +
A[49] = 0x0C74 ; jídlo
 +
A[50] = 0x1041 ; jídlo
 +
A[51] = 0x0C6D ; jídlo
 +
A[52] = 0x0C7F ; jídlo
 +
A[53] = 0x0C66 ; jídlo
 +
A[54] = 0x0C7B ; jídlo
 +
A[55] = 0x0994 ; jídlo
 +
A[56] = 0x09D2 ; jídlo
 +
A[57] = 0x1726 ; jídlo
 +
A[58] = 0x1727 ; jídlo
 +
A[59] = 0x171F ; jídlo
 +
A[60] = 0x0F0E ; alchemy
 +
A[61] = 0x0D39 ; jídlo
 +
A[62] = 0x0C70 ; jídlo
 +
A[63] = 0x09C9 ; jídlo
 +
A[64] = 0x0C77 ; jídlo
 +
A[65] = 0x0C64 ; jídlo
 +
A[66] = 0x097E ; jídlo
 +
A[67] = 0x186F ; Vanocni banka
 +
 
 +
 
 +
n=1
 +
FOR n=1 TO 67
 +
uo.findtype(A[n],"-1","lastcontainer")
 
if uo.findcount() > 0 then  
 
if uo.findcount() > 0 then  
UO.moveitem("finditem","-1","sacek")  
+
uo.moveitem("finditem","2000","my")
wait(1000)  
+
Wait(50)
end if  
+
end if
until uo.findcount() < 2
+
Next
next
+
Uo.set('quiet','0')
uo.print("Hotovo")  
+
until uo.dead()
end sub  
+
end sub
 +
 
 +
sub dispelbomba()
 +
  uo.findtype("0x0F0E","0x0993","-1","self")
 +
  if uo.findcount() > 0 then
 +
      UO.moveitem("finditem","1","ground")
 +
      wait(400)
 +
  EndIf
 +
end sub
 +
 
 +
sub zvedni()
 +
  UO.FindType ("0x0EED", -1, 1)
 +
  if UO.FindCount('finditem') > 0 then
 +
      UO.grab("5000",'finditem')  
 +
  end if
 +
end sub</nowiki>
 +
 
 +
</div></div>
 +
{{Clear}}
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed">
 +
* Předvytvořená sekce na další skript
 +
------
 +
<div class="mw-collapsible-content">
 +
 
 +
<nowiki>Obsah budoucího skriptu</nowiki>
  
</div>
+
</div></div>
</code>
 
 
{{Clear}}
 
{{Clear}}

Aktuální verze z 11. 2. 2018, 06:16

Úvod

YokoInjection je nástroj k usnadnění hraní Ultimy. Používá se zejména na skripty, které vykonávají za hráče určitou funkci. Má široké možnosti nastavení, proto je pro začátečníky obtížné nastavit Yoko tak, aby správně fungoval. Skriptování je podobné Basicu, takže ti co se orijentují trochu v oblasti programování, mají vyhráno a můžou si teoreticky napsat skript, který za ně udělá skoro cokoliv. Největší problém je s dokumentací Yoka, protože oficiální web je rusky, takže to je menší zádrhel.

Instalace

  • Stáhněte YokoInjection zde.
  • Rozbalte stažený .zip archív a spusťte YokoInjection70211.exe
  • Dokončete instalaci následujícím postupem:
  • Next
Pokračujte dále
  • Zvolte instalaci do složky, kde se nachází Ultima (ve výchozím stavu Yoko automaticky detekuje, kde je nainstalovaná UO)
Cesta, kam se Inject nainstaluje
  • Odškrtněte "Launch Injection" a klikněte na "Finish"
Odškrtněte Launch a klikněte na Finish
  • Překopírujte z instalační složky tyto 2 soubory: DualCore_Launcher.exe a ignition.cfg do složky, kde jste nainstalovali Yoko - ve výchozím stavu do C:\Program Files (x86)\Erebor\YokoInjection. Pokud budete vyzváni, přepište původní ignition.cfg novým.
Přepište původní ignition.cfg a nakopírujte také DualCore_Launcher.exe
Výsledné překopírované soubory

Konfigurace

  • Klikněte pravým tlačítkem myši na DualCore_Launcher.exe a zvolte Vlastnosti (Properties)
    • Přepněte se na záložku Kompatibilita (Compatibility) a zaškrtněte následující volby dle obrázku, poté klikněte na OK:
Vzor jak nastavit správně kompatibilitu
  • Nyní spusťte DualCore_Launcher.exe
  • U položy Client Dir klikněte na Change a zvolte složku, ve které je nainstalován Erebor (ve výchozím C:\Program Files (x86)\Erebor\YokoInjection)
  • U položky Server klikněte na Edit List, poté klikněte na Local a přepište Name na Erebor a Address na server.uoerebor.cz,2593. Poté klikněte na tlačítko Save a následně na OK.
Vzor jak nastavit správně Server
  • U položky Client klikněte na Edit List, poté klikněte na Default a přepište Name na 3.0.6m, následně klikněte na tlačítko Choose a vyberte Client.exe (nachází se v C:\Program Files (x86)\Erebor\) a klikněte na tlačítko Open. Poté klikněte na tlačítko Save a následně na OK.
Vzor jak nastavit správně cestu ke Clientovi
Vzor jak nastavit správně Client
  • U položky Ignition.cfg klikněte na Change, poté otevřete složku YokoInjection, zvolte ignition.cfg a následně na tlačítko Open.
Vzor jak nastavit správně ignition.cfg
  • Nyní klikněte na Close a znovu spusťte DualCore_Launcher.exe
  • Klikněte na tlačítko Launch
Výsledek správného nastavení Injectu
  • Nastavte Injection dle obrázku (nezapomeňte hlavně nastavit Encryption na 3.0.6.j a také Undead!) a poté klikněte na tlačítko SAVE!:
Výsledek správného nastavení pro funkční hraní, nezapomeňte kliknout na Save
  • Ukončete klienta a znovu spusťte DualCore_Launcher.exe a můžete hrát!

Ostatní

Popis funkcí

  • Flush Log - Po spuštění Yoka vyprázdní soubor injection_log.txt.
  • Verbose Logging - Podrobně zapisuje do souboru injection_log.txt informace o dění ve hře. !!!Pozor, soubor injection_log.txt obsahuje po krátké době hraní velké množství dat => velký soubor. Spolu s touto funkcí doporučuji používat Flush Log.!!!
  • Light - "Věčné" světlo. Je to lighthack, na DP zakázané.
  • Tracker - Pokud zemřete, objeví se k vašemu tělu šipka, ale na většině serverech nefunguje
  • Corpses autoopen - Pokud ve vaší blízkosti někdo/něco zemře, tak se vám automaticky objeví obsah mrtvoly.
  • Destroy server menus - Automaticky zavírá většinu menu.
  • Filter sound - Filtruje zvuky ve hře.
  • Filterspeech - Neukazuje zprávy, které začínají řetězcem který si nastavíte ve hře příkazem ",filterspeech add text".
  • Verbose menu - Po zaškrtnutí vypisuje například hlášky o úspěšném vybrání menu pomocí scriptu atd.
  • Undead - Když zemřete, nemáte černobíloý obraz a nezavřou se vám bágly. POZOR! Tuto funkci doporučuji mít stále zapnuto, protože na většině serverech mě to odpojilo a nemohl jsem se lognout do hry přes injection, u Ereboru to tak dělá/dělalo.
  • Autostart - Když lognete, spustí se skript který se jmenuje "autostart"
  • Target XYZ fix - pokud je volba aktivní, tak targety (cíle), které zasílá Injection jsou naprosto shodné se standatním klientem. Doporučuji však toto nastavení ponechat vypnuté.
  • Unset before set
  • Stealth counter - V případě, že jste v hidu a chodíte, tak vám ukazuje, kolik jste udělali kroků.
  • Smooth-walk - Nástroj, pomocí kterého můžete lépe chodit v lagách, protože nečeká na odezvu serveru. Je zakázán v PvP. Celkem laguje. A nedoporučuji používat.
  • TUS bb-fix - Na starších serverech opravuje chybu při přihlašování. Na dnešních serverech není za potřebí.
  • Relay - Není za potřebí na českých shardech požívat
  • Font color - Nastaví barvu písma. Pomocí tohoto můžete nastavit větší rozsah barev (zapsáním do políčka nebo vybráním z dye), ale není zaručena sabilita klienta.
  • AntiCrash - Odstraňuje několik příčin pádu klienta po příchodu nesmyslných dat ze strany serveru (barvy, grafiky... mimo rozsah). Doporučuji mít vypnuté.
  • AoP map patch
  • Client > 400c Fix - Potřebné ke hraní s Yokem a clientem 4.0.x a 5.0.x
  • No client hung message - Zajistí, aby se vám nezobrazovaly otravné messageboxy, které sem tam klient vyhodí. Doporučuji nechat vyplé.
  • Permit vars loopback
  • Status bar fix - Když někdo zmizí z obrazovky (uteče, odportne, odlogne ...) tak se místo něj objeví zombík aby vám nespadla vytažená záložka. - Pokud chcete používat tuto funkci, nejlépe se hodí v pvp, když se někdo hidne, musíte mít zaplou funkci Track world items.
  • Poison: bottle then obj - Určuje pořadí targetů při použití skillu poisoning. Doporučuji nechat vyplé.
  • Track world items - Udržuje v paměti i objekty, které již nevidíte na obrazovce.
  • IngnoreSocket (400x) - Potřebné ke hraní s Yokem a clientem 4.0.x a 5.0.x. Doporučuji nechat vyplé, pokud hrajete na Ereboru, DP, ...
  • Version - Není potřeba vyplňovat
  • Battle Filter - Neukazuje dynamické itemy. Doporučuji nechat vyplé.

Jak spustit script

Nejprve musíme mít daný script, např. mining.sc. V injectu tedy vybereme záložku Script, poté klikneme na tlačítko Load a vybereme soubor mining.sc. Dole vedle Run function: se nám zobrazí název spustitelného scriptu, takže si vybereme např. Kopej a klikneme na Run function. A skript by měl běžet. Pokud ho budeme chtít vypnout, stačí běžící script vybrat z horního okna, označíme ho a klikneme na tlačítko Terminate selected.

YokoInjection-Zalozka-Script.png

Popis funkcí, co se dá na záložce script dělat:

  • List of running functions - Zde je seznam běžících scriptů.
  • Terminate selected - Ukončí script, který vyberete v List of running functions.
  • Edit current script - Po kliknutí na toto tlačítko se vám otevře nové okno, ve kterém můžete psát, nebo upravovat scripty.
  • Load - Otevře soubor se scriptama.
  • Save - Uloží soubor, který jste upravovali pomocí Edit current script.
  • Run function- Spustí script, který vybere v rozbalovacím seznamu vedle tlačítka.
  • TIP: Pokud se vám nechce při každém spuštění Yoka nahrávat soubor se scriptama přes tlačítko Load, tak pojmenujte soubor, který obsahuje vámi používané scripty, na Autoload.sc

Skripty

  • Balík základních skriptů - léčení obvazy včetně vrácení zbraně do ruky, loot, vypisování životů nad vaší postavou, sběr šípů.


sub banda()
  var zbran
  UO.SetArm("zbran")
  UO.WaitTargetObject("self")
  UO.UseType('0x0E21')
  wait(300)
  UO.Arm("zbran")
end sub

sub hp()
  var HP_priebezne_self
  while 1==1
    HP_priebezne_self = uo.gethp("self")
    wait(100)
    if uo.gethp("self") < HP_priebezne_self and not uo.dead() then
      uo.charprint(0x0028,"-" + str(HP_priebezne_self - uo.gethp("self")) + " (" + str(uo.gethp("self")) + ")")
    end if
    if uo.gethp("self") > HP_priebezne_self + 5 and not uo.dead() then
      uo.charprint(0x010F,"+" + str(uo.gethp("self") - HP_priebezne_self) + " (" + str(uo.gethp("self")) + ")")
    end if
  wend
end sub

sub loot() 
  VAR WaitTime=10
  VAR Exit=0, i 
  DIM Loot[38]

  Loot[0]=0x0E76 ;Bag
  Loot[1]=0x0eed ;gold
  Loot[2]=0x0F8D ;spider silk
  Loot[3]=0x0F86 ;mandrake root
  Loot[4]=0x0E21 ;bandage
  Loot[5]=0x0F7B ;Blood Moss
  Loot[6]=0x0F84 ;garlic
  Loot[7]=0x0F7A ;blackpearls
  Loot[8]=0x0F8C ;sulforous ash
  Loot[9]=0x0F87 ;eon vocka
  Loot[10]=0x1BD1 ;perie
  Loot[11]=0x0F80 ;Daemon bones
  Loot[12]=0x0F8B ;Pumice
  Loot[13]=0x0F89 ;Obsidian
  Loot[14]=0x0f88 ;Nightshade
  Loot[15]=0x0f85 ;Ginseng
  Loot[16]=0x0F83 ;an Execution's Cap
  Loot[17]=0x0F8E ;a Serpent's Scale
  Loot[18]=0x0F91 ;Wyrm's Heart
  Loot[19]=0x0F8A ;PigIron
  Loot[20]=0x0E76 ;Batohy
  Loot[21]=0x0F78 ;Batwings
  Loot[22]=0x1BEF ;Ingots
  Loot[23]=0x0F26 ;Diamanty
  Loot[24]=0x1F03 ;Róby
  Loot[25]=0x14EB ;Treassure Map
  Loot[26]=0x1420 ;Cobbweb
  Loot[27]=0x108A ;reflex ring
  Loot[28]=0x1848 ;elixir
  Loot[29]=0x09D0 ;God's Apple
  Loot[30]=0x1BFB ;Crosbow Bolt
  Loot[31]=0x0F82 ;Dragon's Blood
  Loot[32]=0x1078 ;kuze
  Loot[33]=0x0F81 ;Fertir Dirt
  Loot[34]=0x0F8F ;grave dust
  Loot[35]=0x0F7D ;Vials of Blood
  Loot[36]=0x0F7E ;Bones
  Loot[37]=0x0F78 ;Batwingy

  UO.UseObject('lastcorpse')
  UO.SetArm('temp')
  UO.WaitTargetObject('lastcorpse')
  UO.UseType('0x0F51'); <-- SEM PATRI ID DYKY
  UO.SetReceivingContainer('sacek')
  wait(500)
  UO.Arm('temp')
  wait(500)

  For i=0 to 37
    UO.FindType(Loot[i],-1,'ground')
    if UO.GetQuantity('finditem') then
      UO.Grab(STR(0),'finditem')
      wait(WaitTime)
    endif

    if UO.GetQuantity('lastcorpse') then
      UO.FindType(Loot[i],-1,'lastcorpse')
      if UO.GetQuantity('finditem') then
        UO.Grab(STR(0),'finditem')
      endif
      wait(WaitTime)
    endif
  next
end sub

sub sipy()
  var e
  dim sber[2]
  sber[0] = "0x1BFB"
  sber[1] = "0x0F3F"
  sber[2] = "0x38D8"

  for e = 0 to 2
    repeat
      uo.set("finddistance","4")
      uo.findtype(sber[e],"-1","ground")
      if uo.findcount() > 0 then
        UO.moveitem("finditem","-1","sacek")
        wait(1000)
      end if
    until uo.findcount() < 2
  next
  uo.print("Hotovo")
end sub


  • Skripty od hráče Marw


sub kudla()
    uo.deletejournal()
    UO.Say('.throw')
    wait(200)
    if uo.injournal("Nemas zadny cil") or uo.injournal("Pokusila jsi se hodit") then 
    uo.Print("---Nejde hazet---")
    uo.Print("---Zkus to bliz---")
    else
    uo.Print("---Hazim---")
    wait(5000)
    uo.Print("---No tak hazej---")

    END IF

end sub

sub leap()
    UO.Say('.leap')
    uo.Print("---LEAPUJU!!---")
    wait(4000)
    uo.Print("---MUZEM LEAPOVAT---")
end sub 

sub GH()
    UO.say('.potionheal')
    Uo.Print('----PIJU HEAL----')
    wait(30000)
    UO.Print('---MUZEME DALSI HEAL---')
end sub

sub mob()
    UO.say('.potionmobility')
    Uo.Print('----PIJU MOBILITU----')
    wait(30000)
    UO.Print('---POZOR MUZES BYT PARLY,RADSI PIJ---')
end sub

sub energypvm()
    Repeat
    uo.deletejournal()
    Uo.Cast("Energy Bolt")
    uo.waittargetlast("")
    Wait(3200)
    Until Uo.InJournal("Body of")
end sub

sub HP()
    var HP_priebezne_self
    while not uo.dead()
    HP_priebezne_self = uo.gethp("self")
    wait(100)
    if uo.gethp("self") < HP_priebezne_self and not uo.dead() then
    uo.charprint(0x0026,"-" + str(HP_priebezne_self - uo.gethp("self")) + " (" + str(uo.gethp("self")) + ")")
    end if
    if uo.gethp("self") > HP_priebezne_self + 5 and not uo.dead() then
    uo.charprint(0x01FA,"+" + str(uo.gethp("self") - HP_priebezne_self) + " (" + str(uo.gethp("self")) + ")")
    end if
    wend
end sub

sub Hiding()
    UO.WarMode ('0')
    UO.UseSkill ('Hiding')
end sub

sub banda()
    UO.UseType(0x0E21,0x0000)
    UO.WaitTargetSelf()
end sub

sub pvmloot()
uo.findtype("0x0E76","-1","my")
if uo.findcount()==1 then
 uo.addobject("lootbagl","finditem")
 wait(100)
end if
var i,n  
var k
Dim A[80]
;uo.charprint(0x0481,"PvM loot ON")
repeat
repeat
wait(100)
until Uo.hex2int(uo.getgraphic("lastcontainer"))==0x2006 and Uo.getserial("lastcontainer")<>k
k=Uo.getserial("lastcontainer")
uo.deletejournal()
Uo.set('quiet','1')
A[1] = 0x0E76 ; Item baglik
A[2] = 0x0EED ; penize
A[3] = 0x0F8D ; spider silk
A[4] = 0x0F7B ; blood moss
A[5] = 0x0F86 ; mandrake roots
A[6] = 0x0F8C ; sulfurous ash
A[7] = 0x0F88 ; nightshade
A[8] = 0x0F7A ; black perla
A[9] = 0x0F89 ; obsidian
A[10] = 0x0F84 ; garlick
A[11] = 0x0F87 ; eyes of newt 
A[12] = 0x0F83 ; executioners cup
A[13] = 0x0F91 ; wyrms hearts
A[14] = 0x0F8F ; grave dust
A[15] = 0x0F8E ; nox crystal
A[16] = 0x0F80 ; dragon bone
A[17] = 0x0F8B ; pumice
A[18] = 0x0F78 ; batwings
A[19] = 0x0F7D ; daemon blood
A[20] = 0x0F82 ; dragon blood
A[21] = 0x0F8A ; pig iron
A[22] = 0x0F81 ; fertile dirt
A[23] = 0x0F85 ; ginseng
A[24] = 0x0F7E ; bones
A[25] = 0x14EB ; tajemna mapa (FLIP)
A[26] = 0x14EC ; tajemna mapa (FLIP)
A[27] = 0x0F26 ; Diamant
A[28] = 0x19B7 ; ore
A[29] = 0x0F11 ; saphires
A[30] = 0x0F16 ; amethyst
A[31] = 0x0F0F ; star saphires
A[32] = 0x0F13 ; asi citrin
A[33] = 0x0F18 ; neco podobneho
A[34] = 0x1712 ; boty
A[35] = 0x0F10 ; ddrahokam
A[36] = 0x0F15 ; ddrahokam2
A[37] = 0x1078 ; kůže
A[38] = 0x0C79 ; jídlo
A[39] = 0x0C5C ; jídlo
A[40] = 0x103B ; jídlo
A[41] = 0x09E9 ; jídlo
A[42] = 0x0C6A ; jídlo
A[43] = 0x09D1 ; jídlo
A[44] = 0x1040 ; jídlo
A[45] = 0x098C ; jídlo
A[46] = 0x1728 ; jídlo
A[47] = 0x09EC ; jídlo
A[48] = 0x172A ; jídlo
A[49] = 0x0C74 ; jídlo
A[50] = 0x1041 ; jídlo
A[51] = 0x0C6D ; jídlo
A[52] = 0x0C7F ; jídlo
A[53] = 0x0C66 ; jídlo
A[54] = 0x0C7B ; jídlo
A[55] = 0x0994 ; jídlo
A[56] = 0x09D2 ; jídlo
A[57] = 0x1726 ; jídlo
A[58] = 0x1727 ; jídlo
A[59] = 0x171F ; jídlo
A[60] = 0x0F0E ; alchemy
A[61] = 0x0D39 ; jídlo
A[62] = 0x0C70 ; jídlo
A[63] = 0x09C9 ; jídlo
A[64] = 0x0C77 ; jídlo
A[65] = 0x0C64 ; jídlo
A[66] = 0x097E ; jídlo
A[67] = 0x186F ; Vanocni banka


n=1
FOR n=1 TO 67
uo.findtype(A[n],"-1","lastcontainer")
if uo.findcount() > 0 then 
uo.moveitem("finditem","2000","my")
Wait(50)
end if
Next 
Uo.set('quiet','0')
until uo.dead()
end sub

sub dispelbomba() 
   uo.findtype("0x0F0E","0x0993","-1","self") 
   if uo.findcount() > 0 then 
      UO.moveitem("finditem","1","ground") 
      wait(400) 
   EndIf
end sub

sub zvedni()
   UO.FindType ("0x0EED", -1, 1) 
   if UO.FindCount('finditem') > 0 then 
      UO.grab("5000",'finditem') 
   end if
end sub


  • Předvytvořená sekce na další skript

Obsah budoucího skriptu