01-01-2010, 06:43 PM
this will be very complicated to do. you are going to have to figure out the vector for the middle of the star, and get it to trigger when it is safe. for starters, you need to get into your NTDiablo.ntj file
here is mine, and i will attempt to highlight what needs to be changed.
NOTE: I have not modified mine in anyway, nor do I make any guarantees that what I am highlighting is correct. They are mere guesses
points of interest are highlighted in blue, green are comments
function NTMain()
{
Include("common/NTCommon.ntl");
NTC_IncludeConfig();
NTC_IncludeLibs();
NT_LoadConfig();
NTSI_LoadNIPFiles();
NTA_Initialize();
if(!NTTM_CheckAct())
{
NTC_SendMsgToScript("default.ntj", "NTTM_CheckAct()");
return;
}
NTTMGR_TownManager();
if(!NTTM_TownMove("waypoint"))
{
NTC_SendMsgToScript("default.ntj", "NTTM_TownMove()");
return;
}
if(!NTM_TakeWaypoint(107))
{
NTC_SendMsgToScript("default.ntj", "NTM_TakeWaypoint()");
return;
}
NTP_DoPrecast();
if(!NTM_MoveTo(108, 7797, 5560))
{
NTC_SendMsgToScript("default.ntj", "NTM_MoveTo()");
return;
}
NTC_PingDelay(500);
if(NTConfig_PublicMode)
{
var _attackpos = [7792, 5525, 7793, 5501, 7773, 5495, 7768, 5480, 7767, 5458, 7770, 5438, 7774, 5417, 7767, 5391, 7768, 5369, 7769, 5345, 7770, 5320, 7780, 5308];
if(!NTM_MoveTo(me.areaid, 7790, 5544))
{
NTC_SendMsgToScript("default.ntj", "NTM_MoveTo()");
return;
}
NTA_ClearPosition(20, 0x04);
NTA_ClearPosition();
NTSI_PickItems();
NTM_MoveTo(me.areaid, 7790, 5544);
NTC_PingDelay(1000);
if(NTA_ClearPosition())
NTSI_PickItems();
NTM_MoveTo(me.areaid, 7790, 5544);
NTM_MakeTP();
Say("TP is safe!");
here is the first tp being made.
if(NTA_ClearPosition())
NTSI_PickItems();
for(var i = 0 ; i < _attackpos.length ; i += 2)
{
NTM_MoveTo(me.areaid, _attackpos[i], _attackpos[i+1]);
NTA_ClearPosition(25, 0x04);
NTA_ClearPosition(25);
NTSI_PickItems();
}
NTT_CleanPotions();
NTP_DoPrecast();
}
if(!NT_OpenSealsInt())
{
NTC_SendMsgToScript("default.ntj", "NT_OpenSealsInt()");
return;
}
if(NTConfig_PublicMode)
Say("Killing Diablo");
here is when you say that you are killing Diablo. you could try putting in a "NTM_MakeTP();"
NTT_CleanPotions();
NTP_DoPrecast();
if(!NTM_MoveTo(me.areaid, 7792, 5292))
{
NTC_SendMsgToScript("default.ntj", "NTM_MoveTo()");
return;
}
if(NTConfig_CheckSafe)
{
if(!NTTMGR_CheckSafe(3))
{
NTC_SendMsgToScript("default.ntj", "NTTMGR_CheckSafe()");
return;
}
}
while(!NTC_FindMonster(243))
NTC_Delay(200);
if(!NTA_KillBoss(243))
{
NTC_SendMsgToScript("default.ntj", "NTA_KillBoss()");
return;
}
NTSI_PickItems();
if(NTConfig_PublicMode)
Say("Next game");
NTC_SendMsgToScript("default.ntj", "SCRIPT_END");
}
// Internal function
function NT_OpenSealsInt()
{
var _unit;
var _result;
_unit = GetPresetUnits(me.areaid, NTC_UNIT_OBJECT, 396);
if(!_unit)
return false;
if(_unit[0].roomy*5 + _unit[0].y == 5275)
_result = NT_OpenVizierSealInt(1);
else
_result = NT_OpenVizierSealInt(2);
if(!_result)
return false;
NTT_CleanPotions();
NTP_DoPrecast();
_unit = GetPresetUnits(me.areaid, NTC_UNIT_OBJECT, 394);
if(!_unit)
return false;
if(_unit[0].roomx*5 + _unit[0].x == 7773)
_result = NT_OpenDeSeisSealInt(1);
else
_result = NT_OpenDeSeisSealInt(2);
if(!_result)
return false;
NTT_CleanPotions();
NTP_DoPrecast();
_unit = GetPresetUnits(me.areaid, NTC_UNIT_OBJECT, 392);
if(!_unit)
return false;
if(_unit[0].roomx*5 + _unit[0].x == 7893)
_result = NT_OpenVenomSealInt(1);
else
_result = NT_OpenVenomSealInt(2);
return _result;
}
function NT_OpenVizierSealInt(type)
{
var i, n;
var _attackpos = [7740, 5300, 7740, 5280, 7720, 5280, 7720, 5300];
var _monstername = GetLocaleString(2851);
for(i = 0 ; i < _attackpos.length ; i += 2)
{
NTM_MoveTo(me.areaid, _attackpos[i], _attackpos[i+1]);
NTA_ClearPosition(25, 0x04);
NTA_ClearPosition(25);
NTSI_PickItems();
}
for(i = 0 ; i < 3 ; i++)
{
if(type == 1)
{
NT_OpenSealInt(395, 7654, 5310);
NT_OpenSealInt(396, 7659, 5277);
NTM_MoveTo(me.areaid, 7665, 5277);
}
else
{
NT_OpenSealInt(395, 7650, 5276);
NT_OpenSealInt(396, 7651, 5310);
}
for(n = 0 ; n < 10 ; n++)
{
NTC_Delay(200);
if(NTA_KillBoss(_monstername))
{
NTA_ClearPosition();
NTSI_PickItems();
return NTM_MoveTo(me.areaid, 7750, 5280);
}
}
}
return false;
}
function NT_OpenDeSeisSealInt(type)
{
var i, n;
var _attackpos = [7780, 5255, 7800, 5255, 7800, 5235, 7780, 5235];
var _monstername = GetLocaleString(2852);
for(i = 0 ; i < _attackpos.length ; i += 2)
{
NTM_MoveTo(me.areaid, _attackpos[i], _attackpos[i+1]);
NTA_ClearPosition(25, 0x04);
NTA_ClearPosition(25);
NTSI_PickItems();
}
for(i = 0 ; i < 3 ; i++)
{
if(type == 1)
{
NT_OpenSealInt(394, 7769, 5158);
NTM_MoveTo(me.areaid, 7771, 5196);
}
else
{
NT_OpenSealInt(394, 7810, 5156);
NTM_MoveTo(me.areaid, 7770, 5169);
}
for(n = 0 ; n < 10 ; n++)
{
NTC_Delay(200);
if(NTA_KillBoss(_monstername))
{
NTA_ClearPosition(30);
NTSI_PickItems();
return NTM_MoveTo(me.areaid, 7800, 5255);
}
}
}
return false;
}
function NT_OpenVenomSealInt(type)
{
var i, n;
var _attackpos = [7835, 5280, 7835, 5300, 7855, 5300, 7855, 5280];
var _monstername = GetLocaleString(2853);
for(i = 0 ; i < _attackpos.length ; i += 2)
{
NTM_MoveTo(me.areaid, _attackpos[i], _attackpos[i+1]);
NTA_ClearPosition(25, 0x04);
NTA_ClearPosition(25);
NTSI_PickItems();
}
for(i = 0 ; i < 3 ; i++)
{
if(type == 1)
{
NT_OpenSealInt(393, 7915, 5280);
NT_OpenSealInt(392, 7895, 5318);
NTM_MoveTo(me.areaid, 7892, 5298);
}
else
{
NT_OpenSealInt(393, 7905, 5277);
NT_OpenSealInt(392, 7916, 5310);
NTM_MoveTo(me.areaid, 7937, 5305);
}
for(n = 0 ; n < 10 ; n++)
{
NTC_Delay(200);
if(NTA_KillBoss(_monstername))
{
NTSI_PickItems();
if(NTC_PutSkill(124, NTC_HAND_RIGHT))
NTC_PingDelay(1000);
return true;
}
}
}
return false;
}
function NT_OpenSealInt(classid, x, y)
{
var _seal;
NTM_MoveTo(me.areaid, x, y);
NTA_ClearPosition(25, 0x04);
NTA_ClearPosition(25);
NTSI_PickItems();
_seal = NTC_GetUnit(NTC_UNIT_OBJECT, classid);
if(!_seal)
return false;
if(_seal.mode > 0)
return true;
for(var i = 0 ; i < 4 ; i++)
{
if((i % 2) == 0)
{
if(GetDistance(me, _seal) > 2)
NTM_MoveTo(_seal.areaid, _seal.x+1, _seal.y);
NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _seal);
}
NTC_Delay(500);
if(_seal.mode > 0)
return true;
}
return false;
}
here is mine, and i will attempt to highlight what needs to be changed.
NOTE: I have not modified mine in anyway, nor do I make any guarantees that what I am highlighting is correct. They are mere guesses
points of interest are highlighted in blue, green are comments
function NTMain()
{
Include("common/NTCommon.ntl");
NTC_IncludeConfig();
NTC_IncludeLibs();
NT_LoadConfig();
NTSI_LoadNIPFiles();
NTA_Initialize();
if(!NTTM_CheckAct())
{
NTC_SendMsgToScript("default.ntj", "NTTM_CheckAct()");
return;
}
NTTMGR_TownManager();
if(!NTTM_TownMove("waypoint"))
{
NTC_SendMsgToScript("default.ntj", "NTTM_TownMove()");
return;
}
if(!NTM_TakeWaypoint(107))
{
NTC_SendMsgToScript("default.ntj", "NTM_TakeWaypoint()");
return;
}
NTP_DoPrecast();
if(!NTM_MoveTo(108, 7797, 5560))
{
NTC_SendMsgToScript("default.ntj", "NTM_MoveTo()");
return;
}
NTC_PingDelay(500);
if(NTConfig_PublicMode)
{
var _attackpos = [7792, 5525, 7793, 5501, 7773, 5495, 7768, 5480, 7767, 5458, 7770, 5438, 7774, 5417, 7767, 5391, 7768, 5369, 7769, 5345, 7770, 5320, 7780, 5308];
if(!NTM_MoveTo(me.areaid, 7790, 5544))
{
NTC_SendMsgToScript("default.ntj", "NTM_MoveTo()");
return;
}
NTA_ClearPosition(20, 0x04);
NTA_ClearPosition();
NTSI_PickItems();
NTM_MoveTo(me.areaid, 7790, 5544);
NTC_PingDelay(1000);
if(NTA_ClearPosition())
NTSI_PickItems();
NTM_MoveTo(me.areaid, 7790, 5544);
NTM_MakeTP();
Say("TP is safe!");
here is the first tp being made.
if(NTA_ClearPosition())
NTSI_PickItems();
for(var i = 0 ; i < _attackpos.length ; i += 2)
{
NTM_MoveTo(me.areaid, _attackpos[i], _attackpos[i+1]);
NTA_ClearPosition(25, 0x04);
NTA_ClearPosition(25);
NTSI_PickItems();
}
NTT_CleanPotions();
NTP_DoPrecast();
}
if(!NT_OpenSealsInt())
{
NTC_SendMsgToScript("default.ntj", "NT_OpenSealsInt()");
return;
}
if(NTConfig_PublicMode)
Say("Killing Diablo");
here is when you say that you are killing Diablo. you could try putting in a "NTM_MakeTP();"
NTT_CleanPotions();
NTP_DoPrecast();
if(!NTM_MoveTo(me.areaid, 7792, 5292))
{
NTC_SendMsgToScript("default.ntj", "NTM_MoveTo()");
return;
}
if(NTConfig_CheckSafe)
{
if(!NTTMGR_CheckSafe(3))
{
NTC_SendMsgToScript("default.ntj", "NTTMGR_CheckSafe()");
return;
}
}
while(!NTC_FindMonster(243))
NTC_Delay(200);
if(!NTA_KillBoss(243))
{
NTC_SendMsgToScript("default.ntj", "NTA_KillBoss()");
return;
}
NTSI_PickItems();
if(NTConfig_PublicMode)
Say("Next game");
NTC_SendMsgToScript("default.ntj", "SCRIPT_END");
}
// Internal function
function NT_OpenSealsInt()
{
var _unit;
var _result;
_unit = GetPresetUnits(me.areaid, NTC_UNIT_OBJECT, 396);
if(!_unit)
return false;
if(_unit[0].roomy*5 + _unit[0].y == 5275)
_result = NT_OpenVizierSealInt(1);
else
_result = NT_OpenVizierSealInt(2);
if(!_result)
return false;
NTT_CleanPotions();
NTP_DoPrecast();
_unit = GetPresetUnits(me.areaid, NTC_UNIT_OBJECT, 394);
if(!_unit)
return false;
if(_unit[0].roomx*5 + _unit[0].x == 7773)
_result = NT_OpenDeSeisSealInt(1);
else
_result = NT_OpenDeSeisSealInt(2);
if(!_result)
return false;
NTT_CleanPotions();
NTP_DoPrecast();
_unit = GetPresetUnits(me.areaid, NTC_UNIT_OBJECT, 392);
if(!_unit)
return false;
if(_unit[0].roomx*5 + _unit[0].x == 7893)
_result = NT_OpenVenomSealInt(1);
else
_result = NT_OpenVenomSealInt(2);
return _result;
}
function NT_OpenVizierSealInt(type)
{
var i, n;
var _attackpos = [7740, 5300, 7740, 5280, 7720, 5280, 7720, 5300];
var _monstername = GetLocaleString(2851);
for(i = 0 ; i < _attackpos.length ; i += 2)
{
NTM_MoveTo(me.areaid, _attackpos[i], _attackpos[i+1]);
NTA_ClearPosition(25, 0x04);
NTA_ClearPosition(25);
NTSI_PickItems();
}
for(i = 0 ; i < 3 ; i++)
{
if(type == 1)
{
NT_OpenSealInt(395, 7654, 5310);
NT_OpenSealInt(396, 7659, 5277);
NTM_MoveTo(me.areaid, 7665, 5277);
}
else
{
NT_OpenSealInt(395, 7650, 5276);
NT_OpenSealInt(396, 7651, 5310);
}
for(n = 0 ; n < 10 ; n++)
{
NTC_Delay(200);
if(NTA_KillBoss(_monstername))
{
NTA_ClearPosition();
NTSI_PickItems();
return NTM_MoveTo(me.areaid, 7750, 5280);
}
}
}
return false;
}
function NT_OpenDeSeisSealInt(type)
{
var i, n;
var _attackpos = [7780, 5255, 7800, 5255, 7800, 5235, 7780, 5235];
var _monstername = GetLocaleString(2852);
for(i = 0 ; i < _attackpos.length ; i += 2)
{
NTM_MoveTo(me.areaid, _attackpos[i], _attackpos[i+1]);
NTA_ClearPosition(25, 0x04);
NTA_ClearPosition(25);
NTSI_PickItems();
}
for(i = 0 ; i < 3 ; i++)
{
if(type == 1)
{
NT_OpenSealInt(394, 7769, 5158);
NTM_MoveTo(me.areaid, 7771, 5196);
}
else
{
NT_OpenSealInt(394, 7810, 5156);
NTM_MoveTo(me.areaid, 7770, 5169);
}
for(n = 0 ; n < 10 ; n++)
{
NTC_Delay(200);
if(NTA_KillBoss(_monstername))
{
NTA_ClearPosition(30);
NTSI_PickItems();
return NTM_MoveTo(me.areaid, 7800, 5255);
}
}
}
return false;
}
function NT_OpenVenomSealInt(type)
{
var i, n;
var _attackpos = [7835, 5280, 7835, 5300, 7855, 5300, 7855, 5280];
var _monstername = GetLocaleString(2853);
for(i = 0 ; i < _attackpos.length ; i += 2)
{
NTM_MoveTo(me.areaid, _attackpos[i], _attackpos[i+1]);
NTA_ClearPosition(25, 0x04);
NTA_ClearPosition(25);
NTSI_PickItems();
}
for(i = 0 ; i < 3 ; i++)
{
if(type == 1)
{
NT_OpenSealInt(393, 7915, 5280);
NT_OpenSealInt(392, 7895, 5318);
NTM_MoveTo(me.areaid, 7892, 5298);
}
else
{
NT_OpenSealInt(393, 7905, 5277);
NT_OpenSealInt(392, 7916, 5310);
NTM_MoveTo(me.areaid, 7937, 5305);
}
for(n = 0 ; n < 10 ; n++)
{
NTC_Delay(200);
if(NTA_KillBoss(_monstername))
{
NTSI_PickItems();
if(NTC_PutSkill(124, NTC_HAND_RIGHT))
NTC_PingDelay(1000);
return true;
}
}
}
return false;
}
function NT_OpenSealInt(classid, x, y)
{
var _seal;
NTM_MoveTo(me.areaid, x, y);
NTA_ClearPosition(25, 0x04);
NTA_ClearPosition(25);
NTSI_PickItems();
_seal = NTC_GetUnit(NTC_UNIT_OBJECT, classid);
if(!_seal)
return false;
if(_seal.mode > 0)
return true;
for(var i = 0 ; i < 4 ; i++)
{
if((i % 2) == 0)
{
if(GetDistance(me, _seal) > 2)
NTM_MoveTo(_seal.areaid, _seal.x+1, _seal.y);
NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _seal);
}
NTC_Delay(500);
if(_seal.mode > 0)
return true;
}
return false;
}
US East L/NL-arowws4 arowws5 uber/organ runs for free. Free items too. Just ask. Must be member of this site.
[url=http://www.unleashmybrain.com][/url]
[url=http://www.unleashmybrain.com][/url]