Register for your free account! | Forgot your password?

You last visited: Today at 09:16

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

Advertisement



[Release] Muddy's D2NT

Discussion on [Release] Muddy's D2NT within the Diablo 2 Programming forum part of the Diablo 2 category.

Reply
 
Old 06/15/2010, 20:08   #16
 
Diablofarmer's Avatar
 
elite*gold: 0
Join Date: Sep 2009
Posts: 1,456
Received Thanks: 290
ich glaub das hast du falsch verstanden, nicht jeder hat die Rechte seine Modifikationen direkt zu einzubaun, es sollte nur eine hand voller leute, die Rechte haben, scripte zu uppen...
Suppen versalzt man nur , wenn einer im Alleingang seinen Kopf durchsetzen möchte ..
Naja die Vorteile einer Gruppenarbeit mit fähigen leuten überwiegen liegen für mich klar auf der Hand , aber war auch nurn Vorschlag
Diablofarmer is offline  
Old 06/15/2010, 20:43   #17
 
elite*gold: 0
Join Date: Jul 2007
Posts: 53
Received Thanks: 65
I mean this as example:

215 Stones of jordans sold to merchants
[here scripts wait 5 minutes for next SOJ Sale] - i want this [here scripts wait 10 (or more) minutes for next SOJ Sale]
[no SOJs sold]
[script continue]
[left game]
GoA_TrancE is offline  
Old 06/15/2010, 21:59   #18
Administrator
 
Muddy Waters's Avatar
 
elite*gold: 41364
Join Date: Jan 2010
Posts: 22,727
Received Thanks: 12,653
Quote:
Originally Posted by Diablofarmer View Post
ich glaub das hast du falsch verstanden, nicht jeder hat die Rechte seine Modifikationen direkt zu einzubaun, es sollte nur eine hand voller leute, die Rechte haben, scripte zu uppen...
Suppen versalzt man nur , wenn einer im Alleingang seinen Kopf durchsetzen möchte ..
Naja die Vorteile einer Gruppenarbeit mit fähigen leuten überwiegen liegen für mich klar auf der Hand , aber war auch nurn Vorschlag
Läuft.

Quote:
Originally Posted by GoA_TrancE View Post
I mean this as example:

215 Stones of jordans sold to merchants
[here scripts wait 5 minutes for next SOJ Sale] - i want this [here scripts wait 10 (or more) minutes for next SOJ Sale]
[no SOJs sold]
[script continue]
[left game]
Guess you didn't really got the point then, but anyway.

To change the idle time for the initial soj message in the game, change your NTBotGame.ntj at line 140 to this:
Code:
if(!LoopRunning)
            {
                if(InitialTime+5E3 >= GetTickCount())
                    LoopRuntime = ++MessageCount*10*60E3; // Wait 10 Minutes for the very first message in a game
                else
                    LoopRuntime = ++MessageCount*5*60E3; // Wait (5 Minutes * Number of Soj Messages) for any other message
                LoopMode = 1;
                NT_AntiIdle();
            }
            else
                LoopRuntime = ++MessageCount*5*60E3;
Untested, should still do fine though. This should also show how to change the idle mode runtime generally.

Regards
Muddy
Muddy Waters is offline  
Old 06/15/2010, 23:35   #19
 
elite*gold: 0
Join Date: Jul 2007
Posts: 53
Received Thanks: 65
thanks
GoA_TrancE is offline  
Old 06/17/2010, 17:16   #20
 
elite*gold: 0
Join Date: Jul 2008
Posts: 100
Received Thanks: 21
@muddy
Ich wollte das NTBotGame-Skript so abändern, dass es auch für Leute funktioniert, die nicht "deinen" Bot benützen und nur die Exp anzeige haben wollen....
Klappt bis jetzt auch alles, das einzige Problem ist, dass wenn ein Skript zu Ende läuft, das nächste nicht beginnt

Code:
var CurScriptIndex = 0;
var LastScript = false;


var CurScriptIndex = 0;
var LastScript = false;

// World Event/Soj Sale
var MessageCount = 0;
var SojSoldString = "";
var SojCount = 0;
var InitialSojCount = 0;
var InitialTime;
var RunScript = false;
var LoopRunning = false;
var LoopRuntime = 0;
var LoopMode = -1;

var CloneDiabloString = "";
var CloneDiabloNotify = false;

// Statistics... :)
var GameStartTick;
var GameStartExp;
var TotalGold = 0;
var Errors = 0;
var GameStartCharLevel;
var GoldPerScript = 0;
var PreGold;
var OutputString;
var RvUsed = 0;
var MpUsed = 0;
var HpUsed = 0;
var LootedMonstersCount = 0;
var PickedItemsCount = 0;
var myCounter = 0;

