불일치 사용자 지정 봇을 작성하기위한 뛰어난 API가 있으며 봇 커뮤니티 . 오늘은 나만의 것을 시작하는 방법을 살펴 보겠습니다.
봇을 코딩하려면 약간의 프로그래밍 지식이 필요하므로 모든 사람을위한 것은 아니지만 다행스럽게도이를 매우 쉽게 만들어주는 인기있는 언어 용 모듈이 있습니다. 가장 인기있는 것을 사용할 것입니다. discord.js .
관련 : Discord 서버 생성, 설정 및 관리 방법
시작하기
Discord ’s로 이동 봇 포털 을 클릭하고 새 응용 프로그램을 만듭니다.
클라이언트 ID와 비밀번호를 기록해 두는 것이 좋습니다 (물론 비밀로 유지해야 함). 그러나 이것은 봇이 아니라 단지“응용 프로그램”입니다. "Bot"탭에서 봇을 추가해야합니다.
이 토큰도 기록하고 비밀로 유지하십시오. 어떤 상황에서도이 키를 Github에 커밋하지 마십시오. 귀하의 봇은 거의 즉시 해킹됩니다.
Node.js 설치 및 코딩 가져 오기
웹 페이지 외부에서 자바 스크립트 코드를 실행하려면 마디 . 다운로드하여 설치하고 터미널에서 작동하는지 확인하십시오 (또는 Windows 시스템에서 작동해야하는 명령 프롬프트). 기본 명령은 "node"입니다.
또한 nodemon 도구를 설치하는 것이 좋습니다. 봇의 코드를 모니터링하고 변경시 자동으로 다시 시작하는 명령 줄 앱입니다. 다음 명령을 실행하여 설치할 수 있습니다.
npm 및 -g nodemon
텍스트 편집기가 필요합니다. 메모장 만 사용할 수 있지만 둘 중 하나를 권장합니다. 원자 또는 VSC .
"Hello World"는 다음과 같습니다.
const Discord = require ( 'discord.js');
const 클라이언트 = new Discord.Client ();
client.on ( 'ready', () => {
console.log(`Logged in as ${client.user.tag}!`);
});
client.on ( 'message', msg => {
if (msg.content === 'ping') {
msg.reply('pong');
}
});
client.login ( 'token');
이 코드는 discord.js 예. 그것을 분해합시다.
- 처음 두 줄은 클라이언트를 구성하는 것입니다. 첫 번째 줄은 "Discord"라는 개체로 모듈을 가져오고 두 번째 줄은 클라이언트 개체를 초기화합니다.
-
그만큼
client.on ( 'ready')봇이 시작되면 블록이 실행됩니다. 여기에서는 이름을 터미널에 기록하도록 구성되었습니다. -
그만큼
client.on ( '메시지')블록은 새 메시지가 채널에 게시 될 때마다 실행됩니다. 물론 메시지 내용을 확인해야합니다.만약블록은 않습니다. 메시지에 "ping"이라고 만 표시되면 "Pong!"으로 응답합니다. - 마지막 줄은 봇 포털의 토큰으로 로그인합니다. 분명히 여기 스크린 샷의 토큰은 가짜입니다. 인터넷에 토큰을 게시하지 마십시오.
이 코드를 복사하고 하단에 토큰을 붙여넣고
index.js
전용 폴더에 있습니다.
봇 실행 방법
터미널로 이동하여 다음 명령을 실행하십시오.
nodemon-index.js 검사
그러면 스크립트가 시작되고 다음을 입력하여 액세스 할 수있는 Chrome 디버거도 시작됩니다.
chrome : // inspect /
Chrome의 Omnibar로 이동 한 다음 '노드 전용 개발 도구'를 엽니 다.
이제 "Logged in as <bot-name>"이라고 표시되어야하지만 여기에 콘솔에 수신 된 모든 메시지 개체를 기록하는 줄을 추가했습니다.
그렇다면이 메시지 객체를 구성하는 것은 무엇입니까? 실제로 많은 것 :
특히 msg.author 및 msg.channel로 액세스 할 수있는 작성자 정보와 채널 정보가 있습니다. Chrome Node devtools에 개체를 로깅하는이 방법을 권장하고, 작동하는 이유를 살펴보기 만하면됩니다. 흥미로운 것을 찾을 수 있습니다. 예를 들어 여기에서 봇은 응답을 콘솔에 기록하므로 봇의 응답이 트리거됩니다.
client.on ( '메시지')
. 그래서 스팸봇을 만들었습니다.
노트 : 재귀를 다루고 싶지 않으니 조심하세요.
서버에 봇을 추가하는 방법
이 부분은 생각보다 어렵습니다. 다음 URL을 가져와야합니다.
https://discordapp.com/oauth2/authorize?client_id=CLIENTID&scope=bot
그리고 CLIENTID를 일반 정보 탭에있는 봇의 클라이언트 ID로 바꿉니다. 신청 페이지 . 이 작업이 완료되면 친구에게 링크를 제공하여 봇도 서버에 추가하도록 할 수 있습니다.
좋아, 그럼 내가 뭘 할 수 있니?
기본 설정 외에 다른 모든 것은 전적으로 귀하에게 달려 있습니다. 하지만 헬로 월드에서 멈춘다면 튜토리얼이 아니니 선적 서류 비치 , 가능한 것이 무엇인지 더 잘 알 수 있습니다. 매우 잘 문서화되어 있으므로 가능한 한 많이 읽어 보시기 바랍니다.
추가하는 것이 좋습니다
console.log (클라이언트)
코드 시작 부분으로 이동하고 콘솔에서 클라이언트 개체를 살펴 봅니다.
여기에서 많은 것을 배울 수 있습니다. 한 번에 여러 서버에 봇을 추가 할 수 있으므로 서버는
길드
지도 개체. 그 개체에는 개인이 있습니다
길드
( "서버"의 API 이름) 길드 개체에는 모든 정보와 메시지 목록이 포함 된 채널 목록이 있습니다. API는 매우 깊고 학습하는 데 시간이 걸릴 수 있지만 적어도 설정하고 학습을 시작하는 것은 쉽습니다.