|
You last visited: Today at 16:36
Advertisement
[Release] Muddy's D2NT
Discussion on [Release] Muddy's D2NT within the Diablo 2 Programming forum part of the Diablo 2 category.
09/04/2010, 22:27
|
#181
|
elite*gold: 0
Join Date: Jul 2006
Posts: 469
Received Thanks: 235
|
Quote:
Originally Posted by Buchs
jeah mein neuer Goldbarb läuft - alles tiptop und dickes THX!
allerdings...
frag ich mich wie der gute craften will
ein paar Zutaten sammelt er ja entsprechend der Pickit ein, auch mit MaxAmount etc, das was dann z.B. zum caster-craft amu fehlt ist ein Juwel und ein Amu.
nun nimmt der gute aber sowas nunmal nur mit wenns Top ist... vercraftet der die Dinger dann? bzw. wo bekommt er die fehlenden Zutaten her? (in deinen Pickits steht ja nichts in der Richtung)
|
Wenn du
Code:
NTConfig_Cubing = [COLOR="Green"]true[/COLOR];
gesetzt hast, dann nimmer er alle Zutaten selber mit, du brauchst die in den Nip Files nicht aktiviert zu haben. Dabei nimmt er aber gewisse Sachen erst auf, wenn er den Rest zusammen hat - du brauchst nur das Resultat auch in der Pickit zu haben, sonst wirft er das weg ^^
Ich hatte erst die bugged 3 sox Rüstung nicht in der Pickit und promt hat er eine verkauft mit 1,2k deff -.-
Das mit dem selber aufnehmen klappt sicher mit den Craft Sachen, ob's bei allen Cube Rezepten geht bezweifle ich, v.a. so Items Upgraden und so... da soll er ja genau die Upgraden die du mit nehmen willst und beim einen sind das vielleicht nur perfekte eth Titans und beim anderen aber auch ganz normale
|
|
|
09/04/2010, 22:40
|
#182
|
Administrator
elite*gold: 41624
Join Date: Jan 2010
Posts: 22,728
Received Thanks: 12,654
|
Quote:
Originally Posted by Buchs
jeah mein neuer Goldbarb läuft - alles tiptop und dickes THX!
allerdings...
frag ich mich wie der gute craften will
ein paar Zutaten sammelt er ja entsprechend der Pickit ein, auch mit MaxAmount etc, das was dann z.B. zum caster-craft amu fehlt ist ein Juwel und ein Amu.
nun nimmt der gute aber sowas nunmal nur mit wenns Top ist... vercraftet der die Dinger dann? bzw. wo bekommt er die fehlenden Zutaten her? (in deinen Pickits steht ja nichts in der Richtung)
|
Nimm auf alle Fälle auch die geupdatete Version, sobald sie dann draußen ist.
Die FindItem Implementierung ist dort etwas besser als in der alten.
Wenn der Char neu ist: Wie steht es denn um sein Level?
Amulette zum Craften werden zwar über den Cubing Algorithmus gepickt; soll heissen, hast du das Rezept aktiviert, werden sämtliche Zutaten automatisch gesammelt.
Zutaten wie Amulette werden aber erst dann mitgenommen, wenn das resultierende Affixlevel beim Craften hoch genug ist.
Das resultierende Affixlevel ergibt sich bekanntermaßen aus der Summe aus halbem Itemlevel und halben Charlevel.
Für Amulette liegt das es - sinnvollerweise - bei 90.
Wenn dein Char Level also noch relativ gering ist, kann es durchaus sein, dass du deshalb einfach noch nicht das benötigte Ziel-Affixlevel erreichst.
In dem Fall heisst es einfach abwarten und Tee trinken, Erfahrung bekommst du auch in solo games und auf über Level 90 bist du schnell.
Ich würde mich deshalb in den .nip Files etwas zurückhalten, für die üblichen Craft Rezepte musst du dort eigentlich nichts aktivieren.
Es bietet sich meiner Erfahrung nach aber an, eine - natürlich in der Menge Begrenzte - Anzahl an benötigten Runen und Gems einzupacken, denn ansonsten wird nur das aufgehoben, was noch zum Rezept fehlt.
Und wenn dann Beispielsweise schon eine RAL da ist, wird er eine weitere RAL am Boden einfach liegen lassen und nicht schonmal fürs nächste Rezept aufheben.
Darum macht es für dich auch den Eindruck, als würde der Char die Zutaten nicht selber suchen; das passiert nämlich erst, wenn das zentrale Item des jeweiligen Rezepts vorhanden ist, in deinem Fall das Amulett.
Achja, bezüglich der Frage zu den Juwelen:
Der Bot verwendet keine Juewele, die durch deine .nip Files abgedeckt sind.
Gute Juwele bleiben also in der Truhe liegen und werden nicht zum Cuben verwendet.
Lg
Muddy
@Idevil
Ich würde eher vermuten, dass das auch mit anderen Rezepten geht.
Wenn du mal Zeit hast, befasse dich mal eine Runde mit dem Cubing Algorithmus, der ist ziemlich elegant gemacht, ich hatte doch einige Aha-Erlebnisse, als ich das nachvollzogen habe.
|
|
|
09/04/2010, 23:11
|
#183
|
elite*gold: 0
Join Date: Aug 2010
Posts: 91
Received Thanks: 4
|
Quote:
Originally Posted by Muddy_Waters
Erstmal danke für die nette Bewertung. 
Die Ordnung liegt mir in der Tat sehr am Herzen, auch wenn ich was das angeht leider auch immer wieder mal gegen meine eigenen Regeln verstoße und schlecht lesbaren Code schreibe. 
Ich tüftle gerade am Update, da ja in der letzten Version doch noch einige Problemchen drin waren. Allerdings werde ich jetzt erstmal die Beschreibungen anpassen und alles ganz in Ruhe machen, kann also doch eher morgen werden.
Zu 1.: In welchem Kontext meinst du das? Unterwegs ist das natürlich schlecht, da die Funktion ja gerade dazu gedacht ist, das Inventar möglichst frei zu halten.
Du könntest allerdings einfach die maximale Anzahl an Items erhöhen, ab der der Identifizierungsvorgang unterwegs gestartet wird.
Wenn dort z.B. 3 - 4 steht, erhöht das die Wahrscheinlichkeit, dass der Bot noch items über hat, die er dann ganz normal beim nächstbesten Händler verkauft.
Oder meinst du doch eher bei Cain?
In dem Fall würde ich mir was überlegen.
Zu 2.: Die Funktion steckt prinzipiell in der Teleport Funktion drin, ist allerdings momentan auf Barbaren begrenzt, weil ich mit denen das konkrete Problem hatte.
Ich werde das gleich auf alle Chars ausweiten, ist ja schnell gemacht.
Im kommenden Update wird das dann für alle verfügbaren Charakterklassen funktionieren.
Lg
Muddy
|
zu 1.
es läuft so : ein script ist durch -> town -> cain -> inventar öffnen -> alles was nicht in den nips steht landet auf dem boden -> händler um pötte zu kaufen und/oder heal zu bekommen.
also das er ein item tatsächlich verkauft hab ich noch nicht erlebt
zu 2.
genial! 
da freu ich mich schon nicht mehr mit schneckentempo durchs mausoleum zu müssen weil ich nur eine reihe mana pötte dabei hab
eine sache noch, ich nutze sehr gern das XML itemlog und habs eigentlich immer offen und auf auto reload, das einzige problem ist das die items nach jedem run aus dem bereich "show kept" rausfliegen, soll das so sein? macht das ganze log irgendwie sinnlos
ach und ich glaube einen bug im itemlog gefunden zu haben und zwar hat er ein item eingetragen und damit die XML zerschossen indem das item 2 zeilen hatte und somit kein </item> am ende stand, nach manueller korrektur gehts dann natürlich wieder
ich seh gerade das er das ständig macht ^^ das ist natürlich nicht so schön
jetzt hat er z.B. gerade wieder die XML zerschossen mit folgenden zeilen
Code:
<item id="1283633471735" char="MuddyWatersFTW :)" time="Sat 09/04/10 22:51:11" quality="6" ethereal="0" mode="1" name="Wraith Chant" ilvl="86" location="Nihlathak's Temple" type="17" typedesc="War Scepter">War Scepter|One-Hand Damage: 12 to 21|Durability: 64 of 70|Required Strength: 55|Required Level: 41|Mace Class - Very Fast Attack Speed|+20% Increased Attack Speed|+24% Enhanced Damage|+133 to Attack Rating|7% Mana stolen per hit|+2 to Meditation (Paladin Only)|+10 to Energy|Cold Resist +22%|+50% Damage to Unde
ad
nach korrektur zu
Code:
<item id="1283633471735" char="MuddyWatersFTW :)" time="Sat 09/04/10 22:51:11" quality="6" ethereal="0" mode="1" name="Wraith Chant" ilvl="86" location="Nihlathak's Temple" type="17" typedesc="War Scepter">War Scepter|One-Hand Damage: 12 to 21|Durability: 64 of 70|Required Strength: 55|Required Level: 41|Mace Class - Very Fast Attack Speed|+20% Increased Attack Speed|+24% Enhanced Damage|+133 to Attack Rating|7% Mana stolen per hit|+2 to Meditation (Paladin Only)|+10 to Energy|Cold Resist +22%|+50% Damage to Undead</item>
geht es dann natürlich wieder, aber so macht das itemlog auch keinen sinn
|
|
|
09/04/2010, 23:35
|
#184
|
Administrator
elite*gold: 41624
Join Date: Jan 2010
Posts: 22,728
Received Thanks: 12,654
|
Quote:
Originally Posted by JulesWinnfiled
zu 1.
es läuft so : ein script ist durch -> town -> cain -> inventar öffnen -> alles was nicht in den nips steht landet auf dem boden -> händler um pötte zu kaufen und/oder heal zu bekommen.
also das er ein item tatsächlich verkauft hab ich noch nicht erlebt
zu 2.
genial! 
da freu ich mich schon nicht mehr mit schneckentempo durchs mausoleum zu müssen weil ich nur eine reihe mana pötte dabei hab
eine sache noch, ich nutze sehr gern das XML itemlog und habs eigentlich immer offen und auf auto reload, das einzige problem ist das die items nach jedem run aus dem bereich "show kept" rausfliegen, soll das so sein? macht das ganze log irgendwie sinnlos
ach und ich glaube einen bug im itemlog gefunden zu haben und zwar hat er ein item eingetragen und damit die XML zerschossen indem das item 2 zeilen hatte und somit kein </item> am ende stand, nach manueller korrektur gehts dann natürlich wieder
ich seh gerade das er das ständig macht ^^ das ist natürlich nicht so schön
jetzt hat er z.B. gerade wieder die XML zerschossen mit folgenden zeilen
Code:
<item id="1283633471735" char="MuddyWatersFTW :)" time="Sat 09/04/10 22:51:11" quality="6" ethereal="0" mode="1" name="Wraith Chant" ilvl="86" location="Nihlathak's Temple" type="17" typedesc="War Scepter">War Scepter|One-Hand Damage: 12 to 21|Durability: 64 of 70|Required Strength: 55|Required Level: 41|Mace Class - Very Fast Attack Speed|+20% Increased Attack Speed|+24% Enhanced Damage|+133 to Attack Rating|7% Mana stolen per hit|+2 to Meditation (Paladin Only)|+10 to Energy|Cold Resist +22%|+50% Damage to Unde
ad
nach korrektur zu
Code:
<item id="1283633471735" char="MuddyWatersFTW :)" time="Sat 09/04/10 22:51:11" quality="6" ethereal="0" mode="1" name="Wraith Chant" ilvl="86" location="Nihlathak's Temple" type="17" typedesc="War Scepter">War Scepter|One-Hand Damage: 12 to 21|Durability: 64 of 70|Required Strength: 55|Required Level: 41|Mace Class - Very Fast Attack Speed|+20% Increased Attack Speed|+24% Enhanced Damage|+133 to Attack Rating|7% Mana stolen per hit|+2 to Meditation (Paladin Only)|+10 to Energy|Cold Resist +22%|+50% Damage to Undead</item>
geht es dann natürlich wieder, aber so macht das itemlog auch keinen sinn 
|
Dann mach mal Cain aus und Stell die Mindestanzahl an zu identifizierenden Items auf 3 - 4. Wenn du Cain anhast landet natürlich alles auf dem Boden.
Und das Log Problem war ca. einen Tag nach Release bekannt, wenn nicht sogar noch am selben Tag. 
Ursache war ein Bufferüberlauf, wird in der kommenden Version (hoffentlich morgen) gefixt sein.
Lg
Muddy
|
|
|
09/05/2010, 00:11
|
#185
|
elite*gold: 0
Join Date: Aug 2010
Posts: 91
Received Thanks: 4
|
Quote:
Originally Posted by Muddy_Waters
Dann mach mal Cain aus und Stell die Mindestanzahl an zu identifizierenden Items auf 3 - 4. Wenn du Cain anhast landet natürlich alles auf dem Boden. 
|
ah jetzt funktioniert es, bei anderen packeten ging das auch mit cain immer wunderbar, deswegen hab ich nicht daran gedacht das cain mal auszuschalten. danke für die schnelle hilfe!
Quote:
Originally Posted by Muddy_Waters
Und das Log Problem war ca. einen Tag nach Release bekannt, wenn nicht sogar noch am selben Tag. 
Ursache war ein Bufferüberlauf, wird in der kommenden Version (hoffentlich morgen) gefixt sein. 
|
oh, ok ich hatte nur bei der sell/drop problematik den thread durchsucht, allerdings nicht dabei
|
|
|
09/05/2010, 11:37
|
#186
|
Administrator
elite*gold: 41624
Join Date: Jan 2010
Posts: 22,728
Received Thanks: 12,654
|
Quote:
Originally Posted by JulesWinnfiled
ah jetzt funktioniert es, bei anderen packeten ging das auch mit cain immer wunderbar, deswegen hab ich nicht daran gedacht das cain mal auszuschalten. danke für die schnelle hilfe!
|
Naja, die das Identifizieren bei Cain soll ja an sich eine gewisse Zeitersparnis bringen. Dackelt der Char danach aber trotzdem noch jedes mal zu Akara und Co. ist diese Zeitersparnis de Facto nicht vorhanden.
Ich kann gerne einbauen, dass bei Cain identifizierte Items beim Händler verkauft werden, allerdings kann ich in diesem Fall nicht nachvollziehen, warum man überhaupt zu Cain geht.
Meine Chars gehen beispielsweise allesamt nicht zu Cain, identifizieren dafür aber Items unterwegs- ich fahre damit für meinen Geschmack ziemlich gut.
Lg
Muddy
|
|
|
09/05/2010, 12:41
|
#187
|
elite*gold: 0
Join Date: Aug 2010
Posts: 91
Received Thanks: 4
|
Quote:
Originally Posted by Muddy_Waters
Naja, die das Identifizieren bei Cain soll ja an sich eine gewisse Zeitersparnis bringen. Dackelt der Char danach aber trotzdem noch jedes mal zu Akara und Co. ist diese Zeitersparnis de Facto nicht vorhanden.
Ich kann gerne einbauen, dass bei Cain identifizierte Items beim Händler verkauft werden, allerdings kann ich in diesem Fall nicht nachvollziehen, warum man überhaupt zu Cain geht.
Meine Chars gehen beispielsweise allesamt nicht zu Cain, identifizieren dafür aber Items unterwegs- ich fahre damit für meinen Geschmack ziemlich gut.
Lg
Muddy
|
stimmt wohl, also brauchen tu ich das nicht, geht ja alles mit schriftrollen
mal was anderes, ich bekomme ab und an mal einen fehler ala item not defined in ntsnagit, hab mal toothless nipchecker über meine nips laufen lassen mit dem ergebnis das keine fehler enthalten sind, kann es trotzdem sein das dort irgendwas nicht stimmt? ich weiß das nicht nicht deine baustelle, ich dachte nur vielleicht liegts ja gar nicht an den nips?
hab die maxgametime jetzt einfach auf 15 min gestellt, das ist meine übliche runtime +5 min so das sie nicht ewig in der gegend rumsteht wenn der fehler kommt.
von daher so tragisch ist es nicht, mal schauen vielleicht muss ich die nips ja mal neu machen... wenn dann aber erst nach deinem update.
oh und noch etwas das einfach mal gesagt werden muss
die funktion NTConfig_KeepDistanceToMonsters ist einfach mal sowas von genial!
klasse idee und klasse umsetzung, das gibt dem ganzen bot quasi +250 intelligenz und -70% chicken rate 
EDIT: könnte man das hier irgendwie einbauen? ist ein schrein such script für akt 1, wäre sicher ganz nett vor jedem run...
Code:
function NTMain()
{
Include("libs/common/NTCommon.ntl");
NTC_IncludeLibs();
NTC_IncludeConfig("NTBot/char_configs");
NT_LoadConfig();
NTSI_LoadNIPFiles("NTBot/item_configs");
NTA_Initialize();
if(!NTTM_CheckAct())
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTTM_CheckAct()");
return;
}
NTTMGR_TownManager();
if(!NTTM_TownMove("waypoint"))
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTTM_TownMove()");
return;
}
if(!NTM_TakeWaypoint(3))
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTM_TakeWaypoint()");
return;
}
NTP_DoPrecast(true);
if(NTConfig_Teleport)
{
NTC_SwapWeapons(1)
}
FindShrines();
if(!me.GetState(137))
{
if(!NTM_MoveToPresetUnit(2, NTC_UNIT_OBJECT, 83))
NTM_MoveToPresetUnit(2, NTC_UNIT_OBJECT, 2);
FindShrines();
}
if(!me.GetState(137))
{
if(!NTM_MoveToStair(3, 9))
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTM_MoveToStair()");
return;
}
if(!NTM_MoveToStair(4, 10))
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTM_MoveToStair()");
return;
}
FindShrines();
}
if(!me.GetState(137))
{
if(!NTM_MoveToStair(4, 10))
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTM_MoveToStair()");
return;
}
if(!NTM_TakeStair(10))
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTM_TakeStair()");
return;
}
if(!NTM_MoveToStair(10, 5))
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTM_MoveToStair()");
return;
}
if(!NTM_TakeStair(5))
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTM_TakeStair()");
return;
}
FindShrines();
}
if(!me.GetState(137))
{
if(!NTM_MoveToStair(6, 11))
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTM_MoveToStair()");
return;
}
FindShrines();
}
NTC_SendMsgToScript("NTBotGame.ntj", "SCRIPT_END");
}
function FindShrines()
{
var ShrineIds = [2, 83, 85, 86, 93, 96, 97, 109, 116, 120, 123, 124, 133, 134, 135, 136, 150, 151, 172, 173, 184, 190, 191, 197, 199, 200, 201, 226, 231, 232, 260, 275, 276, 277, 278, 279, 282, 299, 300, 303, 325, 361, 414, 415, 421, 422, 423, 427, 428, 464, 465, 472, 479, 483, 484, 488, 491, 492, 495, 497, 499, 503, 509, 512, 520, 521, 522];
var ShrineLocs = [];
var unit = GetPresetUnits(me.areaid);
if(unit)
{
for (var j = 0; j < unit.length; j++){
for (var c = 0; c < ShrineIds.length; c++){
if (ShrineIds[c] == unit[j].id){
ShrineLocs.push([unit[j].roomx*5+unit[j].x + 3,unit[j].roomy*5+unit[j].y])
}
}
}
}
while(ShrineLocs.length > 0)
{
ShrineLocs.sort(SortRoomInt);
var _room = ShrineLocs.shift();
NTM_MoveTo(me.areaid, _room[0], _room[1]);
var shrine = NTC_FindUnit(NTC_UNIT_OBJECT, "shrine");
if(shrine){
do{
if(GetDistance(me.x,me.y,shrine.x,shrine.y)<5){
if(shrine.shrinetype == 15)
{
NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, shrine);
break;
}
}
}while(shrine.GetNext());
}
if(me.GetState(137))
break;
}
}
function SortRoomInt(a, b)
{
if(GetDistance(me.x, me.y, a[0], a[1]) < GetDistance(me.x, me.y, b[0], b[1]))
return -1;
return 1;
}
ich hab leider keine ahnung was ich da anpassen muss damit es kompatibel ist, wenn ich es einfach unverändert lasse dann wird das script geladen und es passiert rein gar nichts...
|
|
|
09/05/2010, 18:32
|
#188
|
elite*gold: 0
Join Date: Dec 2008
Posts: 61
Received Thanks: 2
|
Hey
Also das ist jetzt der 3te Bot den ich teste der eine war top für Dia und Baal
der andere sollte für MF sein... allerdings total bugged
Und deiner issen Traum ^^ okay deine pickit war wirklich bearbeitungsreif aber echt 5 min einstellen starten und perfekt <333 =)
danke dafür ^^
MfG
|
|
|
09/05/2010, 19:15
|
#189
|
Administrator
elite*gold: 41624
Join Date: Jan 2010
Posts: 22,728
Received Thanks: 12,654
|
Update 1.12
Quote:
Originally Posted by JulesWinnfiled
stimmt wohl, also brauchen tu ich das nicht, geht ja alles mit schriftrollen
mal was anderes, ich bekomme ab und an mal einen fehler ala item not defined in ntsnagit, hab mal toothless nipchecker über meine nips laufen lassen mit dem ergebnis das keine fehler enthalten sind, kann es trotzdem sein das dort irgendwas nicht stimmt? ich weiß das nicht nicht deine baustelle, ich dachte nur vielleicht liegts ja gar nicht an den nips?
hab die maxgametime jetzt einfach auf 15 min gestellt, das ist meine übliche runtime +5 min so das sie nicht ewig in der gegend rumsteht wenn der fehler kommt.
von daher so tragisch ist es nicht, mal schauen vielleicht muss ich die nips ja mal neu machen... wenn dann aber erst nach deinem update.
oh und noch etwas das einfach mal gesagt werden muss
die funktion NTConfig_KeepDistanceToMonsters ist einfach mal sowas von genial!
klasse idee und klasse umsetzung, das gibt dem ganzen bot quasi +250 intelligenz und -70% chicken rate 
EDIT: könnte man das hier irgendwie einbauen? ist ein schrein such script für akt 1, wäre sicher ganz nett vor jedem run...
Code:
function NTMain()
{
Include("libs/common/NTCommon.ntl");
NTC_IncludeLibs();
NTC_IncludeConfig("NTBot/char_configs");
NT_LoadConfig();
NTSI_LoadNIPFiles("NTBot/item_configs");
NTA_Initialize();
if(!NTTM_CheckAct())
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTTM_CheckAct()");
return;
}
NTTMGR_TownManager();
if(!NTTM_TownMove("waypoint"))
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTTM_TownMove()");
return;
}
if(!NTM_TakeWaypoint(3))
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTM_TakeWaypoint()");
return;
}
NTP_DoPrecast(true);
if(NTConfig_Teleport)
{
NTC_SwapWeapons(1)
}
FindShrines();
if(!me.GetState(137))
{
if(!NTM_MoveToPresetUnit(2, NTC_UNIT_OBJECT, 83))
NTM_MoveToPresetUnit(2, NTC_UNIT_OBJECT, 2);
FindShrines();
}
if(!me.GetState(137))
{
if(!NTM_MoveToStair(3, 9))
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTM_MoveToStair()");
return;
}
if(!NTM_MoveToStair(4, 10))
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTM_MoveToStair()");
return;
}
FindShrines();
}
if(!me.GetState(137))
{
if(!NTM_MoveToStair(4, 10))
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTM_MoveToStair()");
return;
}
if(!NTM_TakeStair(10))
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTM_TakeStair()");
return;
}
if(!NTM_MoveToStair(10, 5))
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTM_MoveToStair()");
return;
}
if(!NTM_TakeStair(5))
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTM_TakeStair()");
return;
}
FindShrines();
}
if(!me.GetState(137))
{
if(!NTM_MoveToStair(6, 11))
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTM_MoveToStair()");
return;
}
FindShrines();
}
NTC_SendMsgToScript("NTBotGame.ntj", "SCRIPT_END");
}
function FindShrines()
{
var ShrineIds = [2, 83, 85, 86, 93, 96, 97, 109, 116, 120, 123, 124, 133, 134, 135, 136, 150, 151, 172, 173, 184, 190, 191, 197, 199, 200, 201, 226, 231, 232, 260, 275, 276, 277, 278, 279, 282, 299, 300, 303, 325, 361, 414, 415, 421, 422, 423, 427, 428, 464, 465, 472, 479, 483, 484, 488, 491, 492, 495, 497, 499, 503, 509, 512, 520, 521, 522];
var ShrineLocs = [];
var unit = GetPresetUnits(me.areaid);
if(unit)
{
for (var j = 0; j < unit.length; j++){
for (var c = 0; c < ShrineIds.length; c++){
if (ShrineIds[c] == unit[j].id){
ShrineLocs.push([unit[j].roomx*5+unit[j].x + 3,unit[j].roomy*5+unit[j].y])
}
}
}
}
while(ShrineLocs.length > 0)
{
ShrineLocs.sort(SortRoomInt);
var _room = ShrineLocs.shift();
NTM_MoveTo(me.areaid, _room[0], _room[1]);
var shrine = NTC_FindUnit(NTC_UNIT_OBJECT, "shrine");
if(shrine){
do{
if(GetDistance(me.x,me.y,shrine.x,shrine.y)<5){
if(shrine.shrinetype == 15)
{
NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, shrine);
break;
}
}
}while(shrine.GetNext());
}
if(me.GetState(137))
break;
}
}
function SortRoomInt(a, b)
{
if(GetDistance(me.x, me.y, a[0], a[1]) < GetDistance(me.x, me.y, b[0], b[1]))
return -1;
return 1;
}
ich hab leider keine ahnung was ich da anpassen muss damit es kompatibel ist, wenn ich es einfach unverändert lasse dann wird das script geladen und es passiert rein gar nichts...
|
So ganz ausgereift ist der Ausweich Algorithmus allerdings noch nicht. Aber im großen und ganzen klappt es schon ganz gut, da stimme ich dir zu.
Mir gefällt der Stil nicht so gut.
Aber wenn du es bei dir einbinden willst, versuch es erstmal damit:
Code:
// Alle Script Messages anpassen; z.B.:
NTC_SendMsgToScript("NTBotGame.ntj", "SCRIPT_END");
// in:
NTC_SendMsgToScript("MWBotGame.ntj", "SCRIPT_END");
Ansonsten sind die spezifischen Funktionen ja alle dort direkt implementiert, insofern sollte das laufen.
Quote:
Originally Posted by Dela22
Hey
Also das ist jetzt der 3te Bot den ich teste der eine war top für Dia und Baal
der andere sollte für MF sein... allerdings total bugged
Und deiner issen Traum ^^ okay deine pickit war wirklich bearbeitungsreif aber echt 5 min einstellen starten und perfekt <333 =)
danke dafür ^^
MfG
|
Freut mich. 
Das mit den .nip Files hatte ich ja angedeutet, aber ich bin eh der Meinung, dass sich die jeder selbst so zurechtbasteln sollte, wie es den persönlichen Vorlieben entspricht.
@topic
Ich werde gleich mal die aktuelle Version hochladen. 
Dort sind einige Bugs gefixt, allerdings kommt es meinem Eindruck nach des öfteren mal zu einem Restart. Ich kann mich natürlich irren, Restarts gabs schließlich auch schon in der alten Version, aber behaltet das mal mit im Auge.
Änderungen gegenüber der letzten Version:
- XML Log Bug gefixt
- Bug bei der Wahl des BO Slots gefixt
- Ein paar Chest IDs hinzugefügt
- Ein paar Schrein IDs hinzugefügt
- Ein paar IDs von Magieimmunen Untoten hinzugefügt (damit das Casten von HolyBolt korrekt funktioniert)
- Stashlogging mit Muddy's Tools Entry Point gefixt
- Reaktionsmöglichkeiten bei Immunen eingefügt
- Maximallaufzeit für einzelne Script eingefügt
- Status Text Timer für laufende Scripte eingefügt
- Mal wieder einige Umbenennungen...
- sdk Ordner um ein paar Informationen erweitert
- Default Configs enthalten Presets für Hammerdin, WW Barb und Orb/FB/Meteor Sorc
- Anzeigemöglichkeiten von .nip Informationen erweitert
- Bestimmt noch weitere Dinge, die mir gerade nicht einfallen...

