리그오브 레전드 경기 배팅 디스코드 봇 개발
Riot API 를 사용하여 유저가 직접 자신의 경기를 디스코드에 공유하고, 게임머니(BetRiotBot 내 가상화폐)를 배팅할 수 있다.
-
로그인
-
해당 봇이 적용된 서버에 새로운 유저가 들어올경우 다음과 같은 로직을 실행함
-
만약, 해당 유저가 유저 데이터베이스에 없는 유저일경우
-> 개인 DM 을 통해 회원가입 진행 (라이엇 닉네임)
이떄, 소환사 아이콘 변경을 통하여 본인 계정임을 인증함.
이후, 인증에 성공할시 해당 라이엇 계정 정보와함께 DB에 유저정보 저장
-
만약, 해당 유저가 유저 DB에 존재할경우,
서버 DB에 해당 유저 ID 저장
-
-
만약, 이미 인증된 라이엇 계정에 대해, 타 디스코드 유저가 인증을 실행할경우,
기존 디스코드 유저는 재인증을 거치게 하고, 신규 유저의 경우 이메일로 자신의 계정이라고 증명할 수 있는 자료를 보내라고 메세지를 보냄
-
-
배팅
-
포인트
-
로컬베팅 배팅을 시작할경우, 해당 유저의 라이엇 닉네임을 불러와, 10분 이 지나가거나 즉시 배팅시작 명령어를 실행할경우, 해당 플레이어가 게임중인지를 판별하여 배팅을 시작한다.
배팅 시작시 임베드 메서지로 배팅에 대한 정보와 예상 승률이 표시된다. (승률계산은 타 API 사용예정)
이후 게임이 끝나기 10분전까지 게임에 배팅을 할 수 있으며, 이후에 한 배팅은 전부 취소된다.
게임이 끝나면 예상 배당공식에 따라 배팅에 성공한사람(승리여부를 맞춘사람)은 포인트를 배팅한 포인트의 배수만큼 얻고, 실패한사람은 배팅에 건 포인트를 잃는다.
-
클로벌 베팅 1시간에 한번 해당 봇이 적용된 전체 서버에 글로벌 베팅이 열린다.
featured-games api를 통하여 현재 진행중인 게임중 하나를 불러와, 해당 게임의 승리 여부를 배팅할 수 있으며, 로컬배팅보다 땃을떄 배수가 높다
-
-
프로필
- 자신의 디스코드 이름, 포인트 및 간단한 롤 전적을 확인할 수 있다