Register for your free account! | Forgot your password?

You last visited: Today at 08:20

  • 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 05/30/2011, 22:17   #2116
Administrator
 
Muddy Waters's Avatar
 
elite*gold: 41624
Join Date: Jan 2010
Posts: 22,728
Received Thanks: 12,654
Quote:
Originally Posted by David Dean View Post
Yes. It is odd if you don't have the gear for it! I'm using Dual Dream runewords with enchant skill. About 40k+ Damage to anything that isn't flat immune to Lightning. Really good damage!
When it comes to melee sorcs, I can rightly say, I've had them all.
Basically every melee sorc build is fun, plus it's one of the very few character builds that is not already played by everyone else in battle net.

Quote:
Originally Posted by TheCrazy11 View Post
Hab die Rekursion jetzt eingebaut, hatte am Anfang nen Copy&Paste-Fehler...
Man muss jedoch noch was ändern und zwar den Aufruf der NTT_ClearInventory() in der NTTMGR_VisitStash() innerhalb der If-Anweisung zum cuben:
Code:
function NTTMGR_VisitStash(cubing)
{
	var _stash;
	
	if(MWConfig_ShowOverheadStatus)
		MWC_PrintOverheadStatus("Visiting Stash...");
	
	if(!cubing && !NTT_CheckStash() && NTC_StashGoldFull())
		return;

	_stash = NTC_FindUnit(NTC_UNIT_OBJECT, NTC_UNIT_STASH);
	
	if(!_stash || GetDistance(me, _stash) > 3)
		NTTM_TownMove("stash");
		
	if(!_stash)
		_stash = NTC_FindUnit(NTC_UNIT_OBJECT, NTC_UNIT_STASH);

	if(_stash)
	{
		if(NTT_DoInteract(_stash))
		{
			if(!cubing)
				NTT_ManageStash();
			
			if(cubing)
			{
				NTCU_DoCubing();

				if(NTT_DoInteract(_stash))
					NTT_ManageStash();

				me.Cancel(1);
				[COLOR="Red"]//NTT_ClearInventory();[/COLOR]
			}
			else
				me.Cancel(1);
		}
	}
}
oder schöner :
Code:
		if(NTT_DoInteract(_stash))
		{
			[COLOR="Red"]if(cubing)
			{
				NTCU_DoCubing();

				if(NTT_DoInteract(_stash))
					NTT_ManageStash();
			}
			else
				NTT_ManageStash();

			me.Cancel(1);[/COLOR]
		}
Habe ich echt die unschöne Variante bei mir drin?
Das erste was ich beim Überfliegen gesehen habe, war der unnötige Methodenaufruf.
Aber freut mich, dass es klappt. Auch bin ich dankbar, dass ich den vorherigen Beitrag nicht gesehen habe, der hätte mich nämlich verwirrt.

LG
Muddy
Muddy Waters is offline  
Thanks
2 Users
Old 05/31/2011, 01:13   #2117
 
elite*gold: 0
Join Date: Jan 2006
Posts: 8
Received Thanks: 0
Hey muddy,

Die Frage kam vll. schön öfter, aber meine sorc hatte vorher 7-40k lightning, jetzt hab ich aber 400% mf equip drauf. Was wäre denn der beste Allround Build für fast alle scripts? Mein merc hat andi, infi und duriel eth :<. Soll ich einfach lightning bleiben? Wenn du dafür keinen Support bietest ists auch nicht schlimm, dann drücke ich dir mit diesem Post einfach die tiefe Dankbarkeit für deine Bemühungen aus. Gerade die XML Logs und das ausweichen sind richtig gut geworden...kein chicken mehr im Thronraum,...

grüße Chris


EDIT: Trotz richtig eingestelltem Inventar hat der Bot grad meine SOSO torch weggeschmissen...hab sie nicht wieder gefunden >_>

Okay, vll. sollte ich anleitungen lesen, ich frag mich nur warum du die inventar zuordnung genau anders herum machst
mazZza is offline  
Old 05/31/2011, 02:19   #2118

 
Denny456's Avatar
 
elite*gold: 358
Join Date: Jul 2009
Posts: 1,519
Received Thanks: 288
Muddy ist es möglich, wenn der bot das script stoppt, das er das spiel bei der max gametime verlässt?
Denny456 is offline  
Old 05/31/2011, 08:18   #2119
 