function NTMain()
{
	GameStartTick = GetTickCount();
	SetStatusText("ÿc8Initializing...");
	Delay(1000);

	//Print("ÿc4[+] NTBot 4.2 [+]");

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

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

	if(NTConfig_StartDelay > 0);
		NTC_Delay(NTConfig_StartDelay);

	SetUIState(0x0A, true);

	NTT_GetCorpses();

	GameStartExp = me.GetStat(13);
	GameStartCharLevel = NT_GetRequiredExp(me.GetStat(12));
	PreGold = NTC_MyGold();

	if(NTConfig_Script.length > 0)
	{
		NTCU_InitCubing();

		NTT_ClearInventory();
		NTT_ClearBelt();

		Load("NTBot/tools/NTToolsThread.ntj");

		if(NTConfig_CheckCloneDiablo)
		{
		 	CloneDiabloString = GetLocaleString(11005);
			RegisterEvent(EVENT_GAMEMSG, NT_GameMsgEvents);
		}

		RegisterEvent(EVENT_KEYDOWN, NT_KeyEvents);
		RegisterEvent(EVENT_SCRIPTMSG, NT_ScriptMsgEvents);

		Load("NTBot/bots/" + NTConfig_Script[CurScriptIndex]);
		SetStatusText("Running " + NTConfig_Script[CurScriptIndex]);

		while(!LastScript || CloneDiabloNotify)
		{
			NTC_Delay(500);
		}
	}
	SetStatusText("ÿc1Exiting game...");
	
	if(Errors > 1)
		OutputString = "ÿc1Game" + ((me.gamename.slice(me.gamename.lastIndexOf('-')+1))? " ("+ me.gamename.slice(me.gamename.lastIndexOf('-')+1) + ") " : " ") + "was finished!;";
	else
		OutputString = "ÿ48A209Game" + ((me.gamename.slice(me.gamename.lastIndexOf('-')+1))? " ("+ me.gamename.slice(me.gamename.lastIndexOf('-')+1) + ") " : " ") + "was finished successfully!;";
	OutputString += (GameStartCharLevel != NT_GetRequiredExp(me.GetStat(12)) && NT_GetRequiredExp(me.GetStat(12)) != -1)? "ÿc2!!! Level up (" + me.GetStat(12) + ") !!!\n" : "";
	OutputString += "ÿc0Game Duration:ÿc8 " + ((parseInt((GetTickCount()-GameStartTick)/36E5) >= 1) ? parseInt((GetTickCount()-GameStartTick)/36E5) + "h " : "") + (parseInt((GetTickCount()-GameStartTick)/6E4)) + "m " + (parseInt((GetTickCount()-GameStartTick)/1000)%60) + "s";
	OutputString += ((me.GetStat(13)-GameStartExp) && (GameStartCharLevel == NT_GetRequiredExp(me.GetStat(12)))?"\nÿc0Absolute Experience Gain:ÿc8 " + (me.GetStat(13)-GameStartExp) : "");
	OutputString += ((me.GetStat(13)-GameStartExp) && (GameStartCharLevel == NT_GetRequiredExp(me.GetStat(12)))?"\nÿc0Relative Experience Gain:ÿc8 " + ((NT_GetRequiredExp(me.GetStat(12)+1)-NT_GetRequiredExp(me.GetStat(12)) != 0)?((me.GetStat(13)-GameStartExp)/(NT_GetRequiredExp(me.GetStat(12)+1)-NT_GetRequiredExp(me.GetStat(12)))*100).toFixed(4) + "%" : "Invalid") : "");
	OutputString += ((RvUsed || MpUsed || HpUsed)?"\nÿc0Potions Used:ÿc1 [" + HpUsed + "]ÿc3 [" + MpUsed + "]ÿ7E0064 [" + RvUsed + "]":"");
	OutputString += ((NTC_MyGold()-PreGold > 0)?"\nÿc0Total Gold Gathered:ÿc8 " + ((NTC_MyGold()-PreGold <= 1E5)?((NTC_MyGold()-PreGold)/1E3).toFixed(1) + "k":((NTC_MyGold()-PreGold)/1E6).toFixed(2) + "mio") : "");
	OutputString += (PickedItemsCount)?"\nÿc0Items Picked:ÿc8 " + PickedItemsCount : "";
	OutputString += (LootedMonstersCount)?"\nÿc0Corpses Looted:ÿc8 " + LootedMonstersCount : "";
	OutputString +=	(Errors)?"\nÿc1Error Occurrence: " + Errors : "";
	
	NTC_SendLogToOOG(NTC_LOG_COMMON, OutputString);
	ExitGame();
}

function NT_GameMsgEvents(msg, type)
{
	if(type == 4 && msg.indexOf(CloneDiabloString) != -1)
	{
		CloneDiabloNotify = true;

		NTC_SendLogToOOG(NTC_LOG_COMMON, "ÿc4" + CloneDiabloString);
		SetStatusText(CloneDiabloString);

		me.maxgametime = 0;

		NTC_StopScript(NTConfig_Script[CurScriptIndex]);
		NTC_Delay(500);

		NTTM_CheckAct();
	}
}

function NT_KeyEvents(keycode)
{
	//Print("Keycode: " + keycode);
	var _script = NTC_FindScript(NTConfig_Script[CurScriptIndex]);
	switch(keycode)
	{
		case 19: // pause (PAUSE)

			if(_script)
			{
				if(_script.running)
				{
					_script.Stop();
					NTC_Delay(300);
					ClickMap(NTC_CLICK_LUP, NTC_SHIFT_NONE, null);
					SetStatusText("ÿc1Stopped ÿc4" + NTConfig_Script[CurScriptIndex]);

				}
				else
				{
					Load("NTBot/bots/" + NTConfig_Script[CurScriptIndex]);
					SetStatusText("ÿc2Running ÿc4" + NTConfig_Script[CurScriptIndex]);
				}
			}
			break;

		case 36: // show coordinates (POS1/HOME)
			Print("Current Position: (ÿc2" + me.x + "ÿc0|ÿc1" + me.y + "ÿc0) [ÿc7" + me.areaid + "ÿc0]");
			break;
		case 46: // exit (DEL)
			RunScript = true;
			SetStatusText("ÿc1Exiting game...");
				
			OutputString = "ÿ258CDDGame" + ((me.gamename.slice(me.gamename.lastIndexOf('-')+1))? " ("+ me.gamename.slice(me.gamename.lastIndexOf('-')+1) + ") " : " ") + "was finished by User!;";
			OutputString += (GameStartCharLevel != NT_GetRequiredExp(me.GetStat(12)))? "ÿc1Level Up!\n" : "";
			OutputString += "ÿc0Game Duration:ÿc8 " + ((parseInt((GetTickCount()-GameStartTick)/36E5) >= 1) ? parseInt((GetTickCount()-GameStartTick)/36E5) + "h " : "") + (parseInt((GetTickCount()-GameStartTick)/6E4)) + "m " + (parseInt((GetTickCount()-GameStartTick)/1000)%60) + "s";
			OutputString += ((me.GetStat(13)-GameStartExp) && (GameStartCharLevel == NT_GetRequiredExp(me.GetStat(12)))?"\nÿc0Absolute Experience Gain:ÿc8 " + (me.GetStat(13)-GameStartExp) : "");
			OutputString += ((me.GetStat(13)-GameStartExp) && (GameStartCharLevel == NT_GetRequiredExp(me.GetStat(12)))?"\nÿc0Relative Experience Gain:ÿc8 " + ((NT_GetRequiredExp(me.GetStat(12)+1)-NT_GetRequiredExp(me.GetStat(12)) != 0)?((me.GetStat(13)-GameStartExp)/(NT_GetRequiredExp(me.GetStat(12)+1)-NT_GetRequiredExp(me.GetStat(12)))*100).toFixed(4) + "%" : "Invalid") : "");
			OutputString += ((RvUsed || MpUsed || HpUsed)?"\nÿc0Potions Used:ÿc1 [" + HpUsed + "]ÿc3 [" + MpUsed + "]ÿ7E0064 [" + RvUsed + "]":"");
			OutputString += ((NTC_MyGold()-PreGold > 0)?"\nÿc0Total Gold Gathered:ÿc8 " + ((NTC_MyGold()-PreGold <= 1E5)?((NTC_MyGold()-PreGold)/1E3).toFixed(1) + "k":((NTC_MyGold()-PreGold)/1E6).toFixed(2) + "mio") : "");
			OutputString += (PickedItemsCount)?"\nÿc0Items Picked:ÿc8 " + PickedItemsCount : "";
			OutputString += (LootedMonstersCount)?"\nÿc0Corpses Looted:ÿc8 " + LootedMonstersCount : "";
			OutputString +=	(Errors)?"\nÿc1Error Occurrence: " + Errors : "";
	
			NTC_SendLogToOOG(NTC_LOG_COMMON, OutputString);
				
			if(NTConfig_PublicMode)
				Say("Next game!");
			NTC_PingDelay(2000);
			ExitGame();
			break;
		


	}
} 

