소서용 바알봇 트윅+원하는 보스몹 스태틱. (NTBot4.2_날아다녀님)
분류
봇관련
조회 수
3,592
추천 수
20
*************************************************************************************
원하는 보스몹만 스태틱하기(NTBot4.2_날아다녀님)
*************************************************************************************
봇스크립트에서 MyAt_KillBoss() 함수가 호출될 때, 캐릭별 설정에 따라 해당 보스몹에게 스태틱 공격을 적용합니다.
바알봇 쓰론 미니온에게 임시로 스태틱 적용하는 방법은 아래 '소서용 바알봇 트윅'에서 설명합니다.
질문은 쪽지보내지 마시고, 댓글로 해주세요. 스크립트 파일 요청은 받지 않습니다.
#1
\scripts\NTBot\char_configs\NTConfig.ntl
//추가
var MyConfig_SorceressABSCastStaticBossList =new Array();
var MyConfig_SorceressABSCastStaticBossHP;
#2
캐릭 설정
//#########################################################
// 공격 설정하기
//TT_mod-------------------------------추가
MyConfig_SorceressABSCastStaticBossList = [156, 211, 242, 243, 544, 256, "the countess", "thresh socket", "BLOOD RAVEN"]
//클래스아이디나 보스이름 입력
//클래스아이디 => Andarie : 156, Duriel: 211, Mephisto: 242, Diablo: 243, Baal: 544, Izual : 256
MyConfig_SorceressABSCastStaticBossHP = 55; // BossList에 있으면 설정치까지 스태틱
//TT_mod-------------------------------이상
MyConfig_SorceressCastStaticBoss = 100; // 대장을 잡을 때 사용할 스태틱 필드(100: 사용 안함)
MyConfig_SorceressCastStaticOthers = 100; // 부하를 잡을 때 사용할 스태틱 필드(100: 사용 안함)
#3
\scripts\libs\common\MyAttack.ntl
function MyAt_KillBoss(classId, maxAttacks, isCheckMerc, isCheckCurse)
{
..................................
if (MyConfig_AttackSkill[0][0] > -1 && MyAt_GetResistance(_target, _NTA_SkillDamage[0]) < 100)
{
switch (me.classid)
{
case NTC_CHAR_CLASS_AMAZON: MyAt_AmazonCast(_target, true, 0, 8000, maxAttacks); break;
case NTC_CHAR_CLASS_SORCERESS: MyAt_SorceressCast(_target, true, 0, 8000, maxAttacks); break;
case NTC_CHAR_CLASS_NECROMANCER: MyAt_NecromancerCast(_target, true, 0, 8000, maxAttacks); break;
case NTC_CHAR_CLASS_PALADIN: MyAt_PaladinCast(_target, true, 0, 8000, maxAttacks); break;
case NTC_CHAR_CLASS_BARBARIAN: break;
case NTC_CHAR_CLASS_DRUID: MyAt_DruidCast(_target, true, 0, 8000, maxAttacks); break;
case NTC_CHAR_CLASS_ASSASSIN: MyAt_AssassinCast(_target, true, 0, 8000, maxAttacks); break;
}
}
//TT_mod---------------------------------- 추가합니다
if (me.classid == NTC_CHAR_CLASS_SORCERESS && MyConfig_SorceressABSCastStaticBossList[0] &&
MyConfig_SorceressABSCastStaticBossHP < 100)
{
var _BossListNum = MyConfig_SorceressABSCastStaticBossList.length;
var _castStaticBoss = MyConfig_SorceressCastStaticBoss;
while(_BossListNum--)
{
var _cid = MyConfig_SorceressABSCastStaticBossList[_BossListNum];
if ( (typeof _cid == "number" && _target.classid == _cid) ||
(typeof _cid == "string" && _cid.toLowerCase() == _target.name.toLowerCase()) )
{
MyConfig_SorceressCastStaticBoss =MyConfig_SorceressABSCastStaticBossHP;
break;
}
}
var _result = Number(MyAt_Attack(_target, true, maxAttacks));
MyConfig_SorceressCastStaticBoss = _castStaticBoss;
return _result;
}
// -----------------------------------------TT_mod
return Number(MyAt_Attack(_target, true, maxAttacks));
}
*************************************************************************************
소서용 바알봇 트윅(NTbot4.2_날아다녀님)
*************************************************************************************
바알봇을 소서리스에 맞춰 개조하는 방법입니다.
바알봇에서 치킨이 자주 발생하는 서민형 파볼오브/블리 소서라면 한번 적용해 보세요.
[ 문제점 및 해결책 ]
A .소서로 바알소환몹 상대할 때 치킨이 발생하는 대부분의 상황은 웨이브 4차,5차 몹들에게 둘러싸이는 경우 입니다.
개선 > 웨이브 4차,5차에는 계단 위로 공격위치 이동하고, 스태틱 시전을 임시로 활성화 합니다.
B. 웨이브 사이의 프리어택 기능은 빠른 사냥을 가능하게 합니다.
그러나 캐릭설정에서 MyConfig_AttackSkill[3](부하 공격할 스킬) 에 메테오나 블리자드를 등록하지 않는 경우는
프리어택이 시전되지 않습니다.
개선 > 캐릭설정에서 [부하 공격할 스킬]에 메테오나 블리자드를 등록하지 않아도, 주력 스킬을 검색해서 프리어택 가능하게 합니다.
---------------------------------------------------------------------------------------------------------------------------
## NTBaal.ntj
---------------------------------------------------------------------------------------------------------------------------
var _SorceressCastStaticOthers; // TT_mod------------------------------------ 변수 추가
//### 웨이브 4,5차 트윅
function MyBa_KillSummon()
{
....................
if (_iSummon == 1)
NTP_DoPrecast(true);
// TT_mod -------------------------------------------------------------- 수정
else if (_iSummon == 3) // 3차 웨이브가 끝난 시점
{
MyBa_CheckHydra();
if (me.classid == NTC_CHAR_CLASS_SORCERESS)
{
_SorceressCastStaticOthers = MyConfig_SorceressCastStaticOthers;
MyConfig_SorceressCastStaticOthers = 55; //스태틱 설정
MyConfig_BaalAttackXy = [15090, 5007]; // 계단위 좌표
}
}
else if (_iSummon == 5)
break;
}
if (me.classid == NTC_CHAR_CLASS_SORCERESS)
MyConfig_SorceressCastStaticOthers = _SorceressCastStaticOthers; // 이후 사냥 원래 스태틱 설정 복구
// TT_mod --------------------------------------------------------------이상
if (me.classid == NTC_CHAR_CLASS_BARBARIAN)
MyConfig_BarbarianFindItem[0] = _findItem;
}
.......................
//### 프리어택
function MyBa_ThronePreAttack()
{
............................
case NTC_CHAR_CLASS_SORCERESS:
// TT_mod -------------------------------------------------------------- 수정
var _preattackskill;
MyMo_MoveTo(me.areaid, MyConfig_BaalAttackXy[0], MyConfig_BaalAttackXy[1]);
if (MyConfig_AttackSkill[3][0] == 56 || MyConfig_AttackSkill[3][0] == 59)
_preattackskill = MyConfig_AttackSkill[3][0];
else if ( NTC_GetSkillLevel(56) != 0 || NTC_GetSkillLevel(59) != 0 )
{
if ( NTC_GetSkillLevel(56)+NTC_GetSkillLevel(47) >= NTC_GetSkillLevel(59)+NTC_GetSkillLevel(55) )
_preattackskill = 56;
else
_preattackskill = 59;
}
return NTC_CastSkill(_preattackskill, 0, 15092, 5028);
break;
// TT_mod --------------------------------------------------------------이상
case NTC_CHAR_CLASS_PALADIN:
..............................