[Release] Muddy's D2NT

02/24/2011 08:01 xXx__xXx#661
Quote:
Originally Posted by Denny456 View Post
Eventuell ein erweitertes Chestbotting Script würde ich gerade bei ladder start als hilfreich erachten
this!^^

LG René
02/24/2011 08:02 xXx__xXx#662
na die Befehlspunkte von GVETAL meinte ich bezüglich Rushbot, wo er reingeht, wann er TP macht usw,....,......^^
02/24/2011 12:19 Muddy Waters#663
Quote:
Originally Posted by Denny456 View Post
Eventuell ein erweitertes Chestbotting Script würde ich gerade bei ladder start als hilfreich erachten
Ich schaue mal, ob ich das unterbringen kann.
An sich recht anspruchslos, aber eben viele kleine Dinge und Kleinvieh macht ja bekanntlich auch Mist. :)

@Phantomracer
Deinem zweiten Beitrag kann ich ohne Kontext nicht folgen, das ist einfach zu kurz gefasst.

Abgesehen davon, nutze doch bitte den [Only registered and activated users can see links. Click Here To Register...] Button, um derartige Doppelposts zu vermeiden.

Lg
Muddy
02/24/2011 17:57 dragon_killer#664
Das Automule Freature wäre natürlich absolut genial, zählt aber wohl nicht zu den Sachen, die man einfach so runtertippt :/
02/24/2011 18:17 Muddy Waters#665
Quote:
Originally Posted by dragon_killer View Post
Das Automule Freature wäre natürlich absolut genial, zählt aber wohl nicht zu den Sachen, die man einfach so runtertippt :/
So ist es, zumal es mir auch zuviel Arbeit wäre, da ich es selber nicht brauche. :(

Übrigens habe ich [Only registered and activated users can see links. Click Here To Register...] mal ein weiteres Video hinzugefügt, für die die es sich anschauen mögen.

Ich finde ja nach wie vor, dass Orb/FB Sorcs unterschätzt werden, darum habe ich mal ein kleines Video meiner Sorc in Aktion gemacht, um zu zeigen, wie effektiv diese Art von Sorc für Area Runs ist. :)
Ausserdem sieht man meine Stash und Belt Klasse in Aktion, wobei die Debug Ausgaben natürlich in der Release Version nicht mehr drin sein werden. ;)

Das kleine Malheur im CS werde ich mir übrigens nochmal anschauen und sicherstellen, dass das etwas intelligenter Abläuft. :o

Lg
Muddy
02/24/2011 19:42 Nuru der Stadtmasseur#666
Quote:
Originally Posted by dragon_killer View Post
Das Automule Freature wäre natürlich absolut genial, zählt aber wohl nicht zu den Sachen, die man einfach so runtertippt :/
Da häng ich mich mal an (nicht zum ersten Mal), obwohl ich weiß, dass das nichts wird :(

Ansonsten freue ich mich schon auf dein Release, bin besonders gespannt auf die neue Craft-Routine
02/25/2011 00:31 Denny456#667
Achja zu den Chestbotting script wenn du das erweiterst dann schreibe es bitte so das es auch für sternis klappt^^
02/25/2011 13:19 Muddy Waters#668
Quote:
Originally Posted by fertoker1 View Post
Da häng ich mich mal an (nicht zum ersten Mal), obwohl ich weiß, dass das nichts wird :(

Ansonsten freue ich mich schon auf dein Release, bin besonders gespannt auf die neue Craft-Routine
Die funktioniert bislang ganz gut, meinem Common Log nach zu urteilen habe ich seit Ende Dezember knapp 2000 Caster Amulette, 1000 Paar Hitpower Handschuhe, 800 Blood Ringe und knapp 600 Hitpower Ringe craften lassen, mit dem ursprünglichen Algorithmus hätte ich vermutlich nichtmal die Hälfte geschafft, weil die meisten Zutaten einfach liegen gelassen worden wären. :)

@Denny456
Es macht aus meiner Sicht keinen Sinn, weil ich mich dann auf die eventuell weniger umfangreiche common library dieser Version stützen müsste und so dazu gezwungen würde, Funktionen neu zu implementieren, die ich eigentlich schon längst in meiner common library implementiert habe.
Ich müsste also Wiederholungen einbauen und das sollte man unter allen Umständen vermeiden.

Auch wenn es in diesem konkreten Fall vermutlich trotzdem funktionieren würde, weil das Öffnen von Truhen schließlich so simpel ist, dass es keiner spezieller Funktionen bedarf, werde ich es definitiv nicht bewusst auf Kompatibilität zu anderen Versionen auslegen. Tut mir Leid... :(

Lg
Muddy

P.S.: Hat jemand eine übersichtliche Liste aller Superchests? Mir fallen zwar einige ein, das sind aber sicherlich nicht alle. :)
02/25/2011 15:42 Denny456#669
na gut sollte der d2nt noch funzen bei ladder reset werde ich ihn dann wohl umstellen müssen

in der wurmgruft giebt es nen paar^^
02/26/2011 13:16 Muddy Waters#670
Ich habe dazu gestern mal ein bisschen was geschrieben.

Meine Frage dazu: Habe ich irgendwelche wichtigen Super Chests vergessen?

Hier einmal was ich bisher habe:
Code:
// Act I
case 12: // Cave Level 2
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_WAYPOINT, 3));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 3, 9));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 9, 13));
    break;