elite*gold: 0
Join Date: Mar 2010
Posts: 539
Received Thanks: 418
Quote:
Originally Posted by mazZza View Post
Hey muddy,

Die Frage kam vll. schön öfter, aber meine sorc hatte vorher 7-40k lightning, jetzt hab ich aber 400% mf equip drauf. Was wäre denn der beste Allround Build für fast alle scripts? Mein merc hat andi, infi und duriel eth :<. Soll ich einfach lightning bleiben? Wenn du dafür keinen Support bietest ists auch nicht schlimm, dann drücke ich dir mit diesem Post einfach die tiefe Dankbarkeit für deine Bemühungen aus. Gerade die XML Logs und das ausweichen sind richtig gut geworden...kein chicken mehr im Thronraum,...

grüße Chris


EDIT: Trotz richtig eingestelltem Inventar hat der Bot grad meine SOSO torch weggeschmissen...hab sie nicht wieder gefunden >_>

Okay, vll. sollte ich anleitungen lesen, ich frag mich nur warum du die inventar zuordnung genau anders herum machst
Lightning ist ein sehr guter und auch stabiler Build, gefällt mir persönlich am besten!
Muddy schwört auf seine FO/FB/Meteor-Sorcs, wie du auch an den Videos im 2. Post sehen kannst!
400mf ist eher zuviel, beste Erfahrungen habe ich mit 200-300mf gemacht, danach steigt nur mehr die Setchance extrem an.
Meine Dualsorcs haben alle Fulltal + Storm mit MB an, sind dadurch auch ziemlich stabil und ich botte nur in 1-player-Games, da reicht es locker.

Wieso wird Lightning nicht supportet?
Ich botte mit meiner Lightsorc mit Muddy's D2NT und da läuft alles super!
Du musst vielleicht das Ausweichen für die Lightsorc noch anpassen:

Und die Inventaranordnung ist (fast) genau gleich, wie beim Standard-D2NT, Muddy hat nur die Schlüssel mit der "2" hinzugefügt...
TheCrazy11 is offline  
Thanks
2 Users
Old 05/31/2011, 11:03   #2120
 
elite*gold: 0
Join Date: Apr 2011
Posts: 25
Received Thanks: 15
Hey GruenerApfel,

in deinen geposteten Scripten ist m.E. doch noch ein kleines Fehlerchen drin. Es geht um das DiaLeechFightScript:


Quote:
Originally Posted by GruenerApfel View Post
ah okay danke , dann gleich nochmal richtig...

...

das dialeechfightscript
- hier is zu beachten das die leecher syncron zum run mitlaufen müssen, vorher andy killen und dann den run joinen is also net... da sobald die leechfighter net in der nähe der siegel sind wenn diese geöffnet werden sich mehr oder weniger aufhängen(zu ~90%), müsste man bei gelegenheit mal ne bedingung reinschreiben das nach 5 versuchen oder so zum nächsten siegel gegangen wird .... demnächst

Code:
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("MWBotGame.ntj", "NTTM_CheckAct()");
		return;
	}
	
	if(me.areaid != 103)
	{
		if(!NTTM_TownMove("waypoint"))
		{
			NTC_SendMsgToScript("MWBotGame.ntj", "NTTM_TownMove()");
			return;
		}

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


	NTTMGR_TownManager();

   NTTM_TownMove("portalspot");

   for(i = 0; i <= 100; i++)
   {
      if(NTC_InMyParty(NTConfig_Leader))
         break;

      Delay(200);
   }   

   while(me.areaid == 103 && NTC_InMyParty(NTConfig_Leader))
   {
		if(NT_GetLeader(NTConfig_Leader).areaid >= 129)
		{
			NTC_SendMsgToScript("MWBotGame.ntj", "SCRIPT_END");
			return;
		}
		NTM_UsePortal("BluePortal", 108, NTConfig_Leader); // 50
		Delay(1000);
       
   }
		
		NTP_DoPrecast(true);
		NTA_ClearPosition(10, true);
		NTM_MoveTo(me.areaid, 7792, 5291);
		NTA_ClearPosition(20, true);
		NTM_MoveTo(me.areaid, 7792, 5291);
		NTA_ClearPosition(30, true);

		
		if(!NT_OpenSealsInt())
		{
			NTC_SendMsgToScript("MWBotGame.ntj", "NT_OpenSealsInt()");
			return;
		}
	
		if(NTConfig_PublicMode)
			Say(NTConfig_KillDiaMsg);

		NTM_MoveTo(me.areaid, 7792, 5292);
		NTP_DoPrecast(true);
		NTC_FindUnit(NTC_UNIT_MONSTER, 243, 100);


		NTA_KillMonster(243);
		NTSI_PickItems();
		Say(NTConfig_DiaNxtGame);
		NTC_SendMsgToScript("MWBotGame.ntj", "SCRIPT_END");
[B][COLOR="Green"]}[/COLOR][/B]