function NT_ScriptMsgEvents(msg)
{
	var _area;

		switch(msg)
		{
		case "SCRIPT_END":
			if(++CurScriptIndex < NTConfig_Script.length)
			{
				if(NTConfig_ShowGoldPickupsPerScript)
				{
					if(GoldPerScript > 0)
						Print("ÿc8Picked " + (GoldPerScript/1E3).toFixed(1) + "k gold running " + NTConfig_Script[CurScriptIndex-1]);
					
					GoldPerScript = 0;
				}
				NTTM_CheckAct();
				Load("NTBot/bots/" + NTConfig_Script[CurScriptIndex]);
				SetStatusText("ÿc2Running ÿc4" + NTConfig_Script[CurScriptIndex]);
			}
			else
				LastScript = true;
			break;

		case "SET_DEFAULT_STATUS":
			var _script = NTC_FindScript(NTConfig_Script[CurScriptIndex]);
			if(_script)
			{
				NTC_Delay(2500);
				if(_script.running)
					SetStatusText("ÿc2Running ÿc4" + NTConfig_Script[CurScriptIndex]);
				else
					SetStatusText("ÿc1Stopped ÿc4" + NTConfig_Script[CurScriptIndex]);
			}
			else
				SetStatusText("ÿc1Cannot set default status!");
			break;
		default:
			Print("ÿc1" + NTConfig_Script[CurScriptIndex] + " : " + msg + " failed");

			_area = GetArea();

			if(_area)
				NTC_SendLogToOOG(NTC_LOG_COMMON, "ÿE00000" + NTConfig_Script[CurScriptIndex] + " : " + msg + " failed (" + _area.name + ")");
			else
				NTC_SendLogToOOG(NTC_LOG_COMMON, "ÿE00000" + NTConfig_Script[CurScriptIndex] + " : " + msg + " failed (unknown area)");

			Errors++;
			if(++CurScriptIndex < NTConfig_Script.length)
			{
				NTTM_CheckAct();
				Load("NTBot/bots/" + NTConfig_Script[CurScriptIndex]);
				SetStatusText("ÿc2Running ÿc4" + NTConfig_Script[CurScriptIndex]);
			}
			else
				LastScript = true;
			break;
		}


}


function NT_EvaluateInputData(msg)
{
	switch(msg.split("_")[1])
	{
		case "LOOTED":
			LootedMonstersCount++;
			break;
		case "PICKED":
			PickedItemsCount++;
			break;
		case "SCRIPTGOLD":
			GoldPerScript += parseInt(msg.split("_")[2]);
			break;
		case "HPDRANK":
			HpUsed++;
			break;
		case "MPDRANK":
			MpUsed++;
			break;
		case "RVDRANK":
			RvUsed++;
			break;
	}
}



