Register for your free account! | Forgot your password?

You last visited: Today at 15:42

  • 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/02/2011, 10:11   #2146

 
Denny456's Avatar
 
elite*gold: 358
Join Date: Jul 2009
Posts: 1,519
Received Thanks: 288
so nun weiß ich warum er stehen bleibt aber was da falsch ist weiß ich leider nicht. näheres im bild
Attached Images
File Type: jpg Screenshot002.jpg (486.6 KB, 36 views)
Denny456 is offline  
Old 06/02/2011, 12:35   #2147
 
elite*gold: 110
The Black Market: 137/0/1
Join Date: Nov 2007
Posts: 355
Received Thanks: 224
Quote:
Originally Posted by Muddy_Waters View Post
Ganz sicher? Das ist dauerhaft der Fall?

Wenn ja würde ich dir mal einen ToolsThread mit Debug Ausgaben fertig machen, alternativ kannst du das natürlich auch selber machen, sofern Ahnung vorhanden ist.


It definitely is - feel free to post comments or ask questions in English.

Kind Regards
Muddy
Ja bin mir sicher, zumindest bei meiner Sorc, die trinkt einfach nicht... Allerdings wenn ich sie alleine laufen lasse, trinkt sie.
Sobald mein Pala und Barb auch gestartet sind trinkt sie nicht mehr und hat überwiegend chicken, fällt mir halt daran auf das sie oft mit nur low HP rum rennt.

ToolsThread mit Debug Ausgaben, kenn ich mich leider nicht mit aus.
JustAnotherKeyshop is offline  
Old 06/02/2011, 13:32   #2148
 
elite*gold: 0
Join Date: Feb 2011
Posts: 20
Received Thanks: 0
Quote:
Originally Posted by chrischris2 View Post
Ok.
So Muddy, first thanks for your d2nt bot version, which seems smarter that "official" d2nt.

I'm trying it, and wonder if it's possible to tune it to avoid "regular monsters", which is done with NTConfig_SkipRegularMonsters var in etal's bot.
And im boting witch a bone nec, and moded etal's bot to make nec use rather often "corpse explosion". Is there a possibility to do it in your bot without modify nta_attack function ?

Thx.
Chris.
I think this is done though the bot scripts themselves. Have you tried to set the unit spectypes? 0x01 is All, 0x02 is super uniques, 0x04 is champions, 0x08 is bosses, and 0x10 is minions. Most bot files have away to set these.
David Dean is offline  
Old 06/02/2011, 17:11   #2149
 
elite*gold: 0
Join Date: Nov 2010
Posts: 17
Received Thanks: 1
Quote:
Originally Posted by Denny456 View Post
so nun weiß ich warum er stehen bleibt aber was da falsch ist weiß ich leider nicht. näheres im bild

Ja diesen fehler hatte ich auch schon oft, das ist wenn alle deine 3oder4 bots dieses teil in der pickit stehen haben und es zur selben zeit aufheben wollen, und nur einer kann es bekommen. Dann mekert meist ein benachteiligter bot, meine Lösung war ich habe die Pickit von den leechern sozusagen ausgestellt also nur noch tränke aufsammeln so nimmt nur der haupt bot diese sachen und die Leecher leechen denn wenn der Haupt bot diesen fehler hat war die nacht für alle umsonst.
AndreundNina is offline  
Thanks
1 User
Old 06/02/2011, 17:48   #2150
 
elite*gold: 0
Join Date: Nov 2010
Posts: 3
Received Thanks: 0
Quote:
Originally Posted by David Dean View Post
I think this is done though the bot scripts themselves. Have you tried to set the unit spectypes? 0x01 is All, 0x02 is super uniques, 0x04 is champions, 0x08 is bosses, and 0x10 is minions. Most bot files have away to set these.
Finally i added this in the beginning of function "NTA_IsValidMonster(monster)" in ntattack.ntl.

MWConfig_SkipRegularMonsters must be declared in globalconfig or each bot script.

if(MWConfig_SkipRegularMonsters)
if(monster.spectype == 1 && me.areaid != 131)
return false;

Loosely inspired from vanilla d2nt bot... :/ but works well. Bots have no time to loose with uninteresting monsters

Now corpse explosion...

