디스코드봇을 직접 만들어보았다! -레이팅 봇-

2018. 1. 15. 15:26Programming/C#

안녕하십니까! Nitro입니다.

스카이프를 대신하여 많은 게이머들이 애용하고있는!

디스코드.. 오늘은 그 디스코드의 봇에 관해 잠시 들고왔습니다!

Tada~

제가 직접 제작중인 봇입니다.


봇 이름대로 원래는 레이팅 전용 봇으로 만들 예정이였으나.. 기능이 점점 늘어나고 있네요.


일단.. 심심해서 파싱 연습할겸 봇을 만들기 시작했는데.

생각보다 api가 잘 만들어져있고, 계획적이랄까 그래서 열심히 만들어버리게 되었습니다.


저같은경우, nods.js로 코딩하다가 오류때문에 익숙한 C# 으로 넘어왔습니다.

닷넷 프레임워크가 아니라 .Net Core을 사용하며,

Discord.net을 사용하여 코딩하였습니다.


코딩된 프로그램은 위와같이 콘솔형태로 나타나게 됩니다.

뭐.. 코딩하는데에 따라 다르긴 합니다.

(보시다시피 저는 오류나 상태만 나타나고 그 외의 것들은 표시가 안되고 있습니다.)


이 디스코드 봇이라는게, 코딩해놓으면 디스코드 서버에서 관리해주는게 아니라, 특정 컴퓨터에서 호스팅을 해주어야 합니다.

그래야지 봇이 온라인상태가 되고, 재대로 작동합니다. (항시 작동인줄 알았는데 아니더라구요.)


어제밤부터 코딩해서 이러한 결과가 나오게 되었네요.


#help로 명령어를 불러오고,


도움말

-On developing-

심심해서 만드는 봇, 오프라인시 작동 안됨 ㅋㅋㅋ


#help

도움말, 명령어를 불러옵니다.


#Battleground <UserName>
해당 유저의 배그 전적을 불러옵니다.
#pubg 혹은 #bg,  #배그 또한 동일합니다.


#overwatch <UserName>
해당 유저의 배그 전적을 불러옵니다.
#ow 혹은 #옵치 또한 동일합니다.


#Rainbow <UserName>
해당 유저의 레인보우 식스 시즈 전적을 불러옵니다.
#six 혹은 #R6, #레식 또한 동일합니다.


#league-of-legends <UserName>
해당 유저의 롤 전적을 불러옵니다.
#LOL 혹은 #롤 또한 동일합니다.


#cyphers <UserName> <공식전/일반전> (기본값 : 일반전)
해당 유저의 사이퍼즈 전적을 불러옵니다.
#사이퍼즈 혹은 #사퍼 또한 동일합니다.


#namuwiki <검색어>
나무위키에서 해당 검색어를 검색합니다.
#namu 혹은 #나무위키 또한 동일합니다.


#youtube <검색어>
유튜브에서 해당 검색어를 검색합니다.
#yt 혹은 #유튜브 또한 동일합니다.


#info
봇 관련 정보를 가져옵니다.
#ping
..?


위와 같은 명령어를 사용할 수 있습니다.


현제 파싱은 귀찮아서 그냥 다 링크로 연결만 하게 해두었지만...

앞으로 계속 업글할것입니다.

넴. 2시간 28분동안 돌렸는데요.

한번정도 쓴거같..ㅋㅋㅋ


보아하니 heroku 라는 사이트에서 위같은 봇을 호스팅할수 있는것 같습니다만..

우찌해야 할지 잘 모르겠습니다.

(js가 아니라 .net core라 또 방식이 다른듯..)


호스팅만 해결되면 코딩 해볼만도 한데...

아무튼 앞으로 시간나면 디스코드 봇 만드는법을 알려드릴까 합니다만.

될련지 ㅎㅎ

혹시 이걸 어찌 상시 호스팅할 방법을 알고계신분이 있으시다면 도와주세요!


반응형