XP봇, failed snag error 해결방법(추가 사항)
분류
봇관련
조회 수
1,089
추천 수
1
- 증상
사냥도중 인벤이 꽉차 있음에도 불구하고, 마을안가고 줍기 시도하다 못줍는 현상
% 일단, 만약을 대비해 아래 언급된 두파일(LoaderXP.d2j,d2jsp-snagit.d2l) 원본은 백업해둔후
- 해결방법
bots/LoaderXP.d2j 다음함수 삽입부분 삽입.
function LXP_CheckEvents(eventmsg) {
switch(eventmsg) {
case "SM_GAMEEND":
LXP_LoadNextGame();
break;
case "SM_GAMEERROR":
if (LXP_RetryOnError && !_LXP_AlreadyReloaded && _LXP_CurrentScript != "BaalXP.d2j") {
LXP_ReloadGame();
_LXP_AlreadyReloaded = true;
}
else {
LXP_LoadNextGame();
_LXP_AlreadyReloaded = false;
}
break;
case "SM_RELOAD":
LXP_ReloadGame();
break;
case "SM_UNLOAD":
LXP_UnloadMe();
break;
case "SM_Town": //삽입
_XP_Town = true; //삽입
break; //삽입
}
}
저장하고,
lib/d2jsp-snagit.d2l function _DSN_PickUpItem 함수에서
if(!DT_CheckSpace(DT_GetXSize(snagitem), DT_GetYSize(snagitem)) && !DC_InTown(me) && (snagitem.mode==3 || snagitem.mode==5)) { //삽입 (추가사항)
dsn_msg = "SM_Town"; //삽입
scriptBroadcast(dsn_msg); //삽입
DC_Print("Inventory is full"); //삽입
} //삽입
// If the item is being dropped or in the ground, snag it //<== 이줄을 찾아서 그위에
if (snagitem.mode==3 || snagitem.mode==5) { //
조금 아래에,
while (snagitem.mode==3 || snagitem.mode==5) {
DC_DoDel(20);
attemptnum+=1; //<== 이줄을 찾아서 그아래에
if( attemptnum>=100 && _XP_Town ) { DC_Print("Check inventory"); XP_DoSafeCheck(true); _XP_Town = false; } //삽입
이렇게, 한후 저장하면 됩니다.
- 추가사항
공방에서 아템을 다른사람이 먼저 줏을경우, 못줍는것으로 인식해서 마을가는 증상 해결