Thx.
chrischris2 is offline  
Old 06/02/2011, 19:40   #2151
 
elite*gold: 110
The Black Market: 137/0/1
Join Date: Nov 2007
Posts: 355
Received Thanks: 224
@ muddy hab auch mal nen screen von den ganzen Chicken gemacht:



D1 ist der Paladin
D2 der Barb
D3 die Sorc

D1 und D2 trinken auch nicht, der Pala braucht auch so gut wie nie trinken.
Der Barb trinkt halt keine Mana Pots, somit hat er auch ab und an mal nen Chicken.
Spitzenreiter ist die Sorc, hat zwar 2k Life aber wenn Sie nicht trinkt, hat sie auch demensprechend viele Chicken.

Alle 3 Bots haben ihr eigenes Game und machen MF runs.
Wenn ich einen alleine laufen lasse, läuft es ganz normal und Sie trinken dann auch,
sobald ich jedoch den 2. Bot starte ist nichts mehr mit trinken.

Sehr komisch halt, aber hoffe hab es mal ein bissel detaliert dargestelt.


Schöne Grüße und Danke
JustAnotherKeyshop is offline  
Old 06/02/2011, 22:31   #2152
 
elite*gold: 0
Join Date: Mar 2010
Posts: 539
Received Thanks: 418
Quote:
Originally Posted by Denny456 View Post
so nun weiß ich warum er stehen bleibt aber was da falsch ist weiß ich leider nicht. näheres im bild
Quote:
Originally Posted by AndreundNina View Post
Ja diesen fehler hatte ich auch schon oft, das ist wenn alle deine 3oder4 bots dieses teil in der pickit stehen haben und es zur selben zeit aufheben wollen, und nur einer kann es bekommen. Dann mekert meist ein benachteiligter bot, meine Lösung war ich habe die Pickit von den leechern sozusagen ausgestellt also nur noch tränke aufsammeln so nimmt nur der haupt bot diese sachen und die Leecher leechen denn wenn der Haupt bot diesen fehler hat war die nacht für alle umsonst.
Ihr habt noch die fehlerhafte SnagIt.ntl, die auch im normalen Muddy's drin ist.
In diesem Post hat Muddy die überarbeitete Version gepostet:
TheCrazy11 is offline  
Thanks
4 Users
Old 06/02/2011, 23:34   #2153
 
elite*gold: 0
Join Date: May 2010
Posts: 212
Received Thanks: 40
Quote:
Originally Posted by Insaneety View Post
Ja bin mir sicher, zumindest bei meiner Sorc, die trinkt einfach nicht... Allerdings wenn ich sie alleine laufen lasse, trinkt sie.
Sobald mein Pala und Barb auch gestartet sind trinkt sie nicht mehr und hat überwiegend chicken, fällt mir halt daran auf das sie oft mit nur low HP rum rennt.

ToolsThread mit Debug Ausgaben, kenn ich mich leider nicht mit aus.
Passiert meiner Soso auch so ca. alle 10 - 20 Games.
fred9x9 is offline  
Old 06/03/2011, 01:12   #2154

 
Denny456's Avatar
 
elite*gold: 358
Join Date: Jul 2009
Posts: 1,519
Received Thanks: 288
danke sowas habe ich mir scho gedacht naja werde ich dann ma ändern^^ aber leecher solln picken sind private 4er runs von daher bekomme ich sowieso alles
Denny456 is offline  
Old 06/04/2011, 15:12   #2155
 
elite*gold: 0
Join Date: May 2010
Posts: 212
Received Thanks: 40
Quote:
Originally Posted by TheCrazy11 View Post
Ihr habt noch die fehlerhafte SnagIt.ntl, die auch im normalen Muddy's drin ist.
In diesem Post hat Muddy die überarbeitete Version gepostet:
Snagit getauscht, aber sie trinkt ab und zu nicht, ob seltener als vorher kann ich noch nicht endgültig beurteilen.
Dafür scheint das Problem mit den vertauschten drinks, field/town/field/town nicht mehr aufzutreten. Wenigstens die letzten 100 games nix mehr passiert.
fred9x9 is offline  
Old 06/04/2011, 16:00   #2156
 