// Internal function
function NT_OpenSealsInt()
{
	var i, _unit;
	var _result;

	_unit = GetPresetUnits(me.areaid, NTC_UNIT_OBJECT);

	if(!_unit)
		return false;

	_result = false;

	for(i = 0 ; i < _unit.length ; i++)
	{
		if(_unit[i].id == 396)
		{
			if(_unit[i].roomy*5 + _unit[i].y == 5275)
				_result = NT_OpenVizierSealInt(1);
			else
				_result = NT_OpenVizierSealInt(2);

			break;
		}
	}

	if(!_result)
		return false;
		
	NTA_ClearPosition(30, true, 2);
	NTP_DoPrecast(false);

	_result = false;

	for(i = 0 ; i < _unit.length ; i++)
	{
		if(_unit[i].id == 394)
		{
			if(_unit[i].roomx*5 + _unit[i].x == 7773)
				_result = NT_OpenDeSeisSealInt(1);
			else
				_result = NT_OpenDeSeisSealInt(2);

			break;
		}
	}

	if(!_result)
		return false;

	NTA_ClearPosition(30, true, 2);
	NTP_DoPrecast(true);

	_result = false;

	for(i = 0 ; i < _unit.length ; i++)
	{
		if(_unit[i].id == 392)
		{
			if(_unit[i].roomx*5 + _unit[i].x == 7893)
				_result = NT_OpenVenomSealInt(1);
			else
				_result = NT_OpenVenomSealInt(2);

			break;
		}
	}

	return _result;
}

function NT_OpenVizierSealInt(type)
{

var _monstername = GetLocaleString(2851);
var i, n;

	var i, n;
	var _attackpos = [7740, 5300, 7792, 5291, 7740, 5280, 7720, 5280, 7720, 5300];
	

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

		NTA_ClearPosition(25, true, 2);
	}
	
	NTM_MoveTo(me.areaid, 7735, 5291);
	NTA_ClearPosition(40, true, 2);

	for(i = 0 ; i < 3 ; i++)
	{
		if(type == 1)
		{
			NTM_MoveTo(me.areaid, 7695, 5293);
			NTA_ClearPosition(25, true, 2);
			NTM_MoveTo(me.areaid, 7664, 5314);
			NTA_ClearPosition(25, true, 2);
			NTM_MoveTo(me.areaid, 7673, 5293);
			NTA_ClearPosition(25, true, 2);
			NTM_MoveTo(me.areaid, 7662, 5276);
			NTA_ClearPosition(25, true, 2);
			NTM_MoveTo(me.areaid, 7676, 5294);
			NTA_ClearPosition(60, true, 2);	
			
			if(me.classid == NTC_CHAR_CLASS_PALADIN)
				NTM_MoveTo(me.areaid, 7678, 5292);
		}
		else
		{
			NTM_MoveTo(me.areaid, 7695, 5316);
			NTA_ClearPosition(25, true, 2);
			NTM_MoveTo(me.areaid, 7664, 5314);
			NTA_ClearPosition(25, true, 2);
			NTM_MoveTo(me.areaid, 7654, 5281);
			NTA_ClearPosition(25, true, 2);
			NTM_MoveTo(me.areaid, 7695, 5316);
			NTA_ClearPosition(60, true, 2);
			
			if(me.classid == NTC_CHAR_CLASS_PALADIN)
				NTM_MoveTo(me.areaid, 7676, 5320);
		}

		for(n = 0 ; n < 10 ; n++)
		{
			NTC_Delay(200);

			if(NTA_KillMonster(_monstername))
			{
				NTA_ClearPosition(40);
				NTSI_PickItems();

				return NTM_MoveTo(me.areaid, 7792, 5291);
			}
		}
	}
	return false;
}

