NOTE: This script is made by BEO900, i have tested and use this script, it works great and is legit props to him!
##################################################################
#################FINISHED FINAL (for now)#########################
#############Better leecher scripts can easily be made############
#################Please follow all directions#####################
######Will always attempt to join the game the leader is in#######
##################################################################
****FIXES****
Always attempts to join the game the leader is in (even when full)
No longer keeps trying to join games that have not been created by the leader.
Should have perfect synchronizing with the leader even when a game is missed!
*****MORE FIXES*****
Solved the massive amounts of FTJ games from the leader, the bot will now go to character sleect screen and log back on to clear his text.
Thanks to zexxx, the bot will now read the mesage sent from the leader when he joins a game instead of spamming /f l (english only, i think)
Made the time of the leecher joining the games quicker (put all the actions into 1 part instead of using the join game case.
Will now send the message to d2nt manager to increment the game number for multiple cd key use
Increased the time to wait before checking if partied to leader to ~40 seconds (some games are slower then others)
So I finally got a baal follow bot working for D2NT 3.0, which will attempt to join the game created by the (leader) once he is inside the game. This requires the follower and the bot to be on the friends list.
Here is the script for the follow bot to use.
function NTMain()
{
Include("libs/common/NTCommon.ntl");
NTC_IncludeLibs();
NTC_IncludeConfig("NTBot/char_configs");
NT_LoadConfig();
NTSI_LoadNIPFiles("NTBot/item_configs");
NTA_Initialize(); // 10
var _leader = "iMake_Fg"; // Name of leader's character in game (exactly)
if(!NTTM_CheckAct())
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTTM_CheckAct()");
return;
}
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 <= 200; i++)
{
if(NTC_InMyParty(_leader))
break;
Delay(200);
}
while(me.areaid == 109 && NTC_InMyParty(_leader))
{
NTM_UsePortal("BluePortal", 131, _leader); // 50
Delay(5000);
}
NTP_DoPrecast(true);
while(NTC_InMyParty(_leader))
{
Delay(1000);
}
NTC_SendMsgToScript("NTBotGame.ntj", "SCRIPT_END");
}Copy this code to a notepad with the extension .ntj and put it inside the bots folder.
I named my script NTBaalLeech.ntj
Go to the character config file and add in the line
NTConfig_Script.push("NTBaalLeech.ntj");
where all the other ones are (when running the follow bot only load this script.
Now copy and paste this code into a new notepad called NTBotLeech.ntj
Put this file in D2NT\D2NT\Scripts
You will see NTBot.ntj and NTMap.ntj in this folder already.
http://pastebin.com/HFEjpdAL The /f list code, this is the one i use, and it is most accurate and efficient.
Near the top of this code you will notice it says var leaderAccountName = "xxx";
Which ever account you are using that is the leader, put that account name exactly as it appears on the friends list in the quotes.
After you have these 2 files, the next step is to open up the file controlInfo.ntl
In this file locate the 2 lines that read this:
this.controls.lobby.chat.textBox = new Array();
this.controls.lobby.chat.textBox.channelName = [4,28,138,354,60];
Add this line under these:
this.controls.lobby.chat.textBox.channelText = [4,28,410,354,298];
This line makes the bot able to read the friends list.
I also editted the leader's baal script so the first tp it sends is fairly safe in the corner near baal (leechscript will take first tp from the leader)
There are 2 different if(ntconfig_publicmode) near the top of the baal script, what i did was i deleted the first if statement, and changed the 2nd one to look like this
if(NTConfig_PublicMode)
{
NTM_MoveTo(me.areaid, 15112, 5004, 1, true);
NTA_ClearPosition(20, true, 2);
NTM_MoveTo(me.areaid, 15116, 5004);
NTM_MakeTP();
//Say("TP is safe!");
NT_ClearThroneInt();
}Places to edit in the NTBaalLeech.ntj file
NTA_Initialize(); // 10
var _leader = ""; // Name of leader's character in game, case sensitive
if(!NTTM_CheckAct())
Places to edit in the NTBotLeech.ntj
var joinChannelInChat = ""; // leave blank to not join a private channel
var leaderAccountName = ""; // Account name on friends list
var gamepassword = ''; // Game password if using one
in case 28: // game does not exist
Delay(160000); Edit this number accordingly, 1000 = 1 second In the D2NT Manager on the bottom right you will see a drop down list of different .ntj files to load. Select NTBotLeech.ntj for the leech bot.
I may have missed a step in here, so any questions or if it is not working please feel free to post or PM me. I will try and help.