Register for your free account! | Forgot your password?

You last visited: Today at 00:42

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Leechbot auf NT basis

Discussion on Leechbot auf NT basis within the Diablo 2 Programming forum part of the Diablo 2 category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Jun 2009
Posts: 724
Received Thanks: 43
Lightbulb Leechbot auf NT basis

hi!

also ich habe euch ja die tage ganz schön durchlöchert mit fragen um den nt bot *g*

möchte euch natürlich nicht vorenthalten was dabei raus gekommen ist.

aber zu aller erst möchte ich euch vorwarnen: es ist nicht so schön wie bei so manch anderen hier ^^ ich habe mir teilweise sehr praktisch geholfen und naja, .... ich hoffe es ist trotzdem für euch nachvollziehbar und ich stoße auf euer interesse


nun gut hier erstmal der DL link:



(vll kann den jemand hier hoch laden, weil der dl ist auf 10 limitiert :/)


jetzt zur erklärung:

im großen und ganzen müsst ihr bloß die dateien mit denen aus eurem NT moddet ordner ersetzten! (version 1.5!!!)

zur starter:

also ich habe dank nojmnojmnojm die 1.5er starter mit der 1.8er joinbot starter verbinden können. (zur zeit noch keinen bann, trotz intensiver testes!) ich denke das sollte sich auch so halten, da nur die starter umgeschrieben wurde, keine dll oder ähnlich!

Pub.Diablo:

die gehört hier hin: NT modded - Kopie\scripts\bots (ersetzten!) dadurch wird euer diablo run zu einem Leech-baal-run