function NT_OpenDeSeisSealInt(type)
{
	var i, n;
	var _monstername = GetLocaleString(2852);

	var _attackpos = [7780, 5255, 7800, 5255, 7800, 5235, 7780, 5235, 7774, 5214];
	var _monstername = GetLocaleString(2852);

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

		NTA_ClearPosition(25, true, 2);
	}
	
	NTM_MoveTo(me.areaid, 7790, 5244);
	NTA_ClearPosition(40, true, 2);


	for(i = 0 ; i < 3 ; i++)
	{
		if(type == 1)
		{
			NTM_MoveTo(me.areaid, 7773, 5194);
			NTA_ClearPosition(25, true, 2);
			NTM_MoveTo(me.areaid, 7813, 5188);
			NTA_ClearPosition(25, true, 2);
			NTM_MoveTo(me.areaid, 7809, 5155);
			NTA_ClearPosition(25, true, 2);
			NTM_MoveTo(me.areaid, 7777, 5155);
			NTA_ClearPosition(60, true, 2);			
			
			if(me.classid == NTC_CHAR_CLASS_PALADIN)
				NTM_MoveTo(me.areaid, 7768, 5206);
			else
				NTM_MoveTo(me.areaid, 7774, 5220);
		}
		else
		{
			NTM_MoveTo(me.areaid, 7810, 5202);
			NTA_ClearPosition(25, true, 2);
			NTM_MoveTo(me.areaid, 7774, 5180);
			NTA_ClearPosition(25, true, 2);
			NTM_MoveTo(me.areaid, 7785, 5153);
			NTA_ClearPosition(25, true, 2);
			NTM_MoveTo(me.areaid, 7809, 5154);
			NTA_ClearPosition(60, true, 2);			
			
			if(me.classid == NTC_CHAR_CLASS_PALADIN)
				NTM_MoveTo(me.areaid, 7773, 5178);
			else
				NTM_MoveTo(me.areaid, 7788, 5192);
		}

		for(n = 0 ; n < 10 ; n++)
		{
			NTC_Delay(200);

			if(NTA_KillMonster(_monstername))
			{
				NTA_ClearPosition(40);
				NTSI_PickItems();

		NTP_DoPrecast(false);
		return NTM_MoveTo(me.areaid, 7792, 5291);
			}
		}
	}
	return false;
}

function NT_OpenVenomSealInt(type)
{
	var i, n;
	var _monstername = GetLocaleString(2853);

	var _attackpos = [7835, 5280, 7835, 5300, 7855, 5300, 7855, 5280];
	

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

		NTA_ClearPosition(25, true, 2);
	}
	
	NTM_MoveTo(me.areaid, 7843, 5292);
	NTA_ClearPosition(40, true, 2);
	
	for(i = 0 ; i < 3 ; i++)
	{
		if(type == 1)
		{
			NTM_MoveTo(me.areaid, 7871, 5293);
			NTA_ClearPosition(25, true, 2);
			NTM_MoveTo(me.areaid, 7893, 5307);
			NTA_ClearPosition(25, true, 2);
			NTM_MoveTo(me.areaid, 7912, 5280);
			NTA_ClearPosition(25, true, 2);
			NTM_MoveTo(me.areaid, 7931, 5293);
			NTA_ClearPosition(25, true, 2);
			NTM_MoveTo(me.areaid, 7908, 5293);
			NTA_ClearPosition(60, true, 2);
			
			if(me.classid == NTC_CHAR_CLASS_PALADIN)
				NTM_MoveTo(me.areaid, 7892, 5298);
		}
		else
		{
			NTM_MoveTo(me.areaid, 7893, 5274);
			NTA_ClearPosition(25, true, 2);
			NTM_MoveTo(me.areaid, 7927, 5280);
			NTA_ClearPosition(25, true, 2);
			NTM_MoveTo(me.areaid, 7930, 5308);
			NTA_ClearPosition(25, true, 2);
			NTM_MoveTo(me.areaid, 7929, 5294);
			NTA_ClearPosition(60, true, 2);
			
			if(me.classid == NTC_CHAR_CLASS_PALADIN)
				NTM_MoveTo(me.areaid, 7927, 5275);
		}

		for(n = 0 ; n < 10 ; n++)
		{
			NTC_Delay(200);

			if(NTA_KillMonster(_monstername))
			{
				NTSI_PickItems();
				NTA_ClearPosition(40, true, 2);
			}


			
			if(NTC_PutSkill(124, NTC_HAND_RIGHT))
				NTC_PingDelay(1000);
		}
		return true;
	}
	return false;
}

