edit ho risolto
annuncio
Comprimi
Ancora nessun annuncio.
[EASYUO] Bod Gatherer
Comprimi
Questa è una discussione evidenziata.
X
X
-
ho notato che spesso lo script si impalla cercando di prendere BOD dal Guildmaster che ovviamente non li da...così facendo il PG resta bloccato per parecchio tempo...spesso lo fa con il fabbro ad Umbra mentre il tailor di umbra sembra procedere abbastanza tranquillo...qualcuno ha una soluzione?
Commenta
-
Originariamente inviato da Spino Visualizza il messaggioho notato che spesso lo script si impalla cercando di prendere BOD dal Guildmaster che ovviamente non li da...così facendo il PG resta bloccato per parecchio tempo...spesso lo fa con il fabbro ad Umbra mentre il tailor di umbra sembra procedere abbastanza tranquillo...qualcuno ha una soluzione?
codice:sub findNpc namespace push namespace local findNpc set !type %1 set !previous %2 set !arraySize 0 set !element 1 _findNpc: GoSub CheckForConnectionLost finditem IS_HS G_10
Commenta
-
Originariamente inviato da Marino Visualizza il messaggiospino togli il type HS su questa sub
codice:sub findNpc namespace push namespace local findNpc set !type %1 set !previous %2 set !arraySize 0 set !element 1 _findNpc: GoSub CheckForConnectionLost finditem IS_HS G_10
per ora quindi faccio questa modifica in attesa che tu posti lo script nuovo
grazie ancora!!
Commenta
-
un altra cosa che ho notato è che a lungo andare si sfasano i tempi
mi spiego meglio:
il primo giro va liscio,
al secondo/terzo capita che il primo pg chieda il BOD e gli venga risposto dall' NPG di attendere 1 minuto,
al quarto/quinto giro il primo pg chiede il bod e gli dicono di attendere 2 minuti
più si va avanti più l'attesa aumenta questo perchè a quanto pare il timer dell'ora parte dal login e non dalla ricezione effettiva del Bod perciò dopo qualche giro si accumula un ritardo che lascia connesso il pg per diversi minuti prima di ruscire a recuperare il bod richiesto.
infatti dal login alla ricezione bod passano sempre diversi secondi dovuti al fatto che a volte il pg non riesce a beccare al primo colpo l'NPG e ci prova un paio di volte prima di riuscire a trovarlo e prendere il BOD.
forse basterebbe regolare il timer a 62 minuti invece che 60 per risolvere in parte il problema
Commenta
-
Originariamente inviato da Marino Visualizza il messaggiospino togli il type HS su questa sub
codice:sub findNpc namespace push namespace local findNpc set !type %1 set !previous %2 set !arraySize 0 set !element 1 _findNpc: GoSub CheckForConnectionLost finditem IS_HS G_10
Poco sotto questa parte di codice dovresti avere questa
codice:if #findkind <> -1 { if #findrep = 7 { event property #findid if !type = tailor { if guild notin #property { if weaver in #property || tailor in #property { set !npc . !element #findid set !arraySize !arraySize + 1 set !element !element + 1 } } } if !type = smith { if blacksmith in #property || armourer in #property && guild notin #property { set !npc . !element #findid set !arraySize !arraySize + 1 set !element !element + 1 } } } goto _findNpc }
codice:if #findkind <> -1 { if #findrep = 7 { event property #findid if !type = tailor { if guild notin #property { if weaver in #property || tailor in #property { set !npc . !element #findid set !arraySize !arraySize + 1 set !element !element + 1 } } } if !type = smith { if guild notin #property { if blacksmith in #property || armourer in #property { set !npc . !element #findid set !arraySize !arraySize + 1 set !element !element + 1 } } } } goto _findNpc }
Originariamente inviato da Spino Visualizza il messaggioun altra cosa che ho notato è che a lungo andare si sfasano i tempi
mi spiego meglio:
il primo giro va liscio,
al secondo/terzo capita che il primo pg chieda il BOD e gli venga risposto dall' NPG di attendere 1 minuto,
al quarto/quinto giro il primo pg chiede il bod e gli dicono di attendere 2 minuti
più si va avanti più l'attesa aumenta questo perchè a quanto pare il timer dell'ora parte dal login e non dalla ricezione effettiva del Bod perciò dopo qualche giro si accumula un ritardo che lascia connesso il pg per diversi minuti prima di ruscire a recuperare il bod richiesto.
infatti dal login alla ricezione bod passano sempre diversi secondi dovuti al fatto che a volte il pg non riesce a beccare al primo colpo l'NPG e ci prova un paio di volte prima di riuscire a trovarlo e prendere il BOD.
forse basterebbe regolare il timer a 62 minuti invece che 60 per risolvere in parte il problemaICQ: 567-107-480
Sono spesso occupato con l'università , pazientate
Commenta
-
Originariamente inviato da DaniOvertures Visualizza il messaggioNon mi pare la soluzione giusta, lo script ha un bug non riportato proprio perchè controlla di non chiedere al guildmaster solo al tailor e non agli smith.
Poco sotto questa parte di codice dovresti avere questa
codice:if #findkind <> -1 { if #findrep = 7 { event property #findid if !type = tailor { if guild notin #property { if weaver in #property || tailor in #property { set !npc . !element #findid set !arraySize !arraySize + 1 set !element !element + 1 } } } if !type = smith { if blacksmith in #property || armourer in #property && guild notin #property { set !npc . !element #findid set !arraySize !arraySize + 1 set !element !element + 1 } } } goto _findNpc }
codice:if #findkind <> -1 { if #findrep = 7 { event property #findid if !type = tailor { if guild notin #property { if weaver in #property || tailor in #property { set !npc . !element #findid set !arraySize !arraySize + 1 set !element !element + 1 } } } if !type = smith { if guild notin #property { if blacksmith in #property || armourer in #property { set !npc . !element #findid set !arraySize !arraySize + 1 set !element !element + 1 } } } } goto _findNpc }
non vedo dove sia il problema nel lasciare il pg fermo ad aspettare il bod, non cambierebbe nulla se invece di aspettare lui di fronte al tailor aspettasse lo script di ripartire con il login, sei sempre in attessa del prossimo bod. In realtà io preferisco quando lo script non aspetta prima di fare il login perchè il consumo di cpu è molto piu elevato in quella fase con conseguente innalzamento delle temperature. In caso tu voglia però posso mostrarti cosa modificare per avere il delay in minuti e poter mettere 62 ma ti ripeto che non ne vedo l'utilità.
se sai un modo per escludere un determinato npc dalla ricerca fammi sapere cosa devo andare a modificare
Commenta
-
Ho avuto anche io lo stesso problema ma ho risolto semplicemente andando a modificare la rail, ora come ultima posizione ho 2076,1330,-80 e riesce a prendere i bod da entrambi gli npc
una seconda soluzione è modificare il range di ricerca degli npc
codice:finditem IS_HS G_10
ICQ: 567-107-480
Sono spesso occupato con l'università , pazientate
Commenta
-
Originariamente inviato da DaniOvertures Visualizza il messaggionon vedo dove sia il problema nel lasciare il pg fermo ad aspettare il bod, non cambierebbe nulla se invece di aspettare lui di fronte al tailor aspettasse lo script di ripartire con il login, sei sempre in attessa del prossimo bod. In realtà io preferisco quando lo script non aspetta prima di fare il login perchè il consumo di cpu è molto piu elevato in quella fase con conseguente innalzamento delle temperature. In caso tu voglia però posso mostrarti cosa modificare per avere il delay in minuti e poter mettere 62 ma ti ripeto che non ne vedo l'utilità.
il rischio in realtà è uno solo: se il pg è online e per qualche motivo cade la connessione, vuoi per un crash per esempio o per qualche problema di linea temporaneo, lo script si blocca. se invece il pg non è connesso si evita questo rischio connettendosi di fatto solo per ritirare i bod e poi torna in modalità offline.
insomma ho l'impressione che da offline si limitino i rischi che lo script si impalli a causa di problemi di connessione.
fino ad ora infatti tutte le volte che lo script mi si è impallato è stato sostanzialmente per 3 motivi:
1)Cade la connessione (a me o al sever in genere)
2)crasha ultima, il gioco non il server (di rado mi è capitato)
3)si blocca nella fase connecting (e qui credo ci sia poco da fare)
più il pg è online più rischia di incorrere nei punti 1 e 2Ultima modifica di Spino; 12-01-2010, 12:19.
Commenta
-
Originariamente inviato da Spino Visualizza il messaggiogrossi problemi nell'attendere online non ce ne sono affatto
il rischio in realtà è uno solo: se il pg è online e per qualche motivo cade la connessione, vuoi per un crash per esempio o per qualche problema di linea temporaneo, lo script si blocca. se invece il pg non è connesso si evita questo rischio connettendosi di fatto solo per ritirare i bod e poi torna in modalità offline.
insomma ho l'impressione che da offline si limitino i rischi che lo script si impalli a causa di problemi di connessione.
fino ad ora infatti tutte le volte che lo script mi si è impallato è stato sostanzialmente per 3 motivi:
1)Cade la connessione (a me o al sever in genere)
2)crasha ultima, il gioco non il server (di rado mi è capitato)
3)si blocca nella fase connecting (e qui credo ci sia poco da fare)
più il pg è online più rischia di incorrere nei punti 1 e 2
allora prova a modificare quanto segue:
VECCHIO:
codice:set %hoursBetweenBods 1
codice:set %minutesBetweenBods 62
codice:sub timeOld set %time *RazielBodTime set %date_old *RazielBodDate set %seconds_old ( %time % 100 ) + ( ( %time % 10000 ) / 100 ) * 60 + ( %time / 10000 ) * 3600 set %date_new #date if %time = N/A 2 set %date_old #date set %seconds_old ( #time % 100 ) + ( ( #time % 10000 ) / 100 ) * 60 + ( #time / 10000 ) * 3600 - 3600 * %hoursBetweenBods return
codice:sub timeOld set %time *RazielBodTime set %date_old *RazielBodDate set %seconds_old ( %time % 100 ) + ( ( %time % 10000 ) / 100 ) * 60 + ( %time / 10000 ) * 3600 set %date_new #date if %time = N/A 2 set %date_old #date set %seconds_old ( #time % 100 ) + ( ( #time % 10000 ) / 100 ) * 60 + ( #time / 10000 ) * 3600 - 60 * %minutesBetweenBods return
codice:sub waitBod set %show #true _waitBOD: set %date_new #date set %seconds_new ( #time % 100 ) + ( ( #time % 10000 ) / 100 ) * 60 + ( #time / 10000 ) * 3600 if %date_old <> %date_new set %get_bod 3600 * %hoursBetweenBods - ( ( %seconds_new - %seconds_old ) + 86400 ) else set %get_bod 3600 * %hoursBetweenBods - ( %seconds_new - %seconds_old ) if %get_bod <= 0 return set %h %get_bod / 3600 set %m ( %get_bod % 3600 ) / 60 if %show { menu delete time menu Window Title Script Finito menu text time 5 5 Tempo residuo al prossimo giro:$ , %h ore %m minuti if #menubutton = continue return if #menubutton = closed set %show #false } wait 20 goto _waitBOD
codice:sub waitBod set %show #true _waitBOD: set %date_new #date set %seconds_new ( #time % 100 ) + ( ( #time % 10000 ) / 100 ) * 60 + ( #time / 10000 ) * 3600 if %date_old <> %date_new set %get_bod 60 * %minutesBetweenBods - ( ( %seconds_new - %seconds_old ) + 86400 ) else set %get_bod 60 * %minutesBetweenBods - ( %seconds_new - %seconds_old ) if %get_bod <= 0 return set %h %get_bod / 3600 set %m ( %get_bod % 3600 ) / 60 if %show { menu delete time menu Window Title Script Finito menu text time 5 5 Tempo residuo al prossimo giro:$ , %h ore %m minuti if #menubutton = continue return if #menubutton = closed set %show #false } wait 20 goto _waitBOD
ICQ: 567-107-480
Sono spesso occupato con l'università , pazientate
Commenta
-
ok, adesso sono in ufficio, appena rientro provo e ti faccio sapere
grazie!
Commenta
-
usando il sistema recall funziona solo se si vuole andare nella locanda tailor o in quel smith non su entrambe, cosa sarebbe da modificare per far ciò in questa sub?
codice:sub findRune ignoreitem reset if %0 = 2 ignoreitem %2 get_rune: GoSub CheckForConnectionLost finditem QWL C if #findkind = -1 return -1 event property #findid if #property = $ goto get_rune if %1 in #property return #findid ignoreitem #findid goto get_rune
Commenta
-
per chi usa il metodo recall (o il sacred del paladino) si può fare in modo che invece delle tre rune sfuse nel bagpack si possa utilizzare un runebook che abbia al suo interno un paio di rune per ogni locazione?
a volte mi capita infatti che il tile in cui devo recallarmi è occupato da un altro pg che sta fermo a sua volta per ritirare bod. quando succede questo il mio pg prova infinite volte a recallarsi senza mai riuscirci e inoltre questa attesa falsa il counter dell'ora che nel frattempo procede senza che io abbia effettivamente ritirato i BOD. di conseguenza al prossimo giro di BOD il mio PG starà fermo davanti al tailor/smith di turno perchè non sono ancora passati i canonici 60 minuti con il risultato di bloccare a sua volta un tile per qualcuno che può averne bisogno, oltre che restare online inutilmente con tutti i problemi che ho già elencato qualche post più su....
con un runebook contenente 2 o tre rune per ogni locazione questo problema si risolverebbe perchè il pg avrebbe la possibilità di recalarsi su un tile alternativo in caso di blocco
Commenta
-
Originariamente inviato da Marino Visualizza il messaggioqueste sono le rail per prendere bod black e tailor 0.1
salvarlo su un blocco note con il nome (inn_tailor_umbra)
CUT CUT CUT
Premesso che nelle righe indicanti i personaggi da utilizzare ho dato comando "2";
Premesso che le tue rails, il file di Fengyr ed easy uo sono in una stessa cartella;
All'avvio dello script, dopo avere loggato il primo personaggio da me selezionato, mi compare un messaggio
"there is something wrong with your rail (inn_tailor_'città.txt)
check you have made the file and put it in the same folder as the bod script.
halting script"
Ho provato a crearmi le mie rails usando lo script CEOAutoRailWriter, ma nel momento della registrazione mi è comparso un altro infelice messaggio :
"impossibile trovare il file txt2file.Vbs"
Commenta
-
mi ero dimenticato di allegarlo...
http://tamerassistant.googlecode.com/files/txt2file.vbs____________________________________________________________________
Il più Fengyr
____________________________________________________________________
: algander#6292
Commenta
Commenta