case 18: // Mausoleum
case 19: // Crypt
    _schedule[i].AreaName = "Mausoleum && Crypt";
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_WAYPOINT, 3));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 17, 18));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_LOOTCHEST, 18, _schedule[i].ChestId));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 18, 17));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 17, 19));
    break;
case 15: // Hole Level 2
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_WAYPOINT, 6));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 6, 11));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 11, 15));
    break;
case 16: // Pit Level 2
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_WAYPOINT, 27));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 7, 12));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 12, 16));
    break;
// Act II
case 49: // Sewers Level 3
    _schedule[i].ChestId = 355;
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_WAYPOINT, 48));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 48, 49));
    break;
case 57: // Halls of the Dead Level 3
    _schedule[i].ChestId = 354;
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_WAYPOINT, 57));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 57, 60));
    break;
case 59: // Stony Tomb Level 2
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_WAYPOINT, 42));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 41, 55));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 55, 59));
    break;
case 62: // Maggot's Lair Level 1
case 63: // Maggot's Lair Level 2
case 64: // Maggot's Lair Level 3
    _schedule[i].ChestId = 356;
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_WAYPOINT, 43));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 43, 62));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 62, 63));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 63, 64));
    break;
case 65: // Ancient Tunnels
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_WAYPOINT, 44));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 44, 65));
    break;
case 66: // Tal Rasha's Tomb
case 67: // Tal Rasha's Tomb
case 68: // Tal Rasha's Tomb
case 69: // Tal Rasha's Tomb
case 70: // Tal Rasha's Tomb
case 71: // Tal Rasha's Tomb
case 72: // Tal Rasha's Tomb
    _schedule[i].AreaName += 's';
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_WAYPOINT, 46));
    // Tomb I
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 46, 69));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_LOOTCHEST, 69, _schedule[i].ChestId));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 69, 46));
    // Tomb II
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 46, 68));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_LOOTCHEST, 68, _schedule[i].ChestId));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 68, 46));
    // Tomb III
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 46, 67));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_LOOTCHEST, 67, _schedule[i].ChestId));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 67, 46));
    // Tomb IV
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 46, 66));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_LOOTCHEST, 66, _schedule[i].ChestId));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 66, 46));
    // Tomb V
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 46, 70));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_LOOTCHEST, 70, _schedule[i].ChestId));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 70, 46));
    // Tomb VI
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 46, 71));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_LOOTCHEST, 71, _schedule[i].ChestId));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 71, 46));
    // Tomb VII
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 46, 72));
    break;
// Act III
case 84: // Arachnid Lair
case 85: // Spider Cavern
    _schedule[i].AreaName = "Arachnid Lair && Spider Cavern";
    _schedule[i].ChestId = 407;
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_WAYPOINT, 76));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 76, 84));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_LOOTCHEST, 84, 397));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 84, 76));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 76, 85));
    break;
case 90: // Swampy Pit Level 3
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_WAYPOINT, 78));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 78, 86));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 86, 87));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 87, 90));
    break;
case 91: // Flayer Dungeon Level 3
    _schedule[i].ChestId = 406;
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_WAYPOINT, 78));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 78, 88));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 88, 89));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 89, 91));
    break;
