|
You last visited: Today at 20:29
Advertisement
[Release] Muddy's D2NT
Discussion on [Release] Muddy's D2NT within the Diablo 2 Programming forum part of the Diablo 2 category.
01/21/2012, 22:14
|
#5371
|
elite*gold: 0
Join Date: Jan 2009
Posts: 3,170
Received Thanks: 1,191
|
Quote:
Originally Posted by Checkdasnicht
Kann man bestimmt , aber ich hab davon 0 ahnung , bräuchte ein bischen hilfe =)
|
Habs jetzt zwar nicht getestet, aber ich würds erstmal so versuchen:
Im Grunde muss immer NTBotGame mit MWBotGame ersetzt werden.
Erstelle einen neuen EntryPoint: diesen nennen wir einfach mal: FriendLessLeech.ntj; diesen fügen wir bei D2NT/scripts ein.
Code:
// ====================================================================================================
// v THIS IS THE JUNK YOU'LL WANT TO EDIT v
// Frendless leech starter setting (set to run with op gotv channel bot by default there will be no help on changing this)
// ====================================================================================================
var gamenames = ["EamPleGameWithouTTHENumbers-"]; // Game name to search for (CASE-SENSITIVE)
var gamepasswords = ["ExAmPlePassword"]; // Password for that game.
var maxRetriesPerGame = 3; // The # of times to try rejoining a *unique* game
var maxRetries = 3; // The # of *different* games to try joining, if all attempts fail, bot will exit to character selection screen and rejoin lobby
// ====================================================================================================
var gameMinLength = 180000; // time in milliseconds, minimum game length, 180 seconds default (1 game/3 minutes)
var unableToConnectRetry = 5; // time in minutes to retry connecting on connection fail (real value is +/- 1 min)
var realmDownRetry = 260; // time in minutes to retry connecting on a realm down (default is 120 minutes)
var disconnectedRetry = 5; // time in minutes to retry on a disconnection (usually ip ban related)
var cdkeyInUseRetry = 1; // time in minutes to retry on a cdkey in use error message (set to 0 to stop)
var connectingToBnetTimeout = 20000; // time in milliseconds to wait for a login to time out and click cancel and retry
var characterScreenTimeout = 5000; // time in milliseconds to wait for character screen to appear
var pleaseWaitTimeout = 2000; // time in milliseconds to wait for a please wait popup
var createGameThreshold = 2000; // time in milliseconds to wait between making games
var createGameThresholdRandom = 500; // time in milliseconds to randomly add +/- to the game create time
var createGameTimeout = 15000; // time in milliseconds to register a failed to create game
var waitInLineTimeout = 60000; // time in milliseconds to wait in lines for a create game (60 second default)
var characterSelectDelay = 1000; // time in milliseconds to wait before selecting a character on the char screen
var loginDelay = 1000; // time in milliseconds to wait before submitting login information
var clickDelay = 500; // wait X milliseconds before next action after a click event
var textDelay = 500; // wait X milliseconds before next action after inserting text into a textbox
var clickDelayRandom = 500; // random amount of time to add to a click
var textDelayRandom = 500; // random amount of time to add to a text set
var gameDoesNotExistDelayMin = 1000; // how long to wait when a Game Does Not Exist occurs - minimum - default 10 minutes
var gameDoesNotExistDelayMax = 2000; // how long to wait when a Game Does Not Exist occurs - maximum - default 15 minutes
var gameDoesNotExistTimeout = 50; // how long to wait for the dialog to disappear (default 30 seconds, don't change this)
var waitBeforeEnterChatMin = 1000; // min how long to wait before entering chat
var waitBeforeEnterChatMax = 2000; // max how long to wait before entering chat
var waitInChatBeforeActionsMin = 1000; // min how long to wait before joining channel
var waitInChatBeforeActionsMax = 2000; // max how long to wait before joining channel
// DONT EDIT ANYTHING BELOW THIS
var extrafilters = ["New game ", " started by"]; // The 2nd filter should be whatever the bot manager says right after the game name
// If the 2nd filter is empty, the rest of the line is used as the game name
var joinChannelInChat = "op gotv"; // leave blank to not join a private channel
// D2NT Manager Command
const D2NT_MGR_LOADING = 1;
const D2NT_MGR_READY = 2;
const D2NT_MGR_LOGIN = 3;
const D2NT_MGR_CREATE_GAME = 4;
const D2NT_MGR_INGAME = 5;
const D2NT_MGR_RESTART = 6;
const D2NT_MGR_CHICKEN = 7;
const D2NT_MGR_PRINT_STATUS = 8;
const D2NT_MGR_PRINT_LOG = 9;
var lastGameMade = GetTickCount();
var nextGameMake = 0;
var inGameAt = 0;
var chatActionsDone = false;
var lastGameStatus = 0; // 0 = OK, 1 = Processing, 2 = Ready for retry
var game = "";
var gamepassword = "";
var retry = 0;
var fullretry = maxRetries;
var samegame = new Array(gamenames.length); // Empty array for however many runs you might be following (default 6)
Include("libs/controlInfo.ntl");
Include("libs/common/NTColorConverter.ntl");
var controlData = new controlInfo();
function NTMain()
{
Delay(1000);
var _ingame = false;
controlData.clickDelay = clickDelay;
controlData.textDelay = textDelay;
controlData.clickDelayRandom = clickDelayRandom;
controlData.textDelayRandom = textDelayRandom;
while (1)
{
if (me.ingame)
{
if (!inGameAt)
inGameAt = GetTickCount();
if (!_ingame)
{
RunGC(); // run garbage collector between each game
if (Load("NTBot/MWBotGame.ntj"))
{
_ingame = true;
if (me.playtype > 0)
sendEventToOOG(D2NT_MGR_INGAME, "In Game.. [IP:" + me.gameserverip.split(".")[3] + "]", 0);
else
sendEventToOOG(D2NT_MGR_INGAME, "In Game..", 0);
fullretry = maxRetries;
lastGameStatus = 0;
game = "";
}
}
Delay(1000);
}
else
{
Delay(500);
if (_ingame)
{
_ingame = false;
// --------------------------
// Prevent NT from closing D2
// --------------------------
// Wait for lobby or lobby chat
var _location;
do
{
_location = controlData.getLocation();
Delay(50);
}
while (_location.id != 3 && _location.id != 1);
if (_location.id == 3) // Lobby Chat
{
// We need to go somewhere besides the lobby chat so NT can type crap and think its creating a game
Delay(100);
Say("/join " + getRandomString(Random(3,10)));
Delay(1000);
}
sendEventToOOG(D2NT_MGR_CREATE_GAME, _location.name, 0);
outputGameLength();
setNextGameMake();
// --------------------------
sendEventToOOG(D2NT_MGR_READY, "", 0);
}
locationAction(controlData.getLocation());
Delay(500);
}
}
}
function locationAction(location)
{
switch (location.id)
{
case 3: // Lobby Chat
// Not retrying anymore, clear the game name so that if user tries to do it themself, bot won't fill in with old game
if (lastGameStatus == 0 || retry == 0)
{
// Clear these flags just in case
retry = 0;
game = "";
}
// Handle non-existent or full games:
// When the join button is hit, lastGameStatus = 1.
// When in-game, lastGameStatus = 0.
// So this gets executed when NTMain() doesn't reset the flag to 0.
if (lastGameStatus == 1)
{
if (fullretry == 0) // If we have tried [maxRetries] different games ([maxRetriesPerGame] retries for each game)
{
lastGameStatus = 0;
fullretry = maxRetries;
// We need to close out of chat and come back
sendEventToOOG(D2NT_MGR_PRINT_LOG, COLOR_1 + "Game doesn't exist or its full. Rejoining chat.", 0);
controlData.click(controlData.controls.lobby.button.quit);
}
else
{
lastGameStatus = 2; // Ready for retry
if (retry == 0) // If we just failed [maxRetriesPerGame] times for joining this game
fullretry--; // Update flag
sendEventToOOG(D2NT_MGR_PRINT_LOG, COLOR_1 + "Game doesn't exist or its full. " + retry + " retries left.", 0);
inGameAt = Random(gameDoesNotExistDelayMin, gameDoesNotExistDelayMax);
setNextGameMake();
chatActionsDone = true; // Undo the flag set by setNextGameMake()
locationTimeout(gameDoesNotExistTimeout, location);
}
break;
}
if (!chatActionsDone || GetTickCount() > nextGameMake + 180000) // Need to join channel or its been 3 minutes and no action, possibly kicked from channel, rejoin
{
if (GetTickCount() > nextGameMake + 180000) // Reset this so that we don't keep joining channel over and over
nextGameMake = GetTickCount();
chatActionsDone = true;
Delay(Random(waitInChatBeforeActionsMin, waitInChatBeforeActionsMax));
Say("/join " + joinChannelInChat);
Delay(1000);
sendEventToOOG(D2NT_MGR_PRINT_LOG, "Looking for games..", 0);
}
// Time for action?
if (GetTickCount() >= nextGameMake)
{
sendEventToOOG(D2NT_MGR_PRINT_STATUS, location.name, 0);
// If we can retry and there is a game to retry
if (retry > 0 && game != "" && lastGameStatus == 2)
{
controlData.click(controlData.controls.lobby.button.join);
retry--;
break;
}
var chat = controlData.get(controlData.controls.lobby.chat.textBox.channelText);
if (chat)
{
var linewithname = "";
lines = chat.GetText();
if (lines)
{
for (var line = 0; line < lines.length; line++)
{
linewithname = lines[line];
for (var _filterindex = 0; _filterindex < extrafilters.length; _filterindex += 2)
{
// Check filters
if (linewithname.lastIndexOf(extrafilters[_filterindex]) != -1 && linewithname.lastIndexOf(extrafilters[_filterindex+1]) != -1)
{
for (var _gameindex = 0; _gameindex < gamenames.length; _gameindex++)
{
// Check for game name
var index = linewithname.lastIndexOf(gamenames[_gameindex]);
if (index > -1)
{
game = linewithname.substring(index, linewithname.lastIndexOf(extrafilters[_filterindex+1]));
gamepassword = gamepasswords[_gameindex];
if (game != "" && game != samegame[_gameindex])
{
sendEventToOOG(D2NT_MGR_PRINT_LOG, "Joining " + game + "..", 0);
samegame[_gameindex] = game;
controlData.click(controlData.controls.lobby.button.join);
retry = maxRetriesPerGame;
break;
}
}
}
}
}
}
}
}
}
else
sendEventToOOG(D2NT_MGR_PRINT_STATUS, location.name + " (" + parseInt((nextGameMake-GetTickCount())/1000) + "s)", 0);
break;
case 1: // Lobby
// Enter chat
Delay(Random(waitBeforeEnterChatMin, waitBeforeEnterChatMax));
controlData.click(controlData.controls.lobby.button.enterChat);
break;
case 2: // Waiting In Line
if (GetTickCount()-lastGameMade > waitInLineTimeout)
controlData.click(controlData.controls.lobby.inLine.button.cancel);
break;
case 4: // Create Game
break;
case 5: // Join Game
if (game != "")
{
sendEventToOOG(D2NT_MGR_PRINT_STATUS, location.name, 0);
controlData.setText( controlData.controls.lobby.join.editBox.gameName, game);
Delay (1250);
controlData.setText( controlData.controls.lobby.join.editBox.password, gamepassword);
Delay (1250);
controlData.click(controlData.controls.lobby.join.button.joinGame);
}
lastGameMade = GetTickCount();
lastGameStatus = 1;
break;
case 6: // Ladder
break;
case 7: // Channel List
break;
case 8: // Main Menu
if (controlData.getCurrentRealmIndex() == me.gatewayid)
{
outputGameLength();
controlData.click(controlData.gameTypes[me.playtype]);
}
else
controlData.click(controlData.controls.mainMenu.button.gateway);
break;
case 9: // Login
sendEventToOOG(D2NT_MGR_PRINT_STATUS, location.name, 0);
Delay(loginDelay);
controlData.setText(controlData.controls.login.editBox.accountName, me.account);
sendEventToOOG(D2NT_MGR_LOGIN, location.name, 0);
locationTimeout(5000, location);
break;
case 10: // Login Error (this is a fatal error, so stop)
sendEventToOOG(D2NT_MGR_RESTART, location.name, 10);
Delay(3500);
break;
case 11: // Unable To Connect
timeoutDelay(unableToConnectRetry*60*1000, location)
controlData.click(controlData.controls.login.unableToConnect.button.ok);
break;
case 12: // Character Select
var _time, _control;
sendEventToOOG(D2NT_MGR_PRINT_STATUS, location.name, 0);
for (_time = 0; _time < characterScreenTimeout; _time += 500)
{
_control = controlData.get(controlData.controls.characterSelect.textBox.characterInfo[me.charloc]);
if (_control && _control.GetText() != undefined)
break;
Delay(500);
}
if (_time < characterScreenTimeout)
{
Delay(characterSelectDelay);
controlData.click(controlData.controls.characterSelect.textBox.characters[me.charloc], 0, 0, 1);
controlData.click(controlData.controls.characterSelect.textBox.characterInfo[me.charloc], 0, 0, 1);
// reset last game made, so it doesnt make a game immediately
inGameAt = 0;
setNextGameMake();
}
else
{
controlData.click(controlData.controls.characterSelect.button.exit);
timeoutDelay(realmDownRetry*60*1000, location);
}
break;
case 13: // Realm Down - Character Select screen
controlData.click(controlData.controls.characterSelect.button.exit);
timeoutDelay(realmDownRetry*60*1000, location);
break;
case 14: // Character Select - Disconnected
timeoutDelay(disconnectedRetry*60*1000, location);
controlData.click(controlData.controls.characterSelect.disconnected.button.ok);
break;
case 15: // New Character
break;
case 16: // Character Select - Please Wait popup
if (!locationTimeout(pleaseWaitTimeout, location))
controlData.click(controlData.controls.characterSelect.pleaseWait.button.cancel);
break;
case 17: // Lobby - Lost Connection - just click okay, since we're toast anyway
controlData.click(controlData.controls.lobby.lostConnection.button.ok);
break;
case 18: // D2 Splash
controlData.click(controlData.controls.d2Splash.textBox.copyright);
break;
case 19: // Login - Cdkey In Use
timeoutDelay(cdkeyInUseRetry*60*1000, location);
controlData.click(controlData.controls.login.cdkeyInUse.button.ok);
break;
case 20: // Single Player - Select Difficulty
controlData.click(controlData.singlePlayerDifficulties[me.diff]);
break;
case 21: // Main Menu - Connecting
if (!locationTimeout(connectingToBnetTimeout, location))
controlData.click(controlData.controls.mainMenu.connecting.button.cancel);
break;
case 22: // Login - Invalid Cdkey (classic or xpac)
sendEventToOOG(D2NT_MGR_RESTART, location.name, 3600);
Delay(3500);
break;
case 23: // Character Select - Connecting
if (!locationTimeout(characterScreenTimeout, location))
controlData.click(controlData.controls.characterSelect.button.exit);
break;
case 24: // Server Down - not much to do but wait..
break;
case 25: // Lobby - Please Wait
if (!locationTimeout(pleaseWaitTimeout, location))
controlData.click(controlData.controls.lobby.pleaseWait.button.cancel);
break;
case 26: // Lobby - Game Name Exists
sendEventToOOG(D2NT_MGR_PRINT_LOG, COLOR_1 + "Game already exists.", 0);
inGameAt = 0;
setNextGameMake();
locationTimeout(15000, location);
break;
case 27: // Gateway Select
controlData.clickRealmEntry(me.gatewayid);
controlData.click(controlData.controls.gateway.button.ok);
break;
case 28: // Lobby - Game Does Not Exist
// This is handled in the lobby chat
// Get rid of the message (DNE/Full game) so the lobby chat can handle
controlData.click(controlData.controls.lobby.button.create);
Delay(200);
controlData.click(controlData.controls.lobby.create.button.cancel);
break;
default:
break;
}
}
function sendEventToOOG(locationId, statusString, pendingTime)
{
return SendCopyData("D2NT Manager", null, (locationId<<16)|pendingTime, statusString);
}
function setNextGameMake()
{
lastGameMade = GetTickCount();
nextGameMake = lastGameMade + createGameThreshold + Random(0-createGameThresholdRandom, createGameThresholdRandom) + inGameAt;
inGameAt = 0;
chatActionsDone = false;
}
function outputGameLength()
{
if (inGameAt)
{
duration = GetTickCount() - inGameAt;
inGameAt = (duration < gameMinLength ? gameMinLength - duration : 0);
}
}
function locationTimeout(time, location)
{
endtime = GetTickCount() + time;
while (controlData.getLocation().id == location.id && endtime > GetTickCount())
{
sendEventToOOG(D2NT_MGR_PRINT_STATUS, location.name + " (" + parseInt((endtime-GetTickCount())/1000) + "s)", 0);
Delay(500);
}
return (controlData.getLocation().id != location.id);
}
function timeoutDelay(time, location)
{
endtime = GetTickCount() + time;
while (endtime > GetTickCount())
{
sendEventToOOG(D2NT_MGR_PRINT_STATUS, location.name + " (" + parseInt((endtime-GetTickCount())/1000) + "s)", 0);
Delay(1000);
}
}
function getRandomString(_length)
{
_retString = "";
_charSet = "0123456789abcdefghijklmnopqrstuvwxyz";
while (_length--)
{
_retString += _charSet.charAt(Random(0, _charSet.length-1));
Delay(1);
}
return _retString;
}
|
|
|
01/21/2012, 23:23
|
#5372
|
elite*gold: 0
Join Date: Jul 2010
Posts: 213
Received Thanks: 36
|
eine einzige frage habe ich noch^^
ich hab jetzt das leader-leech gespann zum laufen gekriegt, und es funktioniert auch alles super. der einzige fehler der jedes mal auftritt, is das der leecher nach jedem run das game neustartet.
hat jemand schonmal ein ähnliches problem gehabt?
|
|
|
01/21/2012, 23:48
|
#5373
|
elite*gold: 0
Join Date: Jan 2009
Posts: 7,310
Received Thanks: 2,205
|
Quote:
Originally Posted by prrovoss
eine einzige frage habe ich noch^^
ich hab jetzt das leader-leech gespann zum laufen gekriegt, und es funktioniert auch alles super. der einzige fehler der jedes mal auftritt, is das der leecher nach jedem run das game neustartet.
hat jemand schonmal ein ähnliches problem gehabt?
|
1. möglichkeit -> im manager sollte ne 0 bei game drinn stehn wenn du nur einen key hast
2. möglichkeit -> UseCDKeyChangeTrick = true; // Set to true to use multiple CD Keys
in der ntbot leech (sollte immer auf true sein)
|
|
|
01/22/2012, 00:01
|
#5374
|
elite*gold: 0
Join Date: Jul 2010
Posts: 213
Received Thanks: 36
|
Quote:
Originally Posted by kal_el
1. möglichkeit -> im manager sollte ne 0 bei game drinn stehn wenn du nur einen key hast
2. möglichkeit -> UseCDKeyChangeTrick = true; // Set to true to use multiple CD Keys
in der ntbot leech (sollte immer auf true sein)
|
zu 1: habe 5 keys. der leader läuft mit 3-5 und der leecher mit 1+2
zu 2: ich werds mal ausprobieren, danke (was bewirkt der CDKeyChangeTrick?)
|
|
|
01/22/2012, 00:44
|
#5375
|
elite*gold: 0
Join Date: Jul 2006
Posts: 469
Received Thanks: 235
|
Quote:
Originally Posted by prrovoss
hi,
ist es irgendwie möglich den bot kleine regenerations tränke cuben zu lassen?
|
Das müsste durchaus möglich sein. Da auch für Gems 3 mal das selbe Item gecubt wird, müsst es eigentlich hiermit gehen, aber keine Garantie, ich mags ez gerade nicht testen:
Code:
NTConfig_CubingItem.push([NTCU_GEM, 78]); // Rejupots = 78
|
|
|
01/22/2012, 01:34
|
#5376
|
elite*gold: 20
Join Date: Mar 2010
Posts: 289
Received Thanks: 22
|
Hab alles so gemacht wie du es geschrieben hast mirkoregge , aber bei mir will es nich klappen , würdest du mich vll per Teamspeak unterstützen ? Ich krieg das irgwie alleine nich hin, obwohl ich mich jetzt echt ewig eingelessen/durchgelesen habe , videos angeschaut hab , aber es will einfach nich so klappen wie es sollte .
mfg
|
|
|
01/22/2012, 01:35
|
#5377
|
elite*gold: 0
Join Date: Jan 2009
Posts: 7,310
Received Thanks: 2,205
|
Quote:
Originally Posted by prrovoss
zu 1: habe 5 keys. der leader läuft mit 3-5 und der leecher mit 1+2
zu 2: ich werds mal ausprobieren, danke (was bewirkt der CDKeyChangeTrick?)
|
Code:
(UseCDKeyChangeTrick){
// increasing the number of runs in the OOG (for CDKey switch)
// Problem : the gamename/gamepassword set in your OOG will be typed in the lobbyChat
// this may output a red message in the lobby chat if you have a password set (not a real problem)
// I recommend to set a gamename like "Run" and no gamepassword in your OOG. -> this will output "Run-01", "Run-02", etc in lobby chat before joining games
;
du kannst, wenn du nicht willst das der leecher was in den chat schreibst, einfach bei room name eintragen: /f z.B das erzeugt ne fehlermeldung im chat die nur du siehst
oder eben so
Quote:
this may output a red message in the lobby chat if you have a password set
|
|
|
|
01/22/2012, 01:47
|
#5378
|
elite*gold: 0
Join Date: Jul 2010
Posts: 213
Received Thanks: 36
|
ja stimmt der fehlerhafte command is mir auch schon aufgefallen aber naja, was juckt mich das wenn der bot vor jedem run einen falschen command eingibt
|
|
|
01/22/2012, 14:10
|
#5379
|
elite*gold: 0
Join Date: Jan 2012
Posts: 13
Received Thanks: 0
|
Automule
Am i correct when i do this?
Situation: 2x mf bot, wanting they use 2x automule.
MF1 stashes on MULE1
MF2 stashes on MULE2
Code:
Code:
function NT_LoadMuleConfig()
{
var _newMule;
Automule.MuleIsFullThreshold = 0.90;
switch(me.account.toLowerCase())
{
//------------------------------------------------------------------------------
// Full account sample - Copy the below case if you'd like to assign a full mule account to your bot char.
// Note: you have to create both the account and the mules yourself before using them for auto mule.
//
[case "mf1": // <-- Enter your bot's account name here. (lower case only!)
Automule.GameName = "SomeGameName"; // Enter the name of your mule game here. Note: don't use the same game for multiple bot chars.
Automule.GameNamePassword = "SomePassword"; // Enter the password of your mule game here.
for(var i = 0; i < 8; i++)
{
_newMule = new Mule(); // Create a new mule object. (no need to change anything here)
_newMule.Account = "MULE1"; // Enter the name of your mule account here.
_newMule.Password = "MULE1"; // Enter the password for your mule account here.
_newMule.NipFiles.push("mule/all.nip"); // Enter any number of mule paths here.
_newMule.CharLoc = i; // Enter the the mule's location here. Check the FAQ if you don't know what this is about.
Automule.Mules.push(_newMule); // Add the mule you just created. (no need to change anything here)
}
break;
case "mf2": // <-- Enter your bot's account name here. (lower case only!)
Automule.GameName = "SomeGameName"; // Enter the name of your mule game here. Note: don't use the same game for multiple bot chars.
Automule.GameNamePassword = "SomePassword"; // Enter the password of your mule game here.
for(var i = 0; i < 8; i++)
{
_newMule = new Mule(); // Create a new mule object. (no need to change anything here)
_newMule.Account = "MULE2"; // Enter the name of your mule account here.
_newMule.Password = "MULE2"; // Enter the password for your mule account here.
_newMule.NipFiles.push("mule/all.nip"); // Enter any number of mule paths here.
_newMule.CharLoc = i; // Enter the the mule's location here. Check the FAQ if you don't know what this is about.
Automule.Mules.push(_newMule); // Add the mule you just created. (no need to change anything here)
}
break;
is this correct? with better spacings etc then
|
|
|
01/22/2012, 15:19
|
#5380
|
elite*gold: 0
Join Date: Sep 2011
Posts: 16
Received Thanks: 0
|
warum steht bei dem nt manager [AM]:status not ready!
?immer wenn ich bot starten will
|
|
|
01/22/2012, 15:37
|
#5381
|
elite*gold: 0
Join Date: Jan 2009
Posts: 3,170
Received Thanks: 1,191
|
sieh es als Bestätigung, dass dein Automule nicht konfiguriert ist AM=AutoMule
|
|
|
01/22/2012, 15:49
|
#5382
|
elite*gold: 0
Join Date: Sep 2011
Posts: 16
Received Thanks: 0
|
kann mir da mal jemand seine vorlage geben?weiss bei mehreren stellen nicht was genau da hin soll
"your_bot's_lower_case_account_name_goes_here" : // <-- Enter your bot's account name here. (lower case only!)
Automule.GameName = "SomeGameNameI"; // Enter the name of your mule game here. Note: don't use the same game for multiple bot chars.
Automule.GameNamePassword = "SomePasswordI"; // Enter the password of your mule game here.
_newMule = new Mule(); // Create a new mule object. (no need to change anything here)
_newMule.Account = "YourMuleAccNameGoesHere"; // Enter the name of your mule account here.
_newMule.Password = "YourMuloePWGoesHere"; // Enter the password for your mule account here.
_newMule.NipFiles.push("mule/all.nip"); // Enter any number of mule paths here.
_newMule.CharLoc = 0; // Enter the the mule's location here. Check the FAQ if you don't know what this is about.
Automule.Mules.push(_newMule); // Add the mule you just created. (no need to change anything here)
_newMule = new Mule(); // Create a new mule object. (no need to change anything here)
_newMule.Account = "YourOtherMuleAccNameGoesHere"; // Enter the name of your mule account here.
_newMule.Password = "YourOtherMulePWGoesHere"; // Enter the password for your mule account here.
_newMule.NipFiles.push("mule/all.nip"); // Enter any number of mule paths here.
_newMule.CharLoc = 1; // Enter the the mule's location here. Check the FAQ if you don't know what this is about.
Automule.Mules.push(_newMule); // Add the mule you just created. (no need to change anything here)
break;
|
|
|
01/22/2012, 16:10
|
#5383
|
elite*gold: 0
Join Date: Jul 2006
Posts: 469
Received Thanks: 235
|
Quote:
Originally Posted by tradeforfun
kann mir da mal jemand seine vorlage geben?weiss bei mehreren stellen nicht was genau da hin soll
|
Natürlich ich geb dir die Accs samt PWs
Code:
"your_bot's_lower_case_account_name_goes_here": // Hier schreibst du den Accountnamen deines Bot chars (alles kleine buchstaben!)
Automule.GameName = "SomeGameNameI"; // Das ist der Name des Spiels indem er Mulen soll
Automule.GameNamePassword = "SomePasswordI"; // Das ist das PW des Spiels indem er mult
_newMule = new Mule(); // Hier brauchst du nix zu ändern
_newMule.Account = "YourMuleAccNameGoesHere"; //Das ist der Account Name des Mule Accounts
_newMule.Password = "YourMulePWGoesHere"; // Das ist das PW für eben genau den Account
_newMule.NipFiles.push("mule/all.nip"); // Das ist der Pfad zu den Nip files (welche Items auf den Mule soll)
_newMule.CharLoc = 0; // Das ist die Position des Chars im Charakter Auswahl Fenster (0 links oben 1 rechts oben,... 7 rechts unten)
Automule.Mules.push(_newMule); // Brauchst du nich zu ändern
|
|
|
01/22/2012, 16:39
|
#5384
|
elite*gold: 0
Join Date: Sep 2011
Posts: 16
Received Thanks: 0
|
danke,nun ist aber das problem dass er einfach so die items droppt wenn eigentlich game leaven sollte und mule game machen sollte
auserdem droppt der bot nichts vom stash sondern nur inventar
|
|
|
01/22/2012, 17:20
|
#5385
|
elite*gold: 0
Join Date: Jul 2006
Posts: 469
Received Thanks: 235
|
Das Mulen funktioniert schon wenn du's korrekt eingestellt hast. Du musst aber wissen, dass der Bot nur sachen mult die auch in deinen nip files stehen. Wenn du in der Truhe also was hast was du "manuell" aufgehoben hast aber gar nicht in den nip files vorkommt, dann wird der Bot die Sachen einfach in der Truhe lassen. Das soll verhindern, dass der Bot was droppt was er nicht sollte / nachher nicht mehr aufhebt
|
|
|
|
|
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 +2. The time now is 20:29.
|
|