function NT_GetRequiredExp(level)
{
	// Returns the experience necessary for the specified level
	var _reqExp = -1;
	if(!level || level < 2 || level > 99)
		return _reqExp;
	switch(level)
	{
		case 99:
			_reqExp = 3520485254;
			break;
		case 98:
			_reqExp = 3229426756;
			break;
		case 97:
			_reqExp = 2962400612;
			break;
		case 96:
			_reqExp = 2717422497;
			break;
		case 95:
			_reqExp = 2492671933;
			break;
		case 94:
			_reqExp = 2286478756;
			break;
		case 93:
			_reqExp = 2097310703;
			break;
		case 92:
			_reqExp = 1923762030;
			break;
		case 91:
			_reqExp = 1764543065;
			break;
		case 90:
			_reqExp = 1618470619;
			break;
		case 89:
			_reqExp = 1484459201;
			break;
		case 88:
			_reqExp = 1361512946;
			break;
		case 87:
			_reqExp = 1248718217;
			break;
		case 86:
			_reqExp = 1145236814;
			break;
		case 85:
			_reqExp = 1050299747;
			break;
		case 84:
			_reqExp = 963201521;
			break;
		case 83:
			_reqExp = 883294891;
			break;
		case 82:
			_reqExp = 809986056;
			break;
		case 81:
			_reqExp = 742730244;
			break;
		case 80:
			_reqExp = 681027665;
			break;
		case 79:
			_reqExp = 624419793;
			break;
		case 78:
			_reqExp = 572485967;
			break;
		case 77:
			_reqExp = 524840254;
			break;
		case 76:
			_reqExp = 481128591;
			break;
		case 75:
			_reqExp = 441026148;
			break;
		case 74:
			_reqExp = 404234916;
			break;
		case 73:
			_reqExp = 370481492;
			break;
		case 72:
			_reqExp = 339515048;
			break;
		case 71:
			_reqExp = 311105466;
			break;
		case 70:
			_reqExp = 285041630;
			break;
		case 69:
			_reqExp = 261129853;
			break;
		case 68:
			_reqExp = 239192444;
			break;
		case 67:
			_reqExp = 219066380;
			break;
		case 66:
			_reqExp = 200602101;
			break;
		case 65:
			_reqExp = 183662396;
			break;
		case 64:
			_reqExp = 168121381;
			break;
		case 63:
			_reqExp = 153863570;
			break;
		case 62:
			_reqExp = 140783010;
			break;
		case 61:
			_reqExp = 128782495;
			break;
		case 60:
			_reqExp = 117772849;
			break;
		case 59:
			_reqExp = 107672256;
			break;
		case 58:
			_reqExp = 98405658;
			break;
		case 57:
			_reqExp = 89904191;
			break;
		case 56:
			_reqExp = 82104680;
			break;
		case 55:
			_reqExp = 74949165;
			break;
		case 54:
			_reqExp = 68384473;
			break;
		case 53:
			_reqExp = 62361819;
			break;
		case 52:
			_reqExp = 56836449;
			break;
		case 51:
			_reqExp = 51767302;
			break;
		case 50:
			_reqExp = 47116709;
			break;
		case 49:
			_reqExp = 42850109;
			break;
		case 48:
			_reqExp = 38935798;
			break;
		case 47:
			_reqExp = 35344686;
			break;
		case 46:
			_reqExp = 32050088;
			break;
		case 45:
			_reqExp = 29027522;
			break;
		case 44:
			_reqExp = 26254525;
			break;
		case 43:
			_reqExp = 23710491;
			break;
		case 42:
			_reqExp = 21376515;
			break;
		case 41:
			_reqExp = 19235252;
			break;
		case 40:
			_reqExp = 17270791;
			break;
		case 39:
			_reqExp = 15468534;
			break;
		case 38:
			_reqExp = 13815086;
			break;
		case 37:
			_reqExp = 12298162;
			break;
		case 36:
			_reqExp = 10906488;
			break;
		case 35:
			_reqExp = 9629723;
			break;
		case 34:
			_reqExp = 8458379;
			break;
		case 33:
			_reqExp = 7383752;
			break;
		case 32:
			_reqExp = 6397855;
			break;
		case 31:
			_reqExp = 5493363;
			break;
		case 30:
			_reqExp = 4663553;
			break;
		case 29:
			_reqExp = 3902260;
			break;
		case 28:
			_reqExp = 3203826;
			break;
		case 27:
			_reqExp = 2563061;
			break;
		case 26:
			_reqExp = 2050449;
			break;
		case 25:
			_reqExp = 1640359;
			break;
		case 24:
			_reqExp = 1312287;
			break;
		case 23:
			_reqExp = 1049830;
			break;
		case 22:
			_reqExp = 839864;
			break;
		case 21:
			_reqExp = 671891;
			break;
		case 20:
			_reqExp = 537513;
			break;
		case 19:
			_reqExp = 430010;
			break;
		case 18:
			_reqExp = 344008;
			break;
		case 17:
			_reqExp = 275207;
			break;
		case 16:
			_reqExp = 220165;
			break;
		case 15:
			_reqExp = 176132;
			break;
		case 14:
			_reqExp = 140906;
			break;
		case 13:
			_reqExp = 112725;
			break;
		case 12:
			_reqExp = 90180;
			break;
		case 11:
			_reqExp = 72144;
			break;
		case 10:
			_reqExp = 57715;
			break;
		case 9:
			_reqExp = 44396;
			break;
		case 8:
			_reqExp = 32886;
			break;
		case 7:
			_reqExp = 22680;
			break;
		case 6:
			_reqExp = 14175;
			break;
		case 5:
			_reqExp = 7875;
			break;
		case 4:
			_reqExp = 3750;
			break;
		case 3:
			_reqExp = 1500;
			break;
		case 2:
			_reqExp = 500;
	}
	return _reqExp;
}
Hast du eine Ahnung woran das liegen könnte? Ich habe eigentlich keine Ahnung von dem Zeugs, und habe nur bischen zusammenkopiert und gelöscht.. wird aber wohl ein kleiner Fehler sein?!
lortl is offline  
Old 06/17/2010, 20:39   #21
Administrator
 
Muddy Waters's Avatar
 
elite*gold: 41364
Join Date: Jan 2010
Posts: 22,727
Received Thanks: 12,653
Quote:
Originally Posted by lortl View Post
@muddy
Ich wollte das NTBotGame-Skript so abändern, dass es auch für Leute funktioniert, die nicht "deinen" Bot benützen und nur die Exp anzeige haben wollen....
Klappt bis jetzt auch alles, das einzige Problem ist, dass wenn ein Skript zu Ende läuft, das nächste nicht beginnt

Code:
var CurScriptIndex = 0;
var LastScript = false;


var CurScriptIndex = 0;
var LastScript = false;

// World Event/Soj Sale
var MessageCount = 0;
var SojSoldString = "";
var SojCount = 0;
var InitialSojCount = 0;
var InitialTime;
var RunScript = false;
var LoopRunning = false;
var LoopRuntime = 0;
var LoopMode = -1;

var CloneDiabloString = "";
var CloneDiabloNotify = false;

// Statistics... :)
var GameStartTick;
var GameStartExp;
var TotalGold = 0;
var Errors = 0;
var GameStartCharLevel;
var GoldPerScript = 0;
var PreGold;
var OutputString;
var RvUsed = 0;
var MpUsed = 0;
var HpUsed = 0;
var LootedMonstersCount = 0;
var PickedItemsCount = 0;
var myCounter = 0;