case 92: // Sewers Level 1
case 93: // Sewers Level 2
    _schedule[i].AreaName = "Sewers Level 1 && 2";
    _schedule[i].ChestId = 405;
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_WAYPOINT, 80));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 80, 92));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_LOOTCHEST, 92, 397));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 92, 93));
    break;
// Act V
case 111: // Frigid Highlands
case 125: // Abbadon
    _schedule[i].AreaName = "Frigid Highlands && Abbadon";
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_WAYPOINT, 111));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_LOOTCHEST, 111, 455));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_PORTAL, 111, 60));
    break;
case 126: // Pit of Acheron
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_WAYPOINT, 112));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_PORTAL, 112, 60));
    break;
case 115: // Glacial Trail
case 116: // Drifter Cavern
    _schedule[i].AreaName = "Glacial Trail && Drifter Cavern";
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_WAYPOINT, 115));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_LOOTCHEST, 115, 455));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 115, 116));
    break;
case 117: // Frozen Tundra
case 127: // Infernal Pit
    _schedule[i].AreaName = "Frozen Tundra && Infernal Pit";
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_WAYPOINT, 117));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_LOOTCHEST, 117, 455)); // TODO: Add classid Frozen Tundra
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_PORTAL, 117, 60));
    break;
case 119: // Icy Cellar
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_WAYPOINT, 118));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 118, 119));
    break;
case 122: // Halls of Anguish
case 123: // Halls of Pain
    _schedule[i].AreaName = "Halls of Pain && Halls Of Anguish";
    _schedule[i].ChestId = 455;
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_WAYPOINT, 123));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_LOOTCHEST, 123, 455));
    _schedule[i].Route.push(new MW_RouteStage(_MWSC_STAGE_TILE, 123, 122));
Über Antworten würde ich mich freuen. :)
02/26/2011 13:27 xXx__xXx#671
hmm ne ned wirklich, da sind schon welche dabei, die ich ned mal wusste!^^

LG
02/26/2011 13:34 blackWorkx#672
Gibt es für Muddy´s Bot auch ein FollowBot / LeechFighter oder Leech Only? Und ein Anti Realm Down bzw. ein Real Down Blocker.
02/26/2011 14:35 Muddy Waters#673
Quote:
Originally Posted by blackWorkx View Post
Gibt es für Muddy´s Bot auch ein FollowBot / LeechFighter oder Leech Only? Und ein Anti Realm Down bzw. ein Real Down Blocker.
Nicht, dass ich wüsste, jedenfalls nicht von mir selbst, da ich mit public games nichts am Hut habe und mich dementsprechend wenig mit Dingen auseinandersetze, die damit zu tun haben. ;)

@Phantomracer
Danke für die Meinung. :)

Falls doch noch jemandem irgendwelche übersehenen Super Chests auffallen sollten, bitte melden. ;)

Lg
Muddy
02/26/2011 16:14 blackWorkx#674
Muss ich irgentwas beachten von den func´s her im Muddy´s oder ist das Muddy´s script ganz anders gebaut als das Bluebird? Habe jetzt nur überfloge, bei deinem Ist MWBotGame und bei Bluebird halt NTBotGame ist noch irgentwas komplett anders in deinem Script aufbau oder ist es das selbe? Würde dann jetzt nur halt das leech script von bluebird auf deins anpassen wollen.
02/26/2011 16:22 Muddy Waters#675
Quote:
Originally Posted by blackWorkx View Post
Muss ich irgentwas beachten von den func´s her im Muddy´s oder ist das Muddy´s script ganz anders gebaut als das Bluebird? Habe jetzt nur überfloge, bei deinem Ist MWBotGame und bei Bluebird halt NTBotGame ist noch irgentwas komplett anders in deinem Script aufbau oder ist es das selbe? Würde dann jetzt nur halt das leech script von bluebird auf deins anpassen wollen.
Vom Entry Point her vermutlich nicht, nein. Meine common library ist nur um eine Vielzahl an Funktionen erweitert und auch die dort implementierten Standardfunktionen sind teilweise erweitert.

Allerdings immer in der Form, dass sie in ihrer ursprünglichen Form auch noch funktionieren, darum sollte das an sich keine größeren Probleme bereiten, jedenfalls wenn man weiss, was man tut. :)

Lg
Muddy