권한 있는 서버 FAQ

권한 있는 서버는 클라이언트가 명령/정보를 서버로 보내는 설정입니다. 서버는 이를 확인하고 그에 따라 프록시 및/또는 클라이언트를 갱신합니다. 예를 들어, 클라이언트가 1000m/s를 이동하려고 하지만, 서버는 클라이언트의 최대 속도가 10m/s 임을 알고 있습니다. 클라이언트는 잠시 동안 매우 멀리 이동하는 것처럼 보일 수 있지만 서버에 의해 올바른 위치로 다시 이동됩니다. 권한이 클라이언트를 압도합니다. 플레이어가 해킹된 클라이언트를 사용하여 서버가 올바른 위치로 다시 이동할 수 없는 경우에도 서버의 위치는 반영되지 않습니다. 해킹된 클라이언트는 동기화되지 않아 이런 방식은 사용할 수 없습니다. 서버의 권한은 모든 설정 방법에 따라 달라집니다. 그렇게 하지 않는한 자연적으로 발생하지 않습니다.

이 모델은 클라이언트가 다른 플레이어와 경기하는 경쟁 게임에 적합하며, 공동 스토리 모드, “호드” 모드 등이 있는 게임에는 필요하지 않을 수 있습니다.

장점

  1. 클라이언트 측 해킹은 훨씬 더 어렵습니다(대부분의 시나리오에서는 거의 불가능합니다).
  2. 누가 권위를 가지고 있으며 모든 클라이언트에게 사용되는 하나의 '국가'가 있다는 것은 분명합니다.

Back To Top

단점

  1. 입력 지연을 방지하려면 클라이언트 측 예측이 필요합니다. 일부 시나리오와 특정 게임 메카닉에서는 구현하기 어려울 수 있습니다.
  2. 서버는 더 많은 계산을 수행해야 합니다(출력을 가져오고 클라이언트에 확인하려면 모든 데이터를 처리해야 함). 이렇게 하면 서버 하드웨어가 더 비싸질 수 있습니다.

Authorative Server를 사용하면 모든 사람의 경험을 망치는 플라이 해킹, noclip, invulnerability 등과 같은 가장 끔찍한 해킹을 방지할 수 있습니다. 페이지 끝에 있는 목록에 있는 모든 게임에 대해 속임수를 검색하면 FPS 게임의 “aimhacks”, MOBA의 “scripts”, 위의 모든 게임에 대해 “ESP” 가 표시될 수 있습니다. MOBA는 일반적으로 클라이언트가 볼 수 없는 것에 대한 데이터를 전송하지 않지만(즉, 전쟁의 안개를 해킹할 수 없음) 일반적으로 분명하지 않은 모든 종류의 경고와 정보가 제공됩니다.

항상 그렇듯이, 여러분은 부정행위를 하는 것을 어렵게 만들기 위해 안티 치트를 사용할 수 있지만, 어떤 일이 있어도 부정행위는 항상 가능할 것입니다. 암호화 기능이 매우 안정적입니다. 여러분이 할 수 있는 것은 어떤 종류의 속임수가 가능한지 범위를 좁히는 것입니다. 그리고 이것은 게임 플레이 서버 측과 관련된 모든 것을 만드는 것입니다.

게임에 경쟁력 있는 멀티플레이어가 없는 경우 권한 없는 멀티플레이어로 만들 수 있습니다. 각 클라이언트는 자신의 플레이어를 인스턴스화하고, 메카님, 체력, 무기/능력치 등과 같이 다른 플레이어가 보아야 할 가치를 복제합니다. Bolt 히트 박스/물리, 명령 또는 할당 제어에 신경 쓸 필요가 없습니다. 권한 있는 게임을 만드는 것은 간단하지 않습니다. 이러한 이유로 우리는 게임을 만들 때 명심해야 할 몇 가지 노트를 정리했습니다.

  1. Photon Bolt는 슈팅 게임(고급 튜토리얼)에 대해 완전하게 권위 있는 게임의 샘플이 함께 제공됩니다. 여기에는 클라이언트 측 예측 및 지연 보상이 포함됩니다.
  2. 클라이언트가 Bolt 설정을 사용하여 엔티티를 인스턴스화할 수 없는지 확인합니다
  3. 플레이어를 제외한 게임 플레이와 관련된 모든 것은 서버 측(예: 인벤토리, 점수, NPC, 플레이어가 세계에서 만든 객체 등)이어야 합니다.
  4. 클라이언트가 소유할 수 있는 것은 없으며, 명령어는 입력 외에 다른 것을 지시할 수 없어야 하며, 게임 플레이에 영향을 미치는 이벤트는 클라이언트에서 보낼 수 없어야 합니다.