function NTMain()
{
    GameStartTick = GetTickCount();
    SetStatusText("ÿc8Initializing...");
    Delay(1000);

    //Print("ÿc4[+] NTBot 4.2 [+]");

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

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

    if(NTConfig_StartDelay > 0);
        NTC_Delay(NTConfig_StartDelay);

    SetUIState(0x0A, true);

    NTT_GetCorpses();

    GameStartExp = me.GetStat(13);
    GameStartCharLevel = NT_GetRequiredExp(me.GetStat(12));
    PreGold = NTC_MyGold();

    if(NTConfig_Script.length > 0)
    {
        NTCU_InitCubing();

        NTT_ClearInventory();
        NTT_ClearBelt();

        Load("NTBot/tools/NTToolsThread.ntj");

        if(NTConfig_CheckCloneDiablo)
        {
             CloneDiabloString = GetLocaleString(11005);
            RegisterEvent(EVENT_GAMEMSG, NT_GameMsgEvents);
        }

        RegisterEvent(EVENT_KEYDOWN, NT_KeyEvents);
        RegisterEvent(EVENT_SCRIPTMSG, NT_ScriptMsgEvents);

        Load("NTBot/bots/" + NTConfig_Script[CurScriptIndex]);
        SetStatusText("Running " + NTConfig_Script[CurScriptIndex]);

        while(!LastScript || CloneDiabloNotify)
        {
            NTC_Delay(500);
        }
    }
    SetStatusText("ÿc1Exiting game...");
    
    if(Errors > 1)
        OutputString = "ÿc1Game" + ((me.gamename.slice(me.gamename.lastIndexOf('-')+1))? " ("+ me.gamename.slice(me.gamename.lastIndexOf('-')+1) + ") " : " ") + "was finished!;";
    else
        OutputString = "ÿ48A209Game" + ((me.gamename.slice(me.gamename.lastIndexOf('-')+1))? " ("+ me.gamename.slice(me.gamename.lastIndexOf('-')+1) + ") " : " ") + "was finished successfully!;";
    OutputString += (GameStartCharLevel != NT_GetRequiredExp(me.GetStat(12)) && NT_GetRequiredExp(me.GetStat(12)) != -1)? "ÿc2!!! Level up (" + me.GetStat(12) + ") !!!\n" : "";
    OutputString += "ÿc0Game Duration:ÿc8 " + ((parseInt((GetTickCount()-GameStartTick)/36E5) >= 1) ? parseInt((GetTickCount()-GameStartTick)/36E5) + "h " : "") + (parseInt((GetTickCount()-GameStartTick)/6E4)) + "m " + (parseInt((GetTickCount()-GameStartTick)/1000)%60) + "s";
    OutputString += ((me.GetStat(13)-GameStartExp) && (GameStartCharLevel == NT_GetRequiredExp(me.GetStat(12)))?"\nÿc0Absolute Experience Gain:ÿc8 " + (me.GetStat(13)-GameStartExp) : "");
    OutputString += ((me.GetStat(13)-GameStartExp) && (GameStartCharLevel == NT_GetRequiredExp(me.GetStat(12)))?"\nÿc0Relative Experience Gain:ÿc8 " + ((NT_GetRequiredExp(me.GetStat(12)+1)-NT_GetRequiredExp(me.GetStat(12)) != 0)?((me.GetStat(13)-GameStartExp)/(NT_GetRequiredExp(me.GetStat(12)+1)-NT_GetRequiredExp(me.GetStat(12)))*100).toFixed(4) + "%" : "Invalid") : "");
    OutputString += ((RvUsed || MpUsed || HpUsed)?"\nÿc0Potions Used:ÿc1 [" + HpUsed + "]ÿc3 [" + MpUsed + "]ÿ7E0064 [" + RvUsed + "]":"");
    OutputString += ((NTC_MyGold()-PreGold > 0)?"\nÿc0Total Gold Gathered:ÿc8 " + ((NTC_MyGold()-PreGold <= 1E5)?((NTC_MyGold()-PreGold)/1E3).toFixed(1) + "k":((NTC_MyGold()-PreGold)/1E6).toFixed(2) + "mio") : "");
    OutputString += (PickedItemsCount)?"\nÿc0Items Picked:ÿc8 " + PickedItemsCount : "";
    OutputString += (LootedMonstersCount)?"\nÿc0Corpses Looted:ÿc8 " + LootedMonstersCount : "";
    OutputString +=    (Errors)?"\nÿc1Error Occurrence: " + Errors : "";
    
    NTC_SendLogToOOG(NTC_LOG_COMMON, OutputString);
    ExitGame();
}

function NT_GameMsgEvents(msg, type)
{
    if(type == 4 && msg.indexOf(CloneDiabloString) != -1)
    {
        CloneDiabloNotify = true;

        NTC_SendLogToOOG(NTC_LOG_COMMON, "ÿc4" + CloneDiabloString);
        SetStatusText(CloneDiabloString);

        me.maxgametime = 0;

        NTC_StopScript(NTConfig_Script[CurScriptIndex]);
        NTC_Delay(500);

        NTTM_CheckAct();
    }
}

function NT_KeyEvents(keycode)
{
    //Print("Keycode: " + keycode);
    var _script = NTC_FindScript(NTConfig_Script[CurScriptIndex]);
    switch(keycode)
    {
        case 19: // pause (PAUSE)

            if(_script)
            {
                if(_script.running)
                {
                    _script.Stop();
                    NTC_Delay(300);
                    ClickMap(NTC_CLICK_LUP, NTC_SHIFT_NONE, null);
                    SetStatusText("ÿc1Stopped ÿc4" + NTConfig_Script[CurScriptIndex]);

                }
                else
                {
                    Load("NTBot/bots/" + NTConfig_Script[CurScriptIndex]);
                    SetStatusText("ÿc2Running ÿc4" + NTConfig_Script[CurScriptIndex]);
                }
            }
            break;

        case 36: // show coordinates (POS1/HOME)
            Print("Current Position: (ÿc2" + me.x + "ÿc0|ÿc1" + me.y + "ÿc0) [ÿc7" + me.areaid + "ÿc0]");
            break;
        case 46: // exit (DEL)
            RunScript = true;
            SetStatusText("ÿc1Exiting game...");
                
            OutputString = "ÿ258CDDGame" + ((me.gamename.slice(me.gamename.lastIndexOf('-')+1))? " ("+ me.gamename.slice(me.gamename.lastIndexOf('-')+1) + ") " : " ") + "was finished by User!;";
            OutputString += (GameStartCharLevel != NT_GetRequiredExp(me.GetStat(12)))? "ÿc1Level Up!\n" : "";
            OutputString += "ÿc0Game Duration:ÿc8 " + ((parseInt((GetTickCount()-GameStartTick)/36E5) >= 1) ? parseInt((GetTickCount()-GameStartTick)/36E5) + "h " : "") + (parseInt((GetTickCount()-GameStartTick)/6E4)) + "m " + (parseInt((GetTickCount()-GameStartTick)/1000)%60) + "s";
            OutputString += ((me.GetStat(13)-GameStartExp) && (GameStartCharLevel == NT_GetRequiredExp(me.GetStat(12)))?"\nÿc0Absolute Experience Gain:ÿc8 " + (me.GetStat(13)-GameStartExp) : "");
            OutputString += ((me.GetStat(13)-GameStartExp) && (GameStartCharLevel == NT_GetRequiredExp(me.GetStat(12)))?"\nÿc0Relative Experience Gain:ÿc8 " + ((NT_GetRequiredExp(me.GetStat(12)+1)-NT_GetRequiredExp(me.GetStat(12)) != 0)?((me.GetStat(13)-GameStartExp)/(NT_GetRequiredExp(me.GetStat(12)+1)-NT_GetRequiredExp(me.GetStat(12)))*100).toFixed(4) + "%" : "Invalid") : "");
            OutputString += ((RvUsed || MpUsed || HpUsed)?"\nÿc0Potions Used:ÿc1 [" + HpUsed + "]ÿc3 [" + MpUsed + "]ÿ7E0064 [" + RvUsed + "]":"");
            OutputString += ((NTC_MyGold()-PreGold > 0)?"\nÿc0Total Gold Gathered:ÿc8 " + ((NTC_MyGold()-PreGold <= 1E5)?((NTC_MyGold()-PreGold)/1E3).toFixed(1) + "k":((NTC_MyGold()-PreGold)/1E6).toFixed(2) + "mio") : "");
            OutputString += (PickedItemsCount)?"\nÿc0Items Picked:ÿc8 " + PickedItemsCount : "";
            OutputString += (LootedMonstersCount)?"\nÿc0Corpses Looted:ÿc8 " + LootedMonstersCount : "";
            OutputString +=    (Errors)?"\nÿc1Error Occurrence: " + Errors : "";
    
            NTC_SendLogToOOG(NTC_LOG_COMMON, OutputString);
                
            if(NTConfig_PublicMode)
                Say("Next game!");
            NTC_PingDelay(2000);
            ExitGame();
            break;
        


    }
} 

