[D2NT] Public Botten for Dummies

09/10/2010 18:28 lanara#226
Da ich den Fehler bei mir noch nicht hatte, wird es schwierig ihn zu beheben. :/
09/10/2010 20:37 Snow-Junkee#227
hmm hab das problem das meine leecher nur jedes 2te game join...
kann es sein das der leader das neue game zu schnell aufmacht?

die leecher stehen im channel /f l aber linken sich nicht in das game ein.

wenn der leader dann das 2te game aufmacht dann gehen die leecher auch wieder mit...

wieß jamand rat? oder kann mir jemand sagen wo man einstellt das der leader paar sec löänger im channel steht bevor ich ein neues game aufmacht?

:)
09/11/2010 10:45 lanara#228
Quote:
Originally Posted by Snow-Junkee View Post
hmm hab das problem das meine leecher nur jedes 2te game join...
kann es sein das der leader das neue game zu schnell aufmacht?

die leecher stehen im channel /f l aber linken sich nicht in das game ein.

wenn der leader dann das 2te game aufmacht dann gehen die leecher auch wieder mit...

wieß jamand rat? oder kann mir jemand sagen wo man einstellt das der leader paar sec löänger im channel steht bevor ich ein neues game aufmacht?

:)
In der NTBot.ntj kannst du einstellen, wie lang der Leader im Channel bleibt.
Code:
var createGameThreshold        = 10000;
Klingt bei dir aber eher so, als ob deine Leecher nur bei der grünen Friend Message joinen, denn normal tun sie das auch bei dem /f l Text. Schau mal nach, ob dein Leader Account in der /f l Message auch die selbe Groß-/Kleinschreibung hat, wie in der NTBotLeech.ntj eingetragen.
09/11/2010 12:04 Vilsa-Limette#229
Quote:
Originally Posted by jeanschris View Post
hat sich schon was wegen den abstürzen getan? (please wait x seconds crash)

passiert übrigens immer nur dem leader char
kenne ich hatte ich auch heute.
Diablo 2 Hat keine Rückmeldung... und das dan die ganze zeit ohne dass der manager nen restart macht.
Was tun? :S
09/11/2010 13:12 jeanschris#230
jap

der manager macht da keinen restart

habe das mindestens alle 100runs

manchmal sogar nach 10 runs also vollkommen wilkürlich, tritt beim gameleaven auf


2.

kann man den bot dazu bringen das der leechfighter erst shenk macht und dann baal joined?
dann hätte er beim tp betreten nämlich bo und müsste nicht chicken beim betreten des thrones wenn mal wieder dolls am tp sind die gekillt werden
ich habe das tp schon zum anderen ende des thrones versetzt damit der pala den throne schneller frei hat und den tp spot als erstes cleaned aber das reicht noch nicht
oder
das er nur zum wp 1 geht und bo macht?
09/11/2010 15:55 lanara#231
Quote:
Originally Posted by jeanschris View Post
kann man den bot dazu bringen das der leechfighter erst shenk macht und dann baal joined?
dann hätte er beim tp betreten nämlich bo und müsste nicht chicken beim betreten des thrones wenn mal wieder dolls am tp sind die gekillt werden
ich habe das tp schon zum anderen ende des thrones versetzt damit der pala den throne schneller frei hat und den tp spot als erstes cleaned aber das reicht noch nicht
oder
das er nur zum wp 1 geht und bo macht?
Wenn der Leecher Shenk machen soll, musst du das Script in seinem Bereich mit eintragen. Wenn er sich nur buffen soll, reicht es nach NTTM_CheckAct() folgendes hinzuzufügen:

Code:
    if(!NTM_TakeWaypoint(111))
    {
        NTC_SendMsgToScript("NTBotGame.ntj", "NTM_TakeWaypoint()");
        return;
    }
    NTP_DoPrecast(true);
Der Char muss natürlich dann den Waypoint auch haben. :p
09/11/2010 17:03 Vilsa-Limette#232
@lanara
Ich habe mir den Bot nochmal neu runtergeladen und alles wieder so eingestellt wie es vorher war.
Aber ich habe immernoch im Manager diesen Bug mit den Angaben der EXP in % und der Anzahl der Runs bis zum nächsten Level.