Meinungen und Fehlerberichte sind natürlich nach wie vor gerne gesehen.
Viel Spaß beim Testen!
Lg
Muddy
|
|
|
09/05/2010, 19:26
|
#190
|
elite*gold: 0
Join Date: Dec 2008
Posts: 61
Received Thanks: 2
|
Ich nochmal ^^
Wollte mal fragen ob es die möglichkeit gibt, da ich Pindle leider gekillt hab über wp rein zugehen, hoch zu porten, killen und dann runter zu nila ? ^^
Hast du da e.v nen script für rumliegen ?
Und ob es machbar ist so einzustellen das sich meine sorc oben bei Baal auf die treppe stellt das der merc die viecher von mir abhält ^^
problem ist hab ehrlich gesagt keine ahnung von scripten bin stolz das ich die pickit selber hinkriege und dein bot einstellen kann ohne infos dahinter *fg*
Lg
|
|
|
09/05/2010, 19:42
|
#191
|
Administrator
elite*gold: 41624
Join Date: Jan 2010
Posts: 22,728
Received Thanks: 12,654
|
Quote:
Originally Posted by Dela22
Ich nochmal ^^
Wollte mal fragen ob es die möglichkeit gibt, da ich Pindle leider gekillt hab über wp rein zugehen, hoch zu porten, killen und dann runter zu nila ? ^^
Hast du da e.v nen script für rumliegen ?
Und ob es machbar ist so einzustellen das sich meine sorc oben bei Baal auf die treppe stellt das der merc die viecher von mir abhält ^^
problem ist hab ehrlich gesagt keine ahnung von scripten bin stolz das ich die pickit selber hinkriege und dein bot einstellen kann ohne infos dahinter *fg*
Lg
|
Das mit dem Nihla Script ist kein Problem, werde ich mal vormerken.
Das mit der Sorc kannst du eigentlich selber machen. 
Schau einfach mal ins Baal Script. Dort wird dir vermutlich die Stelle ins Auge fallen, an der der Char sich neu positioniert (Zeile 103 - 105).
Du musst nun nur die Koordinaten anpassen. Koordinaten auslesen kannst du mit der Taste "Pos1/Home". 
Wie du deinem Merc aber sagst, dass er dich gefälligst ordentlich beschützt, ist eine andere Frage, das klärst du am besten direkt mit ihm selbst.
Lg
Muddy
|
|
|
09/05/2010, 20:08
|
#192
|
elite*gold: 0
Join Date: Apr 2010
Posts: 344
Received Thanks: 173
|
Das Target vom Merc entscheiden geht glaubsch im korean D2NT ; einer der Gründe wieso die koreanische Version eher Wardens Opfer sein kann, da dies dem Spieler nicht möglich ist -> Hack (Nope, Bots sind keine Hacks, wenn man´s denn genau nimmt.) Ziemlich Schade eigentlich, in WoW ist sowas möglich.^^
Greetz
Zerker
Oh, btw.: v1.12? Gleich hast du D2 eingeholt, Muddy! Go, Muddy, Go!
P.S.: Mir is aufgefallen, dass die Party-Einladung vom Bot an Spieler die z.B. den Baalrun joinen nicht über das Standard-Party-Dialog erfolgt, wenn man "P" drückt. Kein Plan ob des pöhse ist oder nicht, tut ja auch nix zur Sache und außerdem hab ich sowieso keine Ahnung von dem ganzen Stuff.
|
|
|
09/05/2010, 20:18
|
#193
|
elite*gold: 0
Join Date: Mar 2009
Posts: 33
Received Thanks: 1
|
Muddy was noch richtig geil wäre wenn dus einbauen könntest:
das man in der Bot-Config (mit entsprechender Option "waitonIP" in der Charconfig) einstellen kann, dass der Bot automatisch in einem Game mit einzustellender IP in den idle-Mode geht.
|
|
|
09/05/2010, 20:43
|
#194
|
elite*gold: 0
Join Date: Dec 2008
Posts: 61
Received Thanks: 2
|
Quote:
Originally Posted by monsonov
Das Target vom Merc entscheiden geht glaubsch im korean D2NT ; einer der Gründe wieso die koreanische Version eher Wardens Opfer sein kann, da dies dem Spieler nicht möglich ist -> Hack (Nope, Bots sind keine Hacks, wenn man´s denn genau nimmt.) Ziemlich Schade eigentlich, in WoW ist sowas möglich.^^
|
Nene will nicht selber bestimmen welches ziel der Merc angreift geht nur darum wenn ich mich hoch zu Baalporte auf die Plattform werden die Mobs automatisch vom Merc geblockt und kommen garnicht erst an mich ran ^^
Quote:
Originally Posted by Muddy_Waters
Das mit dem Nihla Script ist kein Problem, werde ich mal vormerken.
Das mit der Sorc kannst du eigentlich selber machen. 
Schau einfach mal ins Baal Script. Dort wird dir vermutlich die Stelle ins Auge fallen, an der der Char sich neu positioniert (Zeile 103 - 105).
Du musst nun nur die Koordinaten anpassen. Koordinaten auslesen kannst du mit der Taste "Pos1/Home". 
Wie du deinem Merc aber sagst, dass er dich gefälligst ordentlich beschützt, ist eine andere Frage, das klärst du am besten direkt mit ihm selbst.
Lg
Muddy
|
Hat geklappt mit dem Porten ^^
Das mit dem Nila script wäre super =)) würde mich freuen danke im vorraus ^^
Lg Dela
|
|
|
09/05/2010, 20:50
|
#195
|
elite*gold: 0
Join Date: Apr 2010
Posts: 344
Received Thanks: 173
|
Achso also.
Da fällt mir nix ein außer deinem Merc ein Bonzen-Eq zu geben^^
Meiner hat Phoenix Eth CV, Forty eth, Andariels raled. Mit meiner Konzen-Aura kommt der auf 16k Dmg und latscht alles um.
Soweit ich verstanden hab´kannst du so die Monster nicht killen, weil der Merc den Weg versperrt, wa?
Greetz
Zerker
|
|
|
 |
|
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 16:37.
|
|