function NT_GetLeader(_name)  
{
				_player = GetPlayerUnit();

				if(_player)
				{
					while(_player.GetNext())
					{
					if(_player.name == _name) 
						{ return _player; }
					}
				}
}
[B][COLOR="Red"]}[/COLOR][/B]
In der letzten Zeile dürfte die geschweifte Klammer wohl zu viel sein, da sie vermutlich von der NTMain() ganz nach unten gerutscht ist. Die muss also wieder nach oben (hab ich grün eingefügt vor "//Internal function").


Grüße,
fabdevil
fabdevil is offline  
Thanks
2 Users
Old 05/31/2011, 11:40   #2121
Administrator
 
Muddy Waters's Avatar
 
elite*gold: 41624
Join Date: Jan 2010
Posts: 22,728
Received Thanks: 12,654
Quote:
Originally Posted by Denny456 View Post
Muddy ist es möglich, wenn der bot das script stoppt, das er das spiel bei der max gametime verlässt?
Ich weiss gerade nicht was du meinst, die maxgametime wird eigentlich durch die Core überwacht, sofern diese nicht vorher auf 0 gesetzt wurde, sollte der Char immer das spiel verlassen, nachdem diese Zeit verstrichen ist.

Oder meinstest du etwas anderes?

Quote:
Originally Posted by mazZza View Post
Hey muddy,

Die Frage kam vll. schön öfter, aber meine sorc hatte vorher 7-40k lightning, jetzt hab ich aber 400% mf equip drauf. Was wäre denn der beste Allround Build für fast alle scripts? Mein merc hat andi, infi und duriel eth :<. Soll ich einfach lightning bleiben? Wenn du dafür keinen Support bietest ists auch nicht schlimm, dann drücke ich dir mit diesem Post einfach die tiefe Dankbarkeit für deine Bemühungen aus. Gerade die XML Logs und das ausweichen sind richtig gut geworden...kein chicken mehr im Thronraum,...

grüße Chris


EDIT: Trotz richtig eingestelltem Inventar hat der Bot grad meine SOSO torch weggeschmissen...hab sie nicht wieder gefunden >_>

Okay, vll. sollte ich anleitungen lesen, ich frag mich nur warum du die inventar zuordnung genau anders herum machst
Ansonsten ist auch FB/Meteor/Orb oder FB/Meteor/Blizzard gut, aber das kannst du im prinzip halten wie du willst.
Ich würde aber gerade bei vorhandenem Infinity Merc auch zum Storm und Maxblock greifen, macht die Sache sicherer.

Achja: genau anders herum im Bezug auf was?

LG
Muddy
Muddy Waters is offline  
Old 05/31/2011, 13:28   #2122
 
elite*gold: 0
Join Date: Jan 2006
Posts: 8
Received Thanks: 0
Quote:
Originally Posted by Muddy_Waters View Post

Ansonsten ist auch FB/Meteor/Orb oder FB/Meteor/Blizzard gut, aber das kannst du im prinzip halten wie du willst.
Ich würde aber gerade bei vorhandenem Infinity Merc auch zum Storm und Maxblock greifen, macht die Sache sicherer.

Achja: genau anders herum im Bezug auf was?

LG
Muddy
Klassische D2NT Ist ja jetzt nicht weiter schlimm. Ja, der Infi Merc hilft merklich

Hab eine Frage: Manchmal nach einem Script geht er nicht bei Cain vorbei, kauft dann identify scrolls, aber verkauft die Items unidentifiziert und lässt danach die Rolle fallen. Liegt das daran das der Cain rumläuft? Kann man Cain identifikation auch ausschalten?
mazZza is offline  
Old 05/31/2011, 13:41   #2123
 
