|
You last visited: Today at 22:27
Advertisement
[Release] Muddy's D2NT
Discussion on [Release] Muddy's D2NT within the Diablo 2 Programming forum part of the Diablo 2 category.
11/09/2011, 10:54
|
#3856
|
elite*gold: 0
Join Date: Nov 2010
Posts: 190
Received Thanks: 52
|
ich habe folgendes problem, ich kriegs einfach nicht hin den bot die superchests in lower kurast aufmachen zu lassen !? kann mir da bitte wer helfen? ich find nedmal die einstellung für die kisten...
jetzt habe ich in der superchest spalte alle gebiete rausgelöscht und nur "Lower Kurast" eingetragen, aber das klappt auch ned -.-
|
|
|
11/09/2011, 10:55
|
#3857
|
elite*gold: 0
Join Date: Jun 2011
Posts: 285
Received Thanks: 185
|
Quote:
Originally Posted by Abfahrt
Zu den Tombs/Superchests, da habe ich wohl die ganzen Erweiterungen überlesen, sprich garnicht gemerkt, dass TombChests schon integriert sind  .
In den CowSkripten habe ich
Code:
NTC_SendMsgToScript("NTBotGame.ntj", "SCRIPT_END");
in
Code:
NTC_SendMsgToScript("MWBotGame.ntj", "SCRIPT_END");
geändert (auch noch an anderen Stellen in den Skripten).
Funtioniert nun einwandfrei. Ich kann leider nicht auf das integrierte CowSkript zurückgreifen, da der LeechFighter den gleichen Weg zurücklegen soll, wie der Leader. Das funktioniert nur in Kombination der 2 externen Skripte.
Vielen Dank!
|
Muddys Bot kann sooooo viel, dass es nur normal ist, wenn man da mal etwas übersieht
Kannst ja mal die fertigen Skripte posten (Verweis auf die Ersteller nicht vergessen), so dass andere die nur noch reinkopieren müssen und diese auch nutzen können
Quote:
Originally Posted by kim22
ich habe folgendes problem, ich kriegs einfach nicht hin den bot die superchests in lower kurast aufmachen zu lassen !? kann mir da bitte wer helfen? ich find nedmal die einstellung für die kisten...
jetzt habe ich in der superchest spalte alle gebiete rausgelöscht und nur "Lower Kurast" eingetragen, aber das klappt auch ned -.-
|
Du kannst da auch nicht einfach etwas reinschreiben
LK ist in Muddys nicht integriert, wurde aber hier im Topic vor ein paar Tagen schonmal gefragt und ich meine, dass jemand ein Skript aus einem anderen Bot erfolgreich integriert hat. Einfach mal dieses Thema mit der Sufu sichten... und ggf. den Poster um das Skript bitten...
|
|
|
11/09/2011, 11:33
|
#3858
|
elite*gold: 0
Join Date: May 2011
Posts: 11
Received Thanks: 5
|
Quote:
Originally Posted by Traycas
Muddys Bot kann sooooo viel, dass es nur normal ist, wenn man da mal etwas übersieht
Kannst ja mal die fertigen Skripte posten (Verweis auf die Ersteller nicht vergessen), so dass andere die nur noch reinkopieren müssen und diese auch nutzen können 
|
Gerne!
1. Cow Skript (Leader):
In die CharConfig unter "Run Configuration" folgende Zeile einfügen:
Code:
MWConfig_Script.push(["NTCow.ntj", 0]); NTConfig_KillRakanishuCows = true; NTConfig_TristExtension = false;
Unter ...\scripts\NTBot\bots vorhandenes Skript kopieren, in "NTCow.ntj" umbenennen, Inhalt löschen und folgendes Skript hineinkopieren:
Code:
// D2NT Cow script
// Version 1.4.1
//--- CONFIG ---
const _NTR_FAIL_CHECKS = 25; // Number of failed teleports before script ends. Ex. Edge of map causes a fail teleport. DEFAULT: 25
const _NTR_PRE_EVERY = 40; // Number of seconds before precasting again. -1 for never. DEFAULT: 40
const _NTR_CHEST_AND_ROCKS = true; // Open chest and rocks. DEFAULT: true
//--- END ---
const _NTR_STRING_PORTAL = GetLocaleString(3226);
function NTMain()
{
Include("libs/common/NTCommon.ntl");
NTC_IncludeLibs();
NTC_IncludeConfig("NTBot/char_configs");
var _message = "";
var _writer = "";
var _from = "";
var _who = "";
var _cobaal = true;
var _lechereins = "Lechername";
RegisterEvent(EVENT_GAMEMSG, NT_NewMsgEvents);
NT_LoadConfig();
NTSI_LoadNIPFiles("NTBot/item_configs");
NTA_Initialize();
if(!NTTM_CheckAct())
{
NTC_SendMsgToScript("MWBotGame.ntj", "NTTM_CheckAct()");
return;
}
NTTMGR_TownManager();
var _wirtbody, _cube, _leg, _portal, _stash, _items, i, _npc, prearea;
for (i = 0; i < 10; i++)
{
_leg = NTC_FindUnit(NTC_UNIT_ITEM, 88);
if (_leg)
break;
}
if (!_leg)
{
if(!NTTM_TownMove("waypoint"))
{
NTC_SendMsgToScript("MWBotGame.ntj", "NTTM_TownMove()");
return;
}
if(!NTM_TakeWaypoint(4))
{
NTC_SendMsgToScript("MWBotGame.ntj", "NTM_TakeWaypoint()");
return;
}
NTP_DoPrecast(true);
if(!NTM_MoveToPresetUnit(me.areaid, NTC_UNIT_MONSTER, 737, 10, 10))
{
NTC_SendMsgToScript("MWBotGame.ntj", "NTM_MoveToPresetUnit()");
return;
}
if(NTConfig_KillRakanishuCows)
{
if(!NTTMGR_CheckSafe(0x00, NTConfig_CheckMercSafe&0x01))
{
NTC_SendMsgToScript("MWBotGame.ntj", "NTTMGR_CheckSafe()");
return;
}
if(NTA_KillMonster(GetLocaleString(2872)))
{
if(NTConfig_ClearPosition)
NTA_ClearPosition();
NTSI_PickItems();
}
}
if(!NTM_UsePortal("Portal", 38))
{
NTC_SendMsgToScript("MWBotGame.ntj", "NTM_UsePortal()");
return;
}
if(NTConfig_TristExtension)
{
if(!NTA_ClearLevel())
{
NTC_SendMsgToScript("MWBotGame.ntj", "NTA_ClearLevel()");
}
}
NTM_MoveTo(me.areaid, 25047, 5178);
if(NTA_ClearPosition(10))
NTSI_PickItems();
_wirtbody = NTC_FindUnit(NTC_UNIT_OBJECT, 268);
if(!_wirtbody)
{
NTC_SendMsgToScript("MWBotGame.ntj", "Wirt's body not found.");
return;
}
if(NTM_MoveTo(_wirtbody.areaid, _wirtbody.x+3, _wirtbody.y))
{
if(NTC_OpenChest(_wirtbody))
{
NTC_PingDelay(500);
for (i = 0; i < 10; i++)
{
_leg = NTC_FindUnit(NTC_UNIT_ITEM, 88);
if (_leg)
break;
}
if(!NTT_CheckSpace(_leg.xsize, _leg.ysize))
{
_prearea = me.areaid;
if(NTTM_CheckAct())
{
NTTMGR_TownManager(true);
NTTM_TownMove("portalspot")
NTM_UsePortal("BluePortal", _prearea)
}
}
for (i = 0; i < 20; i++)
{
if ((i % 5) == 0)
{
if (_leg.mode == 3 || _leg.mode == 5)
{
if (NTC_ClearCursor())
NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _leg);
}
}
NTC_PingDelay(100);
if (_leg.mode != 3 && _leg.mode != 5)
{
Print("ÿc4Got Leg");
NTC_PingDelay(200);
break;
}
}
}
}
if(!_leg)
{
NTC_SendMsgToScript("MWBotGame.ntj", "No leg found.");
return;
}
NTM_MakeTP();
NTM_UsePortal("BluePortal");
}
else
{
if(!NTT_CheckSpace(_leg.xsize, _leg.ysize))
{
_prearea = me.areaid;
if(NTTM_CheckAct())
{
NTTMGR_TownManager(true);
NTTM_TownMove("portalspot")
NTM_UsePortal("BluePortal", _prearea)
}
}
for (i = 0; i < 20; i++)
{
if ((i % 5) == 0)
{
if (_leg.mode == 3 || _leg.mode == 5)
{
if (NTC_ClearCursor())
NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _leg);
}
}
NTC_PingDelay(100);
if (_leg.mode != 3 && _leg.mode != 5)
{
Print("ÿc4Who caries a leg around?");
NTC_PingDelay(200);
Print("ÿc4Dude, thats sick.");
break;
}
}
}
NTC_PingDelay(2000); // testing
NTTM_TownMove("akara");
for(var i = 0 ; i < 10 ; i++)
{
_npc = NTC_FindUnit(NTC_UNIT_NPC, NTC_NPC_ID_AKARA);
if(_npc)
break;
}
if(_npc)
{
if(NTT_DoInteract(_npc))
{
if(NTT_DoTrade(_npc))
{
NTC_PingDelay(2000); /// testing
_NTR_DoID = NTT_CheckUnids();
if(_NTR_DoID)
NTTMGR_IDItems(_npc);
NTT_FillTome(_npc, 1);
NTT_FillTome(_npc, 0);
NTC_PingDelay(2000); /// testing
NTT_SecondTomeTP(_npc, "tbk", 1);
_portal = NTR_GetTP();
if(!_portal)
{
NTC_SendMsgToScript("MWBotGame.ntj", "No extra tome of townportal found.");
return;
}
}
}
me.Cancel(1);
}
NTC_PingDelay(1000); /// testing
NTTM_TownMove("stash");
for(var i = 0 ; i < 10 ; i++)
{
_stash = NTC_FindUnit(NTC_UNIT_OBJECT, NTC_UNIT_STASH);
if(_stash)
break;
}
NTC_PingDelay(1000); /// testing
if(NTT_DoInteract(_stash))
{
NTC_PingDelay(1000); /// testing
_items = me.GetItems(NTC_UNIT_CUBE);
_cube = _items[0];
if(!_cube)
{
NTC_SendMsgToScript("MWBotGame.ntj", "No cube found.");
return;
}
if(NTCU_CheckCubeInventoryInt() > 0)
{
NTCU_OpenCubeInt(_cube)
NTC_PingDelay(1000); /// testing
if(NTCU_ClearCubeInt() < 1)
{
NTC_SendMsgToScript("MWBotGame.ntj", "Cube cannot be emptied.");
return;
}
NTCU_CloseCubeInt();
}
NTCU_MoveItemToCubeInt(_cube,_leg)
NTC_PingDelay(1000); /// testing
NTCU_MoveItemToCubeInt(_cube,_portal)
NTC_PingDelay(1000); /// testing
NTCU_OpenCubeInt(_cube);
NTC_PingDelay(2000); /// testing
Transmute();
NTC_PingDelay(2000); /// testing
NTCU_CloseCubeInt();
NTC_PingDelay(2000);
me.Cancel(1);
}
NTC_PingDelay(2000);
if(!NTR_TakeCowPortal(25))
{
NTC_SendMsgToScript("MWBotGame.ntj", "Failed to take Cow Portal.");
return;
}
NTP_DoPrecast();
NTR_ClearRooms();
NTC_SendMsgToScript("MWBotGame.ntj", "SCRIPT_END");
}
// Internal functions
function NTR_GetTP()
{
var _portals = me.GetItems("tbk");
if (_portals)
{
for (var i = 0; i < _portals.length; i++)
{
if (_portals[i].mode == 0 && (_portals[i].itemloc != 0 || NTConfig_Columns[_portals[i].y][_portals[i].x] > 0))
{
return _portals[i];
}
}
}
return false;
}
function abs(integer)
{
if(integer < 0){
integer = -integer;
}
return integer;
}
function NTR_TakeCowPortal(range)
{
var _portal = NTC_FindUnit(NTC_UNIT_OBJECT, _NTR_STRING_PORTAL);
if (_portal)
{
var _isClick;
var _preAreaId = me.areaid;
do
{
if (GetDistance(me, _portal) < range && _portal.mode == 2)
{
for (var i = 0; i < 40; i++)
{
if ((i % 10) == 0)
{
if(NTM_GetCloserInt(_portal))
_isClick = NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _portal);
}
if (_isClick)
{
NTC_Delay(200);
break;
}
}
NTC_PingDelay(1000);
var j = 0;
var check = true;
do
{
if (me.areaid != _preAreaId)
{
NTC_PingDelay(500);
return true;
check = false;
}
j++;
} while(j < 40 && check == true);
}
} while (_portal.GetNext());
}
return false;
}
function NTR_ClearPosition(range, pickitem, safelevel, failed)
{
var _orgx, _orgy;
var _spectype = [0x0A, 0x01, 0x01];
var _skiplist;
var _attackcount = 0;
var _target;
var _distance, _mingid, _mindistance;
var _result;
var _cowKing;
var _test;
if(NTConfig_AttackSkill[1] < 1 || NTConfig_AttackSkill[3] < 1)
return false;
switch(arguments.length)
{
case 0:
range = 20;
case 1:
pickitem = false;
case 2:
safelevel = 0;
default:
if(NTConfig_CheckSelfSafe < 0x01 && NTConfig_CheckMercSafe < 0x01)
safelevel = 0;
break;
}
_orgx = me.x;
_orgy = me.y;
for(var i = 0 ; i < _spectype.length ; i++)
{
_skiplist = new Array();
while(_attackcount < (i+1)*100)
{
_mindistance = 100000;
_target = NTC_FindUnit(NTC_UNIT_MONSTER);
if(_target)
{
do
{
if(_skiplist.indexOf(_target.gid) < 0)
{
if(_target.IsAttackable() && (_target.spectype&_spectype[i]))
{
if(GetDistance(_orgx, _orgy, _target.x, _target.y) <= range && NTA_IsValidMonster(_target))
{
_distance = GetDistance(me, _target);
if(_distance < _mindistance)
{
_mingid = _target.gid;
_mindistance = _distance;
}
}
}
else
_skiplist.push(_target.gid);
}
} while(_target.GetNext());
}
if(_mindistance < 100000)
{
_target = NTC_FindUnit(NTC_UNIT_MONSTER, _mingid);
if(_target)
{
_cowKing = GetUnit(NTC_UNIT_MONSTER, GetLocaleString(2850));
if(_cowKing){
return true;
}
_result = NTA_Attack(_target, (_attackcount%30) == 0);
switch(_result)
{
case 1:
_skiplist.push(_mingid);
break;
case 2:
case 3:
_attackcount++;
break;
default:
return false;
}
}
}
else
break;
}
}
if(me.classid == NTC_CHAR_CLASS_PALADIN)
{
if(_attackcount > 2 && (parseInt(me.hp*100/me.hpmax) < NTConfig_UseRedemptionHP || parseInt(me.mp*100/me.mpmax) < NTConfig_UseRedemptionMP))
{
if(NTC_PutSkill(124, NTC_HAND_RIGHT))
NTC_PingDelay(1000);
}
}
_cowKing = GetUnit(NTC_UNIT_MONSTER, GetLocaleString(2850));
if(_cowKing){
return true;
}
if(_NTR_CHEST_AND_ROCKS && failed == false)
{
_target = NTR_GetChest();
if(_target)
{
do
{
if(_target && GetDistance(_orgx, _orgy, _target.x, _target.y) <= range)
{
if(NTC_OpenChest(_target))
NTSI_PickItems();
}
}while(_target.GetNext());
}
_target = NTR_GetObj(174);
if(_target)
{
do
{
if(_target && GetDistance(_orgx, _orgy, _target.x, _target.y) <= range)
{
if(NTM_MoveTo(me.areaid, _target.x, _target.y))
{
if(NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _target))
{
Delay(200);
NTSI_PickItems();
}
}
}
}while(_target.GetNext());
}
_target = NTR_GetObj(175);
if(_target)
{
do
{
if(_target && GetDistance(_orgx, _orgy, _target.x, _target.y) <= range)
{
if(NTM_MoveTo(me.areaid, _target.x, _target.y))
{
if(NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _target))
{
Delay(200);
NTSI_PickItems();
}
}
}
}while(_target.GetNext());
}
_target = NTR_GetObj(159);
if(_target)
{
do
{
if(_target && GetDistance(_orgx, _orgy, _target.x, _target.y) <= range)
{
if(NTM_MoveTo(me.areaid, _target.x, _target.y))
{
if(NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _target))
{
Delay(200);
NTSI_PickItems();
}
}
}
}while(_target.GetNext());
}
_target = NTR_GetObj(155);
if(_target)
{
do
{
if(_target && GetDistance(_orgx, _orgy, _target.x, _target.y) <= range)
{
if(NTM_MoveTo(me.areaid, _target.x, _target.y))
{
if(NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _target))
{
Delay(200);
NTSI_PickItems();
}
}
}
}while(_target.GetNext());
}
}
if(pickitem && _attackcount > 0)
NTSI_PickItems();
switch(safelevel)
{
case 1:
return NTTMGR_CheckSafe(0x00, NTConfig_CheckMercSafe&0x01);
case 2:
return NTTMGR_CheckSafe(NTConfig_CheckSelfSafe, NTConfig_CheckMercSafe);
}
return true;
}
function NTR_ClearRooms()
{
var failcount = 0, precount = 0, x, y, offx = 0, offy = 0, goalx = 0, goaly = 0, cowoffx = 0, cowoffy = 0;
var toggle = true;
var _cowKing;
var _faillast;
x = me.x;
y = me.y;
//NTC_PingDelay(5000);
while (failcount <= _NTR_FAIL_CHECKS)
{
if(toggle == true && offx == goalx){
if(goaly < 0){
goaly=(0-(goaly-20));
}else{
goaly=(0-(goaly+20));
}
toggle = false;
}
if(toggle == false && offy == goaly){
if(goaly < 0){
goalx=(0-(goalx-20));
}else{
goalx=(0-(goalx+20));
}
toggle = true;
}
if(offy > goaly){
offy-=20;
y-=20;
}
if(offy < goaly){
offy+=20;
y+=20;
}
if(offx < goalx){
offx+=20;
x+=20;
}
if(offx > goalx){
offx-=20;
x-=20;
}
_cowKing = GetUnit(NTC_UNIT_MONSTER, GetLocaleString(2850));
if(!_cowKing){
NTR_ClearPosition(20, true, 0, _faillast);
if(((GetTickCount()-precount)/1000) >= _NTR_PRE_EVERY && _NTR_PRE_EVERY >= 0){
NTP_DoPrecast();
precount = GetTickCount();
}
}
if(!NTM_MoveTo(me.areaid, x, y)){
failcount++;
_faillast = true;
}else{
_faillast = false;
}
}
return true;
}
function NTT_SecondTomeTP(npc, type, amount)
{
var _items;
var _counter = 0;
if(arguments.length < 1)
return false;
if(arguments.length < 2)
type = 0;
if(arguments.length < 0)
amount = 1;
if(amount == 0)
return false;
if(type)
_items = npc.GetItems("tbk");
if(_items)
{
if(_items.length > 0)
{
for(var i = 0 ; i < amount ; i++)
{
if(NTT_ShopItem(_items[0], npc, 2))
_counter++;
}
}
}
return (_counter > 0);
}
function NTR_GetChest()
{
var _chest;
_chest = NTC_FindUnit(NTC_UNIT_OBJECT, "chest");
if(_chest)
{
return _chest;
}
return null;
}
function NTR_GetObj(num)
{
var _chest;
_chest = NTC_FindUnit(NTC_UNIT_OBJECT, num);
if(_chest)
{
return _chest;
}
return null;
}
// FUNCTIONS
function NT_NewMsgEvents(msg, type)
{
var _from = msg.split(" ")[0];
if(_from == "From")
{
var _who = msg.split(" | ")[1];
var _message = msg.split(": ")[1].split(" | ")[0];
var _writer = msg.split("From ")[1].split(" (")[0];
if( _who == me.name )
{
if(_message == "Neues Game ist offen")
{
if(_writer == (_leader))
{
Say("Leader chickened and opened new game.Next Game is open!"); //falls es öffentliche runs sind in der hoffnunf dass die gejointen auch ins neue gamekommen
ExitGame();
}
}
}
}
}
2. Cow Skript (LeechFighter):
In die CharConfig unter "Run Configuration" folgende Zeile einfügen:
Code:
MWConfig_Script.push(["NTCowLeech.ntj", 0]); NTConfig_KillRakanishuCows = true; NTConfig_TristExtension = true;
Unter ...\scripts\NTBot\bots vorhandenes Skript kopieren, in "NTCowLeech.ntj" umbenennen, Inhalt löschen und folgendes Skript hineinkopieren:
Code:
// D2NT Cow script
// Version 1.4.1
//--- CONFIG ---
const _NTR_FAIL_CHECKS = 25; // Number of failed teleports before script ends. Ex. Edge of map causes a fail teleport. DEFAULT: 25
const _NTR_PRE_EVERY = 40; // Number of seconds before precasting again. -1 for never. DEFAULT: 40
const _NTR_CHEST_AND_ROCKS = true; // Open chest and rocks. DEFAULT: true
//--- END ---
const _NTR_STRING_PORTAL = GetLocaleString(3226);
function NTMain()
{
Include("libs/common/NTCommon.ntl");
NTC_IncludeLibs();
NTC_IncludeConfig("NTBot/char_configs");
var _message = "";
var _writer = "";
var _from = "";
var _who = "";
var _leader = "Leadername";
RegisterEvent(EVENT_GAMEMSG, NT_NewMsgEvents);
NT_LoadConfig();
NTSI_LoadNIPFiles("NTBot/item_configs");
NTA_Initialize();
if(!NTTM_CheckAct())
{
NTC_SendMsgToScript("MWBotGame.ntj", "NTTM_CheckAct()");
return;
}
if(!NTTM_TownMove("waypoint"))
{
NTC_SendMsgToScript("MWBotGame.ntj", "NTTM_TownMove()");
return;
}
if(!NTM_TakeWaypoint(1))
{
NTC_SendMsgToScript("MWBotGame.ntj", "NTM_TakeWaypoint()");
return;
}
NTTM_TownMove("stash");
for(var i = 0 ; i < 10 ; i++)
{
_stash = NTC_FindUnit(NTC_UNIT_OBJECT, NTC_UNIT_STASH);
if(_stash)
break;
}
NTC_PingDelay(95000); // adjust this delay depending on how long it takes leader to make portal
if(!NTR_TakeCowPortal(18))
{
NTC_SendMsgToScript("MWBotGame.ntj", "Failed to take Cow Portal.");
return;
}
NTP_DoPrecast();
NTR_ClearRooms();
NTC_SendMsgToScript("MWBotGame.ntj", "SCRIPT_END");
}
// Internal functions
function NTR_GetTP()
{
var _portals = me.GetItems("tbk");
if (_portals)
{
for (var i = 0; i < _portals.length; i++)
{
if (_portals[i].mode == 0 && (_portals[i].itemloc != 0 || NTConfig_Columns[_portals[i].y][_portals[i].x] > 0))
{
return _portals[i];
}
}
}
return false;
}
function abs(integer)
{
if(integer < 0){
integer = -integer;
}
return integer;
}
function NTR_TakeCowPortal(range)
{
var _portal = NTC_FindUnit(NTC_UNIT_OBJECT, _NTR_STRING_PORTAL);
if (_portal)
{
var _isClick;
var _preAreaId = me.areaid;
do
{
if (GetDistance(me, _portal) < range && _portal.mode == 2)
{
for (var i = 0; i < 40; i++)
{
if ((i % 10) == 0)
{
if(NTM_GetCloserInt(_portal))
_isClick = NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _portal);
}
if (_isClick)
{
NTC_Delay(200);
break;
}
}
NTC_PingDelay(1000);
var j = 0;
var check = true;
do
{
if (me.areaid != _preAreaId)
{
NTC_PingDelay(500);
return true;
check = false;
}
j++;
} while(j < 40 && check == true);
}
} while (_portal.GetNext());
}
return false;
}
function NTR_ClearPosition(range, pickitem, safelevel, failed)
{
var _orgx, _orgy;
var _spectype = [0x0A, 0x01, 0x01];
var _skiplist;
var _attackcount = 0;
var _target;
var _distance, _mingid, _mindistance;
var _result;
var _cowKing;
var _test;
if(NTConfig_AttackSkill[1] < 1 || NTConfig_AttackSkill[3] < 1)
return false;
switch(arguments.length)
{
case 0:
range = 20;
case 1:
pickitem = false;
case 2:
safelevel = 0;
default:
if(NTConfig_CheckSelfSafe < 0x01 && NTConfig_CheckMercSafe < 0x01)
safelevel = 0;
break;
}
_orgx = me.x;
_orgy = me.y;
for(var i = 0 ; i < _spectype.length ; i++)
{
_skiplist = new Array();
while(_attackcount < (i+1)*100)
{
_mindistance = 100000;
_target = NTC_FindUnit(NTC_UNIT_MONSTER);
if(_target)
{
do
{
if(_skiplist.indexOf(_target.gid) < 0)
{
if(_target.IsAttackable() && (_target.spectype&_spectype[i]))
{
if(GetDistance(_orgx, _orgy, _target.x, _target.y) <= range && NTA_IsValidMonster(_target))
{
_distance = GetDistance(me, _target);
if(_distance < _mindistance)
{
_mingid = _target.gid;
_mindistance = _distance;
}
}
}
else
_skiplist.push(_target.gid);
}
} while(_target.GetNext());
}
if(_mindistance < 100000)
{
_target = NTC_FindUnit(NTC_UNIT_MONSTER, _mingid);
if(_target)
{
_cowKing = GetUnit(NTC_UNIT_MONSTER, GetLocaleString(2850));
if(_cowKing){
return true;
}
_result = NTA_Attack(_target, (_attackcount%30) == 0);
switch(_result)
{
case 1:
_skiplist.push(_mingid);
break;
case 2:
case 3:
_attackcount++;
break;
default:
return false;
}
}
}
else
break;
}
}
if(me.classid == NTC_CHAR_CLASS_PALADIN)
{
if(_attackcount > 2 && (parseInt(me.hp*100/me.hpmax) < NTConfig_UseRedemptionHP || parseInt(me.mp*100/me.mpmax) < NTConfig_UseRedemptionMP))
{
if(NTC_PutSkill(124, NTC_HAND_RIGHT))
NTC_PingDelay(1000);
}
}
_cowKing = GetUnit(NTC_UNIT_MONSTER, GetLocaleString(2850));
if(_cowKing){
return true;
}
if(_NTR_CHEST_AND_ROCKS && failed == false)
{
_target = NTR_GetChest();
if(_target)
{
do
{
if(_target && GetDistance(_orgx, _orgy, _target.x, _target.y) <= range)
{
if(NTC_OpenChest(_target))
NTSI_PickItems();
}
}while(_target.GetNext());
}
_target = NTR_GetObj(174);
if(_target)
{
do
{
if(_target && GetDistance(_orgx, _orgy, _target.x, _target.y) <= range)
{
if(NTM_MoveTo(me.areaid, _target.x, _target.y))
{
if(NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _target))
{
Delay(200);
NTSI_PickItems();
}
}
}
}while(_target.GetNext());
}
_target = NTR_GetObj(175);
if(_target)
{
do
{
if(_target && GetDistance(_orgx, _orgy, _target.x, _target.y) <= range)
{
if(NTM_MoveTo(me.areaid, _target.x, _target.y))
{
if(NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _target))
{
Delay(200);
NTSI_PickItems();
}
}
}
}while(_target.GetNext());
}
_target = NTR_GetObj(159);
if(_target)
{
do
{
if(_target && GetDistance(_orgx, _orgy, _target.x, _target.y) <= range)
{
if(NTM_MoveTo(me.areaid, _target.x, _target.y))
{
if(NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _target))
{
Delay(200);
NTSI_PickItems();
}
}
}
}while(_target.GetNext());
}
_target = NTR_GetObj(155);
if(_target)
{
do
{
if(_target && GetDistance(_orgx, _orgy, _target.x, _target.y) <= range)
{
if(NTM_MoveTo(me.areaid, _target.x, _target.y))
{
if(NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _target))
{
Delay(200);
NTSI_PickItems();
}
}
}
}while(_target.GetNext());
}
}
if(pickitem && _attackcount > 0)
NTSI_PickItems();
switch(safelevel)
{
case 1:
return NTTMGR_CheckSafe(0x00, NTConfig_CheckMercSafe&0x01);
case 2:
return NTTMGR_CheckSafe(NTConfig_CheckSelfSafe, NTConfig_CheckMercSafe);
}
return true;
}
function NTR_ClearRooms()
{
var failcount = 0, precount = 0, x, y, offx = 0, offy = 0, goalx = 0, goaly = 0, cowoffx = 0, cowoffy = 0;
var toggle = true;
var _cowKing;
var _faillast;
x = me.x;
y = me.y;
//NTC_PingDelay(5000);
while (failcount <= _NTR_FAIL_CHECKS)
{
if(toggle == true && offx == goalx){
if(goaly < 0){
goaly=(0-(goaly-20));
}else{
goaly=(0-(goaly+20));
}
toggle = false;
}
if(toggle == false && offy == goaly){
if(goaly < 0){
goalx=(0-(goalx-20));
}else{
goalx=(0-(goalx+20));
}
toggle = true;
}
if(offy > goaly){
offy-=20;
y-=20;
}
if(offy < goaly){
offy+=20;
y+=20;
}
if(offx < goalx){
offx+=20;
x+=20;
}
if(offx > goalx){
offx-=20;
x-=20;
}
_cowKing = GetUnit(NTC_UNIT_MONSTER, GetLocaleString(2850));
if(!_cowKing){
NTR_ClearPosition(20, true, 0, _faillast);
if(((GetTickCount()-precount)/1000) >= _NTR_PRE_EVERY && _NTR_PRE_EVERY >= 0){
NTP_DoPrecast();
precount = GetTickCount();
}
}
if(!NTM_MoveTo(me.areaid, x, y)){
failcount++;
_faillast = true;
}else{
_faillast = false;
}
}
return true;
}
function NTT_SecondTomeTP(npc, type, amount)
{
var _items;
var _counter = 0;
if(arguments.length < 1)
return false;
if(arguments.length < 2)
type = 0;
if(arguments.length < 0)
amount = 1;
if(amount == 0)
return false;
if(type)
_items = npc.GetItems("tbk");
if(_items)
{
if(_items.length > 0)
{
for(var i = 0 ; i < amount ; i++)
{
if(NTT_ShopItem(_items[0], npc, 2))
_counter++;
}
}
}
return (_counter > 0);
}
function NTR_GetChest()
{
var _chest;
_chest = NTC_FindUnit(NTC_UNIT_OBJECT, "chest");
if(_chest)
{
return _chest;
}
return null;
}
function NTR_GetObj(num)
{
var _chest;
_chest = NTC_FindUnit(NTC_UNIT_OBJECT, num);
if(_chest)
{
return _chest;
}
return null;
}
// FUNCTIONS
function NT_NewMsgEvents(msg, type)
{
var _from = msg.split(" ")[0];
if(_from == "From")
{
var _who = msg.split(" | ")[1];
var _message = msg.split(": ")[1].split(" | ")[0];
var _writer = msg.split("From ")[1].split(" (")[0];
if( _who == me.name )
{
if(_message == "Neues Game ist offen")
{
if(_writer == (_leader))
{
Say("Leader chickened and opened new game.Next Game is open!"); //falls es öffentliche runs sind in der hoffnunf dass die gejointen auch ins neue gamekommen
ExitGame();
}
}
}
}
}
An dieser Stelle im Skript "NTCowLeech.ntj" kann man noch einstellen, wie lange der LeechFighter warten soll, bis er das Cow Portal betritt (hängt davon ab, wie schnell der Leader ist):
Code:
NTC_PingDelay(95000); // adjust this delay depending on how long it takes leader to make portal
if(!NTR_TakeCowPortal(18))
{
NTC_SendMsgToScript("MWBotGame.ntj", "Failed to take Cow Portal.");
return;
Quelle/Verweise:
Cow Skript: gepostet  von OhhWatALoser Cow Leech Skript: gepostet  von Protoman1
Zitat aus dem original Thread:
Quote:
|
This script is an experiment. Use at your own risk. NOT SAFE FOR HAMMERDINS. Stray hammers can kill king. Also if you run normal, mind your merc.
|
Ich kann nur anhand meiner Erfahrungen sagen, dass bei 500+ Runs (eher mehr) mit Hammerdin und Blizzard Sorc auf Hölle der King nie gelegt wurde  . Das Zitat stammt wohl auch aus der ersten Entwicklungsstufe, sprich da hat sich noch einiges getan (vgl.  ).
Hätte ich die Skripte an anderer Stelle posten sollen (nicht hier im HauptThread), bitte ich um Hinweis.
Viel Spaß damit.
|
|
|
11/09/2011, 11:35
|
#3859
|
elite*gold: 0
Join Date: Nov 2010
Posts: 190
Received Thanks: 52
|
ok, now i get this error massage but i didnt edit anything but my charconfig !? could someone help here plz?
Code:
http://img402.imageshack.us/img402/1784/screenshot023sr.jpg
here is my charconfig:
Code:
/**
* This file was modified by
* 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_CastStatic;
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(["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(["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 = true;
//MWConfig_Script.push(["NTEldritch.ntj" , 10]); NTConfig_ShenkExtension = true;
//MWConfig_Script.push(["NTPindleskin.ntj" , 5]);
//MWConfig_Script.push(["MWLowerKurastSuperchest.ntj" , 5]);
//MWConfig_Script.push(["NTDiablo.ntj", 10]); MWConfig_KillFullInfectorMob = true; MWConfig_StartAtStar = false; MWConfig_IgnoreSealOpeningErrors = false; MWConfig_FastDia = true;
//MWConfig_Script.push(["NTBaal.ntj", 10]); NTConfig_KillBaal = true; MWConfig_SkipBaalOnDolls = true; MWConfig_SkipBaalOnSouls = true; MWConfig_DoBaalPreAttack = 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 = 90; // If you have more than this percent of life, you won't go to a healer.
NTConfig_SkipHealMana = 70; // 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 = 0;
//------------------------------------------------------------------------------
// 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 = 1; // 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 = 35;
// 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,2,0,0,0,0,0];
NTConfig_Columns[1] = [1,1,1,0,0,0,0,0,0,0];
NTConfig_Columns[2] = [1,1,1,0,0,0,0,0,0,0];
NTConfig_Columns[3] = [1,1,1,0,0,0,0,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("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 = false;
//------------------------------------------------------------------------------
// 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 = true;
// 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 = 60;
// Use Telekinesis to interact with certain objects. 0: Don't use Telekinesis; 1: Item pick up only; 2: Items and containers; 3: Whenever possible
MWConfig_UseTelekinesisMode = 3;
//------------------------------------------------------------------------------
// 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 = true;
// 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_SHIVER_ARMOR; MWS_ENERGY_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;
// Set this to true to force your bot to swap slots before precast. In case you are using CTA, set this to false.
MWConfig_SwitchSlotsForPrecast = false;
//------------------------------------------------------------------------------
// 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] = MWS_LIGHTNING; // This skill is used once whenever attacking a new target. Set to -1 to deactivate.
NTConfig_AttackSkill[1] = MWS_LIGHTNING; // Primary skill to bosses.
NTConfig_AttackSkill[2] = MWS_LIGHTNING; // Primary untimed skill to boss. Set to -1 to deactivate.
NTConfig_AttackSkill[3] = MWS_LIGHTNING; // Primary skill to others.
NTConfig_AttackSkill[4] = MWS_LIGHTNING; // Primary untimed skill to others. Set to -1 to deactivate.
NTConfig_AttackSkill[5] = MWS_LIGHTNING; // Secondary skill in case monster is immune to primary skill. Set to -1 to deactivate.
NTConfig_AttackSkill[6] = MWS_LIGHTNING; // Secondary untimed skill. Set to -1 to deactivate.
NTConfig_AttackSkill[7] = MWS_LIGHTNING; // Alternative untimed skill which is used if the target is immune to your untimed skill - mostly useful for FB/FO/Meteor sorcs or other sorcs that are using the same untimed skills. 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 = true;
// 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 = 50;
// 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, 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 = 2;
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.
// Always check if monsters are closing in and back off, in case they get too close. NOTE: You should at least have 105FCR in order to make this work smoothly.
MWConfig_KeepDistanceToMonsters = true;
// If you don't wish to evade monsters in a certain area, add it's areaid as an exception below. NOTE: All areaids can be found in "sdk\areas.txt".
// MWConfig_EvasionExceptions.push(<areaid1>, <areaid2>, <areaidn>);
// 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 = 0x01;0x02;0x04;0x40;
// 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;0x02;
// Cast Static Field until monster's HP lower below this percentage. Set to 100 not to use static field.
NTConfig_CastStatic = 60;
// Select the monsters you with to attack using static field. NOTE: If you do not add any monsters, static will be used against all monsters.
MWConfig_StaticTargets.push(156); // Andariel
MWConfig_StaticTargets.push(211); // Duriel
MWConfig_StaticTargets.push(242); // Mephisto
MWConfig_StaticTargets.push(243); // Diablo
MWConfig_StaticTargets.push(544); // Baal
MWConfig_StaticTargets.push(GetLocaleString(22500)); // Eldritch The Rectifier
MWConfig_StaticTargets.push(GetLocaleString(22435)); // Shenk The Overseer
}
|
|
|
11/09/2011, 11:53
|
#3860
|
elite*gold: 0
Join Date: Oct 2011
Posts: 690
Received Thanks: 130
|
gibt es i.einen trick wie man den
NTM_TakeWaypoint()failed .... weg bekommt?
habe den wenn ich multi botting machen häufig...
|
|
|
11/09/2011, 12:18
|
#3861
|
elite*gold: 0
Join Date: Mar 2010
Posts: 539
Received Thanks: 418
|
Quote:
Originally Posted by kim22
ok, now i get this error massage but i didnt edit anything but my charconfig !? could someone help here plz?
Code:
http://img402.imageshack.us/img402/1784/screenshot023sr.jpg
here is my charconfig:
Code:
/**
* This file was modified by
* 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_CastStatic;
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(["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(["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 = true;
//MWConfig_Script.push(["NTEldritch.ntj" , 10]); NTConfig_ShenkExtension = true;
//MWConfig_Script.push(["NTPindleskin.ntj" , 5]);
//MWConfig_Script.push(["MWLowerKurastSuperchest.ntj" , 5]);
//MWConfig_Script.push(["NTDiablo.ntj", 10]); MWConfig_KillFullInfectorMob = true; MWConfig_StartAtStar = false; MWConfig_IgnoreSealOpeningErrors = false; MWConfig_FastDia = true;
//MWConfig_Script.push(["NTBaal.ntj", 10]); NTConfig_KillBaal = true; MWConfig_SkipBaalOnDolls = true; MWConfig_SkipBaalOnSouls = true; MWConfig_DoBaalPreAttack = 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 = 90; // If you have more than this percent of life, you won't go to a healer.
NTConfig_SkipHealMana = 70; // 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 = 0;
//------------------------------------------------------------------------------
// 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 = 1; // 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 = 35;
// 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,2,0,0,0,0,0];
NTConfig_Columns[1] = [1,1,1,0,0,0,0,0,0,0];
NTConfig_Columns[2] = [1,1,1,0,0,0,0,0,0,0];
NTConfig_Columns[3] = [1,1,1,0,0,0,0,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("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 = false;
//------------------------------------------------------------------------------
// 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 = true;
// 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 = 60;
// Use Telekinesis to interact with certain objects. 0: Don't use Telekinesis; 1: Item pick up only; 2: Items and containers; 3: Whenever possible
MWConfig_UseTelekinesisMode = 3;
//------------------------------------------------------------------------------
// 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 = true;
// 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_SHIVER_ARMOR; MWS_ENERGY_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;
// Set this to true to force your bot to swap slots before precast. In case you are using CTA, set this to false.
MWConfig_SwitchSlotsForPrecast = false;
//------------------------------------------------------------------------------
// 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] = MWS_LIGHTNING; // This skill is used once whenever attacking a new target. Set to -1 to deactivate.
NTConfig_AttackSkill[1] = MWS_LIGHTNING; // Primary skill to bosses.
NTConfig_AttackSkill[2] = MWS_LIGHTNING; // Primary untimed skill to boss. Set to -1 to deactivate.
NTConfig_AttackSkill[3] = MWS_LIGHTNING; // Primary skill to others.
NTConfig_AttackSkill[4] = MWS_LIGHTNING; // Primary untimed skill to others. Set to -1 to deactivate.
NTConfig_AttackSkill[5] = MWS_LIGHTNING; // Secondary skill in case monster is immune to primary skill. Set to -1 to deactivate.
NTConfig_AttackSkill[6] = MWS_LIGHTNING; // Secondary untimed skill. Set to -1 to deactivate.
NTConfig_AttackSkill[7] = MWS_LIGHTNING; // Alternative untimed skill which is used if the target is immune to your untimed skill - mostly useful for FB/FO/Meteor sorcs or other sorcs that are using the same untimed skills. 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 = true;
// 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 = 50;
// 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, 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 = 2;
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.
// Always check if monsters are closing in and back off, in case they get too close. NOTE: You should at least have 105FCR in order to make this work smoothly.
MWConfig_KeepDistanceToMonsters = true;
// If you don't wish to evade monsters in a certain area, add it's areaid as an exception below. NOTE: All areaids can be found in "sdk\areas.txt".
// MWConfig_EvasionExceptions.push(<areaid1>, <areaid2>, <areaidn>);
// 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 = 0x01;0x02;0x04;0x40;
// 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;0x02;
// Cast Static Field until monster's HP lower below this percentage. Set to 100 not to use static field.
NTConfig_CastStatic = 60;
// Select the monsters you with to attack using static field. NOTE: If you do not add any monsters, static will be used against all monsters.
MWConfig_StaticTargets.push(156); // Andariel
MWConfig_StaticTargets.push(211); // Duriel
MWConfig_StaticTargets.push(242); // Mephisto
MWConfig_StaticTargets.push(243); // Diablo
MWConfig_StaticTargets.push(544); // Baal
MWConfig_StaticTargets.push(GetLocaleString(22500)); // Eldritch The Rectifier
MWConfig_StaticTargets.push(GetLocaleString(22435)); // Shenk The Overseer
}
|
Several mistakes in the Config:
#1: Precastskills need a comma between, not a semicolon:
Code:
// 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_SHIVER_ARMOR[B],[/B] MWS_ENERGY_SHIELD];
#2: Maybe your attack settings are not the best, take a look here:
#3: Check self safe & merc's safe need to have a bit wise OR operator (|):
Code:
// 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 = 0x01[B]|[/B]0x02[B]|[/B]0x04[B]|[/B]0x40;
// 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[B]|[/B]0x02;
btw: 0x40 (Lower Resist) isn't necessary since Knights won't cast it anymore, same like 0x10 (Iron Maiden).
|
|
|
11/09/2011, 12:24
|
#3862
|
elite*gold: 0
Join Date: Jun 2011
Posts: 285
Received Thanks: 185
|
Quote:
Originally Posted by Northern Light
gibt es i.einen trick wie man den
NTM_TakeWaypoint()failed .... weg bekommt?
habe den wenn ich multi botting machen häufig... 
|
Nein, das passiert, wenn D2 laggt und man niemanden ansprechend kann. Der bot probiert es ein paar mal und bricht dann irgenwann ab.
Passiert einem selbst ja auch manchmal, wenn man selber spielt, dass man nicht auswählen kann...
|
|
|
11/09/2011, 12:34
|
#3863
|
elite*gold: 0
Join Date: Nov 2010
Posts: 190
Received Thanks: 52
|
thx problem solved ! bot running flawless
|
|
|
11/09/2011, 12:44
|
#3864
|
elite*gold: 0
Join Date: Oct 2011
Posts: 690
Received Thanks: 130
|
Quote:
Originally Posted by Traycas
Nein, das passiert, wenn D2 laggt und man niemanden ansprechend kann. Der bot probiert es ein paar mal und bricht dann irgenwann ab.
Passiert einem selbst ja auch manchmal, wenn man selber spielt, dass man nicht auswählen kann...
|
kann man das laagen i.wie reduzieren oder verhindern?
|
|
|
11/09/2011, 13:04
|
#3865
|
elite*gold: 0
Join Date: Sep 2011
Posts: 26
Received Thanks: 11
|
Da das Lag nahezu immer serverseitig stattfindet, sofern man eine annehmbare Internetverbindung hat, wohl eher nicht.
Ich habe übrigens eine Lösung für das durchsuchen der Stashlogs gefunden. Eins der Stashlog.txt im Notepad++ öffnen, ctrl+f, auf den Reiter "in Dateien suchen" gehen, Haken bei "Ordner der akt. Datei" reinmachen, suchen. So durchsucht man alle Stashlogs auf einmal und weiss durch den Dateinamen direkt, wo das gewünschte Item liegt.
|
|
|
11/09/2011, 14:00
|
#3866
|
elite*gold: 0
Join Date: May 2008
Posts: 22
Received Thanks: 0
|
hey! bot rennt soweit super. kann ich jedoch bei andariel einstellen, dass er sich an die rechte wand stellt? benutze den muddy's.
sorry wenn ich zu blöd zum finden war :x
(hab halt manchmal das prob, wenn links an der wand soviele mobs sind und er sich direkt reinportet ich fast sterbe und er raus geht. spiele atm noch ne blizz sorc und mache nur andi/meph/cow)
|
|
|
11/09/2011, 14:56
|
#3867
|
elite*gold: 0
Join Date: Jun 2011
Posts: 285
Received Thanks: 185
|
Quote:
Originally Posted by jonnypod
hey! bot rennt soweit super. kann ich jedoch bei andariel einstellen, dass er sich an die rechte wand stellt? benutze den muddy's.
sorry wenn ich zu blöd zum finden war :x
(hab halt manchmal das prob, wenn links an der wand soviele mobs sind und er sich direkt reinportet ich fast sterbe und er raus geht. spiele atm noch ne blizz sorc und mache nur andi/meph/cow)
|
Einstellen kannst Du das nicht. Dafür müsstest Du schon das Script umschreiben.
|
|
|
11/09/2011, 15:23
|
#3868
|
elite*gold: 0
Join Date: Oct 2011
Posts: 3
Received Thanks: 0
|
Hello everyone.
I cannot get my Bot to switch weapons to CTA during prebuff, i've switched weaponslots on the prebuff weapon slot(II slot) made sure nothing was wrong in the prebuff script. i've reinstalled, redownloaded and reinstalled again,
nothing else is wrong, it just doesnt switch for prebuffing, if i put cta in mainhand(slot I) if buffs, but it does not switch weapons again.
this problem started to occur when i updated to rev4, rev3 worked perfectly fine with no issues during prebuffing at all.
using windows XP SP3.
|
|
|
11/09/2011, 15:47
|
#3869
|
elite*gold: 0
Join Date: Sep 2009
Posts: 1,456
Received Thanks: 290
|
Quote:
Originally Posted by kaxzu
Hello everyone.
I cannot get my Bot to switch weapons to CTA during prebuf
|
Quote:
Originally Posted by Muddy_Waters
NTCommon library and change line 1 224 to:
Code:
_slotVal[0].Primary = 0;
regards
Muddy
|
this
|
|
|
11/09/2011, 16:34
|
#3870
|
elite*gold: 0
Join Date: Mar 2010
Posts: 56
Received Thanks: 13
|
Wollte mal fragen ob es normal ist das der bot nach jedem erfolgreichen run unhandled exception bekommt ?
|
|
|
 |
|
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 22:28.
|
|