Discord 애플리케이션을 만드는 데는 약 5분이면 되고, 코딩도 필요 없습니다. Developer Portal에 로그인하고, New Application을 누른 다음, 봇을 추가하고, 필요한 인텐트를 켜고, 토큰을 생성하고, 초대 링크를 만들면 됩니다. 마지막 단계 전까지는 모두 양식을 채우는 작업입니다. 그 뒤에 애플리케이션으로 무엇을 할지, 직접 코드를 작성할지, 아니면 기능 세트를 대신 실행해 주는 호스트에 토큰을 넘길지는 별개의 결정입니다.

"Discord 애플리케이션"이란 무엇인가요

애플리케이션은 Discord 플랫폼에서 무언가를 만들 때 Discord가 생성하는 컨테이너입니다. 이름, 아이콘, 클라이언트 ID가 있고, 선택적으로 봇 사용자를 연결할 수 있습니다. 애플리케이션 자체는 아무 일도 하지 않습니다. 실제로 로그인하고, 메시지를 보내고, 명령어에 응답하는 것은 여기에 연결된 봇 사용자입니다. 실제로는 하나를 만들면 다른 하나도 함께 생기기 때문에 많은 사람이 "애플리케이션"과 "봇"을 혼용하지만, OAuth2 범위(scope)와 권한을 다룰 때는 이 구분이 중요해집니다. 이들은 직접 입력하는 것이 아니라 애플리케이션을 대신해 요청되기 때문입니다.

단계별 방법

  1. Developer Portal 열기. discord.com/developers/applications로 이동해서, 봇을 소유할 계정으로 로그인하세요.
  2. New Application 누르기. 이름을 입력하세요. 이 이름은 애플리케이션의 내부 이름이 되며, 나중에 바꿔도 이미 실행 중인 것에는 영향을 주지 않습니다.
  3. Bot 탭 열기. 봇 사용자가 자동으로 추가됩니다. 여기서 사용자 이름을 설정하고 아바타를 업로드하세요. 봇이 들어가는 모든 서버에 이 정보가 표시됩니다.
  4. 필요한 특권 인텐트 켜기. Privileged Gateway Intents 아래의 Server Members Intent와 Message Content Intent는 기본적으로 꺼져 있습니다. 메시지 내용을 읽거나 멤버의 입장과 퇴장에 반응하는 봇은 두 가지를 모두 켜야 하며, 그렇지 않으면 아예 로그인에 실패합니다.
  5. Reset Token 누르기. Discord가 토큰을 생성하고 딱 한 번만 보여 줍니다. 바로 복사하세요. 기존 토큰을 다시 보여 주는 페이지는 없으며, Reset Token을 한 번 더 누르면 방금 복사한 토큰은 무효가 됩니다.
  6. 초대 링크 만들기. OAuth2 탭의 URL Generator를 사용해 bot과 applications.commands 범위를 체크하고, 봇에 실제로 필요한 권한만 체크한 다음 생성된 링크를 복사하세요.
  7. 서버에 초대하기. 링크를 열고, 관리하는 서버를 고른 뒤 Discord가 보여 주는 권한을 승인하세요.

사람들이 자주 빠지는 실수

  • 애플리케이션 이름과 봇 사용자 이름을 혼동하는 경우. 두 이름은 다를 수 있습니다. 나중에 애플리케이션 이름을 바꿔도 봇 이름은 바뀌지 않으며, 봇 이름은 Bot 탭에서 바꿉니다.
  • 토큰을 어딘가에 붙여넣기 전에 잃어버리는 경우. 복사하기 전에 탭을 닫았더라도 당황하지 마세요. Reset Token을 다시 누르면 새 토큰이 생성됩니다. 이전 토큰은 그냥 사라집니다.
  • 인텐트를 건너뛰고 봇이 온라인이 되지 않는 이유를 궁금해하는 경우. 코드가 포털에서 켜지지 않은 특권 인텐트를 요청하면, 봇이 불완전한 상태로 연결되는 것이 아니라 Discord가 "disallowed intents" 오류와 함께 로그인을 아예 거부합니다.
  • 습관적으로 초대 링크에 관리자(Administrator) 권한을 요청하는 경우. 작동은 하지만, 서버 소유자에게 보여 줄 수 있는 가장 무서운 권한 화면이며 초대가 거절되는 흔한 이유이기도 합니다. 봇이 사용하는 권한만 체크하세요.
