suche Classic Scripts

12/08/2010 08:21 DavLad#1
für
pala
sorc
Barb
java
und semmoner necro

es würde reichen wenn es nur cs ist

sorc solte telen und der barb und der pala stoßen dann durchs tp dazu ....

giebt es so was ?

habe leider nichts in der sufu gefunden



lod schripts ohne tele gehen auch ....

der pala solte überzeugungsaura und hammer nutzen
der barb solte ww + bo benutzen wobei das hauptauregnmerk hier auf bo bezogen ist um die andren zu seporten

und necro udn java sind glaube ich klar ^^
12/08/2010 14:10 FoGzone#2
Quote:
Originally Posted by DavLad View Post
für
pala
sorc
Barb
java
und semmoner necro

es würde reichen wenn es nur cs ist

sorc solte telen und der barb und der pala stoßen dann durchs tp dazu ....

giebt es so was ?

habe leider nichts in der sufu gefunden



lod schripts ohne tele gehen auch ....

der pala solte überzeugungsaura und hammer nutzen
der barb solte ww + bo benutzen wobei das hauptauregnmerk hier auf bo bezogen ist um die andren zu seporten

und necro udn java sind glaube ich klar ^^
is doch ganz einfach solange du kein fastdia machen willst^^
bei der soso ganz normal cs einstellen und bei den leechern dialeechfight
musst halt nur die sache wegen dem enibug ausstellen sonst leaven deine anderen chars ziemlich schnell

dann gibts noch die fast cs methode via script (sorc rusht via tele an die seals und leecher joinen das tp um das seal zu cleanen und gehen wieder in die stadt und warten auf das nächste tp - leecher kommen am anfang runter zum wp und bekommen barb bo):

Script (als TeamD.ntj im bots folder abspeichern):
Code:
//cmd vars - do NOT touch
	var _MyDT_PreMessage = "";
	var _sealpos = 0;
	var safex;
	var safey;
	var prevx;
	var prevy;
//leader var, will be in char config, maybe
	var leader = "NAME";

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

	NT_LoadConfig();
	NTSI_LoadNIPFiles("NTBot/item_configs");

	NTA_Initialize();
	
	if(!NTTM_CheckAct()) {
		NTC_SendMsgToScript("NTBotGame.ntj", "NTTM_CheckAct()");
		return;
	}
	
	NTC_Delay(1000);
	
	if(!NTTM_CheckAct(4)) {
		NTC_SendMsgToScript("NTBotGame.ntj", "NTTM_CheckAct()");
		return;
	}
	
	RegisterEvent(EVENT_GAMEMSG, quitfunc); 
	
	TD_File("NTBot/bots/TeamD.txt", 1);
	
	if(me.classid == 1) {
		if(!NTTM_CheckAct(1)) {
			NTC_SendMsgToScript("NTBotGame.ntj", "NTTM_CheckAct()");
			return;
		}
		
		if(NTConfig_DelayStart)
			NTC_Delay(20000);
		
		Print("Loading sorc function");
		NTTMGR_TownManager();	
		TD_Sorcfunc();
	}
	
	if(me.classid == 3) {
		Print("Loading hammer function");
		NTTMGR_TownManager();
		NTTM_TownMove("portalspot");
		
		while(1) {
			TD_TeamCommands();
			Delay(200);
		}
	}
	
	if(me.classid == 4) {
		Print("Loading barb function");
		NTTMGR_TownManager();	
		NTTM_TownMove("portalspot");
		
		while(1) {
			TD_TeamCommands();
			Delay(200);
		}
	}
	
	NTC_SendMsgToScript("NTBotGame.ntj", "SCRIPT_END");
}