elite*gold: 110
The Black Market: 137/0/1
Join Date: Nov 2007
Posts: 355
Received Thanks: 224
bei mir trinkt sie halt gar nich wenn alle 3 bots laufen
JustAnotherKeyshop is offline  
Old 06/04/2011, 16:46   #2157
Administrator
 
Muddy Waters's Avatar
 
elite*gold: 41624
Join Date: Jan 2010
Posts: 22,728
Received Thanks: 12,654
Exclamation Hotfix HP/MP Potions

Ich habe mir die Sache gerade mal angeschaut und das Problem im Quellcode wiederfinden können.
Ursache ist die Ausführung der Aufrufe für HP/MP Tränke als else-Zweig, was zur Folge hatte, dass diese Aufrufe unter gewissen Umständen nie ausgeführt werden, somit also weder HP noch MP Tränke verwendet werden.

Wie dem auch sei, ich habe das mal etwas angepasst und es sollte nun funktionieren. Ich bitte darum alle, den Inhalt der NTToolsThread.ntj, zu finden unter ../scripts/NTBot/tools/", durch folgendes zu ersetzen:
Code:
/**
*	This file was modified by 
*	Check the programming section for updates and further scripts
*	Last Update: 16:38 04.06.2011
*/

var _MWLW_LastDrinkTicks = new Array(5);

const _MWLW_DELAY_REJUV = 600;
const _MWLW_DELAY_OTHER = 3000;

const _MWLW_TYPE_HP_ME = 0;
const _MWLW_TYPE_MP_ME = 1;
const _MWLW_TYPE_RV_ME = 2;
const _MWLW_TYPE_HP_MERC = 3;
const _MWLW_TYPE_RV_MERC = 4;

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

	var _count, _lifeMax, _manaMax, _merc, _rvStatus;

	_count = 0;
	
	for(var i = 0; i < 5; i++)
		_MWLW_LastDrinkTicks[i] = 0;
		
	MWLW_SetChickenThresholds();

	while(me.ingame)
	{
		if(!NTC_InTown())
		{
			_rvStatus = false;
			
			if(_lifeMax != me.hpmax || _manaMax != me.mpmax)
			{
				_lifeMax = me.hpmax;
				_manaMax = me.mpmax;

				MWLW_SetChickenThresholds();
			}

			if(!NTC_InTown())
			{
				if(parseInt(me.hp * 100 / _lifeMax) < NTConfig_LifeRejuvThresh || parseInt(me.mp * 100 / _manaMax) < NTConfig_ManaRejuvThresh)
					_rvStatus = NTLW_DrinkPotInt(_MWLW_TYPE_RV_ME);
				
				if(!_rvStatus)
				{
					if(parseInt(me.hp * 100 / _lifeMax) < NTConfig_LifeThresh)
						NTLW_DrinkPotInt(_MWLW_TYPE_HP_ME);
					if(parseInt(me.mp * 100 / _manaMax) < NTConfig_ManaThresh)
						NTLW_DrinkPotInt(_MWLW_TYPE_MP_ME);
				}

				_merc = NTC_GetMerc();

				if(_merc)
				{
					if(parseInt(_merc.hp * 100 / _merc.hpmax) < NTConfig_MercChicken)
					{
						var _area;

						_area = MWC_FindArea();

						if(_area)
							NTC_SendLogToOOG(NTC_LOG_ITEM, "ÿE00000Game is terminated by merc chicken (" + _area.name + ")");
						else
							NTC_SendLogToOOG(NTC_LOG_ITEM, "ÿE00000Game is terminated by merc chicken (unknown area)");

						NTC_SendMsgToScript("MWBotGame.ntj", "EXIT_GAME");
						break;
					}

					if(parseInt(_merc.hp * 100 / _merc.hpmax) < NTConfig_MercRejuvThresh)
						_rvStatus = NTLW_DrinkPotInt(_MWLW_TYPE_RV_MERC);
					if(!_rvStatus && parseInt(_merc.hp * 100 / _merc.hpmax) < NTConfig_MercLifeThresh)
						NTLW_DrinkPotInt(_MWLW_TYPE_HP_MERC);
				}
			}
		}
		
		if(_count > 25)
		{
			if(NTConfig_PublicMode || MWConfig_AutoParty)
				MWC_ManageParty();
			
			_count = 0;
		}
		
		_count++;

		NTC_Delay(200);
	}
}

