Register for your free account! | Forgot your password?

Go Back   elitepvpers > Other Online Games > Diablo 2 > Diablo 2 Programming
You last visited: Today at 15:10

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Suche Experten: Travincal error: NTM_MoveTo() failed (Travincal)

Discussion on Suche Experten: Travincal error: NTM_MoveTo() failed (Travincal) within the Diablo 2 Programming forum part of the Diablo 2 category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Sep 2013
Posts: 40
Received Thanks: 0
Suche Experten: Travincal error: NTM_MoveTo() failed (Travincal)

Das Problem hat sich (für mich) erledigt.
Vielen Dank an alle Helfenden, insbesondere Grommel.

Merci!
elpoire is offline  
Old 09/02/2013, 23:14   #2
 
elite*gold: 0
Join Date: Oct 2008
Posts: 216
Received Thanks: 47
Welcher Bot ?
MoveTo wohin ?
Barb hat Enigma ?
Dein erster Versuch ?
Schon klar was fehlt oder ?
Grommel is offline  
Thanks
1 User
Old 09/03/2013, 06:01   #3
 
elite*gold: 0
Join Date: Sep 2013
Posts: 40
Received Thanks: 0
Muddys 3.1
Barb hat Enigma
Bezüglich Travincal? Ja,das ist mein erster Versuch.

Ich glaube, dass das Problem die Koordinaten sind:

Code:
{
NTC_SendMsgToScript("MWBotGame.ntj", NTM_MoveTo, 55,      me.areaid, 5780 + _deltax, 1555 + _deltay);
return;
}
Da ich mir aber nicht wirklich sicher bin hier noch einmal das gesamte Travincal-Script:

Code:
/**
*	This file was modified by 
*	Check the programming section for updates and further scripts
*	Last Update: 02/05/2011
*/

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

	MWC_Initialize();
	
	var _waypoint;
	var _deltax, _deltay;
	var _attackpos = [5800, 1554, 5799, 1534, 5799, 1526, 5797, 1514, 5795, 1490, 5787, 1491, 5797, 1514, 5781, 1514];

	if(!NTTM_CheckAct(me.act, true))
	{
		NTC_SendMsgToScript("MWBotGame.ntj", NTTM_CheckAct, 22, me.act, true);
		return;
	}
	
	NTTMGR_TownManager();

	if(!NTTM_TownMove("waypoint"))
	{
		NTC_SendMsgToScript("MWBotGame.ntj", NTTM_TownMove, 30, "waypoint");
		return;
	}

	if(!NTM_TakeWaypoint(83))
	{
		NTC_SendMsgToScript("MWBotGame.ntj", NTM_TakeWaypoint, 36, 83);
		return;
	}

	_waypoint = NTC_FindUnit(NTC_UNIT_OBJECT, GetLocaleString(22526), 5);

	if(!_waypoint)
	{
		NTC_SendMsgToScript("MWBotGame.ntj", NTC_FindUnit, 44, NTC_UNIT_OBJECT, GetLocaleString(22526), 5);
		return;
	}

	_deltax = _waypoint.x - 5699;
	_deltay = _waypoint.y - 1584;
	
	NTP_DoPrecast(true);

	if(!NTM_MoveTo(83, me.x+82, me.y-84))   //move to the council chamber
	{
		NTC_SendMsgToScript("MWBotGame.ntj", NTM_MoveTo, 55, me.areaid, 5780 + _deltax, 1555 + _deltay);
		return;
	}

	for(var i = 0; i < _attackpos.length; i += 2)
	{
		NTM_MoveTo(me.areaid, _attackpos[i] + _deltax, _attackpos[i + 1] + _deltay);

		NTA_ClearPosition(25, true, 2);
	}
	
	MWL_FindItem();

	NTC_SendMsgToScript("MWBotGame.ntj", "SCRIPT_END");
}
Und hier noch mal NTMove

Code:
/**
*	This file was modified by 
*	Check the programming section for updates and further scripts
*	Last Update: 17:52 01.08.2011
*/

var _MWM_TeleportSlot = -1;
var _MWM_AreaAtWaypointIndex = [1, 3, 4, 5, 6, 27, 29, 32, 35, 40, 48, 42, 57, 43, 44, 52, 74, 46, 75, 76, 77, 78, 79, 80, 81, 83, 101, 103, 106, 107, 109, 111, 112, 113, 115, 123, 117, 118, 129]; // The destination areaids for each area that can be reached using a waypoint

