공부겸 취미로 진행하는 프로젝트라 진행속도가 다소 더딥니다.
지금까지 구현해놓은 기능은 아래와 같습니다.
봇 런처
- 일렉트론을 이용해 GUI를 구성하였습니다.
- 봇 런처를 통해 호스트를 열고 닫을 수 있습니다.
- chromium browser를 headless모드로 실행하는 옵션이 있습니다.
- 슈퍼어드민 인증키를 관리할 수 있습니다.
- 방에 접속중인 플레이어들에게 전체공지를 위해 메시지를 보낼 수 있습니다.
게임 진행에 도움이 되는 기능
- 방장이 없는 경우 자동으로 다른 플레이어에게 권한을 부여합니다. 잠수 모드를 설정한 플레이어는 방장이 될 수 없습니다.
- 방장이 임의로 맵을 변경할 수 없습니다.
- 잠수 모드를 설정하지 않고 특정 시간동안 잠수하는 경우 자동으로 추방합니다.
- 중복하여 접속할 수 없습니다.
- 밴 리스트에 등록된 플레이어는 접속시 자동으로 추방합니다.
- 게임 진행과 관련하여 안내 메시지를 출력합니다.
- 게임 시작시 변형된 피타고리안 승률 공식을 사용하여 양 팀의 개별적인 기대승률을 보여줍니다.
- 방장이 임의로 다른 플레이어를 영구추방할 수는 없습니다.
일반 플레이어를 위한 기능
- 다양한 명령어를 지원합니다.
- !help 명령어를 사용해 도움말을 볼 수 있습니다.
- !afk 명령어를 사용해 잠수 설정을 할 수 있습니다. 잠수 설정을 한 경우 게임 투입이 되지 않으며 잠수로 인한 자동추방도 되지 않습니다.
- !stats 명령어를 사용해 자신의 전적을 모든 플레이어에게 보여줄 수 있습니다. 초기화도 가능합니다.
- !poss, !streak 명령어를 사용해 현재 진행중인 경기의 점유율과 연승 기록을 볼 수 있습니다.
- !list 명령어를 사용해 각 팀원들의 고유번호(#숫자)를 확인할 수 있습니다.
방장을 위한 기능
- !freeze 명령어를 사용해 방 전체의 채팅을 금지할 수 있습니다.
- !mute 명령어를 사용해 특정 플레이어의 채팅을 금지할 수 있습니다.
슈퍼어드민을 위한 기능
- 별도로 설정된 인증키를 통해 로그인하여 전용 기능을 사용할 수 있습니다.
- 방장 권한(어드민)을 획득할 수 있습니다. 더불어 다른 일반 방장 플레이어들의 권한을 박탈할 수도 있습니다.
- 다른 플레이어를 추방할 수 있습니다.
- 영구추방 리스트를 초기화할 수 있습니다.
- 맵을 변경하거나 다른 플레이어를 영구추방하는 것이 가능합니다.
이외에 다른 기능들도 있고, 지속적으로 버그를 고치며 새로운 기능을 추가하는 중입니다.
'프로그래밍 > 프로젝트:Haxbotron' 카테고리의 다른 글
며칠동안 봇을 다소 개선하였습니다 (0) | 2020.11.07 |
---|---|
Haxbotron 헥스볼 봇 근황과 자평 (3) | 2020.10.23 |
첫 릴리즈를 위해 이런저런 손을 보고 있습니다. (0) | 2019.07.31 |
Haxbotorn#1 기본적인 구동 방식 (0) | 2019.06.29 |
Haxbotron 프로젝트를 시작했습니다. (0) | 2019.06.29 |