A user's bot token runs on a Noxyr node and comes online as their own branded bot. Your token Noxyr node MyBot Online

다음으로 애플리케이션을 어떻게 할지

애플리케이션, 봇 사용자, 토큰을 갖추고 나면 두 가지 길이 있습니다. 봇 코드를 직접 작성하거나 다운로드해서, 내 컴퓨터나 호스트에서 직접 실행할 수 있습니다. 이 내용은 무료 봇 호스팅 가이드에서 다룹니다. 아니면 코드를 전혀 쓰지 않고, 기존 기능 세트를 내 봇의 이름으로 실행해 주는 서비스에 토큰을 붙여넣을 수 있습니다. Noxyr의 커스텀 봇이 바로 이 방식입니다. 티켓, 상점, 보안, 경품 추첨(giveaway), 인증 등 많은 기능을 방금 설정한 이름과 아바타로 응답하며, Top.gg 투표를 대가로 무료로 호스팅해 줍니다. 위의 두 가지 인텐트를 포함한 전체 설정 과정은 커스텀 봇 문서에 있습니다.

어떤 길을 고르든, 방금 만든 애플리케이션이 두 가지 모두에 필요한 전부입니다. 애플리케이션을 만든다고 해서 어떤 방향으로든 묶이지는 않습니다.

자주 묻는 질문

Discord 애플리케이션을 만들려면 코딩을 알아야 하나요? 아니요. 애플리케이션, 봇 사용자, 토큰을 만드는 과정은 모두 Developer Portal에서 클릭만으로 할 수 있습니다. 봇의 동작을 직접 작성하기로 할 때만 코딩이 필요합니다.

클라이언트 ID와 봇 토큰의 차이는 무엇인가요? 클라이언트 ID는 공개된 값으로, 모든 초대 링크에 들어 있고 공유해도 안전합니다. 토큰은 인증 정보라서, 가진 사람은 누구든 봇을 로그인시킬 수 있습니다. 비밀번호처럼 다루세요.

나중에 애플리케이션이나 봇 이름을 바꿀 수 있나요? 네. 애플리케이션 이름과 봇 사용자 이름 모두 포털에서 언제든 바꿀 수 있으며, 토큰, 봇이 들어 있는 서버, Discord 사용자 ID에 연결된 다른 항목은 잃지 않습니다.

모든 봇에 특권 인텐트가 필요한가요? 아니요. 메시지 내용을 읽는 봇(Message Content Intent)이나 멤버의 입장/퇴장 및 역할 데이터가 필요한 봇(Server Members Intent)만 켜야 합니다. 슬래시 명령어만 사용하는 간단한 봇은 둘 다 필요 없습니다.

Discord 애플리케이션 만들기는 무료인가요? 네. 애플리케이션을 만들고, 토큰을 생성하고, 어디든 초대하는 데 비용이 들지 않습니다. 돈이 드는 부분은 봇을 실행하는 코드인데, 무료 호스트나 Noxyr 커스텀 봇 같은 서비스를 쓰지 않는 경우에 해당합니다.

토큰을 잃어버렸거나 유출됐다고 생각되면 어떻게 하나요? Bot 탭으로 돌아가 Reset Token을 누르세요. 이전 토큰은 사용 중인 모든 곳에서 즉시 작동을 멈추고, 필요한 곳에 붙여넣을 새 토큰을 받게 됩니다.

애플리케이션을 만들었다면, 초대 링크를 제대로 만드는 방법은 초대 링크와 OAuth2 범위 가이드를 참고하세요. 또는 Noxyr를 무료로 추가해서, 코드를 한 줄도 쓰지 않고 새 애플리케이션을 완전히 작동하는 봇으로 만들어 보세요.