Habe ~~ 20% exp
09/11/2010 19:50 lanara#233
Quote:
Originally Posted by Vilsa-Limette View Post
@lanara
Ich habe mir den Bot nochmal neu runtergeladen und alles wieder so eingestellt wie es vorher war.
Aber ich habe immernoch im Manager diesen Bug mit den Angaben der EXP in % und der Anzahl der Runs bis zum nächsten Level.

Habe ~~ 20% exp
Habe es mir grade mal angeschaut, ab Level 98 gibt me.GetStat(13), was eigentlich die Experience des Chars ausgibt, einen falschen Wert zurück, was wiederum dazu führt, dass die Anzeige dafür falsch ist. Muss ich mir mal anschaun, inwieweit ich das umgehen kann.
09/11/2010 21:32 knoedelmann10#234
moin,
ich habe seit 1-2 tagen ein dickes problem und zwar die fehlermeldung:
[Only registered and activated users can see links. Click Here To Register...]

trat zuerst nur bei leech runs auf, aber seit heute sind auch leader runs davon betroffen...
ich habe mehrere d2nt basierende versionen probiert, den bot neu runtergeladen und komplett nochmal von hand eingestellt. es hilft alles nix.
womit kann das noch zusammenhängen? help pls.

EDIT:
seltsamerweise geht mir meiner sorc alles wieder, aber bei meinem pala immernoch das selbe problem...

gruß knoedel
09/12/2010 00:23 lanara#235
Du hast einen Fehler in deiner Charconfig, z.B. ein / statt // oder ähnliches.
09/12/2010 00:32 Snow-Junkee#236
@knoedelmann => guck mal nach ob du i-wie ausversehen dein Char namen in vom script geändert hast... hatte das auch mal war nur eine leertaste drin wo sie nicht rein sollte, dannach lief er ;)
hatte die selbe error massage ,)


habe folgendes problem:

habe den einen leecher bot durch einen anderen ausgetauscht,
jetzt hat der "neue"leecher fast immer das problem das er sich beim ersten einlinken immer vertippt... ka warum
sieht so aus als ob er den game namen richtig reinschreibt in das join window aber dann eher er auf enter drücken kann schon wieder in den channel geswicht ist und /fl drückt...


E/ lag da dran das ich vergessen hatte den hacken beim PW im manager weg zu machen ;)

was jemand rat lief vorher mit dem anderem char doch auch...
09/12/2010 05:31 knoedelmann10#237
danke für den tipp. hab jetzt erst gemerkt das ich einen tippfehler bei meinem erstellten battle net char hatte und in der d2nt config hab ich ihn natürlich richtig geschrieben...
naja passiert... :)
09/12/2010 12:32 jeanschris#238
Quote:
Originally Posted by lanara View Post
Wenn der Leecher Shenk machen soll, musst du das Script in seinem Bereich mit eintragen. Wenn er sich nur buffen soll, reicht es nach NTTM_CheckAct() folgendes hinzuzufügen:

Code:
    if(!NTM_TakeWaypoint(111))
    {
        NTC_SendMsgToScript("NTBotGame.ntj", "NTM_TakeWaypoint()");
        return;
    }
    NTP_DoPrecast(true);
Der Char muss natürlich dann den Waypoint auch haben. :p




danke aber bist du bitte so lieb un fügst es mir ins baalleechfight script ein und postest es hier?

immer wenn ich es einfüge kriege ich checkact fail und der leaved das game wieder =(
09/12/2010 13:15 Snow-Junkee#239
sagt mal läuft das dia script jetzt flüssig?
da gab es doch das problem mit dem letzten siegel...

würde gern dai + baal machen ;)
09/12/2010 13:44 lanara#240
Quote:
Originally Posted by jeanschris View Post
danke aber bist du bitte so lieb un fügst es mir ins baalleechfight script ein und postest es hier?