서버 권한에 대해서는 다음을 더 읽어보십시오:

Back To Top

권위있는 서버를 사용하는 게임 예제

대부분의 게임은 부분적으로 권위적이거나 전혀 그렇지 않습니다. 다음은 이 기술을 사용하는 게임의 목록 일부입니다.

  게임
완전 권한
  • 카운트 스트라이크
  • 오버워치
  • 월드오브 탱크
  • ARK
  • 리그오브 레전드
  • 도타 2
대부분 비-권한
  • 러스트
  • 더 디비전
  • 더 포레스트
결정론적 네트워킹
  • 스타크래프트 2
  • 히어로즈 오브 더 스톰
  • 헤일로 리치 (Coop)

PS: 결정론적 내용은 Photon Bolt에서 지원되지 않습니다. 대신 Photon Quantum을 사용하십시오.

Back To Top

전용 서버

Photon Bolt는 게임 서버를 호스팅 할 때 다양한 모델(아래에 설명)을 지원하므로 하나만 선택할 필요가 없습니다.

  장점 단점
호스트하는 공용 서버
  • 호스트 마이그레이션 없음
  • 보다 일관된 플레이어 환경을 제공
  • 인스턴스, 데이터베이스 등에 대한 전체 서버 충실도를 제공
  • 클라이언트가 다른 클라이언트의 IP를 볼 수 없음
  • 비용이 듦
  • 설정과 관리에 시간 소요
플레이어가 호스트한 전용 서버
  • 공식 서버와 동일한 장점
  • 서버에 비용 지불이 필요없음
  • 플레이어들이 서버를 커스터마이징 할 수 있음
  • 서버 소유자는 플레이어를 학대 가능.
  • 서버 유연성이 낮음. 예를 들어 MMO를 만들 수 없음.
  • 서버가 사라지면 플레이어는 서버에 있었던 진행 상태가 사라질 수 있음
P2P (리슨 서버)
  • Photon Cloud 통합 또는 Steam 통합으로 쉽게 연결할 수 있음
  • 전용 서버를 호스팅하는 것보다 비용이 적게 듦
  • 수 많은 플레이어가 함께 플레이하고 싶다면 대기 시간이 매우 짧은 상태에서 플레이할 수 있음
  • 호스트 마이그레이션, 그렇지 않으면 게임은 종료되고 메뉴로 돌아 감
  • 호스트의 인터넷 연결 상태가 나쁘거나 하드웨어가 좋지 않으면 문제가 발생하게 됨
  • 호스트 역할을 하는 플레이어는 서버 권한인 경우 서버 권한 우회 기능을 커닝할 수 있음
  • 호스트 플레이어는 모든 클라이언트의 IP를 볼 수 있음

릴레이 서버를 사용하려는 경우 볼트에 Photon Cloud 지원이 제공됩니다. 이 지원에는 Bolt와 Photon 서비스가 통합되어 있습니다. 이것은 매치메이킹과 로드밸런싱을 합니다. Gamelift, Playfab 또는 다른 서비스를 사용할 수도 있습니다.

이러한 모델이 적용된 게임의 예는 다음과 같습니다:

  게임
공식 전용 서버
  • 월드 오브 워크래프트
  • 월드 오브 탱크
  • 로켓 리그
  • 도타 2
  • 리그 오브 레전드
  • Aftercharge
  • 오버워치
  • PUBG
플레이어 호스트된 전용 서버
  • CSGO
  • 러스트
  • ARK
  • DayZ
  • 코난 엑자일
  • 마인크래프트 (P2P 모드도)
P2P (리슨 서버)
  • 헤일로 리치 (호스트 마이그레이션)
  • 데스티니 (하이브리드 P2P 와 “constant” 호스트 마이그레이션” 서버 클라이언트 )
  • 포 아너 (호스트 마이그레이션)
  • 고스트 리콘 와일드랜드
  • Dark Souls Franchise
  • Call of Duty Franchise
  • 더 포레스트
  • 좀비 바이킹
  • Knight Squad

기술문서 TOP으로 돌아가기