[16차] 공방에서 기사+부기사 조인 관련 문제입니다.
분류
질문
조회 수
1,756
추천 수
0
오리에서 디아런을 운영하고 있습니다.
기사가 방 만들고 부기사들이 들어가는 형태이고
디아사냥터 자체쫄봇을 이용하고 있습니다.
서버는 이스트라서 방은 잘 파집니다.
문제는 방 인기(?)가 많아서 사람들이 먼저 들어오는 바람에
부기사들이 못 들어오는 사태가 부지기수 합니다.
덕분에 다음 방에서 겨우 조인하죠.
그래서 자세히 현상을 살펴보니 부기사들이 방제치고 들어갈 때 이상한 행동을 두가지나 합니다.
기사에게 메시지받고 들어갈 때, 먼저 방제를 매니저에 설정되있는 방제로 들어가기 시도하다가
방만들기에서 다시 뭔가를 칠려고 하고 그다음에서야 제대로 방제를 치고 들어가기 시작합니다.
그리고 기사는 방을 만들었을 때 가끔 스크립트가 바로 시작되지 않고
5~10초 기다려야 실행되서 부기사들에게 조인메시지를 보내더군요.
제가 원하는건 부기사들이 조인하기 전에 저 행동을 막을수 없냐는 것과
기사가 방 들어가면 바로 스크립트를 실행하게 하고 싶습니다.
부탁드립니다 :)
혹시 몰라서 아래 스크립트 남깁니다.
scripts\NTBot\MyConfigs\JjolBot.ntl
//##############################################################################
// 쫄봇 설정하기
//---------------
// _MyJBC_JjolBotAccountList.push([["기사 계정이름", 자동으로 방 만들기, 채널에 있으면 방이름 및 방암호 알려 주기], ["쫄 계정이름", 방 들어가기 전 지연 시간] . . .])
// "기사 계정이름" : "캐릭터이름"이 아닌 "계정이름"입니다.
// 자동으로 방 만들기 : true = 자동으로 방 만들기, false = 수동으로 방을 만들거나 들어가기
// 채널에 있으면 방이름 및 방암호 알려주기: 0 = 사용 안 함, 1 = 방이름만 알려 주기, 2 = 방이름과 방암호 알려 주기 * 주의: 방이름은 'XXX-번호' 형식이어야 합니다.
//
// "쫄 계정이름" : "캐릭터이름"이 아닌 "계정이름"입니다.
// 방 들어가기 전 지연 시간: 1/1000초
//
// 예) _MyJBC_JjolBotAccountList.push([["ㄱ", true, 0], ["ㄴ", 0], ["ㄷ", 1000], ["ㄹ", 500]);
// 쫄 "ㄴ", "ㄷ", "ㄹ"은 로비에서 대기하다가 기사 "ㄱ"이 자동으로 방을 만들면 "ㄴ"은 0초, "ㄷ"은 1초, "ㄹ"은 0.5초 지연 후 방에 들어갑니다.
//
// 주의: 시작하기 전 'scripts/NTBot/MyData/JjolBot' 폴더에 있는 파일들을 삭제합니다.
// 기사와 쫄을 운용하는 컴퓨터의 날짜와 시간은 같아야 합니다.
//==============================================================================
_MyJBC_JjolBotAccountList.push([["기사계정", true, 2],["부기사1", 0],["부기사2", 0]]);
\scripts\NTBot.ntj
var gameMinLength = 5000; // 게임 최소 시간(1/1000초) // time in milliseconds, minimum game length, 180 seconds default (1 game/3 minutes)
var unableToConnectRetry = 5; // 베틀넷 접속 실패 시 재시도 시간(분) // time in minutes to retry connecting on connection fail (real value is +/- 1 min)
var realmDownRetry = 300; // 렐름다운 시 재시도 시간(분) // time in minutes to retry connecting on a realm down (default is 120 minutes)
var disconnectedRetry = 5; // 캐릭터 선택 실패 시 재시도 시간(분) // time in minutes to retry on a disconnection (usually ip ban related)
var cdkeyInUseRetry = 5; // 시디키 중복 시 재시도 시간(분) // time in minutes to retry on a cdkey in use error message (set to 0 to stop)
var connectingToBnetTimeout = 20000; // "배틀넷 접속중 입니다." 창에서의 대기 시간(1/1000초) // time in milliseconds to wait for a login to time out and click cancel and retry
var characterScreenTimeout = 15000; // 캐릭터 선택 창에서의 대기 시간(1/1000초) // time in milliseconds to wait for character screen to appear
var pleaseWaitTimeout = 10000; // "잠시 기다려 주십시오." 창에서의 대기 시간(1/1000초) // time in milliseconds to wait for a please wait popup
var createGameThreshold = 5000; // 게임 만드는 과정마다 추가 시간(1/1000초) // time in milliseconds to wait between making games
var createGameThresholdRandom = 1000; // createGameThreshold에 무작위로 시간 더하거나 빼기(1/1000초) // time in milliseconds to randomly add +/- to the game create time
var createGameTimeout = 15000; // 게임 만들기 실패 시 대기 시간(1/1000초) // time in milliseconds to register a failed to create game
var waitInLineTimeout = 300000; // 게임 만들기 창에서의 대기 시간(1/1000초) // in milliseconds to wait in lines for a create game (60 second default)
var characterSelectDelay = 1000; // 캐릭터 선택 전 지연 시간(1/1000초) // time in milliseconds to wait before selecting a character on the char screen
var loginDelay = 1000; // 로그인 전 지연 시간(1/1000초) // time in milliseconds to wait before submitting login information
var clickDelay = 500; // 클릭 후 지연 시간(1/1000초) // wait X milliseconds before next action after a click event
var textDelay = 500; // 문자 입력 후 지연 시간(1/1000초) // wait X milliseconds before next action after inserting text into a textbox
var clickDelayRandom = 500; // clickDelay에 무작위로 시간 더하기(1/1000초) // random amount of time to add to a click
var textDelayRandom = 500; // textDelay에 무작위로 시간 더하기(1/1000초) // random amount of time to add to a text set
var gameDoesNotExistDelayMin = 5000; // "게임이 존재하지 않습니다." 시 최소 지연 시간(1/1000초) // how long to wait when a Game Does Not Exist occurs - minimum - default 10 minutes
var gameDoesNotExistDelayMax = 5000; // "게임이 존재하지 않습니다." 시 최대 지연 시간(1/1000초) // how long to wait when a Game Does Not Exist occurs - maximum - default 15 minutes
var gameDoesNotExistTimeout = 5000; // "게임이 존재하지 않습니다." 시 대기 시간(1/1000초) // how long to wait for the dialog to disappear (default 30 seconds, don't change this)
var joinChatAfterGame = true; // 로비에서 채팅하기 // join chat after leaving a game
var joinRandomChannel = false; // 채널명 무작위로 만들기 // if this is true, will join a random channel, otherwise it will use the channel below..
var joinChannelInChat = "ddia"; // 채널명 // leave blank to not join a private channel
var waitBeforeEnterChatMin = 1000; // 채팅하기 전 최소 지연 시간(1/1000초) // min how long to wait before entering chat
var waitBeforeEnterChatMax = 2000; // 채팅하기 전 최대 지연 시간(1/1000초) // max how long to wait before entering chat
var waitInChatBeforeActionsMin = 2000; // 채널 참여하기 전 최소 지연 시간(1/1000초) // min how long to wait before joining channel
var waitInChatBeforeActionsMax = 3000; // 채널 참여하기 전 최대 지연 시간(1/1000초) // max how long to wait before joining channel
버스기사 케릭터이니
//##########################################################################
// 시간 설정하기
//==========================================================================
MyConfig_MaxGameTime = 500; // 최대 게임 시간(초, 0: 무제한)
NTConfig_StartDelay = 0; // 방 입장 후 지연 시간(1/1000초)
MyConfig_WaypointDelay = 40; // 웨이포인트 이동 시도 시간(1/5초)
NTConfig_AreaDelay = 0; // 지역 이동 후 지연 시간(1/1000초)
MyConfig_TimeManager = [0, 0]; // 시간 관리자 = [만들 방 수, 가동 시간(분)] * 예) [20, 100] = 봇이 20방을 돈 시간이 100분 보다 적으면 21번 방에서 샵봇으로 100분을 채운 후 사냥을 시작합니다.
제가 보기엔 \scripts\NTBot.ntj 여기밖에 건들 곳이 없다고 생각하는데 -_-a
너무 난해합니다 ㅎㅎ