// Internal function
function NTLW_DrinkPotInt(type)
{
	var _potType, _result, _col, _now;

	if(type == _MWLW_TYPE_RV_ME || type == _MWLW_TYPE_RV_MERC)
	{
		if(_MWLW_LastDrinkTicks[type] && (GetTickCount() - _MWLW_LastDrinkTicks[type] < _MWLW_DELAY_REJUV))
			return false;
	}
	else
	{
		if(_MWLW_LastDrinkTicks[type] && (GetTickCount() - _MWLW_LastDrinkTicks[type] < _MWLW_DELAY_OTHER))
			return false;
	}

	if(me.mode == 0 || me.mode == 17 || me.mode == 18)
		return false;

	switch(type)
	{
		case _MWLW_TYPE_HP_ME:
		case _MWLW_TYPE_HP_MERC:
			_potType = "hp";
			break;
		case _MWLW_TYPE_MP_ME:
			_potType = "mp";
			break;
		default:
			_potType = "rv";
			break;
	}

	_col = MWLW_GetColumnIndex(_potType);

	if(_col > -1)
	{
		if(type < _MWLW_TYPE_HP_MERC)
			_result = me.UseBelt(_col);
		else
			_result = me.UseBelt(_col, true);

		if(_result)
		{
			_MWLW_LastDrinkTicks[type] = GetTickCount();
			
			NTC_SendMsgToScript("MWBotGame.ntj", "SET_" + _potType.toUpperCase() + "DRANK_1");
			
			return true;
		}
	}

	return false;
}

function MWLW_GetColumnIndex(type)
{
	var _potions;

	_potions = MWC_GetItems(-1, 2);
	
	if(_potions)
	{
		for(var i = 0; i < _potions.length; i++)
		{
			if(_potions[i].x < 4 && _potions[i].code.indexOf(type) > -1)
				return _potions[i].x;
		}
	}

	return -1;
}

function MWLW_SetChickenThresholds()
{
	if(NTConfig_LifeChicken > 0 && NTConfig_LifeChicken <= 100)
		me.chickenhp = parseInt((me.hpmax * NTConfig_LifeChicken) / 100);
	else if(NTConfig_LifeChicken > 100)
		me.chickenhp = NTConfig_LifeChicken;

	if(NTConfig_ManaChicken > 0 && NTConfig_ManaChicken <= 100)
		me.chickenmp = parseInt((me.mpmax * NTConfig_ManaChicken) / 100);
	else if(NTConfig_ManaChicken > 100)
		me.chickenmp = NTConfig_ManaChicken;
}
In der Theorie sollte dies das Problem beheben, ich bitte dennoch um Rückmeldungen, ob es das in der Praxis auch tatsächlich tut.

LG
Muddy
Muddy Waters is offline  
Thanks
5 Users
Old 06/04/2011, 18:12   #2158
 
elite*gold: 110
The Black Market: 137/0/1
Join Date: Nov 2007
Posts: 355
Received Thanks: 224
so hab den bot mal ein bissel laufen lassen, Ergebniss ist sehr gut :-)
Alle Bots trinken wieder und keine chickens mehr.

20 Runs 20 Erfolgreich :-)
JustAnotherKeyshop is offline  
Old 06/04/2011, 18:45   #2159

 
Denny456's Avatar
 
elite*gold: 358
Join Date: Jul 2009
Posts: 1,519
Received Thanks: 288
mhhh soll ich das auch ändern weil bei mir läuft alles rund und man sagt ja "never change a running system"
Denny456 is offline  
Old 06/04/2011, 19:17   #2160
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
mhhh soll ich das auch ändern weil bei mir läuft alles rund und man sagt ja "never change a running system"
Ja.

Deshalb schrieb ich ja:
Quote:
Wie dem auch sei, ich habe das mal etwas angepasst und es sollte nun funktionieren. Ich bitte darum alle, den Inhalt der NTToolsThread.ntj, zu finden unter "../scripts/NTBot/tools/", durch folgendes zu ersetzen:
Manchmal - wenn auch nur selten - drücke ich mich eben doch sehr bewusst aus.

LG
Muddy
Muddy Waters is offline  
Thanks
3 Users
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 15:43.


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.