[Release] Muddy's D2NT

06/21/2010 19:55 GoA_TrancE#46
This modification is AMAZING !! today i got Annihilus while ingame waiting 5hours without drop (with function loop (nice1))
Is it possible to make a new thread with english please cuz i dont understand German
THANKS ALOT !!
06/21/2010 22:29 Muddy Waters#47
Quote:
Originally Posted by GoA_TrancE View Post
This modification is AMAZING !! today i got Annihilus while ingame waiting 5hours without drop (with function loop (nice1))
Is it possible to make a new thread with english please cuz i dont understand German
THANKS ALOT !!
Nice one. :)

Since this is a german board, I don't see any necessity of bringing up another topic in english. All comments and instructions given in the char configs are already in english. I might however, write a short readme explaining the basic functions, but I'm relatively busy at the moment, so this might take a while.

If you got any further specific questions, feel free to state them in this topic. I'll do my best to answer each and every question asked whether it is in english or german.

Remember:
[Only registered and activated users can see links. Click Here To Register...]

Regards
Muddy
06/21/2010 22:47 Diablofarmer#48
muddy ?
ich raff das mit der Anzeige von picked items nich, eigentlich muss man doch nur
" NTC_SendMsgToScript("NTBotGame.ntj", "SET_PICKED_1"); " in die snagit function reinhauen oder hab habsch da noch was was übersehn ?
06/21/2010 23:20 lortl#49
Hey

Habe nochmals bischen am Ntbotgame Script rumgebastelt :)

Wollte noch ne Exp/min Anzeige und eine für die Zeit bis zum lvl up einbauen...
Das erste hat auch wunderbar funktioniert, beim zweiten happerts noch.

Code:
OutputString += "\nÿc0Experience per minute:ÿc8 " + parseInt((me.GetStat(13)-GameStartExp)/(parseInt((GetTickCount()-GameStartTick)/1000))*60);
OutputString += "\nÿc0Time to Levelup:ÿc8 " + NT_GetRequiredExp((me.GetStat(12)+1)-me.GetStat(13))/(parseInt((me.GetStat(13)-GameStartExp)/(parseInt((GetTickCount()-GameStartTick)/1000))*60)).toFixed(0) + " m ";
OutputString += "\nÿc0Time to Levelup:ÿc8 " + NT_GetRequiredExp((me.GetStat(12)+1)-me.GetStat(13))/(parseInt((me.GetStat(13)-GameStartExp)/(parseInt((GetTickCount()-GameStartTick)/1000))*60*60)).toFixed(0) + "h : " + NT_GetRequiredExp((me.GetStat(12)+1)-me.GetStat(13))/parseInt((me.GetStat(13)-GameStartExp)/(parseInt((GetTickCount()-GameStartTick)/1000))*60*60%24).toFixed(0) + " m";
Der erste Output gibt einfach die Exp/min aus.
Der zweite und dritte einerseits wie viele Minuten und andererseits wie viele Stunden + Minuten....Leider klappen diese beiden irgendwie nicht. Habs jetzt fast den ganzen Tag versucht hinzubekommen.
Meine Gedanke war, die noch zu erforderliche Exp einfach durch die Exp/min zu dividieren und dann die Zeit zu erhalten. Aber das scheitert total^^
Für die Stunden und Minuten habe ich das gleiche gemacht und einfach mal noch mit Modulo gearbeitet...

Bin für Tipps empfangsbereit :D
06/21/2010 23:35 GoA_TrancE#50
is it possible to make some transfering script when char is full to wisp some mule and mule makes game and takes items?
i have a korean version of D2nt that has it but i dont understand korean :)
if u need it just PM me there is alot of scripts
06/22/2010 15:23 jAmMyX#51
noch ne Idee :) Ist es möglich, die soj counts im Itemlog anzeigen zu lassen und nicht im Common Log? Ich hasse es zu switchen :-P
06/22/2010 20:33 Muddy Waters#52
Quote:
Originally Posted by Diablofarmer View Post
muddy ?
ich raff das mit der Anzeige von picked items nich, eigentlich muss man doch nur
" NTC_SendMsgToScript("NTBotGame.ntj", "SET_PICKED_1"); " in die snagit function reinhauen oder hab habsch da noch was was übersehn ?
Ja, jedenfalls sofern deine NTBotGame.ntj so aufgebaut ist, dass sie mit diesen Nachrichten umgehen bzw. auswerten kann

Quote:
Originally Posted by lortl View Post
Hey

Habe nochmals bischen am Ntbotgame Script rumgebastelt :)