nat. müsst ihr diese auch in der char config aktivieren ( die // vor dem pub. diablo weg machen)


JoinBot und control. ntl:

die hier einfach ersetzten / hinzufügen:

NT modded - Kopie\scripts\libs


NTBotGame:

hinzufügen / ersetzten: NT modded - Kopie\scripts


Was das eigtl ist:


also, da die leechbots der reihe nach nicht bei mir klappen musste abhilfe geschafft werden *g*

ich habe nojmnojmnojm angeschrieben und gefragt ob er/sie (was bist du eigtl^^?) nicht eine idee hat. kurz darauf erhielt ich antwort und so hat er/sie mir den link von einem älteren thread geschrieben, wo der joinbot vorgestellt wird.

was ich davon wollte war hauptsächlich die starter und was ich mit der starter gemacht habe, steht ja oben ^^.
als nächstes musste ich dem bot i-wie klar machen, das er nicht selber monster killen geht, sondern meinem pala folgt.

ich stieß auf das bodygurad topic


das script von kalel entwas verändert (zb das der leecher nach der heilung zu der tp stelle geht und sich nicht im aus von malah verirrt, oder das der leecher nicht direkt in die waves rein rennt sonder auf möglichst großem abstand bleibt wenn er durch das portal geht.

klingt jetzt alles nicht so arbeitsaufwendig, aber ich hab mich damit noch nie zuvor befasst^^ und wärend ich getestet habe sind auch viele dinge aufgetaucht die eigtl niemand braucht.


was mir grade einfällt:

damit die leecher nicht von monstern gekillt werden die der pala beim tp erstellen übersieht solltet ihr in der publicbaal.ntj volgendes ändern:

zeile 86/87:

NT_ClearThroneInt(); // einfach hinzufügen
NTA_ClearPosition(20, 0x04)


---> der thorne wird erst gesäubert, dann wird tp erstellt




was wichtig ist:

wie ihr sehen könnt habe ich einfach eine kopei von meinem moddet nt ordner gemacht und dort dann alles geändert. würde dies euch auch empfehlen, da ihr einen eigenen baalbot braucht, der einen normalen public baal run macht, also selber das spiel erstellt. bei mir hat sich kuk und nt gleichzeitig auf einem system nicht so gut vertragen :/ deswegen lasse ich aufm lappi den baalbot laufen und aufm desktop die leecher.

den nt manager zwei mal starten (einmal mit normaler starter aus dem origianlordner und einmal aus dem neuen mit joinfuktion starter) auf einem system ist problematisch, da die sich i-wie verkaspern :/


edit:

durch die ganzen teste habe ich es einfach vergessen LOL
die leech chars müssen auf einem egnlischen diablo laufen!!! sonst kann der bot die f-liste nicht korrekt auslesen und den leader erkennen!

thx an Mart1x welcher danach gefragt hat und mich auf die idee gebracht hat nice1


wie ihr den einstellt:



geht hier hin: NT modded - Kopie\scripts\libs

öffnet die joinbot.ntl:

// Leader Account settings
var JoinFromChat = true;
var leaderAccountName = "ACCOUNT";
var leaderName = "CHARNAME";
var gamepassword = "EurerPasswort" // euch überlassen, wenn ihr kein pw haben wollt einfach leer lassen ( so wie es da steht ist euer passwort im moment EUERPASSWORT

einstellen, speichern, fertig



der bot wird natürlich normal über den manager gestartet.

die zeile wo ihr den game namen eingebt (im manager) könnt ihr ignorieren


Zur zeit schreiben die leecher in den chat wie das nächste game und passwort heißt! In einem der deutschen chats!

wie ihr das umstellt :


in der starter: zeile 25: einfach dne chät in irgendwas uninteressantes ändern(zb: op eliteboobs) . so bekommen niemand mit wie die games heißen.


das wars soweit!


habt spaß und so



danke an nojmnojmnojm und kalel für ihren input




ps: atm läufen die bots wie ein schweizer uhrwerk richtig gut und flüssig
MrTorture is offline  
Thanks
2 Users
Old 02/28/2010, 18:26   #2
 
kal_el's Avatar
 
elite*gold: 0
Join Date: Jan 2009
Posts: 7,310
Received Thanks: 2,205
kannst ihn hier auch selber hochladen... geh auf erweitert und dann auf anhänge.. 10 mb passen da rein.

rapidshare geht noch?

thx and good luck
kal_el is offline  
Thanks
1 User
Old 02/28/2010, 19:01   #3
 
elite*gold: 0
Join Date: Jun 2009
Posts: 724
Received Thanks: 43
Exclamation

hier dann der epvp dl link


danke


edit: noch was, bitte schickt mir nicht alle ne PM ^^ lasst uns die fragen hier klären, so bleibt das für die nachwelt auch erhalten ^^ und ich muss nicht alles 10 mal erkären :P


an die, die shcon testen:

ich wäre sehr dankbar wenn ihr mir sagen könnt, ob jeder char bei euch den leader aus der f-liste erkennt :/

ich finde einfach kein schema raus warum zb. mein baba jetzt garnicht mehr die f-liste richtig auslesen kann -.-

edit: hat sich geklärt, diablo lief nicht auf englisch -.-
Attached Files
File Type: rar NT joinBot 1.5 (leech).rar (11.8 KB, 65 views)
MrTorture is offline  
Old 02/28/2010, 22:02   #4
 
elite*gold: 0
Join Date: Dec 2009
Posts: 79
Received Thanks: 0
Also das habe ich dir schon als PN geschrieben aber kanns auch gerne hier noch porsten.

Geht alles er joint etc doch er telt in den rechten gang vom Thron also total weg vom rest ????
matr1x is offline  
Old 03/01/2010, 14:27   #5
 
elite*gold: 0
Join Date: Jun 2009
Posts: 724
Received Thanks: 43
ja das liegt daran, das ich in dem bodyguard script die entfernung zum leader auf möglichst groß gestellt habe und nun der leecher versucht vom leader weg zu kommen.

nehm einfach enigma raus dann sollte der leecher einfach in die nächste ecke gehn (so läufts von mir)
MrTorture is offline  
Old 03/01/2010, 19:50   #6
 
kal_el's Avatar
 
elite*gold: 0
Join Date: Jan 2009
Posts: 7,310
Received Thanks: 2,205
ja wenn der leecher ein reiner leecher sein soll, und kein mitkämpfer, dann musst doch einfach nur die attacke rausnehmen..so das er nimmer angreift.
ok ok.. aber hinterhertelen würde er dann immer noch..
na ok...dann musst eben das hinterhertelen rausnehmen..dann steht er doch nur rum nachdem er durchs tp is oder?
kal_el is offline  
Old 03/01/2010, 20:16   #7
 
elite*gold: 0
Join Date: Jun 2009
Posts: 724
Received Thanks: 43
kann sein, aber ich wollte mir das möglichst einfach offen halten, den als co baal um zu funktionieren ^^

und eni an/ausziehn und eben die range zum leader ändern, ist mit abstand das einfachste ^^

ist halt alles was einfach gemacht, aber es funktioniert trozdem ^^

was deluxe wäre, wenn der leecher dem leader ausm game folgen würde, aber da bin ich einfach überfragt
MrTorture is offline  
Old 03/05/2010, 17:50   #8
 
elite*gold: 0
Join Date: Feb 2010
Posts: 660
Received Thanks: 31
mein leechbot zeigt immer error an wenn ich starte i-was mit starter imo aber ka was hab deine datei einfach rein kopiert wäre sehr dankbar für hilfe
Snow_Junky is offline  
Old 03/05/2010, 20:02   #9
 
elite*gold: 0
Join Date: Jun 2009
Posts: 724
Received Thanks: 43
hast du den moddet d2nt bot version 1.5?
hast du einfach nur rein kopiert, oder auch in die einzelnen verzeichnisse im ordner selber?
hast du kopiert und ersetzt oder kopiert und die alte datei behalten?
MrTorture is offline  
Old 03/05/2010, 20:26   #10
 
elite*gold: 0
Join Date: Feb 2010
Posts: 660
Received Thanks: 31
y hab ich
Snow_Junky is offline  
Old 03/05/2010, 20:27   #11
 
elite*gold: 0
Join Date: Feb 2010
Posts: 660
Received Thanks: 31
wäre nice wenn du d2nt leechbot ordner eingestellt
hochladen würdest

hab d2ntbot 1.5 kopiert und neuen ordner erstellt alles rein
und dann die dateien gelöscht und ersetzt

hier mein starter :
Code:
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      = 120;      // 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      = 5;      // 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   = 10000;   // time in milliseconds to wait for character screen to appear
var pleaseWaitTimeout      = 10000;   // time in milliseconds to wait for a please wait popup
var createGameThreshold      = 5000;      // time in milliseconds to wait between making games
var createGameThresholdRandom   = 1000;      // 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   = 700;      // time in milliseconds to wait before selecting a character on the char screen
var loginDelay         = 600;      // 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   = 600000;   // how long to wait when a Game Does Not Exist occurs - minimum - default 10 minutes
var gameDoesNotExistDelayMax   = 900000;   // how long to wait when a Game Does Not Exist occurs - maximum - default 15 minutes
var gameDoesNotExistTimeout   = 30000;   // how long to wait for the dialog to disappear (default 30 seconds, don't change this)
var joinChatAfterGame      = true;   // join chat after leaving a game
var joinRandomChannel      = false;      // if this is true, will join a random channel, otherwise it will use the channel below..
var joinChannelInChat      = "op elitebaal";      // leave blank to not join a private channel
var waitBeforeEnterChatMin   = 3000;      // min how long to wait before entering chat
var waitBeforeEnterChatMax   = 9500;      // max how long to wait before entering chat
var waitInChatBeforeActionsMin   = 2500;      // min how long to wait before joining channel
var waitInChatBeforeActionsMax   = 7500;      // max how long to wait before joining channel

// DONT EDIT ANYTHING BELOW THIS

// 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 lastGameStatus = 0;
var nextGameMake = 0;
var inGameAt = 0;
var chatActionsDone = false;
var lastGameFailed = false;

Include("controlInfo.ntl");
Include("joinBotSettings.ntl");

var controlData = new controlInfo();

var game = '';

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)
         {
            if(Load("NTBotGame.ntj"))
            {
               _ingame = true;

               sendEventToOOG(D2NT_MGR_INGAME, "In Game", 0);
               lastGameStatus = 2; // in game successful
            }
         }

         Delay(1000);
      }
      else
      {
         if(_ingame)
         {
            _ingame = false;

            sendEventToOOG(D2NT_MGR_READY, "", 0);
         }

         locationAction(controlData.getLocation());

         Delay(500);
      }
   }
}

