|
You last visited: Today at 05:35
Advertisement
[Release] Muddy's D2NT
Discussion on [Release] Muddy's D2NT within the Diablo 2 Programming forum part of the Diablo 2 category.
04/05/2011, 08:19
|
#1111
|
elite*gold: 0
Join Date: May 2008
Posts: 788
Received Thanks: 58
|
@Muddy
Das problem tritt nur bei dem Script und NUR auf Hell auf :/
|
|
|
04/05/2011, 09:17
|
#1112
|
Administrator
elite*gold: 41624
Join Date: Jan 2010
Posts: 22,728
Received Thanks: 12,654
|
Quote:
Originally Posted by fred9x9
Achja Muddy,
meine Classic Soso bedankt sich ganz artig,
die ist ja sowas vom Hocker gefallen
Her dreams came true
Danke, dass du es im Hinterkopf behalten hast
mit "NTConfig_AttackSkill[8] und [9]
Ganz l G
Fred
|
Sagen wir es stand auf meiner ToDo Liste.
Aber freut mich wenn es gefällt.
Quote:
Originally Posted by BlackManta
@Muddy
Das problem tritt nur bei dem Script und NUR auf Hell auf :/
|
Vermutlich weil Madame Countess auch NUR auf Hell Feuer und Kälteimmun ist...
Ich wäre dir sehr verbunden, wenn du dir den Beitrag auf den ich verwiesen habe auch durchliest.
Lg
Muddy
|
|
|
04/05/2011, 10:47
|
#1113
|
elite*gold: 0
Join Date: Feb 2011
Posts: 44
Received Thanks: 13
|
So ich habe mich jetzt damit mal befasst und habe einen möglichst einfachen Weg gefunden Countess mit einer FB/FO Sorc zu killen.
Vorraussetzung ist ein Merc...
Modded Countess Script:
Code:
/**
* This file was modified by
* Check the programming section for updates and further scripts
* Last Update: 02/27/2011
*/
function NTMain()
{
Include("libs/common/NTCommon.ntl");
NTC_IncludeLibs();
NTC_IncludeConfig("NTBot/char_configs");
NT_LoadConfig();
NTSI_LoadNIPFiles("NTBot/item_configs");
MWC_Initialize();
var _countess, _mapType;
if(!NTTM_CheckAct(me.act, true))
{
NTC_SendMsgToScript("MWBotGame.ntj", NTTM_CheckAct, 20, me.act, true);
return;
}
NTTMGR_TownManager();
if(!NTTM_TownMove("waypoint"))
{
NTC_SendMsgToScript("MWBotGame.ntj", NTTM_TownMove, 28, "waypoint");
return;
}
if(!NTM_TakeWaypoint(6))
{
NTC_SendMsgToScript("MWBotGame.ntj", NTM_TakeWaypoint, 34, 6);
return;
}
NTP_DoPrecast(true);
for(var i = 0; i < 6; i++)
{
if(!NTM_MoveToStair(me.areaid, 20 + i))
{
NTC_SendMsgToScript("MWBotGame.ntj", NTM_MoveToStair, 44, me.areaid, 20 + i);
return;
}
if(!NTM_TakeStair(20 + i))
{
NTC_SendMsgToScript("MWBotGame.ntj", NTM_TakeWaypoint, 50, 20 + i);
return;
}
}
NTA_ClearPosition(10, true, 2, false, true);
if(me.y > 11060 && me.y <= 11078) // Countess northwest
{
_mapType = 0;
if(!NTM_MoveTo(me.areaid, 12544, 11066))
{
NTC_SendMsgToScript("MWBotGame.ntj", NTM_MoveTo, 63, me.areaid, 12544, 11066);
return;
}
}
else // Countess northeast
{
_mapType = 1;
if(!NTM_MoveTo(me.areaid, 12570, 11057))
{
NTC_SendMsgToScript("MWBotGame.ntj", NTM_MoveTo, 73, me.areaid, 12570, 11057);
return;
}
}
_countess = NTC_FindUnit(NTC_UNIT_MONSTER, GetLocaleString(2875), 10);
if(!_countess)
{
NTC_SendMsgToScript("MWBotGame.ntj", NTC_FindUnit, 80, NTC_UNIT_MONSTER, GetLocaleString(2875), 10);
return;
}
if(me.y > 11060 && me.y <= 11078)
{
if(_countess.y <= 11054)
NTM_MoveTo(me.areaid, 12537, 11042);
if(_countess.y > 11056 && _countess.y <= 11070)
{
if(_countess.x < 12533)
NTM_MoveTo(me.areaid, 12518, 11057);
else
NTM_MoveTo(me.areaid, 12548, 11057);
}
if(_countess.y > 11070 && _countess.y <= 11085)
{
if(_countess.x < 12533)
NTM_MoveTo(me.areaid, 12518, 11083);
else
NTM_MoveTo(me.areaid, 12548, 11083);
}
if(_countess.y > 11086)
NTM_MoveTo(me.areaid, 12542, 11098);
}
else
{
if(_countess.x <= 12550)
{
NTM_MoveTo(me.areaid, 12562, 11057);
NTM_MoveTo(me.areaid, 12548, 11043);
}
if(_countess.x > 12550 && _countess.x <= 12561)
{
if(_countess.y < 11027)
NTM_MoveTo(me.areaid, 12577, 11043);
else
{
NTM_MoveTo(me.areaid, 12565, 11043);
NTM_MoveTo(me.areaid, 12577, 11025);
}
}
if(_countess.x > 12561 && _countess.x <= 12579)
{
if(_countess.y < 11027)
NTM_MoveTo(me.areaid, 12555, 11043);
else
{
NTM_MoveTo(me.areaid, 12565, 11043);
NTM_MoveTo(me.areaid, 12555, 11025);
}
}
if(_countess.x > 12579)
{
NTM_MoveTo(me.areaid, 12578, 11057);
NTM_MoveTo(me.areaid, 12582, 11043);
}
}
[COLOR="Red"] if(NTConfig_ClearPosition)
NTA_ClearPosition(30, true, 2, false, true);[/COLOR]
if(!NTA_KillMonster(GetLocaleString(2875)))
{
NTC_SendMsgToScript("MWBotGame.ntj", NTA_KillMonster, 149, GetLocaleString(2875));
return;
}
if(NTConfig_ClearPosition)
NTA_ClearPosition(30, true, 2, false, true);
NTSI_PickItems();
if(MWConfig_ClearCountessRoomsSpectype > 0)
{
if(_mapType == 0)
{
// Clear right room
if(!NTM_MoveTo(me.areaid, 12609, 11021))
{
NTC_SendMsgToScript("MWBotGame.ntj", NTM_MoveTo, 165, me.areaid, 12609, 11021);
return;
}
NTA_ClearPosition(25, true, 0, true, true, MWConfig_ClearCountessRoomsSpectype);
// Clear left room
if(!NTM_MoveTo(me.areaid, 12609, 11117))
{
NTC_SendMsgToScript("MWBotGame.ntj", NTM_MoveTo, 174, me.areaid, 12609, 11117);
return;
}
NTA_ClearPosition(25, true, 0, true, true, MWConfig_ClearCountessRoomsSpectype);
// Clear center room
if(!NTM_MoveTo(me.areaid, 12591, 11070))
{
NTC_SendMsgToScript("MWBotGame.ntj", NTM_MoveTo, 188, me.areaid, 12591, 11070);
return;
}
NTA_ClearPosition(35, true, 0, true, true, MWConfig_ClearCountessRoomsSpectype);
}
else
{
// Clear right room
if(!NTM_MoveTo(me.areaid, 12614, 11104))
{
NTC_SendMsgToScript("MWBotGame.ntj", NTM_MoveTo, 194, me.areaid, 12614, 11104);
return;
}
NTA_ClearPosition(25, true, 0, true, true, MWConfig_ClearCountessRoomsSpectype);
// Clear left room
if(!NTM_MoveTo(me.areaid, 12523, 11104))
{
NTC_SendMsgToScript("MWBotGame.ntj", NTM_MoveTo, 203, me.areaid, 12523, 11104);
return;
}
NTA_ClearPosition(25, true, 0, true, true, MWConfig_ClearCountessRoomsSpectype);
// Clear center room
if(!NTM_MoveTo(me.areaid, 12569, 11090))
{
NTC_SendMsgToScript("MWBotGame.ntj", NTM_MoveTo, 212, me.areaid, 12569, 11090);
return;
}
NTA_ClearPosition(35, true, 0, true, true, MWConfig_ClearCountessRoomsSpectype);
}
}
NTC_SendMsgToScript("MWBotGame.ntj", "SCRIPT_END");
}
In der Charconfig das ändern:
Code:
// Define when a monster is considered immune by entering the index of one or more of your attack skills. As an example: [1, 3] means that a monster is considered immune if it is immune to both NTConfig_AttackSkill[1] and NTConfig_AttackSkill[3], whatever those may be.
MWConfig_CheckImmunitySkills = [0, 1];
// Select the behaviour of your character when encountering a monsters that is considered immune referring to the definition above.
// 0: Don't do anything. (D2NT default)
// 1: Get close to the monster, use static field if the monster is not immune to lightning.
// 2: Skip the monster.
// 3: Attack the monster using NTConfig_AttackSkill[8] and NTConfig_AttackSkill[9]
NTConfig_BehaviourOnImmuneMonster = [COLOR="Red"]3[/COLOR];
NTConfig_AttackSkill[8] = [COLOR="Red"]MWS_FIRE_BAL[/COLOR]L; // Skill to be used against user defined immunes.
Der Effekt ist einfach, dass ihr erst alle Monster drumherum killt und danach der Merc ganz entspannt Countess killt ohne das ihr von jemand anderes angegriffen werdet. Vielleicht hilft das euch bei mir gehts 1A
|
|
|
04/05/2011, 11:52
|
#1114
|
elite*gold: 0
Join Date: Jun 2008
Posts: 210
Received Thanks: 14
|
bot läuft soweit eigentlich richtig gut, danke dafür erstma
aber folgendes problem:
mein sorc portet oft obwohl sie garkeine hits vom "boss" abbekommt, sondern wenn der merc im life droppt. blöderweise wird sie danach oft vom boss gehittet und wegen relativ schlechtem gear bedeuted das automatisch nen chicken. lässt es sich irgendwo einstellen das dieses ausweichen nur triggert wenn ich auch wirklich hits abbekomme?
|
|
|
04/05/2011, 11:57
|
#1115
|
Administrator
elite*gold: 41624
Join Date: Jan 2010
Posts: 22,728
Received Thanks: 12,654
|
Quote:
Originally Posted by bloodydeluxe
bot läuft soweit eigentlich richtig gut, danke dafür erstma
aber folgendes problem:
mein sorc portet oft obwohl sie garkeine hits vom "boss" abbekommt, sondern wenn der merc im life droppt. blöderweise wird sie danach oft vom boss gehittet und wegen relativ schlechtem gear bedeuted das automatisch nen chicken. lässt es sich irgendwo einstellen das dieses ausweichen nur triggert wenn ich auch wirklich hits abbekomme?
|
Nein, das ist nicht vorgesehen.
Der Sinn der Funktion ist es ja, einen gewissen Abstand zu in der Nähe befindlichen Monstern zu halten. Wenn die Sorc getroffen wird, kann der Treffer schon so stark sein, dass sie in der hit recovery landet und dann nicht mehr wegteleportieren kann - also quasi handlungsunfähig ist.
Das wäre zu spät, das Ausweichen muss vorher stattfinden, um Treffer generell zu vermeiden.
Ich würde dir einfach empfehlen, die aktivierten Scripte kritisch nach den Fähigkeiten deines Chars auszuwählen.
So Dinge wie Mausoleum oder Pit funktionieren meiner Erfahrung auch mit relativ schlechtem Equipment, einen halbwegs robusten Merc mal vorrausgesetzt.
Lg
Muddy
|
|
|
04/05/2011, 12:02
|
#1116
|
elite*gold: 0
Join Date: Jun 2008
Posts: 210
Received Thanks: 14
|
hmm ok danke, da ich mittlerweile auch out of gold bin, da ich nach jedem boss , werd ich die von dir erwähnten scripte mal testen, bis ich und der merc noch 1-2 bessere items haben... viel fehlt eigentlich nicht
|
|
|
04/05/2011, 13:37
|
#1117
|
elite*gold: 0
Join Date: Feb 2011
Posts: 394
Received Thanks: 75
|
hmm, mir ist da was aufgefallen beim Chestscript.
Bei mir wen er Pit lvl2 gehn für, nimmt sie wp zum kloster, bleibt paar sek (3-5) beim wp stehn ("preform precast"), und fängt dan nächstes script an, die telt da ned mal hin^^. Hab eigentlich nichts daran verändert, vllt. ist das jemand anderem auch schon aufgefallen?
|
|
|
04/05/2011, 14:22
|
#1118
|
Administrator
elite*gold: 41624
Join Date: Jan 2010
Posts: 22,728
Received Thanks: 12,654
|
Quote:
Originally Posted by Shrims
hmm, mir ist da was aufgefallen beim Chestscript.
Bei mir wen er Pit lvl2 gehn für, nimmt sie wp zum kloster, bleibt paar sek (3-5) beim wp stehn ("preform precast"), und fängt dan nächstes script an, die telt da ned mal hin^^. Hab eigentlich nichts daran verändert, vllt. ist das jemand anderem auch schon aufgefallen?
|
Es scheint wegen der Zwischeneben Monastery Gate Probleme bei der Pfadberechnung zu geben, denn die IDs sind soweit alle korrekt.
Wenn man beim WP Black Marsh startet funktioniert es tadellos.
Um von dort aus zu starten muss nur eine areaid verändert werden und zwar in Zeile 209 des Superchest Scripts.
Der Inhalt dieser Zeile sollte nach der Änderung so aussehen:
Code:
_schedule[i].Route.push([B][I][Color=Navy]new[/Color][/I][/B] MWSC_RouteStage(_MWSC_STAGE_WAYPOINT, [Color=Red]6[/Color]));
Lg
Muddy
|
|
|
04/05/2011, 16:03
|
#1119
|
elite*gold: 0
Join Date: Jan 2011
Posts: 43
Received Thanks: 0
|
precast
hallo
trotz intensiver suche finde ich keinen post zum thema precast.
ich finde keinen weg, um bei meiner blitzsorce shiver-armor, thunderstorm und energy-shield zu precasten.
habt ihr eine hilfestellung oder einen link zum post parat?
wäre supi...
achso...nutze natürlich den aktuellen muddy-bot
|
|
|
04/05/2011, 16:12
|
#1120
|
Administrator
elite*gold: 41624
Join Date: Jan 2010
Posts: 22,728
Received Thanks: 12,654
|
Quote:
Originally Posted by palados
hallo
trotz intensiver suche finde ich keinen post zum thema precast.
ich finde keinen weg, um bei meiner blitzsorce shiver-armor, thunderstorm und energy-shield zu precasten.
habt ihr eine hilfestellung oder einen link zum post parat?
wäre supi...
achso...nutze natürlich den aktuellen muddy-bot
|
Ich denke du wirst es aus irgendwelchen Gründen übersehen haben, es ist nämlich aus meiner Sicht sehr intuitiv und einfach.
So sollte das in deiner Config aussehen:
Code:
[Color=Green]// Your precast skills can be defined in the array below. NOTE: Battle Command, Battle Orders and Shout will be cast automatically. Constants for all skill ids can be found in "scripts\libs\common\MWSkills.ntl".[/Color]
MWConfig_PrecastSkills = [MWS_SIVER_ARMOR, MWS_ENERGY_SHIELD, MWS_THUNDER_STORM];
Lg
Muddy
|
|
|
04/05/2011, 16:23
|
#1121
|
elite*gold: 0
Join Date: Jan 2011
Posts: 43
Received Thanks: 0
|
[QUOTE=Muddy_Waters;9950622]Ich denke du wirst es aus irgendwelchen Gründen übersehen haben, es ist nämlich aus meiner Sicht sehr intuitiv und einfach.
aarg....die befehlszeile war nur ausserhalb des bildschirms. hab nicht den scrollbalken verwendet:-)
big thanks an dich
|
|
|
04/05/2011, 22:22
|
#1122
|
elite*gold: 0
Join Date: Jan 2009
Posts: 7,310
Received Thanks: 2,205
|
nochmal wegen dem snagit fehler...
er kommt aus zeile 168
das is komischer weise
Quote:
else if(MWConfig_ShowPotionPickups)
Print("Picked up " + _item.name.split("\n")[0]);
|
wenn ich print auskommentiere..könnte das den fehler beheben
oder liegt es doch an was andrem?
|
|
|
04/05/2011, 22:54
|
#1123
|
Administrator
elite*gold: 41624
Join Date: Jan 2010
Posts: 22,728
Received Thanks: 12,654
|
Quote:
Originally Posted by kal_el
nochmal wegen dem snagit fehler...
er kommt aus zeile 168
das is komischer weise
wenn ich print auskommentiere..könnte das den fehler beheben
oder liegt es doch an was andrem?
|
Die Sache muss ich mir bei Zeiten nochmal anschauen, auch wenn ich sagen muss, dass ich bei mir noch nichts dergleichen hatte, generell überhaupt keine Stops aufgrund irgendwelcher Exceptions der Laufzeitumgebung.
Und ja, das kannst du natürlich auskommentieren, aber in dem Fall musst du das else if auch mit auskommentieren, ansonsten hast du einen offenen Anweisungsblock, der sich dann auf die nächste nicht auskommentierte Anweisung bezieht.
Oder du initialisiert einfach die Variable MWConfig_ShowPotionPickups mit false, in dem Fall wird der Teil nie ausgeführt und kann folglich auch keine Probleme verursachen.
Lg
Muddy
|
|
|
04/06/2011, 12:08
|
#1124
|
elite*gold: 0
Join Date: Jul 2006
Posts: 1,440
Received Thanks: 525
|
Logging war zugegebenermaßen ziemlich schlecht umschrieben und die erste mögliche Fehlerursache die mir eingefallen ist.
Mein Problem ist, dass deine D2NT Version unglaublich lange auf meinem kleinen Netbook braucht um durch die Pickit zu gehen. Dies resultiert darin, dass mein komplettes Diablo 2 für bestimmt 2-5 Sekunden einfriert sobald die Pickit aufgerufen wird.
Auffallend ist dies beim Super Chest Script sobald der Bot eine Truhe öffnet und jedes mal wenn das Town Script aufgerufen wird um die Items zu verkaufen.
|
|
|
04/06/2011, 13:46
|
#1125
|
Administrator
elite*gold: 41624
Join Date: Jan 2010
Posts: 22,728
Received Thanks: 12,654
|
Quote:
Originally Posted by Tyon
Logging war zugegebenermaßen ziemlich schlecht umschrieben und die erste mögliche Fehlerursache die mir eingefallen ist.
Mein Problem ist, dass deine D2NT Version unglaublich lange auf meinem kleinen Netbook braucht um durch die Pickit zu gehen. Dies resultiert darin, dass mein komplettes Diablo 2 für bestimmt 2-5 Sekunden einfriert sobald die Pickit aufgerufen wird.
Auffallend ist dies beim Super Chest Script sobald der Bot eine Truhe öffnet und jedes mal wenn das Town Script aufgerufen wird um die Items zu verkaufen.
|
Naja, es ist schon so, dass sämtliche .nips auch in ihrem ursprünglichen Format in den Speicher geladen werden.
Man könnte natürlich die Änderungen, die ich dort durchgeführt habe, allesamt wieder revidieren, aber aus meiner Sicht erfordert das recht umfassende Änderungen an diversen Funktionen - kurzum: ich finde es irgendwie zu aufwändig.
Was du mal versuchen könntest, ist das Einfügen eines Dummys.
Sprich statt dem tatsächlichen Inhalt der Zeile in den .nips, einfach eine leere Zeichenkette einfügen. Irgendwas einfügen solltest du auf jeden Fall, denn ansonsten verschiebt sich die Array Indizierung und du müsstest wie oben angedroht alles umschreiben.
Aber so könnte man es zumindest mal versuchen, dazu einfach Zeile 59 in der NTItemParser library wie folgt anpassen:
Das XML Log sollte auch Performance lastig sein, das könnte man auch deaktivieren, sofern noch nicht geschehen.
Bei mir läuft jedenfalls auch mit 8 D2 Instanzen alles bestens, aber einen PC kann man wohl mit einem Netbook nur schwer vergleichen.
Lg
Muddy
|
|
|
 |
|
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 05:36.
|
|