D2Bot# mit Kolbot RELEASE - Ein neuer Bot für D2BS

06/18/2013 13:42 7daysjust#2281
Meine Zauberin funktioniert auf einmal nicht mehr.
Diablo startet und schließt wieder ganz schnell.
Weiß jemand was zu tun ist ?

Cdkey ist es nicht und auch nicht der selbe acc
06/18/2013 14:38 Mecco-Pekko#2282
Quote:
Originally Posted by Finallyb View Post
klar kann man das, wieso nicht?
das meiste ist schon da. du kannst zum einen das bo-script verwenden und zum anderen lohnt sich ein blick auf das vizer.js (unter bots).
da hast du schon mal ins cs teln und seals öffnen.
das kopierst du, wirfst alles ab line 41 raus und kopierst die star koordinaten aus dem dia script rein. dann fehlt noch eine tp- und toTown-anweisung und im einfachsten fall eine endlosschleife mit nem delay drin.
müsste das hier für den anfang okay sein? kann das überhaupt nicht mit dem script umschreiben

Code:
/**
*	@filename	Diablo.js
*	@author		kolton
*	@desc		clear Chaos Sanctuary and kill Diablo
*/

function Diablo() {
	// sort functions
	this.entranceSort = function (a, b) {
		return getDistance(a.x, a.y, 7790, 5544) - getDistance(b.x, b.y, 7790, 5544);
	};

	this.starSort = function (a, b) {
		return getDistance(a.x, a.y, 7774, 5305) - getDistance(b.x, b.y, 7774, 5305);
	};

	// general functions
	this.getLayout = function (seal, value) {
		var sealPreset = getPresetUnit(108, 2, seal);

		if (!seal) {
			throw new Error("Seal preset not found. Can't continue.");
		}

		if (sealPreset.roomy * 5 + sealPreset.y === value || sealPreset.roomx * 5 + sealPreset.x === value) {
			return 1;
		}

		return 2;
	};

	this.initLayout = function () {
		this.seisLayout = this.getLayout(394, 7773);
	};

	this.openSeal = function (classid) {
		var i, seal, warn;

		switch (classid) {
		case 396:
		case 394:
		case 392:
			warn = true;
			break;
		default:
			warn = false;
			break;
		}

		for (i = 0; i < 5; i += 1) {
			Pather.moveToPreset(me.area, 2, classid, classid === 394 ? 5 : 2, classid === 394 ? 5 : 0);

			seal = getUnit(2, classid);

			if (!seal) {
				return false;
			}

			if (seal.mode) { // for pubbies
				if (warn) {
					say(Config.Diablo.SealWarning);
				}

				return true;
			}

			warn = false;

			seal.interact();
			delay(classid === 394 ? 1000 : 500);

			if (!seal.mode) {
				if (classid === 394 && Attack.validSpot(seal.x + 15, seal.y)) { // de seis optimization
					Pather.moveTo(seal.x + 15, seal.y);
				} else {
					Pather.moveTo(seal.x - 5, seal.y - 5);
				}

				delay(500);
			} else {
				return true;
			}
		}

		return false;
	};

	this.getBoss = function (name) {
		var i, boss,
			glow = getUnit(2, 131);

		for (i = 0; i < 16; i += 1) {
			boss = getUnit(1, name);

			if (boss) {
				return Attack.clear(40, 0, name);
			}

			delay(250);
		}

		return !!glow;
	};

this.seisSeal = function () {
		print("Seis layout " + this.seisLayout);
		this.followPath(this.seisLayout === 1 ? this.starToSeisA : this.starToSeisB, this.starSort);

		if (!this.openSeal(394)) {
			throw new Error("Failed to open de Seis seal.");
		}

		if (this.seisLayout === 1) {
			Pather.moveTo(7771, 5196);
		} else {
			Pather.moveTo(7798, 5186);
		}

		if (!this.getBoss(getLocaleString(2852))) {
			throw new Error("Failed to kill de Seis");
		}

		return true;
	};
06/18/2013 16:28 evil777#2283
[Only registered and activated users can see links. Click Here To Register...]

Normal läuft alles immer reibungslos.. nur wenn der Bot länger als 10h läuft kommen diese Fehlermeldungen...

Liegt es vielleicht am Arbeitsspeicher?
Revly 1763 Trunk version 303

Beim "Temp" Ist etwas dabei um den RAM zu leeren... oder welche Funktion wurde da eingebaut?

Quote:
nun telt die die sorc zu andariel killt sie alleine dann weiter zu meppl wo sie dann ein tp macht der pala hilft...weiß jemand wieso die sorc bei andariel kein tp macht?
Ich habs mal umgeschrieben.. ich mach das in Classic mit ner Sorc und nem WW-Barb und es klappt :)

Code:
/**
*	@filename	Andariel.js
*	@author		kolton
*	@desc		kill Andariel
*/