Wollte noch ne Exp/min Anzeige und eine für die Zeit bis zum lvl up einbauen...
Das erste hat auch wunderbar funktioniert, beim zweiten happerts noch.

Code:
OutputString += "\nÿc0Experience per minute:ÿc8 " +  parseInt((me.GetStat(13)-GameStartExp)/(parseInt((GetTickCount()-GameStartTick)/1000))*60);
OutputString += "\nÿc0Time to Levelup:ÿc8 " +  NT_GetRequiredExp((me.GetStat(12)+1)-me.GetStat(13))/(parseInt((me.GetStat(13)-GameStartExp)/(parseInt((GetTickCount()-GameStartTick)/1000))*60)).toFixed(0)  + " m ";
OutputString += "\nÿc0Time to Levelup:ÿc8 " +  NT_GetRequiredExp((me.GetStat(12)+1)-me.GetStat(13))/(parseInt((me.GetStat(13)-GameStartExp)/(parseInt((GetTickCount()-GameStartTick)/1000))*60*60)).toFixed(0)  + "h : " +  NT_GetRequiredExp((me.GetStat(12)+1)-me.GetStat(13))/parseInt((me.GetStat(13)-GameStartExp)/(parseInt((GetTickCount()-GameStartTick)/1000))*60*60%24).toFixed(0)  + " m";
Der erste Output gibt einfach die Exp/min aus.
Der zweite und dritte einerseits wie viele Minuten und andererseits wie viele Stunden + Minuten....Leider klappen diese beiden irgendwie nicht. Habs jetzt fast den ganzen Tag versucht hinzubekommen.
Meine Gedanke war, die noch zu erforderliche Exp einfach durch die Exp/min zu dividieren und dann die Zeit zu erhalten. Aber das scheitert total^^
Für die Stunden und Minuten habe ich das gleiche gemacht und einfach mal noch mit Modulo gearbeitet...

Bin für Tipps empfangsbereit :D
Ich habe es nur mal kurz überflogen, da ich gerade nicht wirklich Zeit habe.
Anmerkungen:
Die Zeit Umrechnungen scheinen teilweise etwas komisch.
Dann castest du teilweise nach Integer, obwohl zu castenden Ausdrücke schon vom Datentyp Integer sind.
Und du liest über me.GetStat(13) die Exp aus. Letzteres geht gar nicht, weil der Wert nicht der Exp entspricht, die du tatsächlich hast. Du kannst damit nur Exp Differenzen auswerten, indem du den Wert zu einem Zeitpunkt A speicherst und davon dann einen Wert zu einem späteren Zeitpunkt B subtrahierst, für absolute Werte ist das nicht zu gebrauchen.

Quote:
Originally Posted by GoA_TrancE View Post
is it possible to make some transfering script when char is full to wisp some mule and mule makes game and takes items?
i have a korean version of D2nt that has it but i dont understand korean :)
if u need it just PM me there is alot of scripts
It most likely is possible, though I won't do it, cause I don't like the idea of adding scripts I didn't write myself. This would require me to familiarize myself with these scripts in order to maintain a decent overview, which leads to more work for me...

If you need any scripts from other authors, just add them yourself. This should mostly work out pretty well, since all functions of the basic D2NT are still included, they are just partly extended.

Quote:
Originally Posted by jAmMyX View Post
noch ne Idee :) Ist es möglich, die soj counts im Itemlog anzeigen zu lassen und nicht im Common Log? Ich hasse es zu switchen :-P
Joa, ist möglich, das habe ich nicht hinzugefügt, weil ich es selber extrem unsortiert finde und deshalb nicht mag.
Du musst nur die Konstante in den Log Aufrufen ändern, also:
Code:
NTC_SendLogToOOG(NTC_LOG_COMMON, "...");
in
Code:
NTC_SendLogToOOG(NTC_LOG_ITEM, "...");
Die Stellen findest du in der NTBotGame.ntj, sollten relativ leicht zu finden sein. :)