function NTM_MoveTo(areaid, x, y, retry, clearpath, spectype, doID, subAreaid)
{
	var i, n;
	var _teleport;
	var _path;
	var _retry = 0;
	var _targetArea, _initPos, _initDist;
		
	if(me.classid == NTC_CHAR_CLASS_BARBARIAN && _MWM_TeleportSlot < 0)
		_MWM_TeleportSlot = MWC_GetSlotID("teleport");

	if(x == me.x && y == me.y)
		return true;
	if(arguments.length < 4)
		retry = 3;
	if(arguments.length < 5)
		clearpath = false;
	if(arguments.length < 6)
		spectype = 0x01;	
	if(arguments.length < 7)
		doID = true;
	if(arguments.length < 8)
		subAreaid = 0;
		
	_targetArea = MWC_FindArea(subAreaid);
	
	if(NTC_GetSkillLevel(MWS_TELEPORT) < 1)
		MWT_HandleEnigmaBug();
	
	if(MWConfig_IdentAfterPickup && doID)
		MWL_IDItemsAfterPickup();
		
   	if(NTC_InTown())
     	_teleport = false;
  	else
     	_teleport = true;

   	if(NTC_GetSkillLevel(54) < 1)
     	{
        ExitGame();
        SendCopyData("D2NT Manager", null, 7<<16, "ÿE00000Enigma Glitch Fixed");
      	}


	_path = GetPath(areaid, me.x, me.y, x, y, _teleport);

	if(!_path)
		return false;

	if(_teleport && _path.length > 3 && _MWM_TeleportSlot > -1 && !clearpath)
		NTC_SwapWeapons(_MWM_TeleportSlot);
		
	for(i = 0; i < _path.length; i++)
	{
		if(MWConfig_ShowOverheadStatus)
		{
			if(_targetArea && _path.length > 1)
				MWC_PrintOverheadStatus("Moving to " + _targetArea.name + " " + (i / (_path.length - 1) * 100).toFixed(0) + "% [" + GetDistance(me.x, me.y, _path[_path.length - 1][0], _path[_path.length - 1][1]) + "]");
			else if(_path.length >= 4)
				MWC_PrintOverheadStatus("Moving to target coordinates " + (i / (_path.length - 1) * 100).toFixed(0) + "% [" + GetDistance(me.x, me.y, _path[_path.length - 1][0], _path[_path.length - 1][1]) + "]");
		}
		
		for(n = 0; n < 2; n++)
		{
			if(_teleport)
			{
				if(NTM_TeleportTo(_path[i][0] + Random(-n, n), _path[i][1] + Random(-n, n)))
					break;
			}
			else
			{
				if(NTM_WalkTo(_path[i][0], _path[i][1]))
					break;
			}
		}

		if(n < 2)
		{
			if(clearpath)
			{
				if(!NTA_ClearPosition(20, true, 2, true, true, spectype))
					return false;

				NTP_DoPrecast(false);

				if(!NTM_MoveTo(me.areaid, _path[i][0], _path[i][1], 1))
					NTM_MoveTo(areaid, _path[i][0], _path[i][1], 1);
			}
		}
		else if(_retry < retry)
		{
			_path = GetPath(areaid, me.x, me.y, x, y, _teleport);

			if(!_path)
				return false;
			
			i = -1;
			_retry++;
		}
		else
			return false;
	}

	return true;
}

function NTM_MoveToPresetUnit(areaid, unittype, classid, offsetx, offsety, clearpath, spectype)
{
	var i, n;
	var _unit;

	if(arguments.length < 4)
	{
		offsetx = 0;
		offsety = 0;
	}
	if(arguments.length < 6)
		clearpath = false;
	if(arguments.length < 7)
		spectype = 0x01;

	for(i = 0 ; i <= 2 ; i++)
	{
		_unit = GetPresetUnits(areaid, unittype);

		if(_unit)
		{
			for(n = 0 ; n < _unit.length ; n++)
			{
				if(_unit[n].id == classid)
					return NTM_MoveTo(areaid, _unit[n].roomx*5 + _unit[n].x + offsetx, _unit[n].roomy*5 + _unit[n].y + offsety, 3, clearpath, spectype);
			}
		}

		if(i < 2)
			NTC_Delay(500);
	}

	return false;
}

function NTM_MoveToStair(areaid, subareaid, offsetx, offsety, clearpath, spectype)
{
	var i, n;
	var _unit;

	if(arguments.length < 3)
	{
		offsetx = 0;
		offsety = 0;
	}
	if(arguments.length < 5)
		clearpath = false;
	if(arguments.length < 6)
		spectype = 0x01;

	for(i = 0; i <= 2; i++)
	{
		_unit = GetPresetUnits(areaid, NTC_UNIT_TILE);

		if(_unit)
		{
			for(n = 0 ; n < _unit.length ; n++)
			{
				if(_unit[n].subareaid == subareaid)
					return NTM_MoveTo(areaid, _unit[n].roomx*5 + _unit[n].x + offsetx, _unit[n].roomy*5 + _unit[n].y + offsety, 3, clearpath, spectype, false, subareaid);
			}
		}

		if(i < 2)
			NTC_Delay(500);
	}

	return false;
}

