|
You last visited: Today at 03:05
Advertisement
[Request] D2NT 3.0 Itemlog mit DropLocation
Discussion on [Request] D2NT 3.0 Itemlog mit DropLocation within the Diablo 2 Programming forum part of the Diablo 2 category.
04/07/2010, 00:11
|
#1
|
elite*gold: 0
Join Date: Mar 2009
Posts: 437
Received Thanks: 62
|
[Request] D2NT 3.0 Itemlog mit DropLocation
Ich frage mich ob man irgendwie einstellen kann, dass der Bot anzeigt wo er etwas gedropt hat. Das wäre doch mal hilfreich.
Ich hab selbst schon ein wenig versucht. indem ich ihn ins Item log have posten lassen bei welchem script er das item stasht. Allerdings ist er beim stashen ja schon beim nächsten script.
auf jeden ging das so:
Code:
NTC_SendLogToOOG(NTC_LOG_ITEM, "Kept " + NTConfig_Script[CurScriptIndex] + NTC_ItemQualityToMGRColor[_items[i].quality] + _items[i].name.split("\n")[0] + ";" + _items[i].itemdesc);
allerdings musste man vorher
Code:
var CurScriptIndex = 0
definieren. Ausserdem glaube ich noch de config einfügen.
Hat jemand vllt ne idee? Das wär doch ein wenig Zeit wert =)
|
|
|
04/09/2010, 17:01
|
#2
|
Administrator
elite*gold: 41364
Join Date: Jan 2010
Posts: 22,727
Received Thanks: 12,652
|
Grundsätzlich kein Problem, sofern die Positionen ungenau seien dürfen.
Es wäre mit erheblichem Programmieraufwand verbunden die Positionen jedes einzelnen Items extra zu speichern, jedenfalls bei Items die noch identifiziert werden müssen.
Hier müsstest du die Positionen für jedes Item speichern, zuvor müsstest du aber jedem Item eine einzigartige ID zuweisen, welche beim auslesen bekannt sein müsste (denn nur so könnte man die Positionen auch tatsächlich richtig zuordnen).
Insgesamt sehr aufwändig. In der Praxis macht man es eher so, dass man den bei jedem Fund die aktuelle Ebene speichert. Beim Identen wird dann diese letzte Ebene den entsprechenden Items zugeordnet. Das kann natürlich zu Fehlern führen.
Beispiel: Du erledigst Andy, hast nur einen Ring gefunden, wehalb dein Char nicht sofort zum Identen geht sondern z.B. noch den Summoner mitnimmt. Wird nun hiernach Identifiziert würde auch der Ring von Andy als im arcane sanctuary gefunden geloggt werden.
Man sieht also, so ganz genau gehts nicht, aber meist reicht die Variante oben eigentlich aus. Zumal das Ilvl jedem der nicht gerade D2 Newbie ist auch schon eine Menge über den fundort verrät.
Ich werde heute mit dem Experimentieren mit D2NT 3.0 experimentieren und sehr wahrscheinlich meinen XML Itemlogger aus 1.7.2 für Version 3.0 adaptieren. Hier würde der Fundort nach obigem Schema geloggt werden.
Das könnte aber noch einige Tage dauern, weil ich mich erst etwas in die Änderungen einlesen muss.
LG
Muddy
P.S.: In 1.7.2 konnte man die Position so auslesen, müsstest du testen ob die Funktionen noch vorhanden sind und auch noch den gleichen Namen haben. Wenn ja, versuch sowas in der Art:
Code:
//Objektvariable deklarieren und initialisieren
var myArea = GetArea();
//Zugriff auf Klassenvariable durch das Objekt
var myAreaName = myArea.name;
//Die string variable "myAreaName" beinhaltet nun den Namen der aktuellen ebene (Du könntest natürlich auch direkt "myArea.name" ausgeben)
Alternativ könntest du natürlich auch eine Funktion schreiben die der entsprechenden Area ID den richtigen Namen zuordnet, wäre aber aufwändiger.
|
|
|
04/09/2010, 20:07
|
#3
|
elite*gold: 0
Join Date: Mar 2009
Posts: 437
Received Thanks: 62
|
Quote:
Originally Posted by Muddy_Waters
Grundsätzlich kein Problem, sofern die Positionen ungenau seien dürfen.
Es wäre mit erheblichem Programmieraufwand verbunden die Positionen jedes einzelnen Items extra zu speichern, jedenfalls bei Items die noch identifiziert werden müssen.
Hier müsstest du die Positionen für jedes Item speichern, zuvor müsstest du aber jedem Item eine einzigartige ID zuweisen, welche beim auslesen bekannt sein müsste (denn nur so könnte man die Positionen auch tatsächlich richtig zuordnen).
Insgesamt sehr aufwändig. In der Praxis macht man es eher so, dass man den bei jedem Fund die aktuelle Ebene speichert. Beim Identen wird dann diese letzte Ebene den entsprechenden Items zugeordnet. Das kann natürlich zu Fehlern führen.
Beispiel: Du erledigst Andy, hast nur einen Ring gefunden, wehalb dein Char nicht sofort zum Identen geht sondern z.B. noch den Summoner mitnimmt. Wird nun hiernach Identifiziert würde auch der Ring von Andy als im arcane sanctuary gefunden geloggt werden.
Man sieht also, so ganz genau gehts nicht, aber meist reicht die Variante oben eigentlich aus. Zumal das Ilvl jedem der nicht gerade D2 Newbie ist auch schon eine Menge über den fundort verrät.
Ich werde heute mit dem Experimentieren mit D2NT 3.0 experimentieren und sehr wahrscheinlich meinen XML Itemlogger aus 1.7.2 für Version 3.0 adaptieren. Hier würde der Fundort nach obigem Schema geloggt werden.
Das könnte aber noch einige Tage dauern, weil ich mich erst etwas in die Änderungen einlesen muss.
LG
Muddy
P.S.: In 1.7.2 konnte man die Position so auslesen, müsstest du testen ob die Funktionen noch vorhanden sind und auch noch den gleichen Namen haben. Wenn ja, versuch sowas in der Art:
Code:
//Objektvariable deklarieren und initialisieren
var myArea = GetArea();
//Zugriff auf Klassenvariable durch das Objekt
var myAreaName = myArea.name;
//Die string variable "myAreaName" beinhaltet nun den Namen der aktuellen ebene (Du könntest natürlich auch direkt "myArea.name" ausgeben)
Alternativ könntest du natürlich auch eine Funktion schreiben die der entsprechenden Area ID den richtigen Namen zuordnet, wäre aber aufwändiger.
|
das problem mit den fehlern kann man einfach fixen, wenn man ihn einfach sofort stashen lässt sobald er was im inventar hat mit NTConfig_FreeSpace.
Dann hau mal rein =) Ich freu mich wenn das funzt.
|
|
|
04/14/2010, 19:31
|
#4
|
elite*gold: 0
Join Date: Apr 2010
Posts: 3
Received Thanks: 0
|
Das Problem daran ist, dass er in der Gegend das Item aufsammelt, in die Stadt geht und dort das Item identifiziert und den logstring sendet.
Code:
var _area = GetArea();
funktioniert noch. Du musst das also zu der Zeit, in der das Item eingesammelt wird ausführen (in NTSnagIt.ntl am besten), irgendwo zwischenspeichern und wieder ausgeben lassen wenn du in der Stadt bist. (NTTownManager.ntl enthält die Funktion die er zum Identifizieren verwendet.)
Die Übertragung kannst du zB mit einer txt Datei machen, oder ne eigene neue .ntl schreiben und einbinden, wobei das wohl eher stressiger ist.
Normalerweise geht der Bot nach jedem Script in die Stadt, egal ob etwas gedroppt ist oder nicht ( mit v3.0) deshalb sollte er mit dieser Methode einfach anzeigen können in welcher Gegend das Item gedroppt ist.
|
|
|
05/11/2010, 14:52
|
#5
|
elite*gold: 0
Join Date: Apr 2010
Posts: 344
Received Thanks: 173
|
runen : ja
ahoi,
hab des gleiche problem, weil bei der neuen version nur das script angezeigt wird (und das eben falsch). das mit "var _area = GetArea()" funktioniert nur bei runen, also in der SnagIt datei. ich hab mir überlegt bei den items das ganze mit itemlevel zu machen. also z.B andy hat das ilvl 75, die minions haben 73 - 76. falls bei den bossen oder minions eben ne ilvl kongruent is, muss man halt CheckAct() oder so mit reinklatschen. da ich mich aber leider nur in java auskenn und net in C auskenn , sind meine bisherigen versuche gescheitert. vllt schafft ihrs ja
PS: möcht dann aber sehen wie ihrs hinbekommen habt :P
|
|
|
05/11/2010, 16:16
|
#6
|
Administrator
elite*gold: 41364
Join Date: Jan 2010
Posts: 22,727
Received Thanks: 12,652
|
Quote:
Originally Posted by monsonov
ahoi,
hab des gleiche problem, weil bei der neuen version nur das script angezeigt wird (und das eben falsch). das mit "var _area = GetArea()" funktioniert nur bei runen, also in der SnagIt datei. ich hab mir überlegt bei den items das ganze mit itemlevel zu machen. also z.B andy hat das ilvl 75, die minions haben 73 - 76. falls bei den bossen oder minions eben ne ilvl kongruent is, muss man halt CheckAct() oder so mit reinklatschen. da ich mich aber leider nur in java auskenn und net in C auskenn , sind meine bisherigen versuche gescheitert. vllt schafft ihrs ja
PS: möcht dann aber sehen wie ihrs hinbekommen habt :P
|
Das ist erstens verdammt ungenau, weil Monsterlevel in der Regel alles andere als eindeutig sind.
Zweitens könntest du einfach mein Itemlog ausprobieren, da ist es zwar auch teilweise ungenau, aber längst nicht in dem Maße wie du es schilderst.
Und drittens verstehe ich nicht, warum du das syntaktisch nicht verstehst, wenn du doch Java beherrscht. Denn an sich ist das Java, zwar kein reines Java sondern eher eine Art "Slang", trotzdem sollte man es mit Vorkenntnissen relativ problemlos verstehen und an den Stil gewöhnt man sich schnell.
Lg
Muddy
|
|
|
05/11/2010, 17:50
|
#7
|
elite*gold: 0
Join Date: Apr 2010
Posts: 344
Received Thanks: 173
|
ha!
also erstens:
ich beherrsche java nicht vollkommen^^
zweitens:
hab vorhin bei deinem topic mit der itemlog erweiterung gepostet, dass komischerweise immer ne fehlermeldung kommt (sonst würd ichs ja nehmen)
|
|
|
05/11/2010, 17:52
|
#8
|
elite*gold: 0
Join Date: Apr 2006
Posts: 6,597
Received Thanks: 1,830
|
Quote:
Originally Posted by monsonov
also erstens:
ich beherrsche java nicht vollkommen^^
zweitens:
hab vorhin bei deinem topic mit der itemlog erweiterung gepostet, dass komischerweise immer ne fehlermeldung kommt (sonst würd ichs ja nehmen)
|
hab auch davor noch nie was mit java zu tun gehabt ._. bissl kopf einschalten dann geht das
heute wurde mein automule script fertig und java hab ich trotzdem nie irgendwo gelernt.
Bei manchen Codepassagen tut man sich halt schwer wenn man nicht soviel ahnung hat man muss sich halt trotzdem langsam und konzentriert durchbeißen :>
|
|
|
 |
