프로젝트 소개

Waygate는 Elden Ring의 매치메이킹 프로토콜을 기반으로 서버를 구현하려는 시도입니다. 목표는 사용자가 게임을 모딩하면서도 더 바닐라에 가까운 온라인 경험을 제공하는 것입니다. 이는 대대적인 개편이 아닙니다: 게임의 P2P 네트워킹을 더 견딜 만한 것으로 대체하는 것 외에는, 이 모드 자체가 온라인 경험을 향상시키는 기능은 없습니다. 저자는 다른 모드들이 온라인 경험에 대한 조정을 구현할 것으로 기대합니다. 경고에 따르면 약 30-40명과 1년 이상 테스트한 결과 공식 온라인 플레이에서 밴을 당했다는 보고는 없었지만, 서버 사용이 완전히 안전하다는 보장은 없습니다. 설정에는 메시지, 혈흔, 유령 등을 저장할 PostgreSQL 데이터베이스가 필요합니다. 서버는 데이터베이스에 연결되면 마이그레이션을 자동으로 실행합니다. 게임은 연결 시작 및 키 교환을 위해 고정 키를 사용하므로, waygate-generate-keys 도구를 사용하여 설정 중 한 번 키 페어를 생성해야 합니다. 이 도구는 유효한 키 페어와 서버 실행 명령 및 클라이언트의 waygate.toml에 적용하는 방법을 출력합니다. 서버는 바인드 주소, API 바인드 주소, API 키, 데이터베이스 URL, 클라이언트 공개 키, 서버 비밀 키 매개변수로 실행됩니다. 각 매개변수에는 해당 환경 변수도 있습니다. 데이터베이스 URL은 postgresql://USERNAME:PASSWORD@HOST/DATABASE 형식입니다. 서버는 또한 자동 상태 확인, 메시지 브로드캐스트 및 향후 더 많은 기능을 위한 HTTP JSON API를 시작합니다. 이 HTTP 서버는 api-bind 매개변수를 통해 게임 서버와 별도로 바인딩됩니다. API 인증은 들어오는 HTTP 요청과 일치해야 하는 api-key를 사용합니다. 더 많은 API 세부 정보와 예제는 서버의 API README에 있습니다. 클라이언트 설정은 TBD로 표시되어 있습니다. 추가 구성에는 config/logging.yml에 log4rs를 사용하여 지정된 로깅과 config/announcement.yml에 정의된 공지 사항이 포함됩니다. 작동 기능 체크리스트에는 사인별 소환, 퀵매치(아레나), 침입, 플레이어 메시지, 혈흔, 플레이어 유령, 웅덩이별 소환, Fia/Warrior Jar Pool, 그룹 비밀번호 및 Blue Cipher Ring이 포함됩니다. 남은 작업에는 퀵매치 랭킹, 매치 밀도(지도상 PvP 활동) 및 대량의 텔레메트리 관련 메시징이 포함됩니다. 크레딧은 Axi, Tremwil, TLeonardUK (Infini), DEN 테스터, LukeYui, ClayAmore, Steelovsky, Mintal, Metalcrow, Shion, Dasaav 및 auramalexander (Dylan)를 인정합니다. 프로젝트는 AGPL-3.0-only로 라이선스되며, 네트워크를 통해 사용자에게 실행되는 수정 버전은 AGPLv3 섹션 13에 따라 해당 소스를 제공해야 합니다.