function NTM_TeleportTo(x, y)
{
	if(!MWC_BuyManaTriggered)
		MWT_CheckManaPotions(0.05);
	
	NTC_CastSkill(MWS_TELEPORT, NTC_HAND_RIGHT, x, y);

	for(var i = 0; i < 15; i++)
	{
		if(Math.abs(me.x - x) < 4 && Math.abs(me.y - y) < 4)
			return true;

		NTC_Delay(NTC_DELAY_FRAME);
	}

	return false;
}

function NTM_LeapTo(x, y)
{
	NTC_CastSkill(MWS_LEAP, NTC_HAND_RIGHT, x, y);

	for(var i = 0 ; i < 15 ; i++)
	{
		if(Math.abs(me.x-x) < 4 && Math.abs(me.y-y) < 4)
			return true;

		NTC_Delay(NTC_DELAY_FRAME);
	}

	return false;
}

function NTM_WalkTo(x, y)
{
	var i;
	var _prex1, _prey1;
	var _prex2, _prey2;

	if(me.runwalk == 0)
		me.runwalk = 1;

	for(i = 0 ; i < 480 ; i++)
	{
		if((i % 10) == 0)
		{
			if((i % 60) == 0)
			{
				_prex1 = me.x;
				_prey1 = me.y;

				if((i % 120) == 0)
				{
					_prex2 = me.x;
					_prey2 = me.y;
				}
			}

			ClickMap(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, x, y);
		}

		NTC_Delay(NTC_DELAY_FRAME);

		if(Math.abs(me.x-x) < 2 && Math.abs(me.y-y) < 2)
			break;

		if((i % 10) == 9)
		{
			ClickMap(NTC_CLICK_LUP, NTC_SHIFT_NONE, null);
			NTC_Delay(NTC_DELAY_FRAME);

			if((i % 60) == 59)
			{
				if(me.x == _prex1 && me.y == _prey1 && !NTC_InTown())
				{
					NTA_ClearPosition(2);

					NTP_DoPrecast(false);
				}

				if((i % 120) == 119 && me.x == _prex2 && me.y == _prey2)
					return false;
			}
		}
	}

	ClickMap(NTC_CLICK_LUP, NTC_SHIFT_NONE, null);
	NTC_Delay(NTC_DELAY_FRAME);

	return (i < 480);
}

function NTM_TakeUnit(unittype, classid)
{
	var _unit;
	var _prearea;

	_unit = NTC_FindUnit(unittype, classid, 5);

	if(!_unit)
		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);

			if(NTM_GetCloserInt(_unit))
				NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _unit);
		}

		NTC_Delay(200);

		if(me.areaid != _prearea)
			break;
	}

	while(me.areaid == 0)
		NTC_Delay(200);

	if(me.areaid == _prearea)
		return false;

	NTC_PingDelay(NTConfig_AreaDelay);

   	return true;
}

function NTM_TakeStair(areaid)
{
	var _unit;
	var _prearea;

	_unit = NTM_GetStairInt(areaid);

	if(!_unit)
		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);

			if(NTM_GetCloserInt(_unit))
				NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _unit);
		}

		NTC_Delay(200);

		if(me.areaid != _prearea)
			break;
	}

	while(me.areaid == 0)
		NTC_Delay(200);

	if(me.areaid == _prearea)
		return false;

	NTC_PingDelay(NTConfig_AreaDelay);

   	return true;
}

function NTM_TakeWaypoint(areaid)
{
	var _unit, _area, _waypointIndex;

	if(me.areaid == areaid)
		return true;

	_unit = NTM_GetWaypointInt();
		
	if(!_unit)
		return false;

	if(NTC_InTown())
		me.Cancel(1);

	for(var i = 0; i < 40; i++)
	{
		if((i % 10) == 0)
		{
			if(MWConfig_UseTelekinesisMode == 3 && i < 20 && NTC_GetSkillLevel(MWS_TELEKINESIS) > 0)
				MWC_CastTelekinesis(_unit);
			else if(NTM_GetCloserInt(_unit))
				NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _unit);
		}

		NTC_Delay(250);

		if(GetUIState(0x14))
		{
			if(me.TakeWaypoint(areaid))
			{
				if(NTConfig_AreaDelay)
					NTC_PingDelay(NTConfig_AreaDelay);
				
				return true;
			}

			break;
		}
	}
	
	// Let the user know if the char actually lacks the destination waypoint
	_waypointIndex = _MWM_AreaAtWaypointIndex.indexOf(areaid);
	
	if(_waypointIndex > -1)
	{
		if(!GetWaypoint(_waypointIndex))
		{
			_area = MWC_FindArea(areaid);
			
			if(_area)
			{
				NTC_SendLogToOOG(NTC_LOG_COMMON, "ÿBE0000A waypoint is required in order to run the current script: " + _area.name);
				Print("ÿc1Your char lacks a waypoint: " + _area.name);
			}
		}
	}
	
	return false;
}