function NT_ScriptMsgEvents(msg)
{
    var _area;

        switch(msg)
        {
        case "SCRIPT_END":
            if(++CurScriptIndex < NTConfig_Script.length)
            {
                if(NTConfig_ShowGoldPickupsPerScript)
                {
                    if(GoldPerScript > 0)
                        Print("ÿc8Picked " + (GoldPerScript/1E3).toFixed(1) + "k gold running " + NTConfig_Script[CurScriptIndex-1]);
                    
                    GoldPerScript = 0;
                }
                NTTM_CheckAct();
                Load("NTBot/bots/" + NTConfig_Script[CurScriptIndex]);
                SetStatusText("ÿc2Running ÿc4" + NTConfig_Script[CurScriptIndex]);
            }
            else
                LastScript = true;
            break;

        case "SET_DEFAULT_STATUS":
            var _script = NTC_FindScript(NTConfig_Script[CurScriptIndex]);
            if(_script)
            {
                NTC_Delay(2500);
                if(_script.running)
                    SetStatusText("ÿc2Running ÿc4" + NTConfig_Script[CurScriptIndex]);
                else
                    SetStatusText("ÿc1Stopped ÿc4" + NTConfig_Script[CurScriptIndex]);
            }
            else
                SetStatusText("ÿc1Cannot set default status!");
            break;
        default:
            Print("ÿc1" + NTConfig_Script[CurScriptIndex] + " : " + msg + " failed");

            _area = GetArea();

            if(_area)
                NTC_SendLogToOOG(NTC_LOG_COMMON, "ÿE00000" + NTConfig_Script[CurScriptIndex] + " : " + msg + " failed (" + _area.name + ")");
            else
                NTC_SendLogToOOG(NTC_LOG_COMMON, "ÿE00000" + NTConfig_Script[CurScriptIndex] + " : " + msg + " failed (unknown area)");

            Errors++;
            if(++CurScriptIndex < NTConfig_Script.length)
            {
                NTTM_CheckAct();
                Load("NTBot/bots/" + NTConfig_Script[CurScriptIndex]);
                SetStatusText("ÿc2Running ÿc4" + NTConfig_Script[CurScriptIndex]);
            }
            else
                LastScript = true;
            break;
        }


}


function NT_EvaluateInputData(msg)
{
    switch(msg.split("_")[1])
    {
        case "LOOTED":
            LootedMonstersCount++;
            break;
        case "PICKED":
            PickedItemsCount++;
            break;
        case "SCRIPTGOLD":
            GoldPerScript += parseInt(msg.split("_")[2]);
            break;
        case "HPDRANK":
            HpUsed++;
            break;
        case "MPDRANK":
            MpUsed++;
            break;
        case "RVDRANK":
            RvUsed++;
            break;
    }
}