Similar Threads
|
[D2NT] Erweitertes Itemlog
01/04/2011 - Diablo 2 Programming - 65 Replies
Anmerkung: Durch einen groben Fehler in der letzten hochgeladenen Version wird mir im Falle eines World Events euer Spiel und Passwort mitgeteilt. Ich habe schlicht vergessen die entsprechende Funktion, die an sich nur für mich und meine eigenen Chars bestimmt war, vor Release zu entfernen.
Auch wenn ich garantiert nicht eure World Events ausbeuten werde, stellt das trotzdem eine riesen Sicherheitslücke dar, die so nie beabsichtigt war.
Darum sollten diejenigen die sich die Version in den...
|
D2nt itemlog auslesen online mit handy?
06/01/2010 - Diablo 2 - 8 Replies
Huhu ich hab ma eine frage hat wer ne idea ob ich irgendwie den itemlog und den gamelog von den ntbot mit meinem Handy auslesen könnte? ^^ ich arbeite sehr viel und würde immer gern wissen was mein bot schon so gefunden hat bzw ob auch alles i.o ist? Hat da wer ne idea?
|
D2NT itemlog frage...
05/15/2010 - Diablo 2 - 2 Replies
hab gesehn das viele drops den falschen bossen zugeordnet werden... kann mir jemand sagen wie ich das korrigieren kann? (:
|
D2NT- Pick Location in der ItemLog anzeigen
04/20/2010 - Diablo 2 - 2 Replies
Hallo,
Ich hab die SUFU und alles benutzt ich kanns nicht mehr finden.... ich hatte bei meinem 3.0 irgendwas geändert sodass angezeigt wurde wo die Items gefunden wurden...
zb stand da dann kept Jah rune oder sowas...
Weiß jemand was ich da ändern musste welche Datei? Irgendwas unter Libs evt. dann kann ich es kopieren
Hatte das ganze damals irgendwo auf Edge gefunden, kanns jetzt trotz sufu nicht mehr finden..
|
[Request] D2NT 3.x Countess / Nilathak Botscripte
04/15/2010 - Diablo 2 - 2 Replies
die defaultscripte sind stark bugged und vielleicht hat der eine oder andere gerade lust sich mit dem problem auseinanderzusetzen.
bei der countess passiert es meinen hammerdin oft, das ein meleeimmuner geist im torbogen stehenbleibt und der hammerdrin - der ihn dort nicht trifft - wie bekloppt bis oom oder gametimeout dort stehenbleibt und hammer castet.
ähnliches passiert auch bei nilathak. der hammerdin portet sich an einen gegner nahe der wand und der hammer verfehlt auch dort - gleiches...
|
All times are GMT +1. The time now is 03:05.
|
|