function NTM_UsePortal(how, dest, ownername, portal)
{
	if(me.areaid == dest)
		return true;

	if(NTC_InTown())
		me.Cancel(1);

	if(NTM_ChangeAreaInt(how, dest, ownername, portal))
	{
		NTC_PingDelay(NTConfig_AreaDelay);
		return true;
	}

	return false;
}

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

	if(me.areaid == 136)
		return false;
	
	if(NTC_InTown())
		return true;

	if(arguments.length < 1)
		_usetp = false;

	if(!NTC_CastSkill(MWS_TOME_OF_TOWN_PORTAL, NTC_HAND_RIGHT))
		return false;

	NTC_PingDelay(500);

	_portalname = GetLocaleString(3226);

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

					return true;
				}
			} while(_portal.GetNext());
		}

		if(i < 3)
			NTC_Delay(500);
	}

	return false;
}

// Internal function
function NTM_GetStairInt(areaid)
{
	var _tile;

	for(var i = 0 ; i <= 2 ; i++)
	{
		_tile = NTC_FindUnit(NTC_UNIT_TILE);

		if(_tile)
		{
			do
			{
				if(!areaid || _tile.subareaid == areaid)
					return _tile;
			} while(_tile.GetNext());
		}

		if(i < 2)
			NTC_Delay(500);
	}

	return null;
}

function NTM_GetWaypointInt(retry)
{
	var _waypoint;
	
	if(arguments.length < 1)
		retry = 3;

	for(var i = 0; i < 1 + retry; i++)
	{
		_waypoint = NTC_FindUnit(NTC_UNIT_OBJECT);

		if(_waypoint)
		{
			do
			{
				if(MWM_IsWaypoint(_waypoint.classid))
					return _waypoint;
			} while(_waypoint.GetNext());
		}

		if(retry != 0)
			NTC_Delay(500);
	}

	return null;
}

function MWM_IsWaypoint(classid)
{
	switch(classid)
	{
		case 119:
		case 145:
		case 156:
		case 157:
		case 237:
		case 238:
		case 288:
		case 323:
		case 324:
		case 398:
		case 402:
		case 429:
		case 494:
		case 496:
		case 511:
		case 539:
		return true;
	}
	
	return false;
}

function NTM_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, 3, false, 0, false);

			if(NTM_GetCloserInt(_portal))
				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 NTM_FindCorrectPortalInt(blueportal, ownername)
{
	var _portal;
	var _portalname;

	_portalname = GetLocaleString(3226);

	if(blueportal)
	{
		for(var i = 0 ; i <= 2 ; i++)
		{
			_portal = NTC_FindUnit(NTC_UNIT_OBJECT, _portalname);

			if(_portal)
			{
				do
				{
					if(_portal.mode == 2 && NTC_CheckOwner(_portal, ownername) && GetDistance(me, _portal) <= 30)
						return _portal;
				} while(_portal.GetNext());
			}

			if(i < 2)
				NTC_Delay(500);
		}

		return -2;
	}
	else
	{
		for(var i = 0 ; i <= 2 ; i++)
		{
			_portal = NTC_FindUnit(NTC_UNIT_OBJECT, _portalname);

			if(_portal)
			{
				do
				{
					if(_portal.mode == 2 && !_portal.GetParent())
						return _portal;
				} while(_portal.GetNext());
			}

			if(i < 2)
				NTC_Delay(500);
		}
	}

	return -3;
}

function NTM_FindPortalAreaInt(dest, retry)
{
	var _portal;
	var _portalname;
	
	if(arguments.length < 2)
		retry = 2;

	_portalname = GetLocaleString(3226);

	for(var i = 0; i <= retry; i++)
	{
		_portal = NTC_FindUnit(NTC_UNIT_OBJECT, _portalname);

		if(_portal)
		{
			do
			{
				if(_portal.mode == 2 && (_portal.subareaid == dest || _portal.subareaid - 768 == dest || _portal.subareaid - 247 == dest || _portal.subareaid - 251 == dest))
				{
					if(_portal.GetParent())
					{
						if(NTC_CheckOwner(_portal) || NTC_InMyParty(_portal.GetParent()))
							return _portal;
					}
					else
						return _portal;
				}
			} while(_portal.GetNext());
		}

		if(retry != 0 && i < retry)
			NTC_Delay(500);
	}

	return -1;
}

