We è un po che non ci si sente eh? ^_^
Mi sono un po' scocciato di ultima, e anche di wow devo dire. Forse mi sto scocciando dei videogiochi in generale, o dei mmorpg. Quindi è probabile che non mi rivedrete postare quasi mai qui, ma volevo lasciarvi un ricordino.
(Ovviamente non è escluso che mi torni voglia di giocare prima o poi!)
Un paio di mesi fa cominciai a scrivere una guida per EasyUO, visto che tanta gente aveva voglia di imparare a scriptare. Purtroppo però non l'ho finita, vista la perdita dell'interesse nel mondo di ultima. Tuttavia il primo e unico capitolo della guida raccoglie tutto quello che un apprendista scripter deve sapere, il resto poi è tutta esperienza e pazienza nel leggere il manuale di Easyuo in inglese. Esiste anche un'altra guida italiana che è stata linkata proprio in questo forum poco tempo fa. In realtà non si tratta di una guida ma di una lista di tutti i comandi con spiegazioni dettagliate su come funzionano. Dunque direi che la mia guida e quest'altra sono complementari: la mia dà le basi a chi non ha mai avuto esperienza di scripting e programmazinoe, l'altra spiega tutti i comandi uno per uno.
Link alla mia home page fatta 2 minuti fa in maniera molto rozza con word ^_^ (mi seccava installare frontpage o dreamweaver per fare 1 stupida pagina)
http://xoomer.virgilio.it/vash1986/
E voglio anche regalarvi il mio script per healing di Easyuo. Badate però: fatelo funzionare da soli, è tutto scritto lì e non posso passare le giornate a rispondere alla gente :P
Una persona mi ha detto che è molto lento a ribendarsi dopo che ha finito la bendata, eppure i test che ho fatto io andavano alla grande. Diciamo che forse potrebbe essere migliorato, non ci ho mai badato tanto visto ke injection è tornato a funzionare proprio il giorno dopo in cui ho fatto questo script. Sempre meglio di quelli che girano su easyuo.com eh! Buona fortuna
Bye
Mi sono un po' scocciato di ultima, e anche di wow devo dire. Forse mi sto scocciando dei videogiochi in generale, o dei mmorpg. Quindi è probabile che non mi rivedrete postare quasi mai qui, ma volevo lasciarvi un ricordino.
(Ovviamente non è escluso che mi torni voglia di giocare prima o poi!)
Un paio di mesi fa cominciai a scrivere una guida per EasyUO, visto che tanta gente aveva voglia di imparare a scriptare. Purtroppo però non l'ho finita, vista la perdita dell'interesse nel mondo di ultima. Tuttavia il primo e unico capitolo della guida raccoglie tutto quello che un apprendista scripter deve sapere, il resto poi è tutta esperienza e pazienza nel leggere il manuale di Easyuo in inglese. Esiste anche un'altra guida italiana che è stata linkata proprio in questo forum poco tempo fa. In realtà non si tratta di una guida ma di una lista di tutti i comandi con spiegazioni dettagliate su come funzionano. Dunque direi che la mia guida e quest'altra sono complementari: la mia dà le basi a chi non ha mai avuto esperienza di scripting e programmazinoe, l'altra spiega tutti i comandi uno per uno.
Link alla mia home page fatta 2 minuti fa in maniera molto rozza con word ^_^ (mi seccava installare frontpage o dreamweaver per fare 1 stupida pagina)
http://xoomer.virgilio.it/vash1986/
E voglio anche regalarvi il mio script per healing di Easyuo. Badate però: fatelo funzionare da soli, è tutto scritto lì e non posso passare le giornate a rispondere alla gente :P
Una persona mi ha detto che è molto lento a ribendarsi dopo che ha finito la bendata, eppure i test che ho fatto io andavano alla grande. Diciamo che forse potrebbe essere migliorato, non ci ho mai badato tanto visto ke injection è tornato a funzionare proprio il giorno dopo in cui ho fatto questo script. Sempre meglio di quelli che girano su easyuo.com eh! Buona fortuna
;=============================
;JOURNAL HEALING by Vash v. 2.0
;=============================
;Testato su emulatore di Ultima Online RunUO 1.0.1 col client 4.0.8a-4.0.7x-4.0.6x
;Dovrebbe funzionare anche coi client vecchi.
;Lo script utilizza automaticamente le bende se hp < maxhp (valore modificabile in un numero statico, vedi nella sub principale), o se il pg è avvelenato.
;Se le bende finiscono o sono poche ti avverte, ma basta rifornirsi senza dover riavviare lo script (importante è non chiudere lo zaino!).
;Controlla il journal per verificare che le bende siano state correttamente applicate, altrimenti riprova.
;Ottimo calcolo della bendata in base alla dex, secondo le ultime modifiche OSI.
;Mostra una sorta di countdown sulla testa del pg, rappresentante i decimi di secondo mancanti alla fine della bendata.
;CONTATORE
;===========
;set %counter 1 per usare il contatore in decimi di secondo, set %counter 0 per non usarlo
set %counter 1
;SPECIAL CURE
;=============
;Questa parte qui riguarda una particolare opzione che permette di assicurare la cura di hp.
;Nel senso che a un secondo dalla fine della bendata effettua un controllo e se il pg è avvelenato fa partire una macro di Razor.
;Quindi se tale opzione non vi interessa, settate semplicemente %cure a 0
set %cure 0
;Se invece volete usarla, settate %cure a 1 e fate la macro di Razor.
;Per farla non dovete assolutamente trascinare lo scudo a mano in quanto sarebbe un'operazione lenta e rischiosa.
;Usate invece una macro toggle scudo.
;Registrate le azioni 1- togli scudo 2- bevi pozza 3- rimetti scudo (la terza non è obbligatoria) in questa macro.
;Bindatela sul tasto FINE. Per cambiare tasto vedete in fondo allo script.
;Ovviamente ricordate che premendo ALT, CTRL o SHIFT mentre easyuo simula la pressione del tasto FINE, Razor non riconoscerà il tasto.
;Nella macro spunterà sia exec: toggle scudo, sia exec: undress/dress scudo.
;Togliete le due righe con toggle, e la macro è pronta, e il setup finito :-)
;MAIN LOOP
;=========
linespercycle 20
mainloop:
if #hits < #maxhits || C in #charstatus
{
GoSub CheckAids
if #result = #true
{
GoSub CheckDex
GoSub Apply
if #result = #false
goto mainloop
GoSub Waitnew
wait 2
}
}
wait 1
goto mainloop
;SUB CHECK AIDS
;==============
Sub CheckAids
finditem ZLF C_ , #BACKPACKID
if #findstack = 0
{
event ExMsg #charID 3 0 No bandages found!
wait 5s
return #false
}
if #findstack < 10 && #findcnt < 2
event sysmessage Attention, only #finstack aids remaining
return #true
;SUB CHECK DEX
;==============
Sub CheckDex
set %delay 11 - ( #dex / 20 )
set %euowait %delay * 20
return
;SUB APPLY
;=========
Sub Apply
aidloop:
finditem ZLF C_ , #BACKPACKID
set #lobjectid #findid
set %startscan #jindex
event macro 17 0
target 15
if #targcurs = 0
goto aidloop
event macro 23 0
GoSub WaitStartMsg 15
if #result = #false
goto aidloop
if #result = 1
return #false
return
;SUB WAITSTARTMSG
;===============
Sub WaitStartMsg
set %start #scnt2
set %start %start + %1
_waitsysmsgloop:
for %i %startscan #jindex
{
scanjournal %i
if you_begin in #journal
{
set %applystart #scnt2
return #true
}
if that_being in #journal
return 1
}
if #scnt2 >= %start
return #false
wait 1
goto _waitsysmsgloop
;SUB WAITNEW
;============
Sub WaitNew
set %keypressed 0
set %end %euowait + %applystart
set %limitcure %end - 16
waitloop:
if %counter = 1
{
set %remaining ( %end - #scnt2 )
event ExMsg #charID 3 0 %remaining
}
wait 2
if C in #charstatus && %cure = 1
{
if #scnt2 > %limitcure && %keypressed = 0
{
key f7 ; Cambiatelo se necessario
set %keypressed 1
}
}
if #SCNT2 >= %end || you_finish in #sysmsg || you_have in #sysmsg
return
goto waitloop
;JOURNAL HEALING by Vash v. 2.0
;=============================
;Testato su emulatore di Ultima Online RunUO 1.0.1 col client 4.0.8a-4.0.7x-4.0.6x
;Dovrebbe funzionare anche coi client vecchi.
;Lo script utilizza automaticamente le bende se hp < maxhp (valore modificabile in un numero statico, vedi nella sub principale), o se il pg è avvelenato.
;Se le bende finiscono o sono poche ti avverte, ma basta rifornirsi senza dover riavviare lo script (importante è non chiudere lo zaino!).
;Controlla il journal per verificare che le bende siano state correttamente applicate, altrimenti riprova.
;Ottimo calcolo della bendata in base alla dex, secondo le ultime modifiche OSI.
;Mostra una sorta di countdown sulla testa del pg, rappresentante i decimi di secondo mancanti alla fine della bendata.
;CONTATORE
;===========
;set %counter 1 per usare il contatore in decimi di secondo, set %counter 0 per non usarlo
set %counter 1
;SPECIAL CURE
;=============
;Questa parte qui riguarda una particolare opzione che permette di assicurare la cura di hp.
;Nel senso che a un secondo dalla fine della bendata effettua un controllo e se il pg è avvelenato fa partire una macro di Razor.
;Quindi se tale opzione non vi interessa, settate semplicemente %cure a 0
set %cure 0
;Se invece volete usarla, settate %cure a 1 e fate la macro di Razor.
;Per farla non dovete assolutamente trascinare lo scudo a mano in quanto sarebbe un'operazione lenta e rischiosa.
;Usate invece una macro toggle scudo.
;Registrate le azioni 1- togli scudo 2- bevi pozza 3- rimetti scudo (la terza non è obbligatoria) in questa macro.
;Bindatela sul tasto FINE. Per cambiare tasto vedete in fondo allo script.
;Ovviamente ricordate che premendo ALT, CTRL o SHIFT mentre easyuo simula la pressione del tasto FINE, Razor non riconoscerà il tasto.
;Nella macro spunterà sia exec: toggle scudo, sia exec: undress/dress scudo.
;Togliete le due righe con toggle, e la macro è pronta, e il setup finito :-)
;MAIN LOOP
;=========
linespercycle 20
mainloop:
if #hits < #maxhits || C in #charstatus
{
GoSub CheckAids
if #result = #true
{
GoSub CheckDex
GoSub Apply
if #result = #false
goto mainloop
GoSub Waitnew
wait 2
}
}
wait 1
goto mainloop
;SUB CHECK AIDS
;==============
Sub CheckAids
finditem ZLF C_ , #BACKPACKID
if #findstack = 0
{
event ExMsg #charID 3 0 No bandages found!
wait 5s
return #false
}
if #findstack < 10 && #findcnt < 2
event sysmessage Attention, only #finstack aids remaining
return #true
;SUB CHECK DEX
;==============
Sub CheckDex
set %delay 11 - ( #dex / 20 )
set %euowait %delay * 20
return
;SUB APPLY
;=========
Sub Apply
aidloop:
finditem ZLF C_ , #BACKPACKID
set #lobjectid #findid
set %startscan #jindex
event macro 17 0
target 15
if #targcurs = 0
goto aidloop
event macro 23 0
GoSub WaitStartMsg 15
if #result = #false
goto aidloop
if #result = 1
return #false
return
;SUB WAITSTARTMSG
;===============
Sub WaitStartMsg
set %start #scnt2
set %start %start + %1
_waitsysmsgloop:
for %i %startscan #jindex
{
scanjournal %i
if you_begin in #journal
{
set %applystart #scnt2
return #true
}
if that_being in #journal
return 1
}
if #scnt2 >= %start
return #false
wait 1
goto _waitsysmsgloop
;SUB WAITNEW
;============
Sub WaitNew
set %keypressed 0
set %end %euowait + %applystart
set %limitcure %end - 16
waitloop:
if %counter = 1
{
set %remaining ( %end - #scnt2 )
event ExMsg #charID 3 0 %remaining
}
wait 2
if C in #charstatus && %cure = 1
{
if #scnt2 > %limitcure && %keypressed = 0
{
key f7 ; Cambiatelo se necessario
set %keypressed 1
}
}
if #SCNT2 >= %end || you_finish in #sysmsg || you_have in #sysmsg
return
goto waitloop
Commenta