function TD_Sorcfunc() { //work in progress!
	NTC_Delay(500);
	
	if(!NTTM_TownMove("waypoint")) {
		NTC_SendMsgToScript("NTBotGame.ntj", "NTTM_TownMove()");
		return;
	}
	
	if(!NTM_TakeWaypoint(107)) {
		NTC_SendMsgToScript("NTBotGame.ntj", "NTM_TakeWaypoint()");
		return;
	}
	
	NTC_Delay(500);
	NTM_MoveTo(me.areaid, me.x+5, me.y);
	for(var i = 0 ; i < 5 ; i++) {
		if(NTM_MakeTP())
			break;
	}
	
	TD_File("NTBot/bots/TeamD.txt", 1, ".bo");
	
	while(!me.GetState(32))
		NTC_Delay(500);

	NTP_DoPrecast(true);
		
	if(!TD_MoveTo(108, 7802, 5591)) { //urdars! and svs!
		NTC_SendMsgToScript("NTBotGame.ntj", "TD_MoveTo()");
		return;
	}

	if(TD_DetectLayout(1) == 1) { 
		TD_MoveTo(me.areaid, 7701, 5299);
		TD_Deploy(7681, 5299, 0, 0, 15, 15);
		for(var i = 0 ; i < 5 ; i++) {
			if(NTM_MakeTP())
				break;
		}
	} else {
		TD_MoveTo(me.areaid, 7700, 5313);
		TD_Deploy(7680, 5313, 15, 15, 0, 0);
		for(var i = 0 ; i < 5 ; i++) {
			if(NTM_MakeTP())
				break;
		}
	}
	
	TD_File("NTBot/bots/TeamD.txt", 1, ".s1"); //vizier
	
	if(!TD_VizierSeal()){
		NTC_SendMsgToScript("NTBotGame.ntj", "Seal opening");
		return;
	}

	NTM_MoveTo(me.areaid, safex, safey); 
	
	while(!TD_IsPlayerOut()) {
		NTA_KillMonster(GetLocaleString(2851));
		NTA_ClearPosition(10);
		NTSI_PickItems();
		NTM_MoveTo(me.areaid, safex, safey);
	}
	
	if(!NTTMGR_CheckSafe(NTConfig_CheckSelfSafe, NTConfig_CheckMercSafe))
	{
		NTC_SendMsgToScript("NTBotGame.ntj", "NTTMGR_CheckSafe()");
		return;
	}
	
	NTP_DoPrecast(true);
	
	if(TD_DetectLayout(3) == 1) { 
		TD_MoveTo(me.areaid, 7900, 5291);
		TD_Deploy(7920, 5291, 15, 15, 0, 0);
		for(var i = 0 ; i < 5 ; i++) {
			if(NTM_MakeTP())
				break;
		}
	} else {
		TD_MoveTo(me.areaid, 7910, 5278); 
		TD_Deploy(7930, 5278, 0, 15, 15, 0);
		for(var i = 0 ; i < 5 ; i++) {
			if(NTM_MakeTP())
				break;
		}
	}

	TD_File("NTBot/bots/TeamD.txt", 1, ".s3"); //infector

	if(!TD_InfectorSeal()){
		NTC_SendMsgToScript("NTBotGame.ntj", "Seal opening");
		return;
	}
	
	NTM_MoveTo(me.areaid, safex, safey); 
	
	while(!TD_IsPlayerOut()) {
		NTA_KillMonster(GetLocaleString(2853));
		NTA_ClearPosition(10);
		NTSI_PickItems();
		NTM_MoveTo(me.areaid, safex, safey); 
	}
	
	
	if(!NTTMGR_CheckSafe(NTConfig_CheckSelfSafe, NTConfig_CheckMercSafe))
	{
		NTC_SendMsgToScript("NTBotGame.ntj", "NTTMGR_CheckSafe()");
		return;
	}
	
	NTP_DoPrecast(true);
	
	if(TD_DetectLayout(2) == 1) {
		TD_MoveTo(me.areaid, 7776, 5230);
		TD_Deploy(7776, 5220, 0, 0, 15, 15);
		for(var i = 0 ; i < 5 ; i++) {
			if(NTM_MakeTP())
				break;
		}
	} else {
		TD_MoveTo(me.areaid, 7779, 5200); 
		TD_Deploy(7779, 5180, 0, 0, 15, 15);
		for(var i = 0 ; i < 5 ; i++) {
			if(NTM_MakeTP())
				break;
		}
	}
	
	TD_File("NTBot/bots/TeamD.txt", 1, ".s2"); //de seis

	if(!TD_DeSeisSeal()){
		NTC_SendMsgToScript("NTBotGame.ntj", "Seal opening");
		return;
	}
	
	NTM_MoveTo(me.areaid, safex, safey); 
	
	while(!TD_IsPlayerOut()) {
		NTA_ClearPosition(10);
		NTSI_PickItems();
		NTM_MoveTo(me.areaid, safex, safey);
	}
	
	if(!NTTMGR_CheckSafe(NTConfig_CheckSelfSafe, NTConfig_CheckMercSafe))
	{
		NTC_SendMsgToScript("NTBotGame.ntj", "NTTMGR_CheckSafe()");
		return;
	}
	
	NTP_DoPrecast(true);
	
	if(!NTM_MoveTo(me.areaid, 7792, 5292)) {
		NTC_SendMsgToScript("NTBotGame.ntj", "NTM_MoveTo()");
		return;
	}

	NTM_MakeTP();
	
	TD_File("NTBot/bots/TeamD.txt", 1, ".d");
	
	NTC_FindUnit(NTC_UNIT_MONSTER, 243, 100);
	if(!NTA_KillMonster(243)) {
		NTC_SendMsgToScript("NTBotGame.ntj", "NTA_KillMonster()");
		return;
	}
	NTSI_PickItems();
	
	//anything else?
}