function NTM_GetCloserInt(unit)
{
	if(GetDistance(me, unit) > 2)
		return NTM_MoveTo(unit.areaid, unit.x, unit.y);

	return true;
}
elpoire is offline  
Old 09/03/2013, 06:20   #4
 
elite*gold: 0
Join Date: Oct 2008
Posts: 216
Received Thanks: 47
Code:
	if(!NTM_MoveTo(83, me.x+82, me.y-84))   //move to the council chamber
	{
		NTC_SendMsgToScript("MWBotGame.ntj", NTM_MoveTo, 55, me.areaid, 5780 + _deltax, 1555 + _deltay);
		return;
	}
hast du an dem script rumgefummelt ? muddy gab das zu 99% so raus :

Code:
	if(!NTM_MoveTo(me.areaid, 5780 + _deltax, 1555 + _deltay))
	{
		NTC_SendMsgToScript("MWBotGame.ntj", NTM_MoveTo, 55, me.areaid, 5780 + _deltax, 1555 + _deltay);
		return;
	}
Zum Verständnis: das in den () ist der befehl , wenn der fehlschlägt wird das mit dem {} block dem manager gemeldet
Grommel is offline  
Thanks
1 User
Old 09/03/2013, 06:36   #5
 
elite*gold: 0
Join Date: Sep 2013
Posts: 40
Received Thanks: 0
Ja, habe viel dran rumgebastelt, andere Koordinaten aus anderen Scripts eingefügt usw..

Habe versehentlich das falsche Script gepostet, das Script mit dem ich aktuell fahre ist dieses:

Code:
/**
*	This file was modified by 
*	Check the programming section for updates and further scripts
*	Last Update: 02/05/2011
*/

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

	MWC_Initialize();
	
	var _waypoint;
	var _deltax, _deltay;
	var _attackpos = [5800, 1554, 5799, 1534, 5799, 1526, 5797, 1514, 5795, 1490, 5787, 1491, 5797, 1514, 5781, 1514];

	if(!NTTM_CheckAct(me.act, true))
	{
		NTC_SendMsgToScript("MWBotGame.ntj", NTTM_CheckAct, 22, me.act, true);
		return;
	}
	
	NTTMGR_TownManager();

	if(!NTTM_TownMove("waypoint"))
	{
		NTC_SendMsgToScript("MWBotGame.ntj", NTTM_TownMove, 30, "waypoint");
		return;
	}

	if(!NTM_TakeWaypoint(83))
	{
		NTC_SendMsgToScript("MWBotGame.ntj", NTM_TakeWaypoint, 36, 83);
		return;
	}

	_waypoint = NTC_FindUnit(NTC_UNIT_OBJECT, GetLocaleString(22526), 5);

	if(!_waypoint)
	{
		NTC_SendMsgToScript("MWBotGame.ntj", NTC_FindUnit, 44, NTC_UNIT_OBJECT, GetLocaleString(22526), 5);
		return;
	}

	_deltax = _waypoint.x - 5699;
	_deltay = _waypoint.y - 1584;
	
	NTP_DoPrecast(true);

	if(!NTM_MoveTo(me.areaid, 5780 + _deltax, 1555 + _deltay))
	{
		NTC_SendMsgToScript("MWBotGame.ntj", NTM_MoveTo, 55, me.areaid, 5780 + _deltax, 1555 + _deltay);
		return;
	}

	for(var i = 0; i < _attackpos.length; i += 2)
	{
		NTM_MoveTo(me.areaid, _attackpos[i] + _deltax, _attackpos[i + 1] + _deltay);

		NTA_ClearPosition(25, true, 2);
	}
	
	MWL_FindItem();

	NTC_SendMsgToScript("MWBotGame.ntj", "SCRIPT_END");
}
Danke schon einmal für die schnelle Antwort
elpoire is offline  
Old 09/03/2013, 06:54   #6
 
elite*gold: 0
Join Date: Oct 2008
Posts: 216
Received Thanks: 47
Quote:
Ja, habe viel dran rumgebastelt, andere Koordinaten aus anderen Scripts eingefügt usw..
Das letztere ist zu 100% Muddy´s Script, ohne Änderungen.
Besser nochmal checken welches du nun laufen lässt.
Grommel is offline  
Old 09/03/2013, 15:43   #7
 
elite*gold: 0
Join Date: Sep 2013
Posts: 40
Received Thanks: 0
Das unveränderte Script von Muddy habe ich laufen lassen, bekomme allerdings den oben genannten Fehler..
elpoire is offline  
Old 09/03/2013, 20:12   #8
 
elite*gold: 0
Join Date: Oct 2008
Posts: 216
Received Thanks: 47
poste mal deine config bitte
Grommel is offline  
Old 09/03/2013, 20:17   #9
 