Lg
Muddy
06/22/2010 21:51 lortl#53
Hm, me.Getstate(13) soll aber angeblich die aktuelle Erfahrung des Chars ausgeben...(steht jedenfalls so in der stats.txt). Also habe ich ja von der aktuellen Exp die Startexp subtrahiert.
Komisch ist einfach, dass der erste Output, den ich gemacht habe, einwandfrei funktioniert. Bei den anderen beiden, habe ich ja nur noch etwas mehr "gerechnet" und keine neuen Ausdrücke verwendet, und trotzdem funktionierts nicht.
06/22/2010 23:49 Diablofarmer#54
Quote:
Originally Posted by Muddy_Waters View Post
Ja, jedenfalls sofern deine NTBotGame.ntj so aufgebaut ist, dass sie mit diesen Nachrichten umgehen bzw. auswerten kann
ja klar die setter konnten empfangen und auch verarbeitet werden :)
habs nun hinbekommen , vielen dank nochmal ... :rolleyes:
du solltest wirklich tutor werden :D
06/23/2010 15:33 Muddy Waters#55
Quote:
Originally Posted by lortl View Post
Hm, me.Getstate(13) soll aber angeblich die aktuelle Erfahrung des Chars ausgeben...(steht jedenfalls so in der stats.txt). Also habe ich ja von der aktuellen Exp die Startexp subtrahiert.
Komisch ist einfach, dass der erste Output, den ich gemacht habe, einwandfrei funktioniert. Bei den anderen beiden, habe ich ja nur noch etwas mehr "gerechnet" und keine neuen Ausdrücke verwendet, und trotzdem funktionierts nicht.
Und weil das in einer .txt steht glaubst du das? Also ich glaube nur, was ich selber geprüft habe, bei allem anderen bin ich vorsichtig mit meinen Annahmen. ;)

Lass es dir doch einfach mal ausgeben, dann wirst du eine gewisse Diskrepanz zwischen dem angezeigten Wert und dem Wert, der in deinem Charakter Fenster steht, bemerken.
Ausserdem rufst du meine NT_GetRequiredExp() Funktion teilweise mit falschen Parametern auf.Erwartet wird hier ein ein Level zwischen 2 und 99, also ein Integer Wert, zurückgegeben wird dann die Erfahrung, die für das übergebene Level benötigt wird.
Aber mach erstmal eine Testausgabe, damit du selber siehst, dass me.GetStat(13) nicht das zurückgibt was du denkst. ;)

Quote:
Originally Posted by Diablofarmer View Post
ja klar die setter konnten empfangen und auch verarbeitet werden :)
habs nun hinbekommen , vielen dank nochmal ... :rolleyes:
du solltest wirklich tutor werden :D
Geht doch, freut mich, dass es klappt. :)

Lg
Muddy
06/23/2010 17:02 lortl#56
Quote:
Originally Posted by Muddy_Waters View Post
Ausserdem rufst du meine NT_GetRequiredExp() Funktion teilweise mit falschen Parametern auf.Erwartet wird hier ein ein Level zwischen 2 und 99, also ein Integer Wert, zurückgegeben wird dann die Erfahrung, die für das übergebene Level benötigt wird.
Das könnte es gewesen sein, ich rufe da zwar mit getstate(12) das lvl ab, aber ich subtrahiere davon die Erfahrung^^ ja das macht nicht so viel Sinn:P
danke für den Hinweis, werde es nachher nochmals versuchen, es richtig zu machen.
06/23/2010 19:04 GoA_TrancE#57
Ok now understand but can be possible to put ONLY Looping script in .ntj file without soj counter and waiting time just looping from act1 to act5 every 60secs
06/23/2010 19:43 Muddy Waters#58
Quote:
Originally Posted by GoA_TrancE View Post
Ok now understand but can be possible to put ONLY Looping script in .ntj file without soj counter and waiting time just looping from act1 to act5 every 60secs
To be honest: I totally don't get the point of that sentence. Or is it even a question? I just don't get it... :rolleyes:

Could you be a bit more precise and describe your point/question in detail?

Regards
Muddy
06/23/2010 21:56 GoA_TrancE#59
i mean just looping script that enters in wisped game by some1 ;)
06/28/2010 20:27 Muddy Waters#60
Quote:
Originally Posted by GoA_TrancE View Post
i mean just looping script that enters in wisped game by some1 ;)
Please excuse the late reply. :rolleyes:
I am pretty busy at the moment which will probably last for the next few weeks, so I most likely cannot reply instantly.

The Anti-Idle-Loop can be extracted into a new script rather easily and be run just like any other script. However, this whole wisp and joining thingy is slightly more complicated as it would basically require a lobby thread which supports joining games.
So if you somehow manage to join your desired game using some of the already published scripts, it's really just running the Anti-Idle-Loop like you'd run Baal or Diablo or any other script.
I might include such a script with the next update. I can't tell when this update will be ready though, due to lack of spare time as mentioned earlier.

If you need this more quickly, you gonna have to do it yourself. :p

Regards
Muddy