elitepvpers

elitepvpers (https://www.elitepvpers.com/forum/)
-   Diablo 2 (https://www.elitepvpers.com/forum/diablo-2/)
-   -   D2NT 3.X Shopbot (https://www.elitepvpers.com/forum/diablo-2/570634-d2nt-3-x-shopbot.html)

FoGzone 05/11/2011 22:40

Quote:

Originally Posted by motzi10 (Post 10594277)
hmm könnte sein. Und was ist mit der do_trade fehlermeldung??

Hab nämlich letzte ladder in 2 tagen bestimmt 3 5ls und 2 6ls claws gehabt.

Nu hab ich in 4 Tagen gar keine :mad:

Allerdings als ich mal kurz bo waffen drin hatte, hat er sie normal gekauft so wie es sein soll.

Oder vll doch nur Pech ?

wieviel bots lässt du laufen? waren das alles gt's?

würde mal sagen einfach pech atm^^

motzi10 05/13/2011 22:55

das war nur ein bot, nur ich glaube das warn net nur 2 tage sondern paar mehr glaub ich. :p
und nein auch scheren quabs, mit über 110 str und dex req

jimbo_jones 05/22/2011 11:17

Hallo liebe Anya-Freunde!

Vielen Dank für den super-Bot. Funzt echt super.

Ich habe nur ein Problem, und das ist das mit den versch. Reitern bei Anya. Hab den kompletten Thread gelesen und weiss, dass er die Klauen erkennen sollte. Nur wenn er eine kaufen will, stuerzt er hab mit "Internal unrecoverable error". Weiss nicht mal, ob die Fehlermeldung vom Bot selbst kommt oder vom Diablo Prozess.

Ich habe es auch mal ausprobiert, in dem ich jede Armor kaufe und bei Jamella shoppe (sie hat im default-Reiter nur Traenke). Es ist jedes mal reproduzierbar.

Hat jemand noch dieses Problem?
Ich bin noch auf d2nt3.0, evtl. muss ich auf 3.1 upgraden?

Vielen Dank für eure Hilfe!
Cheers

mirkoregge 05/22/2011 18:51

upgrade auf 3.1 wäre sehr von vorteil

FoGzone 05/23/2011 14:23

Quote:

Originally Posted by mirkoregge (Post 10779516)
upgrade auf 3.1 wäre sehr von vorteil

sollte eigentlich auch mit der 3.0 version funktionieren, wenn es nach dem Ersteller des scriptes geht.

Versuch es einfach mit der 3.1 version und ich hoffe du hast das ganze auch auf englisch am laufen =)

XuD 06/20/2011 17:25

Steht irgendwo, wo man was am besten shoppen kann?

Weiß-Necro Rohlinge, Hammerdin Szepter und Claws bevorzugt.
Was ist, wenn ich Drognan und Anya reinstelle? Switched der dann immer zwischen den akten?

mirkoregge 06/20/2011 17:29

weiße items kann man nicht shoppen:
zepter: Drognan Alptraum (classic)
bo waffen: Charsi Alptraum (classic) und Malah+Anya Hell (LoD)
claws: Anya Hell (LoD)
magic necro waffen: Drognan+Malah (classic Alptraum Drognan; LoD Hell Malah)

bei mehr als einem Händler läuft er zu erst zu Händler A, dann WP, danach Händler B

Masori 07/02/2011 22:07

Ich hab da mehrere Probleme...
Wenn mehrere Händler eingestellt sind, besucht er erst einen davon, benutzt dann den WP, und geht dann zum zweiten. Ebenso spricht er vor jedem Shop erst Akara an ... (wenn ich Akt 2 bin erst Drognan) /e: Das mit Akara und Drognan hat sich erledigt.

Wie kann ich das ändern? So ist er einfach nur extrem langsam.

Außerdem öffnet er bei Charsi garnicht erst den Rüstungs-Tab... und so findet er meine gewünschten Rüstungsteile garnicht erst -.-
Erst dachte ichja, er braucht den Tab garnicht zu öffnen... dem ist aber nicht so :( Hab den Bot mehrmals pausiert nachdem er anscheinend nichts gefunden hat ... aber das gewünschte Item war dennoch im Rüstungstab.

BamiGorengo 07/17/2011 19:37

bei mir tut sich da rein gar nichts wenn der bot startet meckert der über irgend ne line 17 und bleibt einfach stehen =(

xxSarixx 07/25/2011 20:20

hm naja bei mir is das problem dass ich meine lvl 91 soso mal IRGENDEINE klaue kaufen lassen wollte, um mal zu testen ob der bot denn überhaupt was kauft... mit "[Type] == assassinclaw" in der shoping.nip im shoping ordner ... mit "NTConfig_Script.push("NTShopbot.ntj");" in der char config und mit der NTShopbot datei usw ...( nur um zu zeigen dass ich alles befolgt hab^^)
weiß nedmehr was ich machen soll ... hab auch alle weiteren scripte in der pickit sektion auskommentiert ...naja und meine soso kauft einfach mal nich mal ne stinknormale klaue ^^
mache anya runs mit red tp ... help :*(

ed.
brauch ich evtl die engl version von d2 o.O ?!

modwx 08/16/2011 16:36

hier komm mit der pickit noch nicht ganz zurecht.....

hab nen extra ordner und extra pickit gemacht....kanne s sein das der shopbot trotzalledem noch auf die anderen pickits zugreift?

[er kauft pots,,,pots,,,pots...und die sind nur in der Basis.nip vorhanden[bei mir]

lanara 08/16/2011 17:52

Er greift auf die Pickits zu, die du in der Charconfig eingestellt hast. Allerdings gab es da auch einen Bug, wo er z.B. in Akt2 immer Tränke gekauft hat.

modwx 08/17/2011 12:45

dann ist ja eigentlich der part wo man die shoping pickit erstellt fürn eimer...wenn man die items schon in der standart pickit hat...

FoGzone 08/17/2011 12:54

Quote:

Originally Posted by modwx (Post 12386939)
dann ist ja eigentlich der part wo man die shoping pickit erstellt fürn eimer...wenn man die items schon in der standart pickit hat...

nicht ganz
wenn er den ordner nicht findet kann es oft zu einem bug kommen.
Wenn du wirklich nur shoppen willst mach einfach die anderen nip files raus in der charconfig

modwx 08/17/2011 17:45

hab ich jetzt auch

kann mir wer nen tipp geben wo ich am besten shoppe für claws,jmod und 4/40 6/40 javelins [char lvl99]

FoGzone 08/19/2011 18:38

Claws -> Anja

kA ob man den rest shoppen kann

mirkoregge 08/19/2011 19:43

Mit D2NT kann man jeden Händler botten.

Auszug aus ne alten Charconfig vom Sternloopers:
Code:


        //#################################################################
        //############################### Shop Bot ########################
        //#############################Einstellungen#######################
        //#################################################################

// base shop d2x £¨if need shop d2c, set this true £©
var is_D2C = false;

// shop npc number£¬can shop multi npc, just need push npc number uself.
var shop_npcNumber = new Array();
//shop_npcNumber.push( 1 );
//shop_npcNumber.push( 4 );
//shop_npcNumber.push( 5 );
//shop_npcNumber.push( 13 );
//shop_npcNumber.push( 12 );
// Act 1: Akara(1),    Charsi(2),  Gheed(3)
// Act 2: Drognan(4),  Fara(5),    Elzix(6)
// Act 3: Ormus(7),    Hratli(8),  Asheara(9)
// Act 4: Jamella(10), Halbu(11)
// Act 5: Anya(12),    Larzuk(13), Malah(14)

// auto kill anya red tp undead
var autoClear = true;
// shop anya go wp, if u want go wp, set it to true£¬base do not go wp
var anyaGoWp = false;


lanara 08/19/2011 23:01

Es lohnt sich aber eigentlich nur Anya. JMoD kann man nicht shoppen, höchstens JWoD (Ward).

Wannabash 11/14/2011 11:28

Ich hab folgendes Problem:

Mein Shopbot restartet ca alle 10-20 Minuten
und zwar dann wenn er Anya anspricht und das Handelsfenster öffnet!
Dann kommt irgendeine Fehlermeldung die ich aber nie lesen kann weil er sie und Diablo direkt schließt.
Im D2nt Manager bekomm ich keine Meldung was der Fehler ist.

Nein es ist nicht die Zeit pro Game. Diese habe ich durch 0 auf unendlich gestellt.
Und die Pickit ist auch im richtigen Ordner denn er kauft ab und an mal was.
Hab extra 3 Bo Speere in die Pickit geschrieben um zu testen ob der Bot die Pickit lesen kann.

Aber er hat solche noch nie gekauft (seit ca 48h)

Könnte das nun daran liegen dass in der Pickit etwas falsch steht? Oder warum startet er immer neu?
Hab vermutet dass er eventuell ein Item findet welches passt dies aber nicht kaufen kann aus irgendnem Grund und dann neustartet.

Kann mir jemand helfen;)

Danke schonmal

Greetz Wannabash!

lanara 11/14/2011 12:08

D2 muss auf Englisch laufen.

Wannabash 11/14/2011 23:07

hab jetzt auf englische schrift umgestellt!
jetzt startet er noch öfter neu als vorher!

DKOj 11/18/2011 20:38

Hallo
ich hab ein Problem
irgendwie will es gar nich funktionieren, es kommt immer die fehlermeldng NT_LoadConfig is not defined
Hab es mit Bluebird und Muddy versucht, aber beides geht nich
Oder welchen Bot benutzt ihr???

GodzZz 11/18/2011 22:18

Laut Lanara -> "Muddy's D2NT nutzt auch nicht NTConfig_Script, sondern MWConfig_Script."

Hab mir jetzt Etal geholt und mit dem gehts ohne Probleme, ist sogar schon voreingestellt und hat eine fertige ShopCharConfig

DKOj 11/19/2011 09:31

Quote:

Laut Lanara -> "Muddy's D2NT nutzt auch nicht NTConfig_Script, sondern MWConfig_Script."

Hab mir jetzt Etal geholt und mit dem gehts ohne Probleme, ist sogar schon voreingestellt und hat eine fertige ShopCharConfig
Kannse vielleicht mir den Link schickn für den EtalBot

GodzZz 11/19/2011 11:01

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

kothie 11/19/2011 12:21

Quote:

Originally Posted by DKOj (Post 13948401)
Kannse vielleicht mir den Link schickn für den EtalBot

der ist immer auf der ersten oder zweiten seite, wie wärs mal mit augen aufmachen?

Evil Knievel 12/05/2011 03:29

Wie arbeitet denn der Bot? Läuft von jedem Händler zu jedem Händler und wenn er alle angequatscht hat, geht kurz aus der Stadt und wieder zurück und wiederholt alles wieder? Oder ist er auch in der Lage, Portale zu nutzen, z.B. Kuh-Level-Portal oder Portale vom Höllen-Fackel-Quest???

Ich suche nämlich eine Shop-Bot für Szepter und wenn der immer zum WP und NPC hin und her laufen müsste, wäre er doch ganz schön ineffektiv?
Oder gibts andere ShopBots, die dafür besser geeignet sind?

-Traceur- 12/05/2011 13:56

Der benutzt Portal von anya

Evil Knievel 12/05/2011 14:51

Quote:

Originally Posted by -Traceur- (Post 14184969)
Der benutzt Portal von anya

Aber man kann ja noch andere Händler auswählen, wenn ich das richtig gesehen habe, oder etwa nicht?
Was macht der Bot denn da?

-Traceur- 12/05/2011 19:16

Ja kann man. Der sucht natürlich Sachen, was sonst? ^^

Evil Knievel 12/05/2011 20:06

Ich meine, nutzt der Bot dann bei anderen Shops auch irgendwelche Portals oder WPs. Ich kenn eigentlich nur Anya als gute Shop-Möglichkeit, da das Portal gleich neban an ist.

whoranzone123 12/26/2011 20:12

hat irgendjemand einen erfahrungswert wie lange es dauert bis mal etwas sinnvolles geshopped wurde ?

mein bot läuft nun seit ca. 1 Woche durch und hat bisher nichts.
ist das normal ?

meine nip sieht so aus:

Code:

// ##### Assassin Katars #####
[Name] == GreaterTalons && [Quality] == magic # [AssassinSkills] == 2 && [SkillLightningSentry] == 3
[Name] == GreaterTalons && [Quality] == magic # [TrapsSkillTab] == 2 && [SkillLightningSentry] == 3
[Name] == GreaterTalons && [Quality] == magic # [TrapsSkillTab] == 3 && [SkillLightningSentry] == 2
[Name] == GreaterTalons && [Quality] == magic # [TrapsSkillTab] == 3 && [SkillLightningSentry] == 3

// ##### Armor #####
[Name] == AncientArmor && [Quality] == magic # [MaxHP] >= 90 && [Sockets] == 4

// ##### Gloves #####
[Name] == Gauntlets && [Quality] == magic # [IAS] == 20 && [JavelinandSpearSkillTab] == 3

// ##### Shields #####
[Type] == Shield && [Class] == elite && [Quality] == Magic && [Flag] != ethereal # [Sockets] >= 3 && [FBR] == 30
[Type] == Shield && [Class] == exceptional && [Quality] == Magic && [Flag] != ethereal # [Sockets] >= 3 && [FBR] == 30

ich nutze bluebird. getestet hab ichs auch schon indem ich ihn einfach nur mal 20 ias gloves bzw. >10 ed gt's hab kaufen lassen.

demnach dürfte es ja eigentlich nur an mangelndem glück liegen oder :( ?

mirkoregge 12/27/2011 17:58

Der Redvex Claw Shopbot ist viel schneller :P
Mit dem hatte ich schon in einer Woche 3 6LS-Klauen geshoppt.

Ist aber reine Glückssache.

whoranzone123 12/27/2011 19:05

naja redvex wollte ich mir runterladen, aber ich hab keine lust auf sowas:

Quote:

Als attackierend gemeldete Webseite!







Die Webseite auf redvex.d2help.com wurde als attackierende Seite gemeldet und auf Grund Ihrer Sicherheitseinstellungen blockiert.
ansonsten scheine ich recht unglücklich da zu stehen.
btw. was für nen level hat euer shop bot ? meiner ist bei 80. ich nutze einen extra char dafür. soooooo viel bringts ja auch nichtmehr wenn man weiterlevelt, es sei denn man geht auf >94.
achso. mein D2 läuft auf deutsch. das ist bei der bluebird version egal (scheint zumindest so). oder lieg ich da falsch ? immerhin hat der test bei mir 1a funktioniert. (also 20 ias gloves oder >10 ed klauen zu shoppen)

naja mal abwarten. vllt bekomm ich ja noch irgendwann glück ;)

mirkoregge 12/27/2011 19:09

Hatte mit Level 90 char gebottet; gheeds+rw schneide

Den fertigen Bot kannste [Only registered and activated users can see links. Click Here To Register...] herunterladen.

Meine damals genutzte Pickit:
Code:

[2 Assa 3 LS  Claw]
ItemName=Any
Prefix=Witch
Suffix=Any
Skill=LightningSentry
MinSkillLevel=3
Sockets=0
ForceSockets=0

[3 Trap 2+ LS Claw]
ItemName=Any
Prefix=Cunning
Suffix=Any
Skill=LightningSentry
MinSkillLevel=2
Sockets=0
ForceSockets=0

[Fools Claw 40 ias]
ItemName=Any
Prefix=Trump
Suffix=Quickness
Skill=LightningSentry
MinSkillLevel=1
Sockets=0
ForceSockets=0

[Fools claw ohne ias]
ItemName=Any
Prefix=Trump
Suffix=Any
Skill=LightningSentry
MinSkillLevel=3
Sockets=0
ForceSockets=0

[3 Shadow 2 + Venom claw]
ItemName=Any
Prefix=Shadow
Suffix=Any
Skill=Venom
MinskillLevel=2
Sockets=0
ForceSockets=0

[2 Assa 3 Venom Claw]
ItemName=Any
Prefix=Witch
Suffix=Any
Skill=Venom
MinSkillLevel=3
Sockets=0
ForceSockets=0

[2 Shadow 3 Venom]
ItemName=Any
Prefix=Psychic
Suffix=Any
Skill=Venom
MinSkillLevel=3
Sockets=0
ForceSockets=0

[2 Trap 3 Ls Claw]
ItemName=Any
Prefix=Tricksters
Suffix=Any
Skill=LightningSentry
MinSkillLevel=3
Sockets=0
ForceSockets=0

[Fools Claw 30 ias]
ItemName=Any
Prefix=Trump
Suffix=Swiftness
Skill=LightningSentry
MinSkillLevel=1
Sockets=0
ForceSockets=0

[6 Fade Claw]
ItemName=Any
Prefix=Shadow
Suffix=Any
Skill=Fade
MinSkillLevel=3
Sockets=0
Forcesockets=0

[6 Shadowmaster Claw]
ItemName=Any
Prefix=Shadow
Suffix=Any
Skill=Shadowmaster
MinSkillLevel=3
Sockets=0
Forcesockets=0

[Jewelers Monarch of Deflecting]
ItemName=Monarch
Prefix=Any
Suffix=Deflecting
Skill=Any
MinskillLevel=0
Sockets=4
ForceSockets=1

[Jewelers Hyperion of Deflecting]
ItemName=Hyperion
Prefix=Any
Suffix=Deflecting
Skill=Any
MinskillLevel=0
Sockets=3
ForceSockets=1

[Jewelers Troll Nest of Deflecting]
ItemName=Troll Nest
Prefix=Any
Suffix=Deflecting
Skill=Any
MinskillLevel=0
Sockets=3
ForceSockets=1

[Jewelers Blade Barrier of Deflecting]
ItemName=Blade Barrier
Prefix=Any
Suffix=Deflecting
Skill=Any
MinskillLevel=0
Sockets=3
ForceSockets=1

[Jewelers Ward of Deflecting]
ItemName=Ward
Prefix=Any
Suffix=Deflecting
Skill=Any
MinskillLevel=0
Sockets=4
ForceSockets=1

[Jewelers Tower Shield of Deflecting]
ItemName=Tower Shield
Prefix=Any
Suffix=Deflecting
Skill=Any
MinskillLevel=0
Sockets=3
ForceSockets=1

[Jewelers Kite Shield of Deflecting]
ItemName=Kite Shield
Prefix=Any
Suffix=Deflecting
Skill=Any
MinskillLevel=0
Sockets=3
ForceSockets=1

[Jewelers Large Shield of Deflecting]
ItemName=Large Shield
Prefix=Any
Suffix=Deflecting
Skill=Any
MinskillLevel=0
Sockets=3
ForceSockets=1

[Jewelers Scutum of Deflecting]
ItemName=Scutum
Prefix=Any
Suffix=Deflecting
Skill=Any
MinskillLevel=0
Sockets=3
ForceSockets=1

[Jewelers Dragon Shield of Deflecting]
ItemName=Dragon Shield
Prefix=Any
Suffix=Deflecting
Skill=Any
MinskillLevel=0
Sockets=3
ForceSockets=1

[Jewelers Pavise of Deflecting]
ItemName=Pavise
Prefix=Any
Suffix=Deflecting
Skill=Any
MinskillLevel=0
Sockets=3
ForceSockets=1

[Jewelers Ancient Shield of Deflecting]
ItemName=Ancient Shield
Prefix=Any
Suffix=Deflecting
Skill=Any
MinskillLevel=0
Sockets=3
ForceSockets=1

[Jewelers Aegis of Deflecting]
ItemName=Aegis
Prefix=Any
Suffix=Deflecting
Skill=Any
MinskillLevel=0
Sockets=4
ForceSockets=1

[81-100 life Archon Plate 4sox]
ItemName=Archon Plate
Prefix=Any
Suffix=TheWhale
Skill=Any
MinskillLevel=0
Sockets=4
ForceSockets=1

[81-100 life Dusk Shroud 4sox]
ItemName=Dusk Shroud
Prefix=Any
Suffix=TheWhale
Skill=Any
MinskillLevel=0
Sockets=4
ForceSockets=1

[81-100 life Wyrmhide 4sox]
ItemName=Wyrmhide
Prefix=Any
Suffix=TheWhale
Skill=Any
MinskillLevel=0
Sockets=4
ForceSockets=1

[81-100 life Scarab Husk 4sox]
ItemName=Scarab Husk
Prefix=Any
Suffix=TheWhale
Skill=Any
MinskillLevel=0
Sockets=4
ForceSockets=1

[81-100 life Wire Fleece 4sox]
ItemName=Wire Fleece
Prefix=Any
Suffix=TheWhale
Skill=Any
MinskillLevel=0
Sockets=4
ForceSockets=1

[81-100 life Gothic Plate 4sox]
ItemName=Gothic Plate
Prefix=Any
Suffix=TheWhale
Skill=Any
MinskillLevel=0
Sockets=4
ForceSockets=1

[81-100 life Mage Plate 3sox]
ItemName=Mage Plate
Prefix=Any
Suffix=TheWhale
Skill=Any
MinskillLevel=0
Sockets=3
ForceSockets=1

[61-80 life Mage Plate 3sox]
ItemName=Mage Plate
Prefix=Any
Suffix=the Squid
Skill=Any
MinskillLevel=0
Sockets=3
ForceSockets=1

[24 fhr Archon Plate 4sox]
ItemName=Archon Plate
Prefix=Any
Suffix=Stability
Skill=Any
MinskillLevel=0
Sockets=4
ForceSockets=1

[24 fhr Dusk Shroud 4sox]
ItemName=Dusk Shroud
Prefix=Any
Suffix=Stability
Skill=Any
MinskillLevel=0
Sockets=4
ForceSockets=1

[24 fhr Wyrmhide 4sox]
ItemName=Wyrmhide
Prefix=Any
Suffix=Stability
Skill=Any
MinskillLevel=0
Sockets=4
ForceSockets=1

[24 fhr Scarab Husk 4sox]
ItemName=Scarab Husk
Prefix=Any
Suffix=Stability
Skill=Any
MinskillLevel=0
Sockets=4
ForceSockets=1

[24 fhr Wire Fleece 4sox]
ItemName=Wire Fleece
Prefix=Any
Suffix=Stability
Skill=Any
MinskillLevel=0
Sockets=4
ForceSockets=1

[24 fhr Gothic Plate 4sox]
ItemName=Gothic Plate
Prefix=Any
Suffix=Stability
Skill=Any
MinskillLevel=0
Sockets=4
ForceSockets=1

[24 fhr Mage Plate 3sox]
ItemName=Mage Plate
Prefix=Any
Suffix=Stability
Skill=Any
MinskillLevel=0
Sockets=3
ForceSockets=1

[3 Java 20 Ias gloves]
ItemName=Any
Prefix=Lancers
Suffix=Alacrity
Skill=Any
MinSkillLevel=0
Sockets=0
Forcesockets=0


whoranzone123 12/27/2011 19:50

gheeds + schneide nutze ich auch. hat mir aber bisher noch nix gebracht :D

und genau die seite meinte ich auch. von dort aus wird zu redvex.d2help verlinkt. als ich dann versucht habe redvex anderweitig runterzuladen war dann ne backdoor in der .exe drin. nein danke ;)

mirkoregge 12/27/2011 20:02

1 Attachment(s)
Im Anhnag ist mein Redvex-Ordner.
VirusCheck ergab:
[Only registered and activated users can see links. Click Here To Register...]
Anmerkung: Da Redvex Pakete ändert, wird es von einigen als Trojaner erkannt.
Die wichtigsten Programme erkennen jedoch keinen Trojaner.
Mir ist seit ich den nutze noch nichts passiert; weder accountban noch cdkeyban.

Ob dem dem ganzen traust, musst du selber entscheiden.

Ach ja, ich hatte damals schon im Topic meinen hochgeladen -> [Only registered and activated users can see links. Click Here To Register...] Wurde da auch schon 28x gedownloaded und noch keine Beschwerden.

Solifugae 03/18/2012 23:53

Ist es normal, dass der Bot anfangs einen Schlüssel kauft?
Braucht man eigentliche sowohl TP- als auch ID Book im Inventar?
Danke schomal im Voraus!

MfG

gehen 04/08/2012 19:57

Folgendes Mein Bot geht ins gemacht jedoch danach macht er dann gar nichts mehr.
Es steht nur oben "Running N" da..

Vielleicht kann ja mal einer meine 3 Codes durch gucken ob da was fehlt oder falsch ist.
Ich denke der Fehler liegt im Code3

Code1:
Code:

////////////////////////////////////////////////////////////////////////////////////////////////////////////
//                                                                                                        //
//                      ShopBot Script For D2NT 2.1                                                      //
//                                                Edit BY Lamobchan    2010/1/20                          //
//                                                Change For D2NT 3.1  2010/4/27                          //
////////////////////////////////////////////////////////////////////////////////////////////////////////////
// ??????????,?????,????????????!
// if u don't know the javascript codes, do not edit this!
//                                                lambochan

// ???????...
var shop_ignoreList = "aqv,cqv,key,tbk,ibk,tsc,isc,yps,vps,wms,hp1,hp2,hp3,hp4,hp5,mp1,mp2,mp3,mp4,mp5";

// kill???,????
var killUndear = false;

// anya????,????
var anyaTPX = 10068;
var anyaTPY = 13308;

// ???????(????????)
var errorMode = -1;
var sameErrorCount = 0;

function NTMain()
{
    // ???
    Include("libs/common/NTCommon.ntl");
    NTC_IncludeLibs();
    NTC_IncludeConfig("NTBot/char_configs");
    NT_LoadConfig();
    NTSI_LoadNIPFiles("NTBot/item_configs");
    NTA_Initialize();
    NTTMGR_TownManager();
   

    NTC_Delay( 2000 );
    NT_Shoping_OverHead( "Now begin shoping..." );

    // shoping
    NT_Shoping();

    // over.
    NT_Shoping_Msg( "SCRIPT_END" );
}

function NT_Shoping()
{
    var npcName = new Array( "akara",  "charsi", "gheed",  /* act1 */
                            "drognan", "fara",  "elzix",  /* act2 */
                            "ormus",  "hratli", "asheara", /* act3 */
                            "jamella", "halbu" );          /* act4 */
                          // "anya",    "larzuk", "malah" ); /* act5 */
    if( !is_D2C ){ // d2x, need add act5 npc name
        npcName.push( "anya" );
        npcName.push( "larzuk" );
        npcName.push( "malah" );
    }
   
    var npcID = [NTC_NPC_ID_AKARA,    NTC_NPC_ID_CHARSI, NTC_NPC_ID_GHEED,
                NTC_NPC_ID_DROGNAN,  NTC_NPC_ID_FARA,  NTC_NPC_ID_ELZIX,
                NTC_NPC_ID_ORMUS,    NTC_NPC_ID_HRATLI, NTC_NPC_ID_ASHEARA,
                NTC_NPC_ID_JAMELLA,  NTC_NPC_ID_HALBU,
                NTC_NPC_ID_ANYA_TOWN, NTC_NPC_ID_LARZUK, NTC_NPC_ID_MALAH];
               
    var j;
    var num;
    var npc;
    var npcCount;
    var shopItems;
    var shopRush = 0;
    var buyItems = new Array();
    var showItems = new Array();


    if( shop_npcNumber.length <= 0 ){
        NT_Shoping_Msg( "have not npc list for shoping, plz check it!" );
        return;
    }
   
    for( ; ; ){
        num = 0;
        npcCount = shop_npcNumber.length;
        do{
            if( shopRush++ > 30 ){
                RunGC();
                shopRush = 0;
            }

            if( NTTMGR_CheckScrolls( 1 ) < 4 )
                NTTMGR_TownManager();

            if( !NT_Shoping_CheckACT( shop_npcNumber[num] ) ){
                NT_Shoping_Msg( "NT_Shoping_CheckACT()", 1 );
                break;
            }
           
            if( !NTTM_TownMove( npcName[shop_npcNumber[num] - 1] ) ){
                NT_Shoping_Msg( "NTTM_TownMove()", 2 );
                break;
            }
           
            npc = NTC_FindUnit( NTC_UNIT_NPC, npcID[shop_npcNumber[num] - 1], 2 );
            if( npc ){
                if( !NTT_DoInteract( npc ) ){
                    NT_Shoping_Msg( "NTT_DoInteract()", 3 );
                    break;
                }
               
                if( !NTT_DoTrade( npc ) ){
                    NT_Shoping_CancelMenu();
                    NT_Shoping_Msg( "!NTT_DoTrade()", 4 );
                    break;
                }
               
                shopItems = npc.GetItems();
                if( shopItems ){
                    for( j = 0; j < shopItems.length; ++j ){
                        if( shop_ignoreList.indexOf( shopItems[j] ) == -1 ){
                            if( NTIPCheckItem( shopItems[j] ) == 1 ){
                                buyItems.push( shopItems[j] );
                                var mark = new markItems( shopItems[j].quality, shopItems[j].name, shopItems[j].itemdesc );
                                showItems.push( mark );
                            }
                        }
                    }
                } // end if(shopItems)
               
                if( buyItems.length > 0 ){
                    for( j = 0; j < buyItems.length; ++j ){
                        if( buyItems[j].GetItemCost( 0, npcID[shop_npcNumber[num] - 1] ) > NTC_MyGold() ){
                            NT_Shoping_CancelMenu();
                            NT_Shoping_Loop( "have not money buy an item now." );
                        }
                        if( NTT_CheckSpace( buyItems[j].xsize, buyItems[j].ysize ) ){
                            if( !NTT_ShopItem( buyItems[j], npc, 2 ) ){
                                NT_Shoping_CancelMenu();
                                NT_Shoping_Loop( "have an item can not buy it." );
                            }
                        } // end if(NTT_Ch
                        else {
                            NT_Shoping_CancelMenu();
                            NTTMGR_VisitStash();
                           
                            if( !NTT_CheckSpace( buyItems[j].xsize, buyItems[j].ysize ) ){
                                NT_Shoping_Loop( "have not space save items, and have an item can not buy it." );
                            }
                           
                            if( !NTTM_TownMove( npcName[shop_npcNumber[num] - 1] ) ){
                                NT_Shoping_Loop( "have an item can not buy it." );
                            }
                           
                            if( !NTT_DoInteract( npc ) ){
                                NT_Shoping_Loop( "have an item can not buy it." );
                            }
                           
                            if( !NTT_DoTrade( npc ) ){
                                NT_Shoping_CancelMenu();
                                NT_Shoping_Loop( "have an item can not buy it." );
                            }
                           
                            if( !NTT_ShopItem( buyItems[j], npc, 2 ) ){
                                NT_Shoping_CancelMenu();
                                NT_Shoping_Loop( "have an item can not buy it." );
                            }
                        } // end else
                        NTC_SendLogToOOG( NTC_LOG_ITEM, "Buy " + NTC_ItemQualityToMGRColor[showItems[j].quality] + "[" + showItems[j].name + "] " + ";"  + showItems[j].itemdesc +
                                          " [" + npcName[shop_npcNumber[num] - 1].charAt( 0 ).toUpperCase() +
                                          npcName[shop_npcNumber[num] - 1].substring( 1 ) + "]" );

                    } // end for( j
                   
                    buyItems.length = 0;
                    showItems.length = 0;
                }
                // ????
                NT_Shoping_CancelMenu();
            } // end if(npc)
           
            // ??
            if( !NT_Shoping_InOutTown(shop_npcNumber[num], num ) ){
                NT_Shoping_Msg( "NT_Shoping_InOutTown()", 5 );
                break;
            }
           
            // next npc
            num++;
       
        } while( --npcCount );
       
    }
}

function NT_Shoping_InOutTown(num, count)
{
    if( shop_npcNumber.length > 1 ){                    // shop??
        var outTown = NT_Shoping_GoNextNpc(num, count); // ???????,?????npc????act??..
        if( !outTown )                                  // ???
            return true;
    }

    if( num == 12 && !anyaGoWp ){ // anya go red tp
        if( !NTTM_TownMove( "portal" ) ){
            NT_Shoping_Msg( "NTTM_TownMove()", 6 );
            return false;
        }
        if( !NT_Shoping_UsePortal( "Portal", 121 ) ){
            NT_Shoping_Msg( "NT_Shoping_UsePortal()", 7 );
            return false;
        }
       
        // kill???
        if( autoClear ){
            killUndear = true;
            NTP_DoPrecast();
            // ?“????”?TP??,?????......
            if( NTC_GetSkillLevel( 124 ) && NTC_GetSkillLevel( 54 ) ){
                if( !NTM_MoveTo( me.areaid, 10069, 13293 ) )
                    return false;
                NTC_PutSkill( 124, NTC_HAND_RIGHT );
                NTC_PingDelay( 2000 );
               
                if( !NTM_MoveTo( me.areaid, me.x - 15, me.y - 15 ) )
                    return false;
            } // end if( NTC_Ch
           
            if( NT_Shoping_CheckUndear( 20 ) ){
                if( NTA_ClearPosition( 20 ) )
                    NTSI_PickItems();
                if( NTC_GetSkillLevel( 124 ) && NT_Shoping_CheckCorpses( 8 ) ){
                    NTC_PutSkill( 124, NTC_HAND_RIGHT );
                    NTC_PingDelay( 2000 );
                }
                NTC_PutSkill( 115, NTC_HAND_RIGHT );
            }
           
            if( !NTM_MoveTo( me.areaid, anyaTPX, anyaTPY ) )
                return false;
               
            autoClear = false;
        }
        // ??????,????
        if( killUndear && NT_Shoping_CheckUndear( 20 ) ){
            if( NTA_ClearPosition( 20 ) )
                NTSI_PickItems();
            if( NTC_GetSkillLevel( 124 ) && NT_Shoping_CheckCorpses( 8 ) ){
                NTC_PutSkill( 124, NTC_HAND_RIGHT );
                NTC_PingDelay( 2000 );
            }
            if( !NTM_MoveTo( me.areaid, anyaTPX, anyaTPY ) )
                return false;
            NTC_PutSkill( 115, NTC_HAND_RIGHT );
        }
        // ???act5 town
        if( !NT_Shoping_UsePortal( "Portal", 109 ) ){
            NT_Shoping_Msg( "NT_Shoping_UsePortal()", 8 );
            return NT_Shoping_CheckACT();
        }
    } else {
        var ok = false;
        if( !NTTM_TownMove( "waypoint" ) ){
            NT_Shoping_Msg( "NTTM_TownMove()", 9 );
            return false;
        }
        switch( me.act ){
        case 1 :
            if( !NT_Shoping_TakeWaypoint( 35 ) )
                return false;
            ok = NT_Shoping_TakeWaypoint( 1 );
            break;
        case 2 :
            if( !NT_Shoping_TakeWaypoint( 48 ) ){
                return false;
            }
            ok = NT_Shoping_TakeWaypoint( 40 );
            break;
        case 3 :
            if( !NT_Shoping_TakeWaypoint( 101 ) )
                return false;
            ok = NT_Shoping_TakeWaypoint( 75 );
            break;     
        case 4 :
            if( !NT_Shoping_TakeWaypoint( 107 ) )
                return false;
            ok = NT_Shoping_TakeWaypoint( 103 );
            break;
        case 5 :
            if( !NT_Shoping_TakeWaypoint( 129 ) )
                return false;
            ok = NT_Shoping_TakeWaypoint( 109 );
            break;
        }
        if( !ok ){ // give a chance do it again..
            return NT_Shoping_CheckACT();
        }
    }
    return true;
}

function NT_Shoping_CheckMonster( target )
{
    return ( target.hp > 0 && target.mode != 0 && target.mode != 12 && GetDistance( me, target ) != -1 );
}


function NT_Shoping_CheckCorpses( range )
{
    var undear = NTC_FindUnit( NTC_UNIT_MONSTER, 438, 2 );
    if( undear ){
        do{
            if( !NT_Shoping_CheckMonster( undear ) && GetDistance( me, undear ) < range )
                return true;
        } while( undear.GetNext() );
    }
    return false;
}

function NT_Shoping_CheckUndear( range )
{
    var undear = NTC_FindUnit( NTC_UNIT_MONSTER, 438, 2 );
    if( undear ){
        do{
            if( GetDistance( me, undear ) < range )
                return true;
        } while( undear.GetNext() );
    }
    return false;
}

function NT_Shoping_Loop( str )
{
    var hi = "NTShopbot.ntj : " + str;
    NTC_SendLogToOOG( hi );
    var tempX = me.x;
    var tempY = me.y;
    for( ; ; ){
        for( var i = 0; i < 20; ++i ){
            NT_Shoping_OverHead( str );
           
            var xx = Random( -3, 3 );
            var yy = Random( -3, 3 );
           
            NTC_DoClick( NTC_CLICK_LDOWN, NTC_SHIFT_NONE, xx, yy );
            NTC_Delay(500);
           
            NTC_Delay( 3000 );
           
            NTC_DoClick( NTC_CLICK_LDOWN, NTC_SHIFT_NONE, tempX, tempY );
            NTC_Delay(500);
        }
    }
}

function NT_Shoping_Msg( str, em )
{
    errorGoQuitGame ? NTC_SendMsgToScript( "NTBotGame.ntj", str ) :
    ( NT_Shoping_CheckError( em ) ? NTC_SendMsgToScript( "NTBotGame.ntj", str ) :
    NTC_SendLogToOOG( NTC_LOG_COMMON, "ÿE00000" + str ) );
}

function NT_Shoping_CheckError( em )
{
    if( errorMode == em ){
        sameErrorCount++;
        if( sameErrorCount >= 5 )
            return true;
    } else {
        errorMode = em;
        sameErrorCount = 0;
    }
    if( em == 3 ){ // maybe mouse lock
        // don't know how to fix now....
    }
    return false;
}

function NT_Shoping_CheckACT(npcNum)
{
    var townid = [1,40,75,103,109];
    if( !NTC_InTown() ){
        if( !NT_Shoping_MakeTP( townid[me.act-1] ) )
            return false;
    }
    if( arguments.length < 1 )
        return true;

    var act = NT_Shoping_CheckNPC( npcNum );
    if( act == 0 )
        return false;

    if( act != me.act ){
        if( !NTTM_TownMove( "waypoint" ) )
            return false;
        if( !NT_Shoping_TakeWaypoint( townid[act-1] ) )
            return false;
    }
    return true;
}


function NT_Shoping_GoNextNpc(npcNum, count)
{
    var cur = NT_Shoping_CheckNPC(npcNum);
    var next = NT_Shoping_CheckNPC(shop_npcNumber[count+1]);
    return ( next == cur ? false : true ); // ???????

}

function NT_Shoping_CheckNPC( npcNum )
{
    if( is_D2C && npcNum > 11 )
        return 0;

    switch( npcNum ){
    case 1 :
    case 2 :
    case 3 :
        return 1;
    case 4 :
    case 5 :
    case 6 :
        return 2;
    case 7 :
    case 8 :
    case 9 :
        return 3;
    case 10:
    case 11:
        return 4;
    case 12:
    case 13:
    case 14:
        return 5;
    }
    return 0;
}

function NT_Shoping_OverHead( str )
{
    Say( "!" + str );
    NTC_Delay( 200 );
}

// ?????????
function NT_Shoping_CancelMenu()
{
    var i;
    while (GetUIState(0x01) ||
          GetUIState(0x08) ||
          GetUIState(0x0C) ||
          GetUIState(0x17) ||
          GetUIState(0x19) ||
          GetUIState(0x1A) ||
          GetUIState(0x24)){
        for( i = 0; i < 40; ++i ){
            if( ( i % 20 ) == 0 )
                me.Cancel(1);

            NTC_Delay( 200 );

            if( !GetUIState(0x01) &&
                !GetUIState(0x08) &&
                !GetUIState(0x0C) &&
                !GetUIState(0x17) &&
                !GetUIState(0x19) &&
                !GetUIState(0x1A) &&
                !GetUIState(0x24)){
                NTC_PingDelay(500);
                break;
            }
        }
    }
    NTC_PingDelay( 500 );
}

function markItems( quality, name, itemdesc )
{
    this.quality = quality;
    this.name = name;
    this.itemdesc = itemdesc;
}


function NT_Shoping_TakeWaypoint( areaid )
{
    var _unit;
    if( me.areaid == areaid )
        return true;
    _unit = NTM_GetWaypointInt();
    if( !_unit )
        return false;
    if( NTC_InTown() )
        me.Cancel( 1 );
    for( var i = 0 ; i < 20 ; ++i ){
        if( ( i % 10 ) == 0 ){
            NTC_DoClick( NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _unit );
        }
        NTC_Delay(200);
        if( GetUIState( 0x14 ) ){
            if( me.TakeWaypoint( areaid ) ){
                NTC_PingDelay( NTConfig_AreaDelay );
                return true;
            }
            break;
        }
    }

    return false;
}

function NT_Shoping_UsePortal( how, dest, ownername, portal )
{
    if( me.areaid == dest )
        return true;
    if( NTC_InTown() )
        me.Cancel( 1 );
    if( NT_Shoping_ChangeAreaInt( how, dest, ownername, portal ) ){
        NTC_PingDelay( NTConfig_AreaDelay );
        return true;
    }
    return false;
}

function NT_Shoping_ChangeAreaInt( how, dest, ownername, myportal )
{
    var _portal;
    var _playerportal = false;
    var _prearea;

    if( how == "BluePortal" ){
        if( !ownername )
        ownername = me.name;
        _playerportal = true;
    }

    if( arguments.length > 3 && myportal )
        _portal = myportal;
    else {
        _portal = NTM_FindCorrectPortalInt( _playerportal, ownername );
        if( _portal < 0 )
            _portal = NTM_FindPortalAreaInt( dest );
            if( _portal == -1 )
                return false;
    }
    if( !_portal )
        return false;
    _prearea = me.areaid;

    for( var i = 0 ; i < 20 ; ++i ){
        if( ( i % 5 ) == 0 ){
//            if( i == 10 )
//                NTM_MoveTo( _prearea, me.x + 6, me.y + 6 );
            NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _portal);
        }
        NTC_Delay(200);
        if( me.areaid != _prearea )
            break;
    }
    while( me.areaid == 0 )
        NTC_Delay(200);
    return ( me.areaid == dest );
}

function NT_Shoping_MakeTP(dest)
{
    var _usetp = true;
    var _portal;
    var _portalname;

    if( NTC_InTown() )
      return true;
    if( arguments.length < 1 )
        _usetp = false;
    if( !NTC_CastSkill( 220, NTC_HAND_RIGHT ) )
        return false;
    NTC_PingDelay( 500 );

    _portalname = GetLocaleString( 3226 );
    for( var i = 0 ; i <= 2 ; ++i ){
        _portal = NTC_FindUnit( NTC_UNIT_OBJECT, _portalname );
        if( _portal ){
            do{
                if( _portal.mode == 2 && NTC_CheckOwner( _portal ) ){
                    if( _usetp )
                        return NT_Shoping_UsePortal( "BluePortal", dest, me.name, _portal );

                    return true;
                }
            } while( _portal.GetNext() );
        }
        if( i < 2 )
            NTC_Delay(500);
    }
    return false;
}

Code2:

Code:

[Type] == HandToHand && [Quality] == Magic # [IAS] >= 20 && [AssassinSkills]+[TrapsSkillTab]+[SkillLightningSentry] >= 3
[Type] == HandToHand && [Quality] == Magic # [AssassinSkills]+[TrapsSkillTab]+[SkillLightningSentry] >= 5

//----- Helme -----
[Type] == helm && [Class] == elite && [Quality] >= magic # [Defense] >= 300 && [itemtohitpercentperlevel] >= 1
[Type] == helm && [Quality] == magic # ([MaxHp] >= 40 || [FHR] == 10) && [Sockets] == 3

//----- Handschuhe -----
[Type] == Gloves && [Quality] == magic # [IAS] == 20 && [JavelinandSpearSkillTab] == 3
[Name] == VampireboneGloves && [Quality] == magic # [IAS] == 20 && [JavelinandSpearSkillTab] == 3
[Name] == Vambraces && [Quality] == magic # [IAS] == 20 && [JavelinandSpearSkillTab] == 3
[Name] == CrusaderGauntlets && [Quality] == magic # [IAS] == 20 && [JavelinandSpearSkillTab] == 3
[Name] == Vampirebone Gloves && [Quality] == magic # [IAS] == 20 && [JavelinandSpearSkillTab] == 3
[Name] == Vambraces && [Quality] == magic # [IAS] == 20 && [JavelinandSpearSkillTab] == 3
[Name] == CrusaderGauntlets && [Quality] == magic # [IAS] == 20 && [JavelinandSpearSkillTab] == 3

//----- Rüstungen -----
[name] == ancientarmor && [quality] == magic # [sockets] == 4 && [maxhp] >= 90
//[name] == ancientarmor && [quality] == magic # [sockets] == 4 && [fhr] == 24
[name] == archonplate && [quality] == magic # [sockets] == 4 && [maxhp] >= 90
[name] == archonplate && [quality] == magic # [sockets] == 4 && [fhr] == 24
[name] == lightplate && [quality] == magic # [sockets] == 3 && [MaxHP] <= 80 && [MaxHP] >= 60 && [itemlevelreq] <= 30
[name] == mageplate && [quality] == magic # [sockets] == 3 && [MaxHP] <= 80 && [MaxHP] >= 60 && [itemlevelreq] <= 30

//----- Schilde ----
[Type] == Shield && [Class] == elite && [Quality] == Magic && [Flag] != ethereal # [Sockets] >= 3 && [FBR] == 30
//[Type] == Shield && [Quality] == Magic && [Flag] != ethereal # [Sockets] >= 3 && [FBR] == 30
[Type] == Shield && [Quality] == Magic && [Flag] != ethereal # [Sockets] >= 3 && [MaxHP] >= 60

//----- NecroStäbe -----
[Name] == BoneWand && [Quality] <= superior # [SkillBoneSpear] == 3 && [SkillLowerResist] >= 1
[Name] == BoneWand && [Quality] <= superior # [SkillBoneSpirit] == 3 && [SkillLowerResist] >= 1

[Name] == GrimWand && [Quality] <= superior # [SkillBoneSpear] == 3 && [SkillLowerResist] >= 1
[Name] == GrimWand && [Quality] <= superior # [SkillBoneSpirit] == 3 && [SkillLowerResist] >= 1

[Name] == BoneWand && [Quality] <= superior # [SkillBoneSpear] == 3 && [SkillRevive] >= 1
[Name] == BoneWand && [Quality] <= superior # [SkillBoneSpirit] == 3 && [SkillRevive] >= 1
[Name] == GrimWand && [Quality] <= superior # [SkillBoneSpear] == 3 && [SkillRevive] >= 1
[Name] == GrimWand && [Quality] <= superior # [SkillBoneSpirit] == 3 && [SkillRevive] >= 1

[Name] == BoneWand && [Quality] <= superior # [SkillBoneSpear] == 3 && [SkillClayGolem] >= 1
[Name] == BoneWand && [Quality] <= superior # [SkillBoneSpirit] == 3 && [SkillClayGolem] >= 1
[Name] == GrimWand && [Quality] <= superior # [SkillBoneSpear] == 3 && [SkillClayGolem] >= 1
[Name] == GrimWand && [Quality] <= superior # [SkillBoneSpirit] == 3 && [SkillClayGolem] >= 1

[Name] == BoneWand && [Quality] <= superior # [SkillBoneSpear] == 3 && [SkillDecrepify] >= 1
[Name] == BoneWand && [Quality] <= superior # [SkillBoneSpirit] == 3 && [SkillDecrepify] >= 1
[Name] == GrimWand && [Quality] <= superior # [SkillBoneSpear] == 3 && [SkillDecrepify] >= 1
[Name] == GrimWand && [Quality] <= superior # [SkillBoneSpirit] == 3 && [SkillDecrepify] >= 1

[Name] == BoneWand && [Quality] <= superior # [SkillBoneSpirit] == 3 && [SkillBoneSpear] >= 3
[Name] == GrimWand && [Quality] <= superior # [SkillBoneSpirit] == 3 && [SkillBoneSpear] >= 3

//----- SorcStäbe -----
[Name] == GnarledStaff && [Quality] <= superior # [SkillEnergyShield] == 3 && [SkillChillingArmor] >= 1
[Name] == Battle Staff && [Quality] <= superior # [SkillEnergyShield] == 3 && [SkillChillingArmor] >= 1

[Name] == GnarledStaff && [Quality] <= superior # [SkillEnergyShield] == 3 && [SkillEnchant] >= 1
[Name] == Battle Staff && [Quality] <= superior # [SkillEnergyShield] == 3 && [SkillEnchant] >= 1

[Name] == GnarledStaff && [Quality] <= superior # [SkillEnergyShield] == 3 && [SkillEnchant] >= 1
[Name] == Battle Staff && [Quality] <= superior # [SkillEnergyShield] == 3 && [SkillEnchant] >= 1

//----- Assasinen Claws -----
[Type] == HandToHand && [Quality] == Magic # [AssassinSkills] == 2 && [SkillLightningSentry] == 3
[Type] == HandToHand && [Quality] == Magic # [TrapsSkillTab] == 3 && [SkillLightningSentry] == 3

[Type] == HandToHand && [Quality] == Magic # [AssassinSkills] == 2 && [SkillVenom] == 3
[Type] == HandToHand && [Quality] == Magic # [ShadowDisciplinesSkillTab] == 3 && [SkillVenom] == 3

[Type] == HandToHand && [Quality] == Magic # [AssassinSkills] == 2 && [SkillFade] == 3
[Type] == HandToHand && [Quality] == Magic # [ShadowDisciplinesSkillTab] == 3 && [SkillFade] == 3

[Type] == HandToHand && [Quality] == Magic # [AssassinSkills] == 2 && [SkillShadowMaster] == 3 && [SkillWeaponBlock] == 3
[Type] == HandToHand && [Quality] == Magic # [ShadowDisciplinesSkillTab] == 3 && [SkillShadowMaster] == 3 && [SkillWeaponBlock] == 3

[Type] == HandToHand && [Quality] == Magic # [IAS] >= 20 && [AssassinSkills]+[TrapsSkillTab]+[SkillLightningSentry] >= 3
[Type] == HandToHand && [Quality] == Magic # [AssassinSkills]+[TrapsSkillTab]+[SkillLightningSentry] >= 5

[Type] == HandToHand && [Class] >= exceptional && [Quality] == Magic # [ItemToHitPerLevel] >= 1 && [AssassinSkills]+[TrapsSkillTab]+[SkillLightningSentry] >= 3
[Type] == HandToHand && [Class] == elite && [Quality] == Magic # [ItemToHitPerLevel] >= 1 && [IAS] >= 20

([Type] == handtohand || [Type] == assassinclaw || [Type] == assassinitem || [Type] == katars) && [Quality] >= magic # [SkillLightningSentry]+[trapsskilltab] >= 5
([Type] == handtohand || [Type] == assassinclaw || [Type] == assassinitem || [Type] == katars) && [Quality] >= magic # [SkillLightningSentry] >= 3 && ([trapsskilltab] >= 3 || [assassinskills] >= 2)

([Type] == handtohand || [Type] == assassinclaw || [Type] == assassinitem || [Type] == katars) && [Quality] == Magic # [AssassinSkills] == 2 && [SkillLightningSentry] == 3
([Type] == handtohand || [Type] == assassinclaw || [Type] == assassinitem || [Type] == katars)  && [Quality] == Magic # [TrapsSkillTab] == 3 && [SkillLightningSentry] == 3

([Type] == handtohand || [Type] == assassinclaw || [Type] == assassinitem || [Type] == katars)  && [Quality] == Magic # [AssassinSkills] == 2 && [SkillVenom] == 3
([Type] == handtohand || [Type] == assassinclaw || [Type] == assassinitem || [Type] == katars)  && [Quality] == Magic # [ShadowDisciplinesSkillTab] == 3 && [SkillVenom] == 3

([Type] == handtohand || [Type] == assassinclaw || [Type] == assassinitem || [Type] == katars)  && [Quality] == Magic # [AssassinSkills] == 2 && [SkillFade] == 3
([Type] == handtohand || [Type] == assassinclaw || [Type] == assassinitem || [Type] == katars)  && [Quality] == Magic # [ShadowDisciplinesSkillTab] == 3 && [SkillFade] == 3

([Type] == handtohand || [Type] == assassinclaw || [Type] == assassinitem || [Type] == katars)  && [Quality] == Magic # [AssassinSkills] == 2 && [SkillShadowMaster] == 3 && [SkillWeaponBlock] == 3
([Type] == handtohand || [Type] == assassinclaw || [Type] == assassinitem || [Type] == katars)  && [Quality] == Magic # [ShadowDisciplinesSkillTab] == 3 && [SkillShadowMaster] == 3 && [SkillWeaponBlock] == 3

([Type] == handtohand || [Type] == assassinclaw || [Type] == assassinitem || [Type] == katars)  && [Quality] == Magic # [IAS] >= 20 && [AssassinSkills]+[TrapsSkillTab]+[SkillLightningSentry] >= 3
([Type] == handtohand || [Type] == assassinclaw || [Type] == assassinitem || [Type] == katars)  && [Quality] == Magic # [AssassinSkills]+[TrapsSkillTab]+[SkillLightningSentry] >= 5

([Type] == handtohand || [Type] == assassinclaw || [Type] == assassinitem || [Type] == katars)  && [Class] >= exceptional && [Quality] == Magic # [ItemToHitPerLevel] >= 1 && [AssassinSkills]+[TrapsSkillTab]+[SkillLightningSentry] >= 3
([Type] == handtohand || [Type] == assassinclaw || [Type] == assassinitem || [Type] == katars)  && [Class] == elite && [Quality] == Magic # [ItemToHitPerLevel] >= 1 && [IAS] >= 20


//----- Paladine Zepter -----
[Type] == scepter && [Quality] == magic # ( [PaladinSkills] == 2 || [PaliCombatSkillTab] >= 2 ) && [SkillFistOfTheHeavens]+[SkillConviction] >= 5 &&  [Sockets] >= 3
[Type] == scepter && [Quality] == magic # [fcr] >=10 && ( [PaladinSkills] == 2 || [PaliCombatSkillTab] >= 2 ) && [SkillBlessedHammer]+[SkillConcentration] >= 5
//[Type] == scepter && [Quality] == magic # ( [PaladinSkills] == 2 || [PaliCombatSkillTab] >= 2 ) && [SkillBlessedHammer]+[SkillConcentration] >= 5

//----- Bo Speer -----
//[Name] == Throwing Spear && [Quality] == Magic # [WarCriesSkillTab] >= 3 && [maxdamage] >= 11 //Schwarz
//[Name] == Throwing Spear && [Quality] == Magic # [WarCriesSkillTab] >= 3 && ( [LifeLeech] >= 6 || [ManaLeech] >= 6 ) //Rot
//[Name] == Throwing Spear && [Quality] == Magic # [WarCriesSkillTab] >= 3 && [IAS] >= 40 // Gelb
//[Name] == Throwing Spear && [Quality] == Magic # [WarCriesSkillTab] >= 3 && [coldmindam] >= 2 // Blau
//[Name] == Throwing Spear && [Quality] == Magic # [WarCriesSkillTab] >= 3 && [PoisonMindam] >= 50 // Grün
//[Name] == Throwing Spear && [Quality] == Magic # [WarCriesSkillTab] >= 3

//[Name] == Glaive && [Quality] == Magic # [WarCriesSkillTab] >= 3 && [maxdamage] >= 11 //Schwarz
//[Name] == Glaive && [Quality] == Magic # [WarCriesSkillTab] >= 3 && ( [LifeLeech] >= 6 || [ManaLeech] >= 6 ) //Rot
//[Name] == Glaive && [Quality] == Magic # [WarCriesSkillTab] >= 3 && [IAS] >= 40 // Gelb
//[Name] == Glaive && [Quality] == Magic # [WarCriesSkillTab] >= 3 && [coldmindam] >= 2 // Blau
//[Name] == Glaive && [Quality] == Magic # [WarCriesSkillTab] >= 3 && [PoisonMindam] >= 50 // Grün
//[Name] == Glaive && [Quality] == Magic # [WarCriesSkillTab] >= 3



//----- Handschuhe -----
[Type] == Gloves && [Quality] == magic # [IAS] == 20 && [JavelinandSpearSkillTab] == 3
[Name] == VampireboneGloves && [Quality] == magic # [IAS] == 20 && [JavelinandSpearSkillTab] == 3
[Name] == Vambraces && [Quality] == magic # [IAS] == 20 && [JavelinandSpearSkillTab] == 3
[Name] == CrusaderGauntlets && [Quality] == magic # [IAS] == 20 && [JavelinandSpearSkillTab] == 3
[Name] == Vampirebone Gloves && [Quality] == magic # [IAS] == 20 && [JavelinandSpearSkillTab] == 3
[Name] == Vambraces && [Quality] == magic # [IAS] == 20 && [JavelinandSpearSkillTab] == 3
[Name] == CrusaderGauntlets && [Quality] == magic # [IAS] == 20 && [JavelinandSpearSkillTab] == 3

//----- Rüstungen -----
[Type] == Armor && [Quality] == Magic && ([Class] == Normal || [Class] == Exceptional) # [MaxHP] <= 80 && [MaxHP] >= 60 && [Sockets] == 3
[Type] == Armor && [Quality] == Magic && [Flag] != ethereal # [Sockets] == 4 && ([MaxHP] >= 60 || [FHR] == 24)

//----- Schilde ----
[Type] == Shield && [Class] == elite && [Quality] == Magic && [Flag] != ethereal # [Sockets] >= 3 && [FBR] == 30
//[Type] == Shield && [Quality] == Magic && [Flag] != ethereal # [Sockets] >= 3 && [FBR] == 30
[Type] == Shield && [Quality] == Magic && [Flag] != ethereal # [Sockets] >= 3 && [MaxHP] >= 60

//----- Assasinen Claws -----
[Type] == HandToHand && [Quality] == Magic # [AssassinSkills] == 2 && [SkillLightningSentry] == 3
[Type] == HandToHand && [Quality] == Magic # [TrapsSkillTab] == 3 && [SkillLightningSentry] == 3

[Type] == HandToHand && [Quality] == Magic # [AssassinSkills] == 2 && [SkillVenom] == 3
[Type] == HandToHand && [Quality] == Magic # [ShadowDisciplinesSkillTab] == 3 && [SkillVenom] == 3

[Type] == HandToHand && [Quality] == Magic # [AssassinSkills] == 2 && [SkillFade] == 3
[Type] == HandToHand && [Quality] == Magic # [ShadowDisciplinesSkillTab] == 3 && [SkillFade] == 3

[Type] == HandToHand && [Quality] == Magic # [AssassinSkills] == 2 && [SkillShadowMaster] == 3 && [SkillWeaponBlock] == 3
[Type] == HandToHand && [Quality] == Magic # [ShadowDisciplinesSkillTab] == 3 && [SkillShadowMaster] == 3 && [SkillWeaponBlock] == 3

Code3:
Code:

/**
*        This file was modified by [Only registered and activated users can see links. Click Here To Register...]
*        Check the programming section for updates and further scripts
*        Last Update: 23:10 29.08.2011
*
*        Hotkey                                Description
*
*        Pause/Break                        Pauses the current bot script.
*        Page up (PgUp)                Skips the current bot script.
*        Page down (PgDn)        Repeats the previous bot script
*        Home (Pos1)                        Shows your current coordinates and areaid.
*        End                                        Shows current ping in status text bar.
*        Insert (Ins)                Logs all items on your char to either XML or TXT.
*        Delete (Del)                Exits the game. NOTE: Always use this key to leave a game!
*        Backspace                        Force trigger auto mule. NOTE: Won't work unless auto mule is actually activated for the current char.
*/

Include("NTBot/char_configs/MWConfig_GlobalSettings.ntl");

var NTConfig_UseRedemptionHP;
var NTConfig_UseRedemptionMP;

//=========================================================================================================
// base shop d2x £¨if need shop d2c, set this true £©
var is_D2C = false;

// shop npc number£¬can shop multi npc, just need push npc number uself.
var shop_npcNumber = new Array();
//shop_npcNumber.push( 1 );
//shop_npcNumber.push( 4 );
//shop_npcNumber.push( 5 );
//shop_npcNumber.push( 13 );
shop_npcNumber.push( 12 );
// Act 1: Akara(1),    Charsi(2),  Gheed(3)
// Act 2: Drognan(4),  Fara(5),    Elzix(6)
// Act 3: Ormus(7),    Hratli(8),  Asheara(9)
// Act 4: Jamella(10), Halbu(11)
// Act 5: Anya(12),    Larzuk(13), Malah(14)

// auto kill anya red tp undead
var autoClear = false;
// shop anya go wp, if u want go wp, set it to true£¬base do not go wp
var anyaGoWp = false;

// get error then £º"quit game" or "come on"£¬base is "come on"
var errorGoQuitGame = false;
//==========================================================================================================

function NT_LoadConfig()
{
        MW_LoadGlobalSettings();
       
        //------------------------------------------------------------------------------
        //
        // Run Configuration
        //
        //------------------------------------------------------------------------------
       
        // Use the following syntax for activating botscripts: MWConfig_Script.push([<ScriptName>, <Script runtime in minutes (0 is infinite)>]);
        // ***************** Current schedule ******************
        MWConfig_Script.push("NTShopbot.ntj");
//MWConfig_Script.push(["MWWaypointCatcher.ntj", 0]); MWConfig_WaypointCatcherActs = [1, 2, 3, 4, 5]; MWConfig_TPWaypoints = true;
        //MWConfig_Script.push(["NTAndariel.ntj", 5]);
        //MWConfig_Script.push(["NTMausoleum.ntj", 10]); MWConfig_ClearPathSpectypes.Mausoleum = 0; MWConfig_ClearAreaSpectypes.Mausoleum = 0x01; NTConfig_KillBloodRaven = true;
        //MWConfig_Script.push(["NTPit.ntj", 10]); MWConfig_ClearPathSpectypes.Pit = 0; MWConfig_ClearAreaSpectypes.Pit = 0x01; NTConfig_ClearPitLevel1 = 2; // 0 : don't clear, 1 : clear path only, 2 : clear all
        //MWConfig_Script.push(["NTCountess.ntj", 5]); MWConfig_ClearPathSpectypes.Countess = 0; MWConfig_ClearAreaSpectypes.Countess = 0;
        //MWConfig_Script.push(["MWSuperChests.ntj", 20]); MWConfig_SuperChestClearAreaRadius = 10; MWConfig_SuperChestAreas = ["Cave Level 2", "Mausoleum", "Hole Level 2", "Pit Level 2", "Sewers Level 3", "Halls of the Dead Level 2", "Stony Tomb Level 2", "Maggot's Lair Level 3", "Arachnid Lair", "Swampy Pit Level 3", "Flayer Dungeon", "Sewers Level 2", "Abbadon", "Pit of Acheron", "Drifter Cavern", "Infernal Pit", "Icy Cellar", "Halls of Pain"];
        //MWConfig_Script.push(["NTSummoner.ntj", 5]); NTConfig_KillFireEye = false; MWConfig_ClearPathSpectypes.Summoner = 0;
        //MWConfig_Script.push(["NTAncientTunnels.ntj", 10]); MWConfig_ClearPathSpectypes.AncientTunnels = 0x01; MWConfig_ClearAreaSpectypes.AncientTunnels = 0x01;
        //MWConfig_Script.push(["MWKurastSewers.ntj", 5]); MWConfig_ClearPathSpectypes.KurastSewers = 0;
        //MWConfig_Script.push(["NTTravincal.ntj", 5]);
        //MWConfig_Script.push(["NTMephisto.ntj", 5]); MWConfig_OpenMephistoChest = true; MWConfig_MephistoClearArea = false;
        //MWConfig_Script.push(["MWSuperChests.ntj", 20]); MWConfig_SuperChestClearAreaRadius = 5; MWConfig_SuperChestAreas = ["Arachnid Lair", "Swampy Pit Level 3", "Flayer Dungeon", "Abbadon", "Pit of Acheron", "Drifter Cavern", "Infernal Pit", "Icy Cellar"];
        //MWConfig_Script.push(["NTNihlathak.ntj", 5]); MWConfig_ClearPathSpectypes.Nihlathak = 0; NTConfig_PindleskinExtension = false; MWConfig_SkipOnTombVipers = false;
        //MWConfig_Script.push(["NTBaal.ntj", 10]); NTConfig_KillBaal = true; MWConfig_SkipBaalOnDolls = true; MWConfig_SkipBaalOnSouls = false; MWConfig_DoBaalPreAttack = true;
        //MWConfig_Script.push(["NTDiablo.ntj", 10]); MWConfig_KillFullInfectorMob = true; MWConfig_StartAtStar = false; MWConfig_IgnoreSealOpeningErrors = false; MWConfig_FastDia = true;

        // *****************************************************
       
        //------------------------------------------------------------------------------
        // Available Scripts
        //------------------------------------------------------------------------------
        /* NOTE:
        // The scripts below are actually commented out; to add a script, copy one of the lines below and add it to the current schedule above. ;)
        // You should also get yourself a decent editor that supports syntax highlighting for JavaScript, I'd recommend Notepad++. (http://notepad-plus-plus.org/download/)
        // *********************** Act I ***********************
       
        MWConfig_Script.push(["NTMausoleum.ntj", 10]); MWConfig_ClearPathSpectypes.Mausoleum = 0; MWConfig_ClearAreaSpectypes.Mausoleum = 0x01; NTConfig_KillBloodRaven = true;
        MWConfig_Script.push(["NTTristram.ntj", 10]); NTConfig_KillRakanishu = true;
        MWConfig_Script.push(["NTHole.ntj", 10]); MWConfig_ClearPathSpectypes.Hole = 0; MWConfig_ClearAreaSpectypes.Hole = 0x01; NTConfig_ClearHoleLevel1 = 1; // 0 : don't clear, 1 : clear path only, 2 : clear all
        MWConfig_Script.push(["NTTreehead.ntj", 10]);
        MWConfig_Script.push(["MWColdcrow.ntj", 10]); MWConfig_ClearCaveMode = 0; // 0: Only kill coldcrow; 1: Clear Cave Level 1; 2: Clear both Cave Level 1 & 2
        MWConfig_Script.push(["NTCountess.ntj", 5]); MWConfig_ClearPathSpectypes.Countess = 0; MWConfig_ClearAreaSpectypes.Countess = 0;
        MWConfig_Script.push(["NTPit.ntj", 10]); MWConfig_ClearPathSpectypes.Pit = 0; MWConfig_ClearAreaSpectypes.Pit = 0x01; NTConfig_ClearPitLevel1 = 2; // 0 : don't clear, 1 : clear path only, 2 : clear all
        MWConfig_Script.push(["NTAndariel.ntj", 10]);
       
        // *********************** Act II **********************
       
        MWConfig_Script.push(["NTRadament.ntj", 10]); MWConfig_ClearPathSpectypes.Radament = 0;
        MWConfig_Script.push(["MWMaggotsLair.ntj", 10]); MWConfig_ClearPathSpectypes.MaggotsLair = 0; MWConfig_ClearAreaSpectypes.MaggotsLair = 0x01;
        MWConfig_Script.push(["NTAncientTunnels.ntj", 10]); MWConfig_ClearPathSpectypes.AncientTunnels = 0; MWConfig_ClearAreaSpectypes.AncientTunnels = 0x01;
        MWConfig_Script.push(["NTSummoner.ntj", 5]); NTConfig_KillFireEye = false; MWConfig_ClearPathSpectypes.Summoner = 0;
        MWConfig_Script.push(["NTDuriel.ntj", 10]); MWConfig_ClearPathSpectypes.Duriel = 0;
       
        // ********************** Act III **********************
       
        MWConfig_Script.push(["MWFlayerJungle.ntj", 10]); MWConfig_ClearAreaSpectypes.FlayerJungle = 0x01;
        MWConfig_Script.push(["MWKurastSewers.ntj", 5]); MWConfig_ClearPathSpectypes.KurastSewers = 0;
        MWConfig_Script.push(["MWKurastTemples.ntj", 5]); MWConfig_ClearPathSpectypes.KurastTemples = 0; MWConfig_ClearAreaSpectypes.KurastTemples = 0x01;
        MWConfig_Script.push(["NTTravincal.ntj", 5]);
        MWConfig_Script.push(["NTMephisto.ntj", 5]); MWConfig_OpenMephistoChest = true; MWConfig_MephistoClearArea = true;
       
        // *********************** Act IV **********************
       
        MWConfig_Script.push(["NTIzual.ntj", 5]); MWConfig_ClearPathSpectypes.Izual = 0;
        MWConfig_Script.push(["MWRiverOfFlame.ntj", 10]); MWConfig_ClearAreaSpectypes.RiverOfFlame = 0x01;
        MWConfig_Script.push(["NTHephasto.ntj", 10]); MWConfig_ClearPathSpectypes.Hephasto = 0;
        MWConfig_Script.push(["NTDiablo.ntj", 10]); MWConfig_KillFullInfectorMob = true; MWConfig_StartAtStar = false; MWConfig_IgnoreSealOpeningErrors = false; MWConfig_FastDia = true;
       
        // *********************** Act V ***********************
       
        MWConfig_Script.push(["MWAbbadon.ntj", 10]); MWConfig_ClearPathSpectypes.Abbadon = 0; MWConfig_ClearAreaSpectypes.Abbadon = 0x01;
        MWConfig_Script.push(["MWPitOfAcheron.ntj", 10]); MWConfig_ClearPathSpectypes.PitOfAcheron = 0; MWConfig_ClearAreaSpectypes.PitOfAcheron = 0x01;
        MWConfig_Script.push(["MWInfernalPit.ntj", 10]); MWConfig_ClearPathSpectypes.InfernalPit = 0; MWConfig_ClearAreaSpectypes.InfernalPit = 0x01;
        MWConfig_Script.push(["MWHallsOfPain.ntj", 15]); MWConfig_ClearAreaSpectypes.HallsOfPain = 0x01; MWConfig_ClearHallsOfAnguish = true;
        MWConfig_Script.push(["NTPindleskin.ntj", 5]); NTConfig_NihlathakExtension = false; MWConfig_SkipOnTombVipers = true;
        MWConfig_Script.push(["NTEldritch.ntj", 5]); NTConfig_ShenkExtension = true;
        MWConfig_Script.push(["NTThreshSocket.ntj", 5]); MWConfig_ClearPathSpectypes.ThreshSocket = 0;
        MWConfig_Script.push(["NTFrozenRiver.ntj", 10]); MWConfig_ClearPathSpectypes.FrozenRiver = 0; MWConfig_ClearAreaSpectypes.FrozenRiver = 0x01;
        MWConfig_Script.push(["NTGlacialTrail.ntj", 10]); MWConfig_ClearPathSpectypes.GlacialTrail = 0; MWConfig_ClearAreaSpectypes.GlacialTrail = 0x01;
        MWConfig_Script.push(["NTIcyCellar.ntj", 5]); MWConfig_ClearPathSpectypes.IcyCellar = 0; MWConfig_ClearAreaSpectypes.IcyCellar = 0x01;
        MWConfig_Script.push(["NTNihlathak.ntj", 5]); MWConfig_ClearPathSpectypes.Nihlathak = 0; NTConfig_PindleskinExtension = false; MWConfig_SkipOnTombVipers = true;
        MWConfig_Script.push(["MWWorldstoneKeep.ntj", 10]); MWConfig_ClearAreaSpectypes.WorldstoneKeep = 0x01; MWConfig_SkipLevelOnWitches = true; MWConfig_SkipLevelOnSouls = false; MWConfig_SkipLevelOnDeathLords = true;
        MWConfig_Script.push(["NTBaal.ntj", 10]); NTConfig_KillBaal = true; MWConfig_SkipBaalOnDolls = true; MWConfig_SkipBaalOnSouls = false; MWConfig_DoBaalPreAttack = true; MWConfig_ClearPathSpectypes.Baal = 0;
       
        // *********************** Misc ************************
       
        MWConfig_Script.push(["MWAuraStack.ntj", 10]); MWConfig_StackRepetitions = 100; MWConfig_ResetMercWeaponAfterStacking = false;
        MWConfig_Script.push(["MWSuperChests.ntj", 20]); MWConfig_SuperChestClearAreaRadius = 10; MWConfig_SuperChestAreas = ["Cave Level 2", "Mausoleum", "Hole Level 2", "Pit Level 2", "Sewers Level 3", "Halls of the Dead Level 2", "Stony Tomb Level 2", "Maggot's Lair Level 3", "Ancient Tunnels", "Tal Rasha's Tomb", "Arachnid Lair", "Swampy Pit Level 3", "Flayer Dungeon", "Sewers Level 2", "Abbadon", "Pit of Acheron", "Drifter Cavern", "Infernal Pit", "Icy Cellar", "Halls of Pain"];
        MWConfig_Script.push(["MWRush.ntj", 0]); MWConfig_IsRusher = true;
        MWConfig_Script.push(["MWWaypointCatcher.ntj", 0]); MWConfig_WaypointCatcherActs = [1, 2, 3, 4, 5]; MWConfig_TPWaypoints = true; MWConfig_SkipHallsOfPain = true; MWConfig_ClearWaypointPaths = false;
        MWConfig_Script.push(["MWIdleMode.ntj", 0]); MWConfig_IdleModeRuntime = 5; // Runtime in Minutes
        MWConfig_Script.push(["NTCows.ntj", 10]);
        MWConfig_Script.push(["MWBloodyRejuvs.ntj", 10]);
        MWConfig_Script.push(["MWOrganHarvest.ntj", 10]); MWConfig_EnterInvalidUberPortals = true; MWConfig_PauseOnLackOfKeys = false; MWConfig_IntendedUberPortal = 0; // Matron's Den: 133; Forgotten Sands: 134; Furnace Of Pain: 135;
        MWConfig_Script.push(["MWUberTristram.ntj", 10]); MWConfig_PauseOnLackOfOrgans = false; MWConfig_PauseOnKeptTorch = false;
        MWConfig_Script.push(["MWAnyasBargain.ntj", 10]); MWConfig_ShoppingMinGold = 500000; MWConfig_ShoppingAttempts = 200;
       
        // ************ Leech and friends by lanara ************

        MWConfig_Script.push(["NTDiabloLeechFight.ntj", 10]); MWConfig_StartAtStar = true; MWConfig_EnterUnsafeTP = true; NTConfig_PreBuff = true; MWConfig_IgnoreSealOpeningErrors = true; NTConfig_Leader = "LeaderNameGoesHere";
        MWConfig_Script.push(["NTBaalLeech.ntj", 10]); NTConfig_KillBaal = true; MWConfig_EnterUnsafeTP = false; NTConfig_Leader = "LeaderNameGoesHere";
        MWConfig_Script.push(["NTBaalLeechFight.ntj", 10]); NTConfig_KillBaal = true; MWConfig_DoBaalPreAttack = true; MWConfig_EnterUnsafeTP = true; NTConfig_Leader = "LeaderNameGoesHere";
       
        */
        //------------------------------------------------------------------------------
        // Misc Configuration
        //------------------------------------------------------------------------------
       
        NTConfig_SkipHealLife = 60;                // If you have more than this percent of life, you won't go to a healer.
        NTConfig_SkipHealMana = 40;                // If you have more than this percent of mana, you won't go to a healer
        NTConfig_UseMerc = true;                // Set to true if you use a mercenary, will revive merc at a reviver npc.

        // Exit game or to reset your Enigma if Teleport skill is missing (due to identifying an item having +x to Teleport [Sorceress only]). WARNING: Activating this feature may - though not likely will - result in the loss of your enigma. Use at your own risk and make sure your char has sufficient strength!
        // 0: Don't do anything; 1: Reset armor; 2: Exit game
        MWConfig_ResetArmorMode = 2;

        //------------------------------------------------------------------------------
        // Potion Configuration
        //------------------------------------------------------------------------------
       
        NTConfig_LifeThresh = 70;                // Drink a normal potion if under this percent of life.
        NTConfig_LifeRejuvThresh = 60;        // Drink a rejuvenation potion if under this percent of life.
        NTConfig_ManaThresh = 30;                // Drink a normal potion if under this percent of mana.
        NTConfig_ManaRejuvThresh = 0;        // Drink a rejuvenation potion if under this percent of mana.
       
        NTConfig_MercLifeThresh = 50;        // This is the threshold to use a life potion on your merc in percent.
        NTConfig_MercRejuvThresh = 30;        // This is the threshold to use a rejuv potion on your merc in percent.
       
        //------------------------------------------------------------------------------
        // Chicken Configuration
        //------------------------------------------------------------------------------
       
        // This is your chicken life. If you go below this threshhold, your char will exit the game. You can either enter a percentage (1-100), an absolute threshold (>100) or 0 to deactivate life chicken.
        NTConfig_LifeChicken = 30;
        // This is your chicken mana. If you go below this threshhold, your char will exit the game. You can either enter a percentage (1-100), an absolute threshold (>100) or 0 to deactivate mana chicken.
        NTConfig_ManaChicken = 0;
        // This is your merc's chicken life in percent. If your merc goes below this threshhold, your char will exit the game.
        NTConfig_MercChicken = 0;
        // Whether or not to disable chicken when you pause the bot.
        MWConfig_DisableChickenOnPause = true;
       
        //------------------------------------------------------------------------------
        // Inventory Configuration
        //------------------------------------------------------------------------------
       
        // Each number represents a slot in your inventory.
        // Set to 0 if the slot and its content must not be touched.
        // Set to 1 to allow access to this slot.
        // Set to 2 to select the slot that is used for storing keys. (if keys are kept at another slot, your char will try to move them)
        NTConfig_Columns[0] = [1,1,1,1,1,1,1,1,0,0];
        NTConfig_Columns[1] = [1,1,1,1,1,1,1,1,0,0];
        NTConfig_Columns[2] = [1,1,1,1,1,1,1,0,0,0];
        NTConfig_Columns[3] = [1,1,1,1,1,1,1,0,0,0];
       
        // Number of free columns. If less full columns are free stashing is set. Call SetFreeColumns(NTConfig_Columns) to always stash right away (recommended).
        NTConfig_FreeSpace = SetFreeColumns(NTConfig_Columns);

        // Maximum gold amount carried before going to stash.
        NTConfig_MinGoldToStash = 100000;
       
        // Set to true if your char is supposed to carry, buy and pick up keys. You do not need to add keys to your .nip files, they will be picked up anyway if this is set to true.
        MWConfig_CarryKeys = true;

        //------------------------------------------------------------------------------
        // Belt Configuration
        //------------------------------------------------------------------------------
               
        // Available types : "hp" = health, "mp" = mana, "rv" = rejuvenation.
        // Define how many columns are used for each potion type.
        MWConfig_BeltColType["hp"].Columns = 1;
        MWConfig_BeltColType["mp"].Columns = 1;
        MWConfig_BeltColType["rv"].Columns = 2;
       
        // Define minimum number of potions per column. If the actual number of potions in a column is below this value, your char will visit a merchant when in town in order to buy potions.
        MWConfig_BeltColType["hp"].MinPots = 3;
        MWConfig_BeltColType["mp"].MinPots = 3;

        // Visit Town and buy potions if your char lacks mana when trying to loot a corpse or teleport.
        MWConfig_BuyPotionsOnLackOfMana = true;
       
        // Set to true to replace low quality potions with higher quality potions that just dropped.
        MWConfig_ReplaceLowQualityPotions = true;

        //-----------------------------------------------------------------------------------
        // NipFile Configuration
        //-----------------------------------------------------------------------------------
        NTConfig_NIPFilePath.push("shoping/shoping.nip");
        NTConfig_NIPFilePath.push("private/normal.nip");
        NTConfig_NIPFilePath.push("private/magic_rare.nip");
        NTConfig_NIPFilePath.push("private/set.nip");
        NTConfig_NIPFilePath.push("private/unique.nip");
        NTConfig_NIPFilePath.push("private/craft.nip");
        NTConfig_NIPFilePath.push("private/temp.nip");
       
        //------------------------------------------------------------------------------
        // Pickit Configuration
        //------------------------------------------------------------------------------
       
        // Radius to check for dropped items. NOTE: The maximum is at about ~75, entering higher values will not have any effect.
        NTConfig_SnagRange = 70;
       
        // Set to true to check for dropped items whenever you kill a monster. (Recommended value to avoid crashes: false)
        MWConfig_PickItemsInstantly = true;
       
        //------------------------------------------------------------------------------
        // Chest Configuration
        //------------------------------------------------------------------------------
       
        // Select which containers shall be looted. 0: None; 1: Super Chests, 2: All
        MWConfig_OpenContainerMode = 2;
       
        // Set to true to check for dropped items right after opening a chest. NOTE: This will slow down your runs and therefore should definately be set to false when doing private games.
        MWConfig_PickChestLootsInstantly = false;
       
        // This is the range being checked for chests after clearing an area or room. NOTE: You should not set this too high, 30 is a good value.
        MWConfig_OpenChestsRange = 30;
       
        // If you do not like to open chests in a certain area, you can its areaid as an exception below. NOTE: All areaids can be found in "sdk\areas.txt".
        // MWConfig_ChestExceptions.push(<areaid1>, <areaid2>, <areaidn>);
       
        //------------------------------------------------------------------------------
        // Cubing Configuration
        //------------------------------------------------------------------------------
       
        // Set to true to enable cubing and crafting. NOTE: The recipes are added in the global config by default. If you like to craft certain recipe only using this very char, add those recipes below.
        NTConfig_Cubing = false;
       
        //------------------------------------------------------------------------------
        // General Configuration
        //------------------------------------------------------------------------------
       
        // Set to true to activate public mode. By activating public mode, your char will form a party, open TPs and do some chat outputs when running certain bot scripts.
        NTConfig_PublicMode = false;

        // Set to true to exit the game instantly if the game is public. This may happen sometimes due to an error pasting the password correctly.
        MWConfig_ExitGameOnMissingPassword = false;
       
        // Set to true to exit the game when another player expresses hostility towards you.
        me.quitonhostile = true;
       
        // This is the maximum time in seconds your char will remain in a single game. Set to 0 to stay in game infinitely.
        me.maxgametime = 3000;
       
        // This is the minimum time in seconds for your char to remain in a single game. Your char will not exit the game before this time elapsed.
        me.mingametime = 0;
       
        //------------------------------------------------------------------------------
        // Automule Configuration
        //------------------------------------------------------------------------------       
       
        // Set to true to enable auto mule.
        MWConfig_Automule.Activated = false;
       
        // The maximum stash load in percent before auto mule is triggered.
        MWConfig_Automule.MaxLoad = 95;
       
        // Set to true to show your stash's current load whenever managing stash.
        MWConfig_Automule.ShowCurrentLoad = false;
       
        // Set to true to finish your current game before muling, otherwise the game is left right away in case your stash is full.
        MWConfig_Automule.FinishGame = true;
       
        // Define which items are not to be touched when muling.
        MWConfig_Automule.DontMule.push("mule/dont_mule.nip");
        MWConfig_Automule.DontMule.push("mule/gems.nip");
       
        //------------------------------------------------------------------------------
        // Shrine Configuration
        //------------------------------------------------------------------------------
       
        // Set to true to activate nearby shrines. Shrines will only be activated if it is actually useful.
        MWConfig_ActivateNearbyShrines = true;
       
        // If you would like to skip shrines in a certain area, you can its areaid as an exception below. NOTE: All areaids can be found in "sdk\areas.txt".
        // MWConfig_ShrineExceptions.push(<areaid1>, <areaid2>, <areaidn>);
       
        //------------------------------------------------------------------------------
        // Precast Configuration
        //------------------------------------------------------------------------------
       
        // 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".
        MWConfig_PrecastSkills = [MWS_HOLY_SHIELD];
       
        // Set this to true if you would like to switch slots right after casting BC, BO and Shout. If set to false, your char will remain with the BO Slot until the whole precast procedure is done.
        MWConfig_SwitchSlotsAfterBoPrecast = true;
       
        //------------------------------------------------------------------------------
        // Attack Configuration
        //------------------------------------------------------------------------------
       
        // Specify your attack skills below. NOTE: Constants for all skill ids can be found in "scripts\libs\common\MWSkills.ntl".
        NTConfig_AttackSkill[0] = -1;                                        // This skill is used once whenever attacking a new target. Set to -1 to deactivate.
        NTConfig_AttackSkill[1] = MWS_BLESSED_HAMMER;        // Primary skill to bosses.
        NTConfig_AttackSkill[2] = MWS_CONCENTRATION;        // Primary aura to bosses. Set to -1 to deactivate.
        NTConfig_AttackSkill[3] = MWS_BLESSED_HAMMER;        // Primary skill to others.
        NTConfig_AttackSkill[4] = MWS_CONCENTRATION;        // Primary aura to others. Set to -1 to deactivate.
        NTConfig_AttackSkill[5] = MWS_HOLY_BOLT;                // Secondary skill in case monster is immune to primary skill. Set to 0 if you won't
        NTConfig_AttackSkill[6] = MWS_CONCENTRATION;        // Secondary aura. Set to 0 not to activate any aura.
        NTConfig_AttackSkill[7] = MWS_SALVATION;                // Aura to be used against Uber Mephisto. Set to -1 to deactivate.
       
        // Set to true if you want to clear area after killing boss. NOTE: This only affects a few botscripts.
        NTConfig_ClearPosition = false;
       
        // Set to true to clear area when killing a boss and the position is crowded by monsters. NOTE: Setting this to true may cause NTA_KillMonster() to fail way more often.
        MWConfig_ClearBossPosition = false;
       
        // This is the number of attacks to be performed before the the character tries to move to another position. Set to 0 not to reposition.
        MWConfig_AttacksBeforeRepositioning = 25;

        // Define a time limit for your attacks for each type of monster.
        MWConfig_AttackTimeLimit[0] = 20;        // Maximum time in seconds to attack a normal monster
        MWConfig_AttackTimeLimit[1] = 120;        // Maximum time in seconds to attack a super unique monster
        MWConfig_AttackTimeLimit[2] = 30;        // Maximum time in seconds to attack a champion
        MWConfig_AttackTimeLimit[3] = 120;        // Maximum time in seconds to attack a bosse
        MWConfig_AttackTimeLimit[4] = 30;        // Maximum time in seconds to attack a minion
       
        // 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 = [];
       
        // 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.
        // 2: Skip the monster.
        // 3: Attack the monster using NTConfig_AttackSkill[8] and NTConfig_AttackSkill[9]
        NTConfig_BehaviourOnImmuneMonster = 0;
       
        NTConfig_AttackSkill[8] = -1;        // Skill to be used against user defined immunes.
        NTConfig_AttackSkill[9] = -1;        // Untimed Skill to be used against user defined immunes.
       
        // Activate Redemption if your health is lower than this percentage. Set to 0 not to use Redemption.
        NTConfig_UseRedemptionHP = 80;
       
        // Activate Redemption if your health is lower than this percentage. Set to 0 not to use Redemption.
        NTConfig_UseRedemptionMP = 60;
       
        // Select whether or not you'd like to swap slots right before killing a boss in order to benefit from some extra MF in your second slot.
        // The first element can either be the classid of the target or its name (case insensitive), second element is the life threshold in percent.
        //MWConfig_SlotSwapMonsters.push([156, 50]); // Andariel, 50%
        //MWConfig_SlotSwapMonsters.push([211, 20]); // Duriel, 20%
        //MWConfig_SlotSwapMonsters.push([242, 20]); // Mephisto, 20%
        //MWConfig_SlotSwapMonsters.push([243, 20]); // Diablo, 20%
        //MWConfig_SlotSwapMonsters.push([544, 15]); // Baal, 15%

        // Check self safe in field (NOT in town). Set to 0 if you won't.
        // 0x01 : Potion
        // 0x02 : Poison
        // 0x04 : Amplify Damage
        // 0x08 : Weaken
        // 0x10 : Iron Maiden
        // 0x20 : Decrepify
        // 0x40 : Lower Resist
        NTConfig_CheckSelfSafe = 0;

        // Check merc's safe in field (NOT in town). Set to 0 if you won't.
        // 0x01 : Death
        // 0x02 : Poison
        // 0x04 : Amplify Damage
        // 0x08 : Weaken
        // 0x10 : Iron Maiden
        // 0x20 : Decrepify
        // 0x40 : Lower Resist
        NTConfig_CheckMercSafe = 0x01;
}

Danke im vorraus

Viele Grüße

gehen

kal_el 04/08/2012 21:08

haste den bot mal neu gestartet nachdem einfügen von dem teil?
das is erstmal pflicht.


All times are GMT +2. The time now is 14:50.

Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.