elite*gold: 0
Join Date: Sep 2013
Posts: 40
Received Thanks: 0
EDIT: Habe gerade einen Uralt-Post gefunden, wo Muddy gesagt hat, dass es an zu niedriger FCR liegen könnte.. allerdings wurde das nie wieder kommentiert..
Ich weiß also nicht ob sich das Problem dadurch gelöst hat.

Muddy hat zu FastMod geraten.. gibts zu dem Programm zufällig einen FAQ o.ä.?

Char config?

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");

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(["NTEldritch.ntj", 5]); NTConfig_ShenkExtension = 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 = 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;
	
	//------------------------------------------------------------------------------
	// 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,0,0,0,0];
	NTConfig_Columns[1] = [1,1,1,1,1,1,0,0,0,0];
	NTConfig_Columns[2] = [1,1,1,1,1,1,0,0,0,0];
	NTConfig_Columns[3] = [1,1,1,1,1,1,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;
	
	//------------------------------------------------------------------------------
	// Find Item Configuration
	//------------------------------------------------------------------------------
	
	// Set to true to loot nearby corpses using Find Item.
	MWConfig_UseFindItem = true;
	
	// This is the default range to check for corpses when Find Item is activated.
	MWConfig_FindItemRange = 30;
	
	// Set to true to check for dropped items right after looting a corpse. NOTE: This will slow down your runs and therefore should definately be set to false when doing private games.
	MWConfig_PickLootedItemsInstantly = false;
	
	// If you do not like to loot corpses in a certain area, you can its areaid as an exception below. NOTE: All areaids can be found in "sdk\areas.txt".
	// MWConfig_FindItemExceptions.push(<areaid1>, <areaid2>, <areaidn>);
	
	//------------------------------------------------------------------------------
	// Chest Configuration
	//------------------------------------------------------------------------------
	
	// Select which containers shall be looted. 0: None; 1: Super Chests, 2: All
	MWConfig_OpenContainerMode = 1;
	
	// 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 = true;
	
	//------------------------------------------------------------------------------
	// 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 = false;
	
	// 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 = 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 = [];
	
	// 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 = 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_WHIRLWIND;		// This skill is used once whenever attacking a new target. Set to -1 to deactivate.
	NTConfig_AttackSkill[1] = MWS_WHIRLWIND;		// Primary skill to bosses.
	NTConfig_AttackSkill[2] = MWS_WHIRLWIND;		// Reserved
	NTConfig_AttackSkill[3] = MWS_WHIRLWIND;		// Primary skill to others.
	NTConfig_AttackSkill[4] = MWS_WHIRLWIND;		// Reserved
	NTConfig_AttackSkill[5] = MWS_BERSERK;			// Secondary skill in case monster is immune to primary skill. Set to -1 to deactivate.
	NTConfig_AttackSkill[6] = MWS_WHIRLWIND;		// Reserved
	NTConfig_AttackSkill[7] = MWS_WHIRLWIND;		// Reserved

	// 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 = 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, 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 = 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.
	
	// 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;
}
Entschuldigt den Doppelpost, aber ich hoffe hiermit wenigstens ein bisschen die Übersicht behalten zu können..

Ich habe jetzt folgenenden Travincal-Script ausprobiert:

Code:
//##############################################################################################################################
//Do Not distribute these scripts without the credits ##########################################################################
//##############################################################################################################################
//Regards - Young_Love from http://www.edgeofnowhere.cc ########################################################################
//##############################################################################################################################

function NTMain()
{
   Include("libs/common/NTCommon.ntl");
   NTC_IncludeLibs();
   NTC_IncludeConfig("NTBot/char_configs");

   NT_LoadConfig();
   NTSI_LoadNIPFiles("NTBot/item_configs");
   
   var _real;
   var _waypoint;
   var _deltax, _deltay;
   var _deltax2, _deltay2;

   var _attackpos = [5797, 1514, 5795, 1490, 5787, 1491, 5797, 1514, 5781, 1514];
   var _attackposs = [me.areaid, +16, +4,]
   var _attackposss = [me.areaid, +12, +4]
   _real = GetPresetUnits(me.areaid, 324);
   
   NTA_Initialize();

   me.maxgametime = 0;

   NTTM_CheckAct();

   NTTMGR_TownManager();

   NTTM_TownMove("waypoint");

   NTM_TakeWaypoint(83);

   NTP_DoPrecast(true);

   _waypoint = NTC_GetUnit(NTC_UNIT_OBJECT, GetLocaleString(22526), 5);

   _deltax = _waypoint.x - 5699;
   _deltay = _waypoint.y - 1584;
   _deltax2 = _attackposs;
   _deltay2 = _attackposss;   
   
   for(var i = 0 ; i < _attackposs.length ; i += 2)
   {
      NTM_MoveTo(me.areaid, _attackposs[i-2], _attackposs[i-2]);
   }

   for(var i = 0 ; i < _attackposss.length ; i += 2)
   {
      NTM_MoveTo(me.areaid, _attackposss[i-2], _attackposss[i-3]);
   }


   NT_FindDurance();

   NTM_MoveTo(me.areaid, 5775+_deltax, 1545+_deltay);

   var _unit;

   _unit = GetPresetUnits(me.areaid, NTC_UNIT_TILE);

   if(_unit.id == 64)
   {
   NTM_MoveTo(mr.areaid, _unit);
   }

   for(var i = 0 ; i < _attackpos.length ; i += 2)
   {
      NTM_MoveTo(me.areaid, _attackpos[i]+_deltax, _attackpos[i+1]+_deltay);
      NTA_ClearPosition(25)
   }

   

   NTM_MakeTP();
      
   NTM_UsePortal("BluePortal");
   
   NTC_SendMsgToScript("NTBotGame.ntj", "SCRIPT_END");
}