immer wenn ich es einfüge kriege ich checkact fail und der leaved das game wieder =(
Code:
function NTMain()
{
   
   Include("libs/common/NTCommon.ntl");
   NTC_IncludeLibs();
   NTC_IncludeConfig("NTBot/char_configs");

   NT_LoadConfig();
   NTSI_LoadNIPFiles("NTBot/item_configs");

   NTA_Initialize(); 
   
   RegisterEvent(EVENT_GAMEMSG, NT_GameMsgEvents);

   if(!NTTM_CheckAct())
   {
      NTC_SendMsgToScript("NTBotGame.ntj", "NTTM_CheckAct()");
      return;
   }
    if(!NTM_TakeWaypoint(111))
    {
        NTC_SendMsgToScript("NTBotGame.ntj", "NTM_TakeWaypoint()");
        return;
    }
    NTP_DoPrecast(true);
   if(me.areaid != 109)
   {
   if(!NTTM_TownMove("waypoint"))
   {
      NTC_SendMsgToScript("NTBotGame.ntj", "NTTM_TownMove()");
      return;
   }

   if(!NTM_TakeWaypoint(109))
   {
      NTC_SendMsgToScript("NTBotGame.ntj", "NTM_TakeWaypoint()");
      return;
   }
   }
       
   NTTMGR_TownManager();
   
   NTTM_TownMove("portalspot");

   for(i = 0; i <= 100; i++)
   {
      if(NTC_InMyParty(NTConfig_Leader))
         break;

      Delay(200);
   }

   while(me.areaid == 109 && NTC_InMyParty(NTConfig_Leader))
   {
            if(NTConfig_CoLeechTPMsg == "")
                NTM_UsePortal("BluePortal", 131, NTConfig_Leader); // 50
      Delay(1000);
       
   }
   NTA_ClearPosition(20, true, 2);
   NTP_DoPrecast(false);

   while(NTC_InMyParty(NTConfig_Leader))
   {
   
   NT_ClearThroneInt();

   while(1)
   {
      if(me.classid == NTC_CHAR_CLASS_PALADIN || me.classid == NTC_CHAR_CLASS_BARBARIAN)
         NTM_MoveTo(me.areaid, 15092, 5028);
      else
         NTM_MoveTo(me.areaid, 15089, 5010);

      if(me.GetState(2))
         NTC_PutSkill(109, NTC_HAND_RIGHT);

      for(i = 0 ; i < 6 ; i++)
      {
         _wave = NT_ThroneCheckInt();
         if(_wave > 0)
            break;

         NTC_Delay(500);
      }

      _starttick = GetTickCount();

      while(_wave == 0)
      {
         if(!NT_ThronePreAttackInt())
            NTC_Delay(200);

         if(GetTickCount()-_starttick > 15000)
         {
            NT_ClearThroneInt();

            _starttick = GetTickCount();
         }

         _wave = NT_ThroneCheckInt();
      }

      switch(_wave)
      {
      case 1: 
         NTA_ClearPosition(40, true, 2); 
         NTP_DoPrecast(true); 
         break; 
      case 2: 
         NTM_MoveTo(me.areaid, me.x, me.y-1); 
         NTA_ClearPosition(40, true); 
         NTTMGR_CheckSafe(NTConfig_CheckSelfSafe, NTConfig_CheckMercSafe); 
         break; 
      case 3: 
         NTM_MoveTo(me.areaid, me.x, me.y-1); 
         NTA_ClearPosition(40, true, 2); 
         NTSI_PickItems();
         NT_CheckHydraInt(); 
         break; 
      case 4: 
         NTM_MoveTo(me.areaid, me.x, me.y-1); 
         NTA_ClearPosition(40, true, 2); 
         break; 
      case 5: 
         NTM_MoveTo(me.areaid, me.x, me.y-1); 
         NTA_ClearPosition(40, true, 2); 
         break;
      default:
         NTA_ClearPosition(40, true, 1);
         break;
      }

      if(_wave == 5)
         break;
   }

   if(NTConfig_KillBaal)
   {
      var _portal;

      if(!NTTMGR_CheckSafe(NTConfig_CheckSelfSafe, NTConfig_CheckMercSafe))
      {
         NTC_SendMsgToScript("NTBotGame.ntj", "NTTMGR_CheckSafe()");
         return;
      }

      NTM_MoveTo(me.areaid, 15092, 5010);

      NTP_DoPrecast(true);

      while(NTC_FindUnit(NTC_UNIT_MONSTER, 543))
         NTC_Delay(500);

      _portal = NTC_FindUnit(NTC_UNIT_OBJECT, 563, 1);

      if(!_portal)
      {
         NTC_SendMsgToScript("NTBotGame.ntj", "NTC_FindUnit()");
         return;
      }

      if(!NTM_UsePortal("Portal", 132, null, _portal))
      {
         NTC_SendMsgToScript("NTBotGame.ntj", "NTM_UsePortal()");
         return;
      }

      NTM_MoveTo(me.areaid, 15138, 5916);
            NTA_Initialize()
            
      if(!NTA_KillMonster(544))
      {
         NTC_SendMsgToScript("NTBotGame.ntj", "NTA_KillMonster()");
         return;
      }

      NTSI_PickItems();
   }

   }

   NTC_SendMsgToScript("NTBotGame.ntj", "SCRIPT_END");

}


// Internal function
function NT_ClearThroneInt()
{
    var _attackpos = [15083, 5014, 15092, 5028, 15107, 5059, 15081, 5056, 15095, 5067];

    for(var i = 0 ; i < _attackpos.length ; i += 2)
    {
        NTM_MoveTo(me.areaid, _attackpos[i], _attackpos[i+1]);

        NTA_ClearPosition(30, true, 2);
    }
    NTM_MoveTo(me.areaid, 15093, 5041);
    NTA_ClearPosition(50, true, 2);
}

function NT_ThroneCheckInt()
{
    var _monster;

    if(!NTC_FindUnit(NTC_UNIT_MONSTER, 543))
        return 5;

    _monster = NTC_FindUnit(NTC_UNIT_MONSTER);

    if(_monster)
    {
        do
        {
            if(NTA_IsValidMonster(_monster))
            {
                if(_monster.classid == 23 || _monster.classid == 62)
                    return 1;

                if(_monster.classid == 105 || _monster.classid == 381)
                    return 2;

                if(_monster.classid == 557)
                    return 3;

                if(_monster.classid == 558)
                    return 4;

                if(_monster.classid == 571)
                    return 5;
            }
        } while(_monster.GetNext());
    }

    return 0;
}

function NT_ThronePreAttackInt()
{
    if(me.classid == NTC_CHAR_CLASS_SORCERESS)
    {
        if(NTConfig_AttackSkill[3] == 56 || NTConfig_AttackSkill[3] == 59)
            return NTC_CastSkill(NTConfig_AttackSkill[3], 0, 15092, 5028);
    }
    else if(me.classid == NTC_CHAR_CLASS_PALADIN)
    {
        if(NTConfig_AttackSkill[3] == 112)
        {
            if(NTConfig_AttackSkill[4] > 0)
                NTC_PutSkill(NTConfig_AttackSkill[4], NTC_HAND_RIGHT);

            return NTC_CastSkill(NTConfig_AttackSkill[3], 2);
        }
    }
    return false;
}

function NT_CheckHydraInt()
{
    var _hydra1, _hydra2, _hydra3;

    _hydra1 = NTC_FindUnit(NTC_UNIT_MONSTER, 351);
    _hydra2 = NTC_FindUnit(NTC_UNIT_MONSTER, 352);
    _hydra3 = NTC_FindUnit(NTC_UNIT_MONSTER, 353);

    if((_hydra1 && _hydra1.GetStat(172) != 2 && _hydra1.GetState(105))
        || (_hydra2 && _hydra2.GetStat(172) != 2 && _hydra2.GetState(105))
        || (_hydra3 && _hydra3.GetStat(172) != 2 && _hydra3.GetState(105)))
    {
        NTM_MoveTo(me.areaid, 15118, 5002);

        if(me.GetState(2))
            NTC_PutSkill(109, NTC_HAND_RIGHT);

        NTC_PingDelay(5000);
    }
}

function NT_GameMsgEvents(msg, type)
{
    if(type == 0 && msg.indexOf(NTConfig_Leader) != -1 && msg.indexOf(NTConfig_CoLeechTPMsg) != -1 && NTConfig_CoLeechTPMsg != "")
    {
        while(me.areaid == 109)
        {
            NTM_UsePortal("BluePortal", 131, NTConfig_Leader);    
        }
    }
}