function NT_GetRequiredExp(level)
{
    // Returns the experience necessary for the specified level
    var _reqExp = -1;
    if(!level || level < 2 || level > 99)
        return _reqExp;
    switch(level)
    {
        case 99:
            _reqExp = 3520485254;
            break;
        case 98:
            _reqExp = 3229426756;
            break;
        case 97:
            _reqExp = 2962400612;
            break;
        case 96:
            _reqExp = 2717422497;
            break;
        case 95:
            _reqExp = 2492671933;
            break;
        case 94:
            _reqExp = 2286478756;
            break;
        case 93:
            _reqExp = 2097310703;
            break;
        case 92:
            _reqExp = 1923762030;
            break;
        case 91:
            _reqExp = 1764543065;
            break;
        case 90:
            _reqExp = 1618470619;
            break;
        case 89:
            _reqExp = 1484459201;
            break;
        case 88:
            _reqExp = 1361512946;
            break;
        case 87:
            _reqExp = 1248718217;
            break;
        case 86:
            _reqExp = 1145236814;
            break;
        case 85:
            _reqExp = 1050299747;
            break;
        case 84:
            _reqExp = 963201521;
            break;
        case 83:
            _reqExp = 883294891;
            break;
        case 82:
            _reqExp = 809986056;
            break;
        case 81:
            _reqExp = 742730244;
            break;
        case 80:
            _reqExp = 681027665;
            break;
        case 79:
            _reqExp = 624419793;
            break;
        case 78:
            _reqExp = 572485967;
            break;
        case 77:
            _reqExp = 524840254;
            break;
        case 76:
            _reqExp = 481128591;
            break;
        case 75:
            _reqExp = 441026148;
            break;
        case 74:
            _reqExp = 404234916;
            break;
        case 73:
            _reqExp = 370481492;
            break;
        case 72:
            _reqExp = 339515048;
            break;
        case 71:
            _reqExp = 311105466;
            break;
        case 70:
            _reqExp = 285041630;
            break;
        case 69:
            _reqExp = 261129853;
            break;
        case 68:
            _reqExp = 239192444;
            break;
        case 67:
            _reqExp = 219066380;
            break;
        case 66:
            _reqExp = 200602101;
            break;
        case 65:
            _reqExp = 183662396;
            break;
        case 64:
            _reqExp = 168121381;
            break;
        case 63:
            _reqExp = 153863570;
            break;
        case 62:
            _reqExp = 140783010;
            break;
        case 61:
            _reqExp = 128782495;
            break;
        case 60:
            _reqExp = 117772849;
            break;
        case 59:
            _reqExp = 107672256;
            break;
        case 58:
            _reqExp = 98405658;
            break;
        case 57:
            _reqExp = 89904191;
            break;
        case 56:
            _reqExp = 82104680;
            break;
        case 55:
            _reqExp = 74949165;
            break;
        case 54:
            _reqExp = 68384473;
            break;
        case 53:
            _reqExp = 62361819;
            break;
        case 52:
            _reqExp = 56836449;
            break;
        case 51:
            _reqExp = 51767302;
            break;
        case 50:
            _reqExp = 47116709;
            break;
        case 49:
            _reqExp = 42850109;
            break;
        case 48:
            _reqExp = 38935798;
            break;
        case 47:
            _reqExp = 35344686;
            break;
        case 46:
            _reqExp = 32050088;
            break;
        case 45:
            _reqExp = 29027522;
            break;
        case 44:
            _reqExp = 26254525;
            break;
        case 43:
            _reqExp = 23710491;
            break;
        case 42:
            _reqExp = 21376515;
            break;
        case 41:
            _reqExp = 19235252;
            break;
        case 40:
            _reqExp = 17270791;
            break;
        case 39:
            _reqExp = 15468534;
            break;
        case 38:
            _reqExp = 13815086;
            break;
        case 37:
            _reqExp = 12298162;
            break;
        case 36:
            _reqExp = 10906488;
            break;
        case 35:
            _reqExp = 9629723;
            break;
        case 34:
            _reqExp = 8458379;
            break;
        case 33:
            _reqExp = 7383752;
            break;
        case 32:
            _reqExp = 6397855;
            break;
        case 31:
            _reqExp = 5493363;
            break;
        case 30:
            _reqExp = 4663553;
            break;
        case 29:
            _reqExp = 3902260;
            break;
        case 28:
            _reqExp = 3203826;
            break;
        case 27:
            _reqExp = 2563061;
            break;
        case 26:
            _reqExp = 2050449;
            break;
        case 25:
            _reqExp = 1640359;
            break;
        case 24:
            _reqExp = 1312287;
            break;
        case 23:
            _reqExp = 1049830;
            break;
        case 22:
            _reqExp = 839864;
            break;
        case 21:
            _reqExp = 671891;
            break;
        case 20:
            _reqExp = 537513;
            break;
        case 19:
            _reqExp = 430010;
            break;
        case 18:
            _reqExp = 344008;
            break;
        case 17:
            _reqExp = 275207;
            break;
        case 16:
            _reqExp = 220165;
            break;
        case 15:
            _reqExp = 176132;
            break;
        case 14:
            _reqExp = 140906;
            break;
        case 13:
            _reqExp = 112725;
            break;
        case 12:
            _reqExp = 90180;
            break;
        case 11:
            _reqExp = 72144;
            break;
        case 10:
            _reqExp = 57715;
            break;
        case 9:
            _reqExp = 44396;
            break;
        case 8:
            _reqExp = 32886;
            break;
        case 7:
            _reqExp = 22680;
            break;
        case 6:
            _reqExp = 14175;
            break;
        case 5:
            _reqExp = 7875;
            break;
        case 4:
            _reqExp = 3750;
            break;
        case 3:
            _reqExp = 1500;
            break;
        case 2:
            _reqExp = 500;
    }
    return _reqExp;
}
Hast du eine Ahnung woran das liegen könnte? Ich habe eigentlich keine Ahnung von dem Zeugs, und habe nur bischen zusammenkopiert und gelöscht.. wird aber wohl ein kleiner Fehler sein?!
Was ich momantan nur sehe ist, dass du ganz zu Beginn die Variablen CurScriptIndex und LastScript doppelt deklarierst, das ist so schonmal definitiv kein sauberer Stil.

Ansonsten wäre mehr Input toll. Was passiert ganz exakt? Gibt es Fehlermeldungen?

Lg
Muddy
Muddy Waters is offline  
Old 06/17/2010, 21:54   #22
 
elite*gold: 0
Join Date: Jul 2008
Posts: 100
Received Thanks: 21
Hey, danke... habe das übersehen^^ (kann leider nur c++ "programmieren" und habe von java eigentlich keine ahnung :P schlechte ausrede )

Naja, eine Fehlermeldung gibts nicht. Das erste Skript läuft ab, dann sollte er eigentlich ein tp machen um in die Stadt zu gehen(damit das nächste Skript aktiv werden kann), passiert aber gar nicht mehr. Char bleibt einfach stehen->chicken oder maxtimeleave...

Ich habe mein überarbeitetes Skript mit dem normalen Standartskript verglichen, und finde nichts, dass irgendwie eine Bedingung fehlt damit das nächste Skript ausgeführt wird...
lortl is offline  
Old 06/18/2010, 15:37   #23
Administrator
 
Muddy Waters's Avatar
 
elite*gold: 41364
Join Date: Jan 2010
Posts: 22,727
Received Thanks: 12,653
Quote:
Originally Posted by lortl View Post
Hey, danke... habe das übersehen^^ (kann leider nur c++ "programmieren" und habe von java eigentlich keine ahnung :P schlechte ausrede )

Naja, eine Fehlermeldung gibts nicht. Das erste Skript läuft ab, dann sollte er eigentlich ein tp machen um in die Stadt zu gehen(damit das nächste Skript aktiv werden kann), passiert aber gar nicht mehr. Char bleibt einfach stehen->chicken oder maxtimeleave...