elite*gold: 0
Join Date: Mar 2010
Posts: 539
Received Thanks: 418
Quote:
Originally Posted by mazZza View Post
Hab eine Frage: Manchmal nach einem Script geht er nicht bei Cain vorbei, kauft dann identify scrolls, aber verkauft die Items unidentifiziert und lässt danach die Rolle fallen. Liegt das daran das der Cain rumläuft? Kann man Cain identifikation auch ausschalten?
In der MWConfig_GlobalSettings.ntl (sind meine Einstellungen):
Code:
	//------------------------------------------------------------------------------
	// Identification Configuration
	//------------------------------------------------------------------------------
	
	// Set to true to visit Deckard Cain in order to identify items. NOTE: Cain will not be visited if you char carries items that you like to be kept unidentified.
	MWConfig_IdentAtCain = true;

	// Set to true to always visit a merchant in order to sell items that are not required. If set to false, the char will drop these items, unless he is visiting a merchant anyway.
	MWConfig_AlwaysSellTrashItems = true;
	
	// Set to true to identify items when not in town. Items that do not meet your requirements will be dropped.
	MWConfig_IdentAfterPickup = false;	[COLOR="Blue"]// Hab ich deaktiviert, da es zu viele Errors brachte[/COLOR]

	// This is the minimum number of unid items to be carried before your char identifies them when not in town.
	MWConfig_MinItemsToIdent = 6;
In der NTTownManager.ntl kann noch festgelegt werden, ab wie vielen zu identifizierenden Items er zu Cain geht (hier bei mehr als 1 Item):
Code:
	if(_MWTMGR_VisitCain && (_NTTMGR_DoID > [COLOR="Red"]1[/COLOR] || me.act == 2))
		MWTMGR_VisitCain();
TheCrazy11 is offline  
Thanks
2 Users
Old 05/31/2011, 17:24   #2124
 
elite*gold: 0
Join Date: Jan 2006
Posts: 8
Received Thanks: 0
Quote:
In der NTTownManager.ntl kann noch festgelegt werden, ab wie vielen zu identifizierenden Items er zu Cain geht (hier bei mehr als 1 Item):
Code:
	if(_MWTMGR_VisitCain && (_NTTMGR_DoID > [COLOR="Red"]1[/COLOR] || me.act == 2))
		MWTMGR_VisitCain();
okay habs jetzt in >= 1 geändert. Mal schaun was jetzt passiert. Hat naemlich mittlerweile noch paar scs unid verkauft . Wenn er also in einem script run bis zum nächsten aufruf der Townmanager funktion nur 1 Item findet wirds nicht identifiziert und er verkaufts

EDIT: DIE MACHT ist mit der Varianz :>

2 Puls und 1 Mal in 3 konsekutiven CountessRuns :>
mazZza is offline  
Old 05/31/2011, 18:44   #2125
 
elite*gold: 0
Join Date: Sep 2009
Posts: 148
Received Thanks: 21
Wie bekomm ichs hin das der Bot nur ab einer best. Anzahl von Dolls leavt?

theoretisch müsst ichs ja nur mit der, in der Baal.ntj vorhandenen, Monstercount verknüpfen und dann sagen
Code:
_monsterCount = MW_CountMonstersInThrone(100, true);
if(!NTC_FindUnit(NTC_UNIT_MONSTER, 691));
{
           if(_monsterCount > 10)
           	NTC_SendMsgToScript("MWBotGame.ntj", "SCRIPT_END");
}
Oder?
-Nemesis1337- is offline  
Old 05/31/2011, 19:54   #2126
 
elite*gold: 0
Join Date: Apr 2011
Posts: 25
Received Thanks: 15
Quote:
Originally Posted by -Nemesis1337- View Post
Wie bekomm ichs hin das der Bot nur ab einer best. Anzahl von Dolls leavt?

theoretisch müsst ichs ja nur mit der, in der Baal.ntj vorhandenen, Monstercount verknüpfen und dann sagen
Code:
_monsterCount = MW_CountMonstersInThrone(100, true);
if(!NTC_FindUnit(NTC_UNIT_MONSTER, 691));
{
           if(_monsterCount > 10)
           	NTC_SendMsgToScript("MWBotGame.ntj", "SCRIPT_END");
}
Oder?
Ganz so einfach wird es nicht gehen, denn MW_CountMonstersInThrone zählt nicht nur die Puppen, sondern sämtlich Monster im Thronsaal.

Du müsstest um dein Vorhaben zu realisieren also diese Funktion bearbeiten, z.B. indem du _monsterData zu einer globalen Variable machst. Dann könntest du im eigentlichen Script den entsprechenden Count der gesuchten Monster anhand seiner ClassId auslesen, also z.B. 691 für die besagten Puppen.