function NT_FindDurance()
{
   var _unit;


   _unit = GetPresetUnits(me.areaid, NTC_UNIT_TILE);


   for(var i = 0 ; i < _unit.length ; i++)
   {
      if(_unit[i].id == 64)
      {
         _todurx = (_unit[i].roomx*5+_unit[i].x);
         _todury = (_unit[i].roomy*5+_unit[i].y);
      }
   }
}

function NTC_GetUnit(unittype, classid)
{
   var _unit;

   for(var i = 0 ; i < 2 ; i++)
   {
      if(arguments.length < 2)
         _unit = GetUnit(unittype);
      else
         _unit = GetUnit(unittype, classid);

      if(_unit)
         return _unit;

      if(i < 1)
         NTC_PingDelay(200);
   }

   return false;
}
Funktioniert problemlos, allerdings steht der nach dem Run ohne Befehl in der Stadt rum.
Ich weiß jetzt nur nicht wie ich eine END-Zeile einfüge, sodass sie berücksichtigt wird..
elpoire is offline  
Old 09/03/2013, 23:15   #10
 
elite*gold: 0
Join Date: Dec 2004
Posts: 875
Received Thanks: 59
mh ich frag mich grad warum du überhaupt was dort geändert hast bei muddys zeug läuft es zu 99% alles auch die scripts hab selbst nen barb zu laufen und hab den fehler da oben nur gaaaaaaaaaaaaaaaaaaaaaaaaaaaannnnnz selten nach mehren tagen vielleicht einmal oder zwei aber wie gesagt selten bis garnicht
Ghost dragon is offline  
Old 09/04/2013, 06:43   #11
 
elite*gold: 0
Join Date: Sep 2013
Posts: 40
Received Thanks: 0
Quote:
Originally Posted by Ghost dragon View Post
mh ich frag mich grad warum du überhaupt was dort geändert hast bei muddys zeug läuft es zu 99% alles auch die scripts hab selbst nen barb zu laufen und hab den fehler da oben nur gaaaaaaaaaaaaaaaaaaaaaaaaaaaannnnnz selten nach mehren tagen vielleicht einmal oder zwei aber wie gesagt selten bis garnicht
Der Fehler tritt bei 80% der Games auf.. :/
Ausserdem ist es das Script von Travincal so, wie ich es runtergeladen habe..

Der Fehler tritt auch nie beim erstem Game auf, erst danach, dann aber fast immer..

Habe den Bot jetzt nochmals runtergeladen und die Move-, Char- und Travincal-configs überschrieben - ohne Erfolg..

Ich teste es jetzt mit dem 40FCR BP..


Nein, an dem FCR Breakpoint kann es auch nicht liegen..


So.. habe jetzt statt Enigma eine andere Rüstung angelegt, natürlich ohne Erfolg.. (unter Muddys "Standard" Script)





Komme absolut nicht vorran... brauche Hilfe..
elpoire is offline  
Old 09/04/2013, 14:51   #12
Administrator
 
Muddy Waters's Avatar
 
elite*gold: 41364
Join Date: Jan 2010
Posts: 22,729
Received Thanks: 12,625
Was genau hindert dich nun daran, Fastmod zu verwenden?