//--internal functions--

function quitfunc(msg, type) { //quit when leader leaves game
	if(msg.indexOf(leader) != -1 && (msg.indexOf("weaken") != -1 || msg.indexOf("timeout") != -1)) { //if leader quits
	//if(msg.indexOf("weaken") != -1 || msg.indexOf("timeout") != -1) { //if anyone quits
		NTC_Delay(500);
		ExitGame();
	}
}

function TD_Preattack(classid, extrahammers) { //extra hammers = hammers cast after the seal boss is spawned
	NTC_PutSkill(NTConfig_AttackSkill[4], NTC_HAND_RIGHT);
	while(!NTC_FindUnit(NTC_UNIT_MONSTER, classid))
		NTC_CastSkill(NTConfig_AttackSkill[3], 2);
	for(var i = 0 ; i < extrahammers ; i++) {
		NTC_CastSkill(NTConfig_AttackSkill[3], 2);
	}
}

function TD_VizierSeal() { //vizier
	for(var i = 0 ; i < 5 ; i++){
		NTM_MoveToPresetUnit(me.areaid, 2, 395);
		var _seal = NTC_FindUnit(NTC_UNIT_OBJECT, 395, 5);
		NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _seal);
		
		NTC_Delay(350);	
		
		if(_seal.mode <= 0)
			NTM_MoveTo(me.areaid, safex, safey);
		else
			break;
			
		NTC_Delay(250);	
		
		if(i == 4 && _seal.mode <= 0) 
			return false;
	}
	for(i = 0 ; i < 5 ; i++){
		NTM_MoveToPresetUnit(me.areaid, 2, 396);
		_seal = NTC_FindUnit(NTC_UNIT_OBJECT, 396, 5);
		NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _seal);
		
		NTC_Delay(350);	
		
		if(_seal.mode <= 0)
			NTM_MoveTo(me.areaid, safex, safey);
		else
			break;
			
		NTC_Delay(250);
		
		if(i == 4 && _seal.mode <= 0) 
			return false;
	}
	return true;
}

function TD_DeSeisSeal(){ //de seis
	for(var i = 0 ; i < 5 ; i++){
		NTM_MoveToPresetUnit(me.areaid, 2, 394);
		_seal = NTC_FindUnit(NTC_UNIT_OBJECT, 394, 5);
		NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _seal);
		
		NTC_Delay(350);	
		
		if(_seal.mode <= 0)
			NTM_MoveTo(me.areaid, safex, safey);
		else
			break;
			
		NTC_Delay(250);	
		
		if(i == 4 && _seal.mode <= 0) 
			return false;
	}
	return true;
}

function TD_InfectorSeal() { //infector
	for(var i = 0 ; i < 5 ; i++){
		NTM_MoveToPresetUnit(me.areaid, 2, 393);
		_seal = NTC_FindUnit(NTC_UNIT_OBJECT, 393, 5);
		NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _seal);
	
		NTC_Delay(350);	
	
		if(_seal.mode <= 0)
			NTM_MoveTo(me.areaid, safex, safey);
		else
			break;
			
		NTC_Delay(250);	
		
		if(i == 4 && _seal.mode <= 0) 
			return false;
	}
	for(i = 0 ; i < 5 ; i++){
		NTM_MoveToPresetUnit(me.areaid, 2, 392);
		_seal = NTC_FindUnit(NTC_UNIT_OBJECT, 392, 5);
		NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _seal);
		
		NTC_Delay(350);	
	
		if(_seal.mode <= 0)
			NTM_MoveTo(me.areaid, safex, safey);
		else
			break;
			
		NTC_Delay(250);	
		
		if(i == 4 && _seal.mode <= 0) 
			return false;
	}
	return true;
}