Ich habe mein überarbeitetes Skript mit dem normalen Standartskript verglichen, und finde nichts, dass irgendwie eine Bedingung fehlt damit das nächste Skript ausgeführt wird...
Die Ausrede ist wirklich extrem schlecht, ich selbst kann auch nur C++, verstehe damit aber JavaScript problemlos. Zumal JavaScript auch noch deutlich leichter ist als C++...

Wenn sich nichts weiteres findet versuch folgendes: Bau überall in den entsprecheden Ablauf, den du überprüfen willst, durchnummerierte Testausgaben ein und lass das Ganze damit durchlaufen. Dabei findest du dann hoffentlich die Stelle, bei der es nicht mehr weiter geht und weisst wo du ansetzen musst. Quasi so eine Art Debug Modus des kleinen Mannes, wie ihn jede anständige IDE hat.

Wirklich offensichtliche Fehler sehe ich derzeit jedenfalls keine weiteren, aber ich habs auch nicht so mit Fehlersuche, darum versuche ich immer, Fehler von vornherein zu vermeiden.

Lg
Muddy
Muddy Waters is offline  
Old 06/18/2010, 16:49   #24
 
Diablofarmer's Avatar
 
elite*gold: 0
Join Date: Sep 2009
Posts: 1,456
Received Thanks: 290
selbst wenn du Muddy´s komplette NTBotGame.ntj bisauf
NTI_ClearLoc();
übernimmst, springt er von allein nich zum nächsten script,
mit pagedown ( also skipscript ) gehts dann und zeigt nachm Run im manager auch brav an, was er soll.
finde den fehler bzw das problem auch nich, sry
Diablofarmer is offline  
Old 06/18/2010, 18:28   #25
 
elite*gold: 0
Join Date: Jul 2008
Posts: 100
Received Thanks: 21
Werde wohl versuchen, die ganze EXP-Anzeige von Grund auf neu in die originale Ntbotgame Datei einzufügen... mal schauen was dabei rauskommt
lortl is offline  
Old 06/18/2010, 19:00   #26
 
Diablofarmer's Avatar
 
elite*gold: 0
Join Date: Sep 2009
Posts: 1,456
Received Thanks: 290
jo das ging mir heute auch den ganzen tag durchn kopf, hab aber keine zeit
teilst du uns deine Ergebnisse mit ?
Diablofarmer is offline  
Old 06/18/2010, 20:32   #27
Administrator
 
Muddy Waters's Avatar
 
elite*gold: 41364
Join Date: Jan 2010
Posts: 22,727
Received Thanks: 12,653
Quote:
Originally Posted by lortl View Post
Werde wohl versuchen, die ganze EXP-Anzeige von Grund auf neu in die originale Ntbotgame Datei einzufügen... mal schauen was dabei rauskommt
Du gibst aber schnell auf...

Mich würde es erst recht reizen, wenn es nicht auf Anhieb so will wie ich will. Ich gucke mal ob ich das Problem mit dem Script reproduzieren kann und teste dann mal selbst.

Dabei wollte ich eigentlich an meinem Stalker Script weitermachen, aber das hat schließlich Zeit.
Jemand ne elegante Idee, wie ich am besten die Verläufe der Ebenen, sprich welche Ebene nach welcher kommt, einbinde? Ich würds spontan mit nem statisch konstanten und Teilweise mehrdimensionalen Array Lösen, aber ich höre mir natürlich gerne einfachere Vorschläge an.

Lg
Muddy
Muddy Waters is offline  
Old 06/18/2010, 22:42   #28
 
elite*gold: 0
Join Date: Apr 2010
Posts: 9
Received Thanks: 0
Super teil dein bot, aber das mit der xp anzeige würde mich auch mal interessieren, einfach nur wieviel xp habe ich in dem letzen spiel bekommen. das wäre sehr geil.

t4t
mara1234 is offline  
Old 06/19/2010, 12:56   #29
Administrator
 
Muddy Waters's Avatar
 
elite*gold: 41364
Join Date: Jan 2010
Posts: 22,727
Received Thanks: 12,653
Quote:
Originally Posted by mara1234 View Post
Super teil dein bot, aber das mit der xp anzeige würde mich auch mal interessieren, einfach nur wieviel xp habe ich in dem letzen spiel bekommen. das wäre sehr geil.

t4t
Wo ist das Problem? Es steht dir schließlich frei meine Variante zu nutzen.
Auch wenn ich es immer wieder Interessant finde, wie alle so auf diese Kleinigkeiten abfahren. Da sind doch eine Reihe an anderen Dingen enthalten, die vom Programmieraufwand deutlich anspruchsvoller waren als eine einfache Exp Anzeige, auf die geht aber seltsamerweise niemand ein.

@lortl
Ich habe es gestern Abend mal kurz getestet, bei mir funktioniert der Scripwechsel auch mit deinem abgespeckten Script einwandfrei.
Eventuell sind bei dir auch einfach irgendwelche Variablen nicht definiert, in der Richtung würde ich nochmal forschen.
Ich habe trotzdem relativ schnell wieder auf mein Script gewechselt, man ist eben doch schon an etwas mehr Komfort gewöhnt.

Lg
Muddy
Muddy Waters is offline  
Old 06/19/2010, 15:40   #30
 
elite*gold: 0
Join Date: Jul 2008
Posts: 100
Received Thanks: 21
Quote:
Originally Posted by Muddy_Waters View Post

@lortl
Ich habe es gestern Abend mal kurz getestet, bei mir funktioniert der Scripwechsel auch mit deinem abgespeckten Script einwandfrei.
Eventuell sind bei dir auch einfach irgendwelche Variablen nicht definiert, in der Richtung würde ich nochmal forschen.
Ich habe trotzdem relativ schnell wieder auf mein Script gewechselt, man ist eben doch schon an etwas mehr Komfort gewöhnt.

Lg
Muddy
hm, liegt dann wohl an den anderen scripts... da ich ja nur deine ntbotgame datei nehme. Muss ich die anderen Dateien wohl durchforsten
lortl is offline  
Reply


Similar Threads 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 09:16.


Powered by vBulletin®
Copyright ©2000 - 2025, 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 ©2025 elitepvpers All Rights Reserved.