function locationAction(location)
{
   switch(location.id)
   {
  
   case 3: // Lobby Chat 
      if(!chatActionsDone) 
      { 
         chatActionsDone = true; 
         Delay(Random(waitInChatBeforeActionsMin, waitInChatBeforeActionsMax)); 
 
         if(joinRandomChannel || joinChannelInChat != "") 
         { 
            Say("/join " + (joinRandomChannel ? getRandomString(Random(3,10)) : joinChannelInChat)); 
            Delay(1000); 
         } 
      } 
 
      if(JoinFromChat){ 
         game = ''; 
         if (joinChannelInChat) 
            Say('join Evilbaal); 
         Delay (10000); 
         Say('/f l'); 
         Delay(500); 
         if(chat = controlData.get(controlData.controls.lobby.chat.textBox.channelText)) 
         { 
            var errors = ''; 
            var found_leader = false; 
            lines = chat.GetText(); 
            for (var friend = 0; friend < lines.length; friend++) 
            { 
               if (lines[friend].lastIndexOf(': '+leaderAccountName+',') > -1) 
               { 
                  game = ''; 
                  found_leader = true; 
                  var regOfflineEnglish=/^\d\s?:\s?(\w*)\s?,\s?offline\s*$/gi; 
                  var regGameNameEnglish=/^\s*(the\s)?(game\s)?([\w\s-]*\w)\s\(private\)\.\s*$/gi; 
                  var regGameNameFrench=/^\s*(la\s)?(partie\s)?([\w\s-]*\w)\s\(priv[^\)]*\)\.\s*$/gi; 
                  if (lines[friend].match(regOfflineEnglish)) 
                  { 
                     errors += (errors == '' ? '' : ' ') + 'leader is offline'; 
                     if (joinChannelInChat) 
                        Say('is offline, ich warte mal was'); 
                     Delay(18000); 
                  } 
                  if (lines[friend + 1].match(regGameNameEnglish) && lines[friend+1].substr(1, 1) != ':') 
                  { 
                     game = lines[friend + 1].replace(regGameNameEnglish, "$3"); 
                  } 
                  if (!game && lines[friend + 1].match(regGameNameFrench) && lines[friend+1].substr(1, 1) != ':') 
                  { 
                     game = lines[friend + 1].replace(regGameNameFrench, "$3"); 
                  } 
                  if (game != '') 
                  { 
                     if (joinChannelInChat) 
                        Say('SCHNELLE BaalRuns in game ' + game + 'Passwort = 1'); 
                     Delay(1000); 
                     controlData.click(controlData.controls.lobby.button.join); 
                     Delay (1000); 
                  } 
                  else 
                  { 
                     if(!errors) 
                     { 
                        errors = 'leader is not in game.'; 
                     } 
                  } 
               } 
            } 
            if (!found_leader && joinChannelInChat) 
            { 
               if (errors) 
                  Say('Errors : ' + errors); 
               else 
                  Say('Hab den nicht in meiner f liste'); 
               Delay(1500); 
            } 
         } 
         else 
         { 
            if (joinChannelInChat) 
               Say('hab nen problem mit dem chat oO'); 
            Delay(1500); 
         } 
          
      } 
      break; 
 
      
   case 1:   // Lobby
      if(location.id == 1 && joinChatAfterGame)
      {
         Delay(Random(waitBeforeEnterChatMin, waitBeforeEnterChatMax));
         controlData.click(controlData.controls.lobby.button.enterChat);
         break;
      }

      if(GetTickCount() > nextGameMake)
      {
         lastGameFailed = false;

         switch(lastGameStatus)
         {
         case 0:
            controlData.click(controlData.controls.lobby.button.create);
            nextGameMake = GetTickCount() + createGameTimeout; // set our timeout
            sendEventToOOG(D2NT_MGR_PRINT_STATUS, location.name, 0);
            break;
         case 1: // game failed, rollover to reset timer
            inGameAt = GetTickCount(); // reset inGameAt, to wait how long we should have waited..
            lastGameFailed = true;
         case 2:
            outputGameLength();
            lastGameStatus = 0;
            setNextGameMake();
            sendEventToOOG(D2NT_MGR_PRINT_STATUS, location.name, 0);
            break;
         }
      }
      else
         timeoutDelay(nextGameMake-GetTickCount(), location);
      break;

   case 2: // Waiting In Line
      if(GetTickCount()-lastGameMade > waitInLineTimeout)
         controlData.click(controlData.controls.lobby.inLine.button.cancel);
      break;

   case 4: // Create Game
        if(!controlData.get(controlData.controls.lobby.create.editBox.gameName))
        {
            controlData.click(controlData.controls.lobby.button.join);
            Delay (500);
            controlData.click(controlData.controls.lobby.button.create);
            Delay (500);
        }
      sendEventToOOG(D2NT_MGR_CREATE_GAME, location.name, 0);

      RunGC(); // run garbage collector between each game

      locationTimeout(5000, location);

      lastGameMade = GetTickCount();
      lastGameStatus = 1; // pending creation
      break;

   case 5: // Join Game
        if(!controlData.get(controlData.controls.lobby.join.editBox.gameName))
        {
            controlData.click(controlData.controls.lobby.button.create);
            Delay (1000);
            controlData.click(controlData.controls.lobby.button.join);
            Delay (1000);
        }
        if (game != '')
        {
            controlData.setText( controlData.controls.lobby.join.editBox.gameName, game);
            Delay (500);
            controlData.setText( controlData.controls.lobby.join.editBox.password, gamepassword);
            Delay (500);
            controlData.click(controlData.controls.lobby.join.button.joinGame);
            RunGC(); // run garbage collector between each game
            locationTimeout(5000, location);
            lastGameStatus = 1; // pending join
        }
      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
      RunGC(); // run garbage collector between each game

      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, "Game already exists", 0);

      inGameAt = 0;
      lastGameStatus = 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
      inGameAt = Random(gameDoesNotExistDelayMin, gameDoesNotExistDelayMax);
      lastGameStatus = 0;
      setNextGameMake();

      locationTimeout(gameDoesNotExistTimeout, location);
      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;
}
Snow_Junky is offline  
Old 03/06/2010, 11:28   #12
 