function TD_TeamCommands() {
    var _msg = TD_File("NTBot/bots/TeamD.txt", 0);

    if (_msg && _msg != _MyDT_PreMessage) {
        _MyDT_PreMessage = _msg;

        switch (_msg.substring(_msg.indexOf("/") + 1)) {
		case ".bo":
			if(me.classid == 3) { //Hammerdin
				NTM_UsePortal("BluePortal", 107, leader);
				NTC_Delay(500);
				NTP_DoPrecast(true);
				
				//while(!me.GetState(32))
					NTC_Delay(3500);
				
				if(!NTM_UsePortal("BluePortal", 103, leader)) //or make my own?
					NTTM_CheckAct();
			}
			if(me.classid == 4) { //Barb
				NTM_UsePortal("BluePortal", 107, leader);
				while(!me.GetState(32))
					NTP_DoPrecast(true);
				if(!NTM_UsePortal("BluePortal", 103, leader)) //or make my own?
					NTTM_CheckAct();
			}
			
			break;
		case ".s1": //vizier
			if(me.classid == 3) { //Hammerdin
				NTM_UsePortal("BluePortal", 108, leader);

				TD_Preattack(GetLocaleString(2851), 5);
				TD_KillMonster(GetLocaleString(2851));
				NTA_ClearPosition(5);
				NTSI_PickItems();

				if(!NTM_UsePortal("BluePortal", 103, leader)) //or make my own?
					NTTM_CheckAct();
				NTP_DoPrecast(true);
			}
			if(me.classid == 4) { //Barb
				NTM_UsePortal("BluePortal", 108, leader);
				//for(var i = 0 ; i < 3 ; i++) {
					NTC_CastSkill(130, NTC_HAND_RIGHT);
				//	Delay(300);
				//}
				NTP_DoPrecast(true);
				if(!NTM_UsePortal("BluePortal", 103, leader)) //or make my own?
					NTTM_CheckAct();
			}
			
			break;
		case ".s2": //de seis
			if(me.classid == 3) { //Hammerdin
				NTM_UsePortal("BluePortal", 108, leader);
				
				TD_Preattack(GetLocaleString(2852), 10);
				TD_KillMonster(GetLocaleString(2852));
				NTA_ClearPosition(15);
				NTSI_PickItems();
				
				if(!NTM_UsePortal("BluePortal", 103, leader)) //or make my own?
					NTTM_CheckAct();
				NTP_DoPrecast(true);
			}
			if(me.classid == 4) { //Barb
				NTM_UsePortal("BluePortal", 108, leader);
				for(var i = 0 ; i < 3 ; i++) {
					NTC_CastSkill(130, NTC_HAND_RIGHT);
					Delay(300);
				}
				NTP_DoPrecast(true);
				if(!NTM_UsePortal("BluePortal", 103, leader)) //or make my own?
					NTTM_CheckAct();
			}
			
			break;
		case ".s3": //infector
			if(me.classid == 3) { //Hammerdin
				NTM_UsePortal("BluePortal", 108, leader);

				TD_Preattack(GetLocaleString(2853), 5);
				TD_KillMonster(GetLocaleString(2853));
				NTA_ClearPosition(15);
				NTSI_PickItems();
				
				if(!NTM_UsePortal("BluePortal", 103, leader)) //or make my own?
					NTTM_CheckAct();
				NTP_DoPrecast(true);
			}		
			if(me.classid == 4) { //Barb
				NTM_UsePortal("BluePortal", 108, leader);
				//for(var i = 0 ; i < 1 ; i++) {
					NTC_CastSkill(130, NTC_HAND_RIGHT);
				//	Delay(300);
				//}
				NTP_DoPrecast(true);
				if(!NTM_UsePortal("BluePortal", 103, leader)) //or make my own?
					NTTM_CheckAct();
			}
			
			break;
		case ".d":
			if(me.classid == 3) { //Hammerdin
				NTM_UsePortal("BluePortal", 108, leader);

				NTC_FindUnit(NTC_UNIT_MONSTER, 243, 100);

				if(!TD_KillMonster(243)) {
					NTC_SendMsgToScript("NTBotGame.ntj", "TD_KillMonster()");
					return;
				}

				NTSI_PickItems();
			}
			if(me.classid == 4) { //Barb
				NTM_UsePortal("BluePortal", 108, leader);
				NTP_DoPrecast(true);
				
				//do something until diablo dies
				
				var _diablo = NTC_FindUnit(NTC_UNIT_MONSTER, 243)
				while(_diablo && _diablo.hp > 0)
					NTC_Delay(500);
			}
			
			break;
		case ".u": //urdars! and svs!
			if(me.classid == 3) { //Hammerdin
				NTM_UsePortal("BluePortal", 108, leader);

				if(NTC_FindUnit(NTC_UNIT_MONSTER, 362))
					TD_Preattack(362, 5);
				else if(NTC_FindUnit(NTC_UNIT_MONSTER, 189))
					TD_Preattack(189, 5);
				NTA_ClearPosition(15);
				NTSI_PickItems();

				if(!NTM_UsePortal("BluePortal", 103, leader)) //or make my own?
					NTTM_CheckAct();
				NTP_DoPrecast(true);
			}
			if(me.classid == 4) { //Barb - ADD SOMETHING EVENTUALLY
				//Say("Kolton you lazy bastard!");
				NTC_Delay(250);
			}
			
			break;
		}
    }
}

