|
You last visited: Today at 03:00
Advertisement
[Release] Muddy's D2NT
Discussion on [Release] Muddy's D2NT within the Diablo 2 Programming forum part of the Diablo 2 category.
03/16/2011, 16:01
|
#886
|
Administrator
elite*gold: 41364
Join Date: Jan 2010
Posts: 22,727
Received Thanks: 12,652
|
Quote:
Originally Posted by DeathFromHeaven
leere MPQ's habens nicht gebracht, obwohl ich mir da nicht ganz sicher bin, da es da probleme mit dem kopieren gab
egal der tipp von Loki hats gebracht!^^ den haken bei no sound rausnehmen!
danke, danke, danke
|
Egal, leere MPQS sind trotzdem praktisch.
Quote:
Originally Posted by jannimanni
moinsen,
wollte mal wissen obs ne möglichkeit gibt den manager/loader in der fenstergröße zu verändern
ist immer so nervig mit dem scrollen druch die runlogs
uuund, gibt es ne möglichkeit, sich auch pickit errors anzeigen zu lassen?
also bei waypoint nicht erreicht, seal nicht erreicht usw. sieht man das ja in den logs, nur bei sowas wie "missing ) in parenthetical" oder "missing ; before statement (was heißt das eigentlich?)", gibts eben keinen eintrag, könntest du da was drehen?
mfg
|
Das mit der Fenstergröße müsste ich mir mal anschauen, ohne weiteres ist es nicht möglich, per Hex Editor vielleicht. Mal schauen wann ich Zeit und vor allem Lust dazu finde.
Und was du da nennst sind zwei völlig verschiedene Dinge.
Das was in den Logs steht sind einfach Funktionen, die aus irgendwelchen Gründen nicht so laufen wie gewollt und daher false zurückgeben.
Die Funktionen für sich sind aber richtig.
Das mit deinen .nips geht nun aber auf Syntaxfehler zurück. Sprich es ist nicht eine Funktion, die nicht so läuft wie sie soll, sondern etwas das schlicht syntaktisch falsch ist.
Das kannst du ein bisschen mit Beiträgen hier im Forum vergleichen.
Ich kann auch hier sprachlich korrekte Dinge von mir geben, die aber inhaltlich völliger Blödsinn sind.
Die Erde ist, wie allseits bekannt, eine Scheibe, auf der irgendwann vor sehr langer Zeit, also etwa 100 Jahre, der erste Mensch von Ausserirdischen ausgesetzt wurde.
In dem Fall wäre die Syntax richtig, mit dem Inhalt kann man aber wenig anfangen.
ich könnte aber beispielsweise auch völlig unlesbares zeug von mir geben und satzzeichen aller art aussen vor lassen odär abär auch noch rächtschreipfäler einbaun damiet alle äxtrah fiel-spas-beimm läsen hahbenn.
Das wiederum wäre ein Beispiel für Syntaxfehler. Der Inhalt ist garnichtmal so unsinnig, aber dadurch, dass ich mich jeder sprachlichen Norm entziehe, macht die Sache extrem schwer bis gar nicht lesbar.
Nun zu deiner Fehlermeldung, ich warne aber schonmal vor, die Erklärung geht etwas ins Detail:
Wie spätestens seit Einführung meines Nip Debug Modes bekannt sein sollte, werden sämliche Zeilen in den nip Files in Äquivalenten JavaScript Code übersetzt.
Das liegt daran, dass es in JavaScript eine Funktion namens eval() gibt, mit der sich Zeichenketten, die JavaScript Code enthalten, ausführen lassen.
Im Grunde bedeutet das, dass ich ein Code ausführen kann, der zum Zeitpunkt der Erstellung meiner Funktion noch gar existiert und erst zur Laufzeit generiert wird.
Natürlich gelten aber für diesen zu evaluierenden Code dieselben Syntaxregeln wie für JavaScript im allgemeinen auch.
Enthalten deine nip Files nun aber Fehler, dann kann es passieren, dass die Umwandlung einer Zeile in nip Syntax nach JavaScript nicht korrekt durchgeführt werden kann.
Die Folge ist dann, dass man einen JavaScript Ausdruck erhält, der für sich unvollständig und somit syntaktisch falsch ist.
Wird dieser JavaScript Code in Zeichenkettenform nun der Funktion eval() übergeben, kann diese den Code nicht ausführen, weil er syntaktisch falsch ist und wirft somit eine Exception.
Die Fehlermeldung stammt dann vom Debugger uns sagt aus, was genau an deiner Zeile syntaktisch falsch ist. In deinem Fall sind das fehlende schließende Klammern bzw. nicht unvollständige Anweisungen.
Lange Rede kurzer Sinn:
Die Ursache deiner Fehler sind Syntaxfehler in den nip Files, die ein korrektes Umwandeln in einen JavaScript Ausdruck verhindern, sodass Ausdrücke entstehen, die nicht mit der JavaScript Syntax konform sind.
Eventuell hilft dir ja  weiter.
Lg
Muddy
|
|
|
03/16/2011, 18:32
|
#887
|
elite*gold: 0
Join Date: Feb 2011
Posts: 44
Received Thanks: 13
|
funzt doch noch net richtig
|
|
|
03/16/2011, 18:51
|
#888
|
elite*gold: 0
Join Date: Feb 2011
Posts: 115
Received Thanks: 2
|
Quote:
Originally Posted by Muddy_Waters
Egal, leere MPQS sind trotzdem praktisch.
Das mit der Fenstergröße müsste ich mir mal anschauen, ohne weiteres ist es nicht möglich, per Hex Editor vielleicht. Mal schauen wann ich Zeit und vor allem Lust dazu finde.
Und was du da nennst sind zwei völlig verschiedene Dinge.
Das was in den Logs steht sind einfach Funktionen, die aus irgendwelchen Gründen nicht so laufen wie gewollt und daher false zurückgeben.
Die Funktionen für sich sind aber richtig.
Das mit deinen .nips geht nun aber auf Syntaxfehler zurück. Sprich es ist nicht eine Funktion, die nicht so läuft wie sie soll, sondern etwas das schlicht syntaktisch falsch ist.
Das kannst du ein bisschen mit Beiträgen hier im Forum vergleichen.
Ich kann auch hier sprachlich korrekte Dinge von mir geben, die aber inhaltlich völliger Blödsinn sind.
Die Erde ist, wie allseits bekannt, eine Scheibe, auf der irgendwann vor sehr langer Zeit, also etwa 100 Jahre, der erste Mensch von Ausserirdischen ausgesetzt wurde.
In dem Fall wäre die Syntax richtig, mit dem Inhalt kann man aber wenig anfangen.
ich könnte aber beispielsweise auch völlig unlesbares zeug von mir geben und satzzeichen aller art aussen vor lassen odär abär auch noch rächtschreipfäler einbaun damiet alle äxtrah fiel-spas-beimm läsen hahbenn.
Das wiederum wäre ein Beispiel für Syntaxfehler. Der Inhalt ist garnichtmal so unsinnig, aber dadurch, dass ich mich jeder sprachlichen Norm entziehe, macht die Sache extrem schwer bis gar nicht lesbar.
Nun zu deiner Fehlermeldung, ich warne aber schonmal vor, die Erklärung geht etwas ins Detail:
Wie spätestens seit Einführung meines Nip Debug Modes bekannt sein sollte, werden sämliche Zeilen in den nip Files in Äquivalenten JavaScript Code übersetzt.
Das liegt daran, dass es in JavaScript eine Funktion namens eval() gibt, mit der sich Zeichenketten, die JavaScript Code enthalten, ausführen lassen.
Im Grunde bedeutet das, dass ich ein Code ausführen kann, der zum Zeitpunkt der Erstellung meiner Funktion noch gar existiert und erst zur Laufzeit generiert wird.
Natürlich gelten aber für diesen zu evaluierenden Code dieselben Syntaxregeln wie für JavaScript im allgemeinen auch.
Enthalten deine nip Files nun aber Fehler, dann kann es passieren, dass die Umwandlung einer Zeile in nip Syntax nach JavaScript nicht korrekt durchgeführt werden kann.
Die Folge ist dann, dass man einen JavaScript Ausdruck erhält, der für sich unvollständig und somit syntaktisch falsch ist.
Wird dieser JavaScript Code in Zeichenkettenform nun der Funktion eval() übergeben, kann diese den Code nicht ausführen, weil er syntaktisch falsch ist und wirft somit eine Exception.
Die Fehlermeldung stammt dann vom Debugger uns sagt aus, was genau an deiner Zeile syntaktisch falsch ist. In deinem Fall sind das fehlende schließende Klammern bzw. nicht unvollständige Anweisungen.
Lange Rede kurzer Sinn:
Die Ursache deiner Fehler sind Syntaxfehler in den nip Files, die ein korrektes Umwandeln in einen JavaScript Ausdruck verhindern, sodass Ausdrücke entstehen, die nicht mit der JavaScript Syntax konform sind.
Eventuell hilft dir ja  weiter.
Lg
Muddy
|
sehr gut erklärt, so versteh sogar ich das ganze ^^
dann kann ich mich ja erstmal auf die suche begeben nach dem fehler, kann ja fast alles sein :O
das mit dem nip checker hab ich schonmal versuch, irgendwie will der bei mir nicht laufen.
das mit der fenstergröße wär cool, variabel zum selber groß- und kleinziehen geht dann auch oder?
edit: jetzt läuft der nipchecker, zeigt mir nix an :/ scheint aber an meiner charms.nip zu liegen.
gibts eigentlich nur fehlermeldungen bei aktiven einträgen in den .nip files oder auch bei auskommentierten?
|
|
|
03/16/2011, 18:53
|
#889
|
elite*gold: 0
Join Date: Jan 2011
Posts: 35
Received Thanks: 4
|
Frage zur Magic_rare.nip, hab da einiges ausgestellt und beim PC-Skiller diesen
Code:
[Name] == GrandCharm && [Quality] == magic # [[COLOR="Red"]PaliCombat[/COLOR]SkillTab] == 1 // && ([MaxHP] >= 20 || [FHR] == 12 || [FRW] == 7 || [ItemGoldBonus] >= 30)
eintrag gefunden.
Ist PaliCombat genau so richtig? oder muss dort ein a statt dem i stehen? Kann ja sein des es genau so gewollt ist, dann war meine frage natürlich für die Katz
LG
|
|
|
03/16/2011, 19:19
|
#890
|
Administrator
elite*gold: 41364
Join Date: Jan 2010
Posts: 22,727
Received Thanks: 12,652
|
Quote:
Originally Posted by jannimanni
sehr gut erklärt, so versteh sogar ich das ganze ^^
dann kann ich mich ja erstmal auf die suche begeben nach dem fehler, kann ja fast alles sein :O
das mit dem nip checker hab ich schonmal versuch, irgendwie will der bei mir nicht laufen.
das mit der fenstergröße wär cool, variabel zum selber groß- und kleinziehen geht dann auch oder? 
|
Ich weiss noch nichtmal, ob das überhaupt machbar ist, alle Änderungen müssen im Binärcode durchgeführt werden.
Bei vorhandenem Quellcode könnte man sogar die Buttons pink machen.
Da wir diesen aber nicht haben, würde ich die Erwartungen eher runterschreiben.
Quote:
Originally Posted by Mystery^_X
Frage zur Magic_rare.nip, hab da einiges ausgestellt und beim PC-Skiller diesen
Code:
[Name] == GrandCharm && [Quality] == magic # [[COLOR=Red]PaliCombat[/COLOR]SkillTab] == 1 // && ([MaxHP] >= 20 || [FHR] == 12 || [FRW] == 7 || [ItemGoldBonus] >= 30)
eintrag gefunden.
Ist PaliCombat genau so richtig? oder muss dort ein a statt dem i stehen? Kann ja sein des es genau so gewollt ist, dann war meine frage natürlich für die Katz
LG
|
Ich bin mal so dreist und beantworte das mit einem Bild:
Solltest vielleicht auch einfach mal  schauen, wenn du was die Begriffe angeht, unsicher bist.
Lg
Muddy
|
|
|
03/16/2011, 22:22
|
#891
|
elite*gold: 0
Join Date: Aug 2009
Posts: 435
Received Thanks: 159
|
also das mit dem größeren D2NT-Fenster fände ich auch klasse^^
ansonsten kann ich schonmal sagen dass aufjedenfall was in dem pitskript ist, was zu restarts führt, hab mal eine sorc unter anderem pit laufen lassen die andere nicht, ich denke auch im Mausoleum/Ancientstunnel kommt es hin und wieder zu restarts, eben alles was ein wenig länger dauert, und wo mehrere Gegner erledigt werden, ansonsten nix ungewöhnliches...
könnte man vlt etwas einbauen, dass mir loggt was vor dem restart für ein skript lief?
meine Idee wäre, da ja nach jedem skript gesagt wird, dass so und so viel Gold eingesammelt wurde, dass man dass mitloggt und dann verglichen wird, wo ein abbruch kam... vlt könnte ich dir dabei ja auch helfen, wenns möglich ist...^^
|
|
|
03/16/2011, 23:43
|
#892
|
elite*gold: 0
Join Date: Jul 2006
Posts: 469
Received Thanks: 235
|
Quote:
Originally Posted by DeathFromHeaven
könnte man vlt etwas einbauen, dass mir loggt was vor dem restart für ein skript lief?
meine Idee wäre, da ja nach jedem skript gesagt wird, dass so und so viel Gold eingesammelt wurde, dass man dass mitloggt und dann verglichen wird, wo ein abbruch kam... vlt könnte ich dir dabei ja auch helfen, wenns möglich ist...^^
|
Das hab ich mir auch schon überlegt, ich hab bei mir eingebaut, dass er das aktuelle Skript immer ins Log schreibt, nur ist das etwas gar unübersichtlich, da dann noch die 8 Restarts auf 200 Runs zu finden.
Werd wohl einfach statt in das Common Log die Ausgabe in ein File machen, da dann jeweils noch ein Keyword wie "<-- Start -->"reinschreiben wenn er startet und schon sieht man was das letzte Skript vor dem (Re-)start war. Und wenn's hoch kommt verseh ich das alles noch mit Timetags, damit man auch gleich ne Zeitabfolge hat.
Jetzt muss ich nur noch Mal dazu kommen das zu basteln
|
|
|
03/16/2011, 23:53
|
#893
|
elite*gold: 0
Join Date: Aug 2009
Posts: 435
Received Thanks: 159
|
könntest du mir das, was du hast schonmal zukommen lassen, weil bei mir sind es ja keine 200 runs sondern meistens eher 50-100 und da geht das dann schon :P
wäre dir sehr dankbar, Timetag wäre natürlich noch genial, aber arbeite erstmal lieber an dem automule weiter, oder is das schon fertig? :P
XD
|
|
|
03/17/2011, 00:13
|
#894
|
elite*gold: 0
Join Date: Jul 2006
Posts: 469
Received Thanks: 235
|
Zum AutoMule kann ich nichts sagen, was ich nicht schon gesagt hab. Bei mir läufts, alles andere wird die Zeit zeigen.
Hab die Funktion doch rasch geschrieben:
Code:
function DG_WriteRestartLog(_string)
/* Function Description
* Writes _string to the RestartLog
* -----------------
* Written by Ldevil
* Updated March '11
*/
{
var _dateString = new Date().toLocaleFormat("%m/%d/%y-%H:%M:%S");
var filehandle = FileOpen("Logs/" + me.account + "_RestartLog.txt", 2);
if(filehandle)
{
filehandle.WriteLine("["+_dateString + "] "+_string);
filehandle.Close();
}
}
Die Funktion packst du am besten ans Ende einer Lib oder dann sowohl in die NTBot.ntj als auch die MWBotGame.ntj
Dann einfach an den richtigen Stellen das hier einfügen:
Code:
DG_WriteRestartLog(MWConfig_Script[_MWBG_CurScriptIndex][0]);
(Bei mir Zeile 131 und 469 in der MWBotGame.ntj)
und sowas in der Art zu Beginn der NTBot.ntj
Code:
DG_WriteRestartLog("<----- (Re-)Start ----->");
Edit: Das Log sieht dann etwa so aus:
Code:
[03/17/11-00:04:01] <----- (Re-)Start ----->
[03/17/11-00:04:27] NTAndariel.ntj
[03/17/11-00:05:22] NTCountess.ntj
[03/17/11-00:06:30] NTAncientTunnels.ntj
[03/17/11-00:10:37] NTSummoner.ntj
|
|
|
03/17/2011, 00:32
|
#895
|
Administrator
elite*gold: 41364
Join Date: Jan 2010
Posts: 22,727
Received Thanks: 12,652
|
Um das in irgendeine library zu packen, sollte die Funktion aber nach Möglichkeit ein Präfix haben, dass in irgendeiner Form auf die library schließen lässt.
Denn ansonsten geht direkt das Gesuche los und das wollen wir schließlich nicht.
Ansonsten finde ich deine Bezeichner komisch, aber du sagtest ja schon, dass du was das angeht kein festes System hast, insofern gehe ich da auch gar nicht weiter drauf ein.
Sowas ähnliches hatte ich übrigens zu Debug Zwecken auch schon im Einsatz, habe es dann aber wieder entfernt, nachdem ich die nötigen Informationen hatte.
Ansonsten stelle ich fest, dass die Restart Quote bei mir relativ gut aussieht.
Obwohl ich gestern festgestellt habe, dass der Stadtbesuch zum Mana holen in ungünstigen Fällen eine Endlosrekursion auslösen kann. 
Den Teil werde ich mir also auf alle Fälle nochmal anschauen.
Zu tun gibt es jedenfalls noch genug.
Mit der Automule Sache müsste ich mich auch nochmal weiter auseinadersetzen, aber irgendwie bin ich derzeit doch etwas mit dem Aufbau der D2NT API Referenz beschäftigt.
Womit wir beim Thema sind: wenn sich jemand zutraut dazu was beizutragen, ihr seid herzlich eingeladen.
Lg
Muddy
|
|
|
03/17/2011, 02:05
|
#896
|
elite*gold: 0
Join Date: Aug 2009
Posts: 435
Received Thanks: 159
|
so habs jetzt soweit, dass es mitloggt, mal sehen was da morgen früh so bei rauskommt^^
Danke nochmal dafür! Hoffe die Restarts damit reduzieren zu können^^
Edit:
So, es liegt wahrscheinlich wirklich an der Lack of Mana geschichte, denn ich hab nur in den tunnels oder im Mauso, also dass was etwas länger dauert und wo schon mal das Mana ausgehen kann, Restarts...
ach ja und auch das CowPortal wird des öfteren nicht gefunden
werd mich mal um mehr Mana bemühen, muss wohl ein 2. SoJ her...
edit2: aber ees hält sich in grenzen mit den restarts, 32/7 und 29/4;
also es geht^^
|
|
|
03/17/2011, 11:03
|
#897
|
elite*gold: 0
Join Date: Feb 2011
Posts: 115
Received Thanks: 2
|
Quote:
Originally Posted by Muddy_Waters
...Obwohl ich gestern festgestellt habe, dass der Stadtbesuch zum Mana holen in ungünstigen Fällen eine Endlosrekursion auslösen kann. 
Den Teil werde ich mir also auf alle Fälle nochmal anschauen.
|
Das erklärt dann sicher warum mein barb so viele restarts hat (bei 69 runs ~15 restarts), werd mir dann wohl mal ein infinity zulegen müssen
was is eignetlich die API geschichte an der du arbeitest muddy?
Also: was wird das für uns benutzer für neu funktionen geben?
mfg jan
|
|
|
03/17/2011, 11:15
|
#898
|
elite*gold: 0
Join Date: Aug 2009
Posts: 435
Received Thanks: 159
|
gar keine neue Funktionen denke ich, sondern eher eine Aufschlüsselung der Funktionen und ähliches der D2NT-Api, wenn ich es richtig verstanden habe^^
|
|
|
03/17/2011, 12:13
|
#899
|
elite*gold: 0
Join Date: Jan 2009
Posts: 7,310
Received Thanks: 2,205
|
Quote:
Das erklärt dann sicher warum mein barb so viele restarts hat (bei 69 runs ~15 restarts), werd mir dann wohl mal ein infinity zulegen müssen
|
wäre ein insight nicht besser?
Quote:
|
ach ja und auch das CowPortal wird des öfteren nicht gefunden
|
ich weis nicht ob muddy da delays eingebaut hat wenns ans cuben geht.. bein rein.. buch rein.. cuben.. ab ins tp... das geht oft zu schnell und gibt nen bug.
(wenn er nicht ins rote portal kann... (kann er danach noch wp´s anklicken? wenn nein, dann liegts an fehlenden delays.)
btw. beim sternenlooper hat das abhilfe geschafft.
|
|
|
03/17/2011, 13:22
|
#900
|
elite*gold: 0
Join Date: Aug 2009
Posts: 435
Received Thanks: 159
|
delay war drin, habs mal erhöht mal sehen obs was bringt, aber danke dir^^
|
|
|
 |
|
Similar Threads
|
[Release] D2NT 3.1 1.13c
07/17/2016 - Diablo 2 - 91 Replies
hi,
hab eben den d2nt3.1 gefunden. ein neues baba script is dabei.
release thread eon
D2NT3.1
|
[Realease] Muddy's Waypoint Catcher
08/21/2013 - Diablo 2 Programming - 46 Replies
Moin zusammen,
hier mal die erste Release Version eines kleinen Scripts genannt Waypoint Catcher. Das ganze ist jetzt nichtmal 24h alt, dementsprechend sind vermutlich noch einige Bugs vorhanden. Hinweise dazu nehme ich gerne entgegen. ;)
Features:
- Suchen sämtlicher Wegpunkte mit Ausnahme, wobei in Akt ein durch Probleme im Jail Bereich nach dem Wegpunkt Outer Cloister abgebrochen wird
- Wahlweise auch mit TP an jedem gefundenen Wp, sodass man damit auch anderen (nicht-Bots) die...
|
[D2NT] Long Dia Release
05/10/2011 - Diablo 2 Programming - 28 Replies
Ein kleines Script für diablo, es startet beim eingang macht ein tp cleart den weg zum star macht am star noch ein tp dann läufts wie das normale nur cleart es schöner :)
hoffe euch gefällts ich habs noch nicht wirklich getestet (2-3 runs) bugs können gerne hier gepostet werden verbesserungs vorschläge auch :D
installation:
1.)Script in den Bot ordner kopieren
2.)Script im editor oder vergleichbaren öffnen
3.) Msg´s anpassen (ist nicht schwer)
4.) in der char config die zeile...
|
D2NT 3.0 Pickit release
10/22/2010 - Diablo 2 - 77 Replies
edit
|
Muddy's D2NT Help
07/29/2010 - Diablo 2 - 3 Replies
hi i just started to use the bot it work's great.
how do i set up the skill's i use on my Sorc and pick up itme's?
.....
if you reply to this post please use english
|
All times are GMT +1. The time now is 03:01.
|
|