function Andariel() {
	this.killAndariel = function () {
		var i,
			target = getUnit(1, 156);

		if (!target) {
			throw new Error("Andariel not found.");
		}

		for (i = 0; i < 300; i += 1) {
			if (!me.getState(121)) {
				Skill.cast(Config.AttackSkill[1], ClassAttack.skillHand[1], target);
			} else {
				if (Config.AttackSkill[2] > -1) {
					Skill.cast(Config.AttackSkill[2], ClassAttack.skillHand[2], target);
				} else {
					delay(300);
				}
			}

			if (target.mode === 0 || target.mode === 12) {
				return true;
			}

			if (getDistance(me, target) <= 10) {
				Pather.moveTo(me.x > 22548 ? 22535 : 22560, 9520);
			}
		}

		return target.mode === 0 || target.mode === 12;
	};

	Town.doChores();
	Pather.useWaypoint(35);
	Precast.doPrecast(true);

	if (!Pather.moveToExit([36, 37], true)) {
		throw new Error("Failed to move to Catacombs Level 4");
	}

	Pather.moveTo(22549, 9520);
	Attack.kill(156); // Andariel

	delay(2000); // Wait for minions to die.
	Pickit.pickItems();

	return true;
}
06/18/2013 17:16 bottty#2284
Quote:
Originally Posted by MysticalFrame2;
ja ganz einfach 6x den bot ordner kopieren und in jedem ordner passe ich die scripts an was die machen sollen ,
nun das habe ich gemacht und den KolbotOrdner komplett 4 x Kopiert und jeweils separat angepasst

jede D2Bot.exe hat also seine eigenen speziellen Profile -- aber wenn ich wenn ich 2 D2Bot. exen paralell starten will knallt es die anderen raus und nix geht mehr --

also wie ist am besten wenn man mehrer Bots einrichten und laufen lassen will
06/18/2013 17:53 Mecco-Pekko#2285
Quote:
Originally Posted by Finallyb View Post
klar kann man das, wieso nicht?
das meiste ist schon da. du kannst zum einen das bo-script verwenden und zum anderen lohnt sich ein blick auf das vizer.js (unter bots).
da hast du schon mal ins cs teln und seals öffnen.
das kopierst du, wirfst alles ab line 41 raus und kopierst die star koordinaten aus dem dia script rein. dann fehlt noch eine tp- und toTown-anweisung und im einfachsten fall eine endlosschleife mit nem delay drin.
könntest du mir das ebend nochmal "bauen" ?
ich hab das jetzt soweit das der teler in cs telt und da ein tp macht am star allerdings weiß ich nicht wie man die endlos schleife mit delay einbaut bzw das visir scipt richtig einfügt... hab schon richtig kopfschmerzen respekt an diejenigen die das können!
06/18/2013 18:04 finallyhappy#2286
Weiß wer wie ich einstallen kann dass filler ein game joinen das ich mit einem char erstell der botmap als script hat? Also der char wird selber gespielt, nur filler sollen automatisch die games nachjoinen die eben der erstellt, sollen auch einfach nur in der stadt warten, leaven kann ich auch händisch.
06/18/2013 20:10 Finallyb#2287
Quote:
Originally Posted by Mecco-Pekko View Post
könntest du mir das ebend nochmal "bauen" ?
ich hab das jetzt soweit das der teler in cs telt und da ein tp macht am star allerdings weiß ich nicht wie man die endlos schleife mit delay einbaut bzw das visir scipt richtig einfügt... hab schon richtig kopfschmerzen respekt an diejenigen die das können!
muss schauen wie ich zeit finde. wenn du 1-2 tage warten kannst kann ich dir das machen.
06/19/2013 13:32 PHHHH9#2288
Does this work with 1.13c diablo? I cant seem to find a working kolbot version for 1.13c
If anyone got one working or can help me with getting it to work i would appriciate it very much thanks.
06/19/2013 18:33 mirkoregge#2289
Quote:
Originally Posted by PHHHH9 View Post
Does this work with 1.13c diablo? I cant seem to find a working kolbot version for 1.13c
If anyone got one working or can help me with getting it to work i would appriciate it very much thanks.
it works with current patch for sure
06/19/2013 18:50 PHHHH9#2290
Thanks for reply!
current is 1.13d and I need one for 1.13c because I play modded d2, and found kolbot to be the best bot working is this impossible or able to get my hands on?
06/19/2013 18:53 GHOSTDIN#2291
ach ich dussel :)
06/19/2013 20:45 MysticalFrame2#2292
funktioniert bei leader tombs true und bei leechers mfhelper true ? machen die dann auch alle tombs ?

Quote:
Originally Posted by GHOSTDIN View Post
was stell ich ein damit er channel joint bei ntlead

Heißt dein profil auch wirklich "xyBaal-" denn das ist der profil name
06/19/2013 21:46 yolo1337#2293
Wie lasse ich den Bot Games über die flist verlautbaren?
say("/f l in_new_game" + gameName + gameCount + (gamePass === "" ? "" : "//" + gamePass));
im 1. Script
funktioniert nicht
06/20/2013 09:34 TheCrazy11#2294
An die Friendlist schickt man mit /f m und nicht mit /f l

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

Versuchs mal so:
Code:
say("/f m in_new_game" + gameName + gameCount + (gamePass == "" ? "" : ("//" + gamePass)));
06/20/2013 14:20 Finallyb#2295
Quote:
Originally Posted by TheCrazy11 View Post
An die Friendlist schickt man mit /f m und nicht mit /f l

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

Versuchs mal so:
Code:
say("/f m in_new_game" + gameName + gameCount + (gamePass == "" ? "" : ("//" + gamePass)));
und wenn das nicht geht, dann mit
Code:
say("//f m in_new_game" + gameName + gameCount + (gamePass == "" ? "" : ("//" + gamePass)));