Glicko-2 알고리즘을 통해 전력 순위를 생성하는 응용 프로그램.
이 응용 프로그램의 기본 아이디어는 전력 순위를 만드는 것입니다. Nintendo Gamecube의 경쟁력있는 Super Smash Bros. Melee를위한 원래 GGSCore는 양측이 서로 경쟁하는 모든 경쟁 분야에 대해 PR을 만들 수 있습니다. 등급은 Glicko-2 알고리즘을 통해 생성됩니다.
이 드롭 박스에서는 즉시 빌드를 찾을 수 있습니다.
이 도구를 사용하는 일반적인 아이디어는 Challonge.com에서 토너먼트를 가져 오는 것입니다. 이를 위해서는 Challonge-Account의 개발자 API 키가 필요합니다. 그런 다음 토너먼트 세트의 플레이어 이름/별명은 플레이어와 연관되어야합니다. 별명을 기존 플레이어와 연결하거나 새 플레이어를 만들 수 있습니다 (첫 번째 토너먼트를 가져올 때는 모든 새로운 플레이어를 만들어야합니다). 승자, 패자 및 경기 날짜로 구성된 결과는 "Match Report"-tab의 테이블에 추가되며 필요한 경우 수동으로 제거 (또는 추가) 할 수 있습니다. 결과를 가져 오면 등급 기간을 입력해야합니다. 알고리즘은 등급 기간 내에 발생한 결과 만 고려합니다. 플레이어가 등급을 정확하게 만들기 위해 (특히 첫 번째 등급 기간 동안) 플레이어가 평가 기간에 최소 10-15 게임을 할 수 있도록 권장됩니다. "매치 보고서"가 너무 클러스터링되면 "등급 등급"-옵션을 사용하여 (실제 PR이 표시되는 경우) 결과 및 등급 기간을 표시하는 테이블을 지울 수 있습니다. 이것은 또한 마무리하기 전에 존재하는 등급 기간의 결과를 제거/추가 할 수 없다는 것을 의미합니다 (따라서 해당 지점까지 등급을 마무리합니다). 그러나 이전부터 이전과 같이 결과를 추가/제거 및 가져올 수 있습니다.
등급 기간 내에 결과 만 등급을 계산하는 데 사용됩니다. 또한 등급 기간 내의 모든 결과는 한 번에 발생하는 것으로 보인다 (Glicko-2 알고리즘의 정의에 의해). 즉, 동일한 출발 값 (의도 된 사용)을 가진 모든 플레이어를 만들면 정확히 같은 값을 가진 사람들의 일치 만있을 것입니다. 따라서 현재 1 등급 기간으로 이와 같은 PR이 있고 모든 플레이어가 1500 등급 포인트로 시작하여 (현재) 2000 등급의 플레이어와의 1000 개 연속 선수의 결과를 입력하면 해당 기간의 전체 계산이 반복되며 그 결과는 1500 등급의 플레이어와 1500 등급의 선수로 인상됩니다. 따라서 첫 번째 기간은 등급 값에 대한 일반적인 아이디어를 얻는 것이 더 적은 영향을 미칩니다. 이것은 아마도 등급 알고리즘에 대한 매우 일반적인 행동 일 것입니다. 이를 피하기 위해 정확한 시작 값을 제공해야하지만 평균 사용자는 아마도 그렇지 않을 것입니다.
이 응용 프로그램은 Glicko-2 알고리즘을 공급하는 Glicko-2 API와 API를 사용하고 계산 결과를 시각화하는 수단을 제공하는 GUI를 제공하는 두 가지 모듈로 구성됩니다. 또한 Glicko-Players의 ID를 별칭과 연관시킵니다.
Glicko-2 API는 다양한 클래스로 구성되어 알고리즘을 적용하는 데 필요한 조건을 설정하고 물론 알고리즘 자체를 설정합니다.
GUI는 사용자가 API를 사용하고 알고리즘의 결과를 표시하는 것을 의미합니다. 또한 플레이어의 별칭을 관리하여 Glicko-Counterpart의 ID와 연결합니다. 그 외에도 모든 결과 (Glicko-Result 클래스 사용)를 생성하고 입력 한 날짜와 함께 저장합니다.
Glicko-2 API는 기존 플레이어에게 알고리즘을 적용합니다. 따라서 등급 기간은 여기에서도 결과를 번들로 구현하여 알고리즘에 제공합니다.
계속하려면 ...
이 repo에서 응용 프로그램을 빌드하면 날짜 형식은 dd.mm.yyyy이며 GlobalVars.h 파일에서 변경할 수 있습니다. "DefaultFormatString"은 여기에 표시된 지정기를 사용하여 변경할 수 있습니다. 표준 미국 날짜 형식은 "%m/%d/%y"이며 빌드는 Dropbox에서 찾을 수 있습니다.
날짜 형식 변경은 Save-Files (주로 results.json, 유일한 저축 날짜)에 대해 걱정하지 않고 수행 할 수 있습니다. 날짜는 항상 ISO 8601 형식으로 저장되며 DefaultFormatString-value에 의해 설명 된대로 만 표시됩니다.
이 응용 프로그램은이 프로젝트를 구축하기 전에 제작 및 연결되어야하는 몇 가지 API를 사용합니다. 필요한 API는 WXWIDGETS, JSONCPP 및 LIBCURL입니다 (7.62.0은 사용하지만 다른 사람들은 물론 작동해야하지만 사용하려면 제공된 프로젝트 파일의 경로를 변경해야합니다). 제공된 Visual Studio 프로젝트 파일에는 응용 프로그램을 성공적으로 빌드하기 위해 다음 폴더 구조가 필요합니다.
└── ┐
├── GGScore
│ └── .git
│ └── PR Tool
├── wxWidget
│ ├── lib
│ └── include
├── jsoncpp-master
│ └── dist
└── curl-7.62.0
├── include
└── lib
이 API는 정적으로 연결되어 있으며 Glicko-2 API 만 동적으로 연결되어 있습니다 (다시 제공되는 프로젝트 파일에 대해서만 말하면).