function TD_DetectLayout(seal) {
	switch(seal) {
	case 1:
		_sealpos = GetPresetUnits(me.areaid, NTC_UNIT_OBJECT);
		for(var i = 0 ; i < _sealpos.length ; i++) {
			if(_sealpos[i].id == 396) {
				if(_sealpos[i].roomy*5 + _sealpos[i].y == 5275)
					return 1;
				else
					return 2;

				break;
			}
		}
		break;
	case 2:
		_sealpos = GetPresetUnits(me.areaid, NTC_UNIT_OBJECT);
		for(i = 0 ; i < _sealpos.length ; i++) {
			if(_sealpos[i].id == 394) {
				if(_sealpos[i].roomx*5 + _sealpos[i].x == 7773)
					return 1;
				else
					return 2;

				break;
			}
		}
		break;	
	case 3:
		_sealpos = GetPresetUnits(me.areaid, NTC_UNIT_OBJECT);
		for(i = 0 ; i < _sealpos.length ; i++) {
			if(_sealpos[i].id == 392) {
				if(_sealpos[i].roomx*5 + _sealpos[i].x == 7893)
					return 1;
				else
					return 2;

				break;
			}
		}
		break;
	}
}

function TD_IsPlayerOut(area) { //function by Thursty
	var _player;
	var _myPartyId;

	_player = GetPlayerUnit();
	_myPartyId = _player.partyid;

	if(arguments.length < 1)
		_area = me.areaid;
	else
		_area = area;

	do {
		if(_player.areaid == _area && _myPartyId == _player.partyid)
			return false;

		NTC_Delay(100);

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

function TD_File(path, mode, msg, delay) { //big thanks to all the koreans out there
    var _msg  = "";
    var _line = "";
    var _fileHandle;
    var _isFileCheck = false;

    if (arguments.length < 3) msg   = "";
    if (arguments.length < 4) delay = (mode > 0) ? 5 : 2;

    while (delay--) {
        if (mode == 2 && !_isFileCheck) {
            _fileHandle = FileOpen(path, 0);
            if (!_fileHandle)
                _fileHandle = FileOpen(path, 1);

            if (_fileHandle)
                _fileHandle.Close();

            _isFileCheck = true;
        }

        _fileHandle = FileOpen(path, mode);
        if (_fileHandle)
            break;

        if (delay)
            Delay(200);
    }

    if (_fileHandle) {
        if (mode == 0) {
            while (!_fileHandle.eof) {
                _line = _fileHandle.ReadLine();
                if (_line || !_fileHandle.eof)
                    _msg += _line + msg;
            }
        }
        else if (msg)
            _fileHandle.WriteLine(msg);

        _fileHandle.Close();
    }

    return _msg;
}

function TD_MoveTo(areaid, x, y, retry, clearpath)
{
	var i, n;
	var _teleport;
	var _path;
	var _retry = 0;

	if(x == me.x && y == me.y)
		return true;

	if(arguments.length < 4)
		retry = 3;

	if(arguments.length < 5)
		clearpath = false;

	if(NTC_InTown() || NTC_GetSkillLevel(54) < 1)
		_teleport = false;
	else
		_teleport = true;

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

	if(!_path)
		return false;

	for(i = 0 ; i < _path.length ; i++)
	{
		for(n = 0 ; n < 2 ; n++)
		{
			if(_teleport)
			{
				if(NTM_TeleportTo(_path[i][0], _path[i][1])){
					if(TDConfig_FindUrdarsAndVenoms)
						TD_FindUrdar();
						break;
				}
			}
			else
			{
				if(NTM_WalkTo(_path[i][0], _path[i][1]))
					break;
			}
		}
		
		if(n < 2)
		{	
			if(clearpath)
			{
				if(!NTA_ClearPosition(20, true, 2))
					return false;

				NTP_DoPrecast(false);

				NTM_MoveTo(me.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 TD_FindUrdar(){ 
	var _urdar = NTC_FindUnit(NTC_UNIT_MONSTER, 189);
	var _sv = NTC_FindUnit(NTC_UNIT_MONSTER, 362);

	if(_urdar){
		do{
			if (_urdar.classid == 189 && (_urdar.spectype == 9 || _urdar.spectype == 17) && _urdar.mode != 0 && _urdar.hp > 0 && _urdar.mode != 12 && _urdar.IsAttackable()){
				NTC_SendLogToOOG(NTC_LOG_COMMON, "ÿc8Killing Urdars!"); //COMMENT THIS LINE IF TESTING IS SUCCESSFUL

				//NTM_MoveTo(me.areaid, _urdar.x, _urdar.y);
				TD_Deploy(_urdar.x, _urdar.y, 20, 20, 0, 20);

				for(var i = 0 ; i < 5 ; i++) {
					if(NTM_MakeTP())
						break;
				}

                TD_File("NTBot/bots/TeamD.txt", 1, ".u");

				NTA_ClearPosition(12);
				
				while(!TD_IsPlayerOut()) {
					NTA_ClearPosition();
					NTSI_PickItems();
				}

				TD_File("NTBot/bots/TeamD.txt", 1, "bla");
				
				NTC_Delay(250);
                break;
            }
        } while(_urdar.GetNext());
    }
	else if(_sv){
		do{
			if (_sv.classid == 362 && (_sv.spectype == 9 || _sv.spectype == 17) && _sv.mode != 0 && _sv.hp > 0 && _sv.mode != 12 && _sv.IsAttackable()){
				NTC_SendLogToOOG(NTC_LOG_COMMON, "ÿc8Killing Super Venoms!"); //COMMENT THIS LINE IF TESTING IS SUCCESSFUL

				//NTM_MoveTo(me.areaid, _sv.x, _sv.y);
				TD_Deploy(_sv.x, _sv.y, 20, 20, 0, 20);

				for(var i = 0 ; i < 5 ; i++) {
					if(NTM_MakeTP())
						break;
				}

				prevx = me.x;
				prevy = me.y;

                TD_File("NTBot/bots/TeamD.txt", 1, ".u");

				NTA_ClearPosition(15);

				while(!TD_IsPlayerOut()) {
					NTA_ClearPosition();
					NTSI_PickItems();
					NTM_MoveTo(me.areaid, prevx, prevy);
				}

				TD_File("NTBot/bots/TeamD.txt", 1, "bla");

				NTC_Delay(250);
                break;
            }
        } while(_sv.GetNext());
    }
}

function TD_Deploy(x, y, plusx, minusx, plusy, minusy) { //you can build up to 5 positions (x-shaped), center position is x, y; rest are +/- offsets
	var _monster = NTC_FindUnit(NTC_UNIT_MONSTER);
	var num = [0, 0, 0, 0, 0];
	var firstnum = 100;
	
	if(!_monster)
		return NTM_MoveTo(me.areaid, x, y);
	
	do {
		if(GetDistance(_monster.x, _monster.y, x, y) <= 15)
			if(_monster.classid != 306)
				num[0]++;
		if(GetDistance(_monster.x, _monster.y, x + plusx, y) <= 15)
			if(_monster.classid != 306)
				num[1]++;
		if(GetDistance(_monster.x, _monster.y, x - minusx, y) <= 15)
			if(_monster.classid != 306)
				num[2]++;
		if(GetDistance(_monster.x, _monster.y, x, y + plusy) <= 15)
			if(_monster.classid != 306)
				num[3]++;
		if(GetDistance(_monster.x, _monster.y, x, y - minusy) <= 15)
			if(_monster.classid != 306)
				num[4]++;
	}while(_monster.GetNext())
	
	for(var i = 0 ; i < num.length ; i++) {
		//Print("ÿc1" + num[i] + " ÿc:monsters at position ÿc;" + i); //doesn't count storm casters as of v0.8
		if(num[i] < firstnum)
			firstnum = num[i];
	}

	if(firstnum == num[0]) {
		safex = x;
		safey = y;
		NTM_MoveTo(me.areaid, x, y);
	}
	else if(firstnum == num[1]) {
		safex = x + plusx;
		safey = y;
		NTM_MoveTo(me.areaid, x + plusx, y);
	}
	else if(firstnum == num[2]) {
		safex = x - minusx;
		safey = y;
		NTM_MoveTo(me.areaid, x - minusx, y);
	}
	else if(firstnum == num[3]) {
		safex = x;
		safey = y + plusy;
		NTM_MoveTo(me.areaid, x, y + plusy);
	}
	else if(firstnum == num[4]) {
		safex = x;
		safey = y - minusy;
		NTM_MoveTo(me.areaid, x, y - minusy);
	}
}

function TD_KillMonster(classid)
{
	var _target;

	if(NTConfig_AttackSkill[1] < 1)
		return false;

	_target = NTC_FindUnit(NTC_UNIT_MONSTER, classid, 5);

	if(!_target)
		return false;

	if(_target.IsAttackable())
	{
		var _attackcount = 0;

		while(_attackcount < 300 && NTA_IsValidMonster(_target))
		{
			if(NTA_Attack(_target, (_attackcount%30) == 0) < 2)
				break;
			
			if((_attackcount%10) == 5)
				NTM_MoveTo(me.areaid, _target.x+5, _target.y);
			else if((_attackcount%10) == 0)
				NTM_MoveTo(me.areaid, _target.x, _target.y+5);
			
			_attackcount++;
		}
	}

	return (_target.hp <= 0 || _target.mode == 0 || _target.mode == 12);
}
Das in die sorc config:
Code:
NTConfig_Script.push("TeamD.ntj");
    TDConfig_FindUrdarsAndVenoms = true; //kills any super venoms and urdars along the way
      NTConfig_DelayStart = false; // set to true if your sorc is running no scripts before this one
Das bei den leechern:
Code:
NTConfig_Script.push("TeamD.ntj");
Dann in der NTMove datei folgendes ändern:
Code:
if(Math.abs(me.x-x) < 2 && Math.abs(me.y-y) < 2)
         break;
auf
Code:
 if(Math.abs(me.x-x) < 4 && Math.abs(me.y-y) < 4)
         break;
credits:
[Only registered and activated users can see links. Click Here To Register...]
12/08/2010 14:29 Deutsche-Mafia#3
das ist meines wissens nach das einzige was public ist:

d2nt

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


und d2bs

[Only registered and activated users can see links. Click Here To Register...]
12/08/2010 16:19 FoGzone#4
Quote:
Originally Posted by Deutsche-Mafia View Post
das ist meines wissens nach das einzige was public ist:

d2nt

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


und d2bs

[Only registered and activated users can see links. Click Here To Register...]
jo sind die einzigen
das für den d2nt is auch nur public, weil andere leute sein script verkauft haben und er das ned wollte. somit hat er es public released

soweit ich das weiß gibts auch noch nen anderes script, was eigentlich eine mischung aus dem normalen dia script und dem classic script is.
Das heißt die chars gehen ans wp, bekommen bo und die sorc geht ins cs hoch. dort kann man dann wie bei dem normalen diascript einstellen ob nur siegelrush, alle oder nur specials

mal sehen vielleicht lässt sich das wieder ganz einfach herstellen, in dem man den anfang des classic scripts nimmt und mit dem normalen dia script in verbindung setzt (dürfte nicht allzu schwer sein - copy + paste und so^^)
12/08/2010 16:28 Deutsche-Mafia#5
vielleicht könnte man das ja noch mit nem followbot von redvex verbinden?^^

wie siehts denn mit leechern bei diablo aus?

dann könnte man mehr als 3 chars auf 99 bringen :D
12/08/2010 17:15 FoGzone#6
Quote:
Originally Posted by Deutsche-Mafia View Post
vielleicht könnte man das ja noch mit nem followbot von redvex verbinden?^^

wie siehts denn mit leechern bei diablo aus?

dann könnte man mehr als 3 chars auf 99 bringen :D
das kannste ja auch so
das teamscript is nen leader + leech script in einem
du kannst also das script bei 8 chars reinmachen (min 1x soso, 1x baba, 1x hammer und rest is egal).
Es is ja so aufgebaut, dass in dem script ein leader festgelegt wird (muss ne soso sein wegen tele) und der leader ans wp geht, tp macht, bo bekommt und lostelt. An jedem seal macht der leader (soso) ein tp und öffnet die siegel.
Die restlichen chars killen die monster an den siegeln und gehen wieder in die stadt bis das nächste tp kommt.
Die leecher bekommen dann immer über einen befehl gesagt, wann sie wieder kommen können (zum bo z.b. ".bo" oder an den siegeln ".s1", ".s2"... usw)
für das ganze brauchst aber massenhaft keys, da die runs max 2min gehen.
Deshalb mein vorschlag, das ganze so kombinieren, dass du im cs das ganze cs machst und nicht nur die siegel. Das dauert zwar dann bissle länger mit leveln, aber du hast dann nicht ständig einen realm down oder musst massig keys kaufen
12/08/2010 18:08 Deutsche-Mafia#7
naja keys hab ich genug.

werde eh den realmdownblocker nehmen.


aber man sollte doch dia nur mit 7 chars machen wegen expbug oder?
12/08/2010 18:57 DavLad#8
giebt es auch nen bot der save ist heir wo die schrippe alle drin sind


der publick botten für dummis hat doch ne ohne enigma funktion bei den co fithern ... kann man den nehmen ?
12/08/2010 19:06 FoGzone#9
Quote:
Originally Posted by DavLad View Post
giebt es auch nen bot der save ist heir wo die schrippe alle drin sind


der publick botten für dummis hat doch ne ohne enigma funktion bei den co fithern ... kann man den nehmen ?
den ersten satz nochmal auf deutsch bitte!!!
jo klar kannste das so machen, allerdings is es so, dass der char dann den gleichen weg veruscht zu laufen, den e eig telen würde und somit kann es passieren, dass er irgendwo hängen bleibt

kein bot is zu 100% save und das solltest dir merken ;)
12/08/2010 19:23 DavLad#10
ich meinte save .... von kay loggern :-D so meinte ich es mit save
12/08/2010 19:28 FoGzone#11
bis jetzt gabs noch keinen fall von keyloggern, nur wenn unseriöse leute hier mal was gepostet haben, aber das wurde meist gleich gelöscht
alles was du zur zeit hier findest hat keinen keylogger drin
12/08/2010 19:29 lanara#12
Quote:
Originally Posted by DavLad View Post
ich meinte save .... von kay loggern :-D so meinte ich es mit save
Kein Wunder, dass wir bei der PISA-Studie so schlecht abschneiden.
12/12/2010 12:02 taschenbag#13
Also ich habe alles so wie bei dem Blizzhacker Link eingestellt, nur bekomme ich beim Paladin immer einen Enigmabug. Jemand eine Idee woran das liegen könnte?
12/12/2010 12:22 mirkoregge#14
NTMove ändern, steht doch auch in der Anleitung.
12/12/2010 13:01 taschenbag#15
Das habe ich natürlich gemacht. Also entwerder Hauts nach dem BO den Barb raus, oder bei den Siegeln den Paladin. Bin irgendwie Ratlos. Vielleicht sollte ich auch alles nochmal komplett neu einstellen.