kal_el's Avatar
 
elite*gold: 0
Join Date: Jan 2009
Posts: 7,310
Received Thanks: 2,205
ned gut ...ned gut... 3 post in 10 min. gibt normalerweise nen warnschuss.
und ne ellenlage ini...ntj..oder irgendwas gehört in ne code box.
kal_el is offline  
Old 03/06/2010, 14:10   #13
 
elite*gold: 0
Join Date: Jun 2009
Posts: 724
Received Thanks: 43
Exclamation

junge junge^^

die anleitung ist doch echt möglichst easy geschrieben


hab jetzt den ganzen bot nochmal hochgeladen

bitte lest euch zur not auch mal den ersten post hier zwei mal durch, ich bekomme ständig fragen die ganu dort beantwortet werden ...

habe jetzt den kompletten ordner hochgeladen.

ich müsst nur noch in der joinbot.ntl euren leader eintragen und beim nt manager eurer eigenes profil erstellen ...

(ich setzte natürlich voraus das hier schonmal einen ntbot benutzt habt!!!)


und nochmal! schickt mir bitte nicht immer ne PM!!!!

das geht auf keinen fall schneller, weil ich nicht die ganze zeit auf eurer pm warte :P

wenn ihr hier einfach rein schreibt, dann können euch auch andere helfen
Attached Files
File Type: rar NT Modded LeechBot.rar (852.5 KB, 42 views)
MrTorture is offline  
Thanks
1 User
Old 03/07/2010, 19:43   #14
 