Habe den Code gerade nicht parat, könnte aber ggf. Code dazu liefern, falls das als Hilfe nicht ausreicht.

Grüße,
fabdevil
fabdevil is offline  
Thanks
1 User
Old 06/01/2011, 10:33   #2127
Administrator
 
Muddy Waters's Avatar
 
elite*gold: 41624
Join Date: Jan 2010
Posts: 22,728
Received Thanks: 12,654
Quote:
Originally Posted by mazZza View Post
okay habs jetzt in >= 1 geändert. Mal schaun was jetzt passiert. Hat naemlich mittlerweile noch paar scs unid verkauft . Wenn er also in einem script run bis zum nächsten aufruf der Townmanager funktion nur 1 Item findet wirds nicht identifiziert und er verkaufts

EDIT: DIE MACHT ist mit der Varianz :>

2 Puls und 1 Mal in 3 konsekutiven CountessRuns :>
Da _NTTMGR_DoID != 0 notwendige Bedingung dafür ist, dass _MWTMGR_VisitCain true ist, kannst du den kompletten zweiten Teil weglassen, wenn du immer zu Cain gehen willst.

Also:
Code:
if(_MWTMGR_VisitCain)
	MWTMGR_VisitCain();
Macht zwar von der Funktion her keinen Unterschied, ist aber aufgeräumter und zeigt, dass du weisst was du tust.

Achja, das Identifizieren mit Scrolls funktioniert von Haus aus nicht, du brauchst einen Tome, oder musst die verantwortliche Funktion korrigieren.
Zu letzterem findest du weitere Hinweise.

LG
Muddy
Muddy Waters is offline  
Old 06/01/2011, 10:50   #2128

 
Denny456's Avatar
 
elite*gold: 358
Join Date: Jul 2009
Posts: 1,519
Received Thanks: 288
ok ich versuche es mal genauer zu erklären. ich habe hier das baal leech script eingefügt und lasse damit 3 chars leechen. wenn ich morgens nachschaue sehe ich das ein bis zwei chars in game stehn und oben in der script info mw XXXXXXXXXXXX stopped und da steht er manchmal 500 min und länger.habe aber in den char.cfg´s

Code:
	// 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
also sollte er doch nach max 3000 sekunden das game verlassen oder verstehe ich da was falsch.

ich hoffe ich habe es jetzt was genauer erklärt nach 16 std arbeit und 4 std schlaf.
Denny456 is offline  
Old 06/01/2011, 11:09   #2129
Administrator
 
Muddy Waters's Avatar
 
elite*gold: 41624
Join Date: Jan 2010
Posts: 22,728
Received Thanks: 12,654
Quote:
Originally Posted by Denny456 View Post
ok ich versuche es mal genauer zu erklären. ich habe hier das baal leech script eingefügt und lasse damit 3 chars leechen. wenn ich morgens nachschaue sehe ich das ein bis zwei chars in game stehn und oben in der script info mw XXXXXXXXXXXX stopped und da steht er manchmal 500 min und länger.habe aber in den char.cfg´s

Code:
	// 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
also sollte er doch nach max 3000 sekunden das game verlassen oder verstehe ich da was falsch.

ich hoffe ich habe es jetzt was genauer erklärt nach 16 std arbeit und 4 std schlaf.
Also meines Wissens nach, sollte er das Spiel verlassen, nachdem die maxgametime überschritten wurde.

Gründe, damit das nicht passiert wären meiner Ansicht nach:
  • Wenn der komplette Manager nicht mehr reagiert.
  • Wenn me.maxgametime irgendwo auf 0 gesetzt wird.
Achja, hast du bei MWConfig_WorldEventAccount zufällig etwas angegeben? Die MWBotGame.ntj in der aktuell veröffentlichten Version ist dahingehend etwas fehlerhaft und könnte das Problem bei einer Soj oder WE Meldung verursachen.

LG
Muddy
Muddy Waters is offline  
Thanks
1 User
Old 06/01/2011, 11:19   #2130

 
Denny456's Avatar
 
elite*gold: 358
Join Date: Jul 2009
Posts: 1,519
Received Thanks: 288
nein ich habe das mit den soj meldungen und was damit zusammmen hängt alles so gelassen wie es war und der manager hat sich nicht aufgehangen da ich dann den char über ihn beende
Denny456 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 08:20.


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