4.5 게임 서버가 하는 일
게임 서버가 주로 하는 일은 다음과 같습니다.
• 여러 사용자와 상호 작용
• 클라이언트에서 해킹 당하면 안 되는 처리
• 플레이어의 상태 보관
여러 사용자와 상호 작용은 그림 4-7과 같이 플레이어 둘 이상 간 행동을 중앙에서 중재하여 결과를 판정하는 역할입니다.
그림 4-7에서는 플레이어 1이 서버에 “때렸음을 요청”합니다. 플레이어 1이 플레이어 2를 때리는 판정을 클라이언트에서 최종 판정하게 하면 어떤 일이 벌어질까요?
플레이어 1은 플레이어 1의 공격력을 알고 있고 플레이어 2의 방어력과 생명력, 즉 HP를 알고 있을 것입니다. 플레이어 1의 클라이언트는 이 값들을 토대로 플레이어 2의 생명력이 깎여서 얼마가 되는지 판단할 수 있습니다. 그리고 플레이어 1의 클라이언트는 서버에 ‘플레이어 2의 깎인 후 생명력’을 통보해 주면 됩니다. 서버는 이를 받아 플레이어 1의 클라이언트에 보내 주고, 플레이어 1의 클라이언트에서는 이를 렌더링할 것이고요. 여기까지는 문제가 없습니다.