elite*gold: 0
Join Date: Jun 2009
Posts: 724
Received Thanks: 43
hoi! ich wieder :/

sagt mal, weiß einer evtl warum der bot nach ner weile im chat einfach nichts mehr macht?

der ist dann einfach tod, wie als wenn man pause drückt, aber ohne das ich es gemacht habe :/

das ist atm das einzigste problem, was mich davon abhält den über nacht laufen zu lassen :/

hab schonmal in der starter geschaut, aber mir ist nix aufgefallen was darauf hinweisen könnte
MrTorture is offline  
Old 03/07/2010, 20:29   #15
 
elite*gold: 0
Join Date: Feb 2010
Posts: 660
Received Thanks: 31
kann man iwo eintellen das er schneller joint? game is meistens voll bis bot im game
Snow_Junky is offline  
Reply


Similar Threads Similar Threads
Basis bauen?
01/29/2012 - General Gaming Discussion - 2 Replies
Hallo, ich habe mir jetz CoH und CoV im doppelpack geholt , bin stufe 10 und hab gehört ab dann kann man seine eigene Basis bauen , nun meine Frage , wie kann ich diese bauen? mfg. Enkard
Leechbot auf NT basis
02/02/2011 - Diablo 2 - 15 Replies
hi! ich wieder >< also es gibt ja jetzt zwei leechbots auf redvex basis (ao und den leechbot plugin für redvex) .... beide laufen einfach nicht bei mir aufm system -.- gibt es nicht auch einen auf nt basis? weil mit der komm ich bestens zurecht Heil NT :) :handsdown:
basis macro
02/27/2007 - Conquer Online 2 - 0 Replies
hi, i need ther best basis macro ever mad and the file to make basis invisible ty.
LVLing at Basis
04/13/2006 - Conquer Online 2 - 7 Replies
hi, I want to LV my Fire Tao at Basis with Inferno on Conquer Partner. But don't know at what F field I must get my Pots. Can you help me? 1Euro



All times are GMT +2. The time now is 00:42.


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