Wenn das andere Script tatsächlich funktioniert, könntest du es mal so versuchen:
Code:
/**
*	This file was modified by 
*	Check the programming section for updates and further scripts
*	Last Update: 02/05/2011
*/

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

	MWC_Initialize();
	
	var _waypoint;
	var _deltax, _deltay;
	var _attackpos = [5800, 1554, 5799, 1534, 5799, 1526, 5797, 1514, 5795, 1490, 5787, 1491, 5797, 1514, 5781, 1514];

	if(!NTTM_CheckAct(me.act, true))
	{
		NTC_SendMsgToScript("MWBotGame.ntj", NTTM_CheckAct, 22, me.act, true);
		return;
	}
	
	NTTMGR_TownManager();

	if(!NTTM_TownMove("waypoint"))
	{
		NTC_SendMsgToScript("MWBotGame.ntj", NTTM_TownMove, 30, "waypoint");
		return;
	}

	if(!NTM_TakeWaypoint(83))
	{
		NTC_SendMsgToScript("MWBotGame.ntj", NTM_TakeWaypoint, 36, 83);
		return;
	}

	_waypoint = NTC_FindUnit(NTC_UNIT_OBJECT, GetLocaleString(22526), 5);

	if(!_waypoint)
	{
		NTC_SendMsgToScript("MWBotGame.ntj", NTC_FindUnit, 44, NTC_UNIT_OBJECT, GetLocaleString(22526), 5);
		return;
	}

	_deltax = _waypoint.x - 5699;
	_deltay = _waypoint.y - 1584;
	
	NTP_DoPrecast(true);

	if(!NTM_MoveTo(me.areaid, 5775 + _deltax, 1545 + _deltay, 15))
	{
		NTC_SendMsgToScript("MWBotGame.ntj", NTM_MoveTo, 55, me.areaid, 5775 + _deltax, 1545 + _deltay, 15);
		return;
	}

	for(var i = 0; i < _attackpos.length; i += 2)
	{
		NTM_MoveTo(me.areaid, _attackpos[i] + _deltax, _attackpos[i + 1] + _deltay);

		NTA_ClearPosition(25, true, 2);
	}
	
	MWL_FindItem();

	NTC_SendMsgToScript("MWBotGame.ntj", "SCRIPT_END");
}
Ansonsten kannst du auch einfach das andere Script nehmen, wobei du NTC_SendMsgToScript-Aufrufe mit "NTBotgame.ntj" zu "MWBotGame.ntj" ändern musst. Ich habe nichts davon getestet, ich habe seit Ewigkeiten kein D2 mehr gespielt.
Muddy Waters is offline  
Thanks
1 User
Reply


Similar Threads Similar Threads
Travincal walk fussgänger MW d2nt
01/09/2012 - Diablo 2 - 0 Replies
Habe mir mal das Travincalscript von Muddy_Waters d2nt vorgenommen und für Fussgänger umgeschrieben. Da ich die bisherigen moveto´s recht unansehnlich fand, habe ich eigentlich nur einen leichter (für mich) nachvollziehbaren Weg dafür eingesetzt. Startpunkt is so einfach der Wp mit 0, 0. Mit meinem Barb funktioniert es in Classic Hell recht ordentlich. /** * This file was modified by [email protected] * Check the programming section for updates and further scripts * Last Update:...
Suche verbessertes Travincal Script (Hdin)
12/29/2010 - Diablo 2 - 7 Replies
Bei dem jetzigen Traviscript (ist eigentlich in allen D2NT Versionen gleich) passiert es sehr oft, dass mein Hammerdin minutenlang probiert, ein Monster zu killen. Er müsste zu diesem neu bzw. besser hin teleportieren, macht er aber nicht.. (auf Wunsch kann ich Video machen..) Hat da vllt jemand ein besseres Travi Script, dass er mir geben kann? lg
Akt3-Travincal.ntj : NTM_MoveTo() failed (Travincal)
12/08/2010 - Diablo 2 - 3 Replies
Ich bekomme bei jedem 2. Game das de bot joined folgenden fehler: Akt3-Travincal.ntj : NTM_MoveTo() failed (Travincal) was ist das bitte´?
Merc stirbt zu oft bei Travincal!
10/08/2010 - Diablo 2 - 22 Replies
Der Merc von meinem Goldbarbar stirbt zu oft, da der Gb nicht immer Lebensspender zaubert oder es einfach zu lange dauert. Ich lasse die übrigends in einem hölle, 8pl Spiel laufen. Deswegen auch der hohe Schaden^^ Das Eq: Eth gaze "um"
Classic Soso sucht Travincal script
06/26/2010 - Diablo 2 Programming - 0 Replies
Hi, meine Soso läuft recht zufriedenstellend mit D2NT 3.1 durch a1, a2 und a3 in Hölle (Bosse), nach einigen kleineren Änderungen der Standardscripts, try and error. Sie würde gerne auch Travincal machen. Das vorhandene original Script ist halt aber nur für LOD chars spielbar. Aber was ich auch versuche, ich kann die sprache nicht, aber mit Logik geht das eine oder andere, die springt immer in die Vollen ... grr... Weiss jemand ein Script, in dem sie versucht die Burschen möglichst zu...



All times are GMT +2. The time now is 15:10.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.