게임용 채점 시스템을 개발하는 방법
Tags: realtime, simultaneously, concurrentconnections, unity3d
Published: 2023-12-01 13:41:59

점수 시스템은 게임 _중에_ 플레이어에게 피드백을 제공하는 방법으로 비디오 게임에서 구현됩니다. 리더보드는 레벨이나 매치가 끝날 때 플레이어의 결과 또는 전 세계 최고 점수를 표시하지만, 점수 시스템은 게임 중 중요한 정보를 제공할 뿐만 아니라 즐거운 경험과 점수 향상을 위한 리플레이를 장려하는 가치 있고 매력적이며 보람 있는 피드백을 제공하는 방법으로도 필수적입니다. 점수 시스템에는 플랫포머 게임인 _슈퍼 마리오 브라더스에서_ 동전을 모을 때 플레이어의 점수가 증가하는 것처럼 간단한 것부터 1인칭 슈팅 게임인 _오버워치 2에서_ 치열한 5대5 대전에서 아군과 적군의 플레이어 통계를 추적하는 것까지 다양한 메커니즘이 포함되어 있습니다.

![Game scoring in OW2 - Develop a scoring system](https://images.ctfassets.net/3prze68gbwl1/Ce2cvtOP6ExtZky0mAw7D/312ef1178366ad79b91056356a6633e6/OW2_In-Game_Stats.png)

이 두 게임이 매우 다른 것처럼, 점수 시스템에는 플레이어가 현재 게임 상태에 대한 피드백을 받고, 성취감을 느끼며, 게임 중에 자신의 실력을 향상시키기 위해 도전할 수 있도록 하는 다양한 종류의 메커니즘이 구현되어 있습니다. 이러한 메커니즘은 재플레이를 유도하는 보상 시스템을 생성합니다. _퐁이나_ _슈퍼 마리오 브라더스와_ 같은 게임이 출시된 이후 게임이 더욱 복잡해지면서 채점 방식을 구성하는 메커니즘도 복잡해졌습니다.

계속 읽으면서 채점 시스템을 구성하는 채점 메커니즘, 채점 시스템을 구축하는 데 필요한 단계, 플레이어를 하나로 모으는 대화형 소셜 채점 시스템을 구축하는 방법에 대해 알아보세요.

비디오 게임의 채점 메커니즘 이해
------------------

채점 메커니즘은 플레이어가 게임 내에서 자신의 진행 상황을 추적하는 데 도움이 되는 채점 시스템을 구성하는 개별 요소입니다. 일부 채점 시스템은 게임 중 플레이어에게 피드백을 제공하는 방법으로 하나의 채점 메커니즘만 사용하는 매우 간단한 시스템도 있지만, 대부분의 게임은 매력적이고 유용하며 독특한 피드백 경험을 제공하기 위해 여러 채점 메커니즘을 조합하여 구성됩니다.

### 점수

가장 간단하지만 가장 강력한 점수 시스템 중 하나는 게임을 플레이하는 동안 플레이어 또는 객관적인 점수를 추적하는 것입니다. 최초의 아케이드 게임 중 하나인 _Pong은_ 테니스를 기반으로 한 게임으로, 상대 플레이어가 성공한 골의 수를 추적합니다. 이 점수는 게임의 목표에 기여하며, 첫 번째 플레이어가 11점에 도달하면 게임이 완료됩니다. 점수는 플레이어가 쉽게 알 수 있도록 화면 상단에 큰 숫자로 표시됩니다.

![Scoring system for games - A scoring system](https://images.ctfassets.net/3prze68gbwl1/KZh6w99euanyDmQGlhlFF/968aef927a904f6941e2e93ce7126014/Screen_Shot_2022-11-09_at_1.09.28_PM.png)

### 시간

시간 추적은 게임 중 플레이어의 성과를 추적하기 위해 일찍부터 널리 채택된 또 다른 지표입니다. 시간 추적은 _그란 투리스모와_ 같은 레이싱 게임에서 사용되며, 플레이어는 여러 바퀴를 완주하고 레이스 중 가장 빠른 시간을 달성하여 서로 또는 자신과 경쟁합니다. 게이머는 계속해서 더 빠른 기록을 달성하여 지역 및 전 세계에서 더 높은 순위를 차지하도록 장려됩니다.

직접 개발하는 것 외에도 많은 커뮤니티 회원들은 다음과 같은 방법으로 자신이 좋아하는 게임을 플레이하고 도전하고 있습니다. [스피드 러닝](https://www.speedrun.com/)가장 빠른 시간 안에 게임을 완료하는 것을 말합니다. 가장 빠른 기록을 달성하기 위해 스피드 러너들은 특정 체크포인트를 기준으로 진행 상황을 추적하며 자신의 개인 기록이나 최고 기록을 경신하기 위해 노력합니다. 다음과 같은 이벤트도 있습니다. [게임 빨리 끝내기](https://gamesdonequick.com/)와 같은 자선 게임 마라톤 대회에서 스피드 러너들이 가장 빠른 기록을 달성하기 위해 서로 경쟁하는 이벤트도 있습니다.

### 생활/건강

레벨, 게임 또는 매치에서 플레이어의 진행 상황을 추적하는 방법으로, 많은 캐릭터(및 적)는 생명력 표시줄과 정해진 생명력을 가지고 있습니다. 체력 바는 플레이어가 얼마나 성공적으로 수행하고 있는지, 즉 게임이나 레벨을 얼마나 진행했는지를 나타냅니다. 생명력 바의 점수가 0으로 떨어지면 생명력이 소모되고 플레이어에게 다른 생명력 바가 부여됩니다.

_스트리트 파이터_ 시리즈나 _파이터즈 히스토리와_ 같은 격투 게임은 현재 컨트롤하는 플레이어와 상대방의 체력 바를 게임 점수로 표시하여 플레이어가 현재 경기에서 어떤 성과를 거두고 있는지를 보여줍니다. 가장 먼저 체력을 모두 잃는 플레이어는 경기에서 패배합니다.

![Tracking player progress - Game scoring](https://images.ctfassets.net/3prze68gbwl1/5RRB08rOdWryuSkwplwF2N/f2e300b5f1aa7bc6a934b483543cdad2/Screen_Shot_2022-11-09_at_2.59.18_PM.png)

### 수집

_슈퍼 마리오_ 플랫폼 게임은 게임의 각 레벨을 통해 얼마나 많은 코인을 획득했는지 추적합니다. 코인이 100개에 도달하면 플레이어는 패배하더라도 게임을 계속 플레이할 수 있는 추가 생명을 얻게 됩니다. 또한 플레이어는 파이어볼을 쏘는 등 플레이어가 사용할 수 있는 능력을 잠금 해제하는 파워업 아이템을 수집할 수도 있습니다. 이는 플레이어가 게임을 진행할 수 있는 더 많은 능력을 얻는다는 의미에서 점수 매기기 메커니즘입니다.

![Scoring by collecting in Super Mario games](https://images.ctfassets.net/3prze68gbwl1/2JwzzO4f9od9iugtQKkpRi/54d3ae48d7876f141705be14e3dd3d2d/Screen_Shot_2022-11-09_at_2.59.01_PM.png)

일부 게임에서는 다양한 점수 메커니즘을 조합하여 플레이어가 레벨을 얼마나 잘 수행했는지를 평가하는 데 사용합니다. 액션 어드벤처 게임 시리즈인 _데빌 메이 크라이에서는_ 플레이어가 적을 쓰러뜨리며 레벨을 진행합니다. 아이템을 수집하거나 _사용하면서_ 주어진 시간 내에 여러 가지 행동을 성공적으로 수행한 플레이어는 레벨을 완료할 때 더 높은 점수를 받게 됩니다. 경기 종료 시에는 플레이어의 성적을 나타내는 등급이 표시되지만, 적과 싸우는 동안에는 현재 점수가 표시되어 플레이어의 현재 성적을 나타냅니다.

### 통계

_Pong_ 이후 게임이 더욱 복잡해지고, 특히 온라인 경쟁 멀티플레이어 게임이 급증하면서 점수 시스템은 단순히 플레이어의 점수를 추적하는 것보다 더 발전된 메커니즘이 필요했습니다. 5명으로 구성된 두 팀이 전투를 벌여 상대 팀의 넥서스(본진)를 파괴하면 승리하는 멀티플레이어 온라인 배틀 아레나(MOBA) 게임인 _리그 오브 레전드에서는_ 플레이어가 게임 내에서 유용한 통계와 함께 현재 점수에 대한 자세한 분석을 볼 수 있습니다.

![Detailed statistics in League of Legends game scoring](https://images.ctfassets.net/3prze68gbwl1/1zgLF0pZVyE5aAEniG04oB/782f4c4149e351444e6765306e8b313d/LoL_Stats.png)

_오버워치 2의_ 게임 내 점수 시스템에 표시되는 것과 유사하게 플레이어는 자신의 킬, 사망, 어시스트, 점령한 목표, 획득한 골드, 심지어 플레이어별로 게임 내에서 구매한 아이템까지 확인할 수 있습니다. 또한 다른 플레이어의 정보를 확인하여 게임 내 진행 상황을 파악하고, 상대 팀원이 구매한 아이템을 바탕으로 대응 전략을 세울 수도 있습니다. 이를 통해 상대 팀원 간의 간접적인 상호작용이 가능합니다.

### 콘텐츠 잠금 해제

_슈퍼 스매시 브라더스와_ 같은 대전 격투 게임은 플레이어의 현재 생명력과 체력 바를 백분율 막대로 표시하여 경기 진행 상황을 알려주지만, 일부 캐릭터, 스테이지, 아이템은 특정 조건이 충족될 때까지 사용할 수 없습니다. 이 콘텐츠는 나중에 설명하는 업적 점수 매기기와 함께 특정 횟수의 경기를 플레이하거나, 특정 캐릭터를 여러 번 플레이하거나, 특정 조건이 충족된 게임에서 여러 번 승리하면 잠금 해제됩니다. 이 콘텐츠를 잠금 해제하면 플레이어는 전체 게임을 완료하는 데 일정량의 진척도를 얻을 수 있으며, 지속적인 반복 플레이와 게임 숙달을 위해 노력할 수 있습니다.

![Unlocking content through achievements and scoring](https://images.ctfassets.net/3prze68gbwl1/vzMBvv8FYZyrxmCBsVbph/f32943c14a3e515fc52a250faa6583df/2022110915414100-0E7DF678130F4F0FA2C88AE72B47AFDF.jpg)

### 경험치 및 레벨 업

일부 게임에서는 레벨업이라는 개념을 통해 플레이 가능한 캐릭터 자체를 향상시킴으로써 점수 메커니즘을 정의합니다. _파이널 판타지_ 시리즈와 같은 롤플레잉 게임(RPG)의 핵심 개념은 플레이어가 적을 물리치거나, 목표를 완료하거나, 경험치를 부여하는 아이템을 소비하는 것입니다. 플레이어의 캐릭터가 특정 경험치를 획득하면 레벨이 올라가고, 레벨이 올라갈수록 플레이어 캐릭터의 힘이 강해집니다. 이 개념은 플레이 가능한 캐릭터 자체와 플레이어가 장착할 수 있는 아이템에 적용할 수 있습니다. 경험치와 레벨 업은 플레이어의 현재 게임 진행 상황에 대한 피드백을 제공하며, 이를 통해 플레이어는 더 강한 적에게 도전하여 게임을 완료할 수 있습니다.

![Experience and level-ups in game scoring](https://images.ctfassets.net/3prze68gbwl1/1fvROiI31yrOHuylJv4BtT/5bcf06a9650718022b95025a8d251114/FF9_Screenshot.png)

일부 게임에서는 이러한 경험치 및 레벨업 점수 메커니즘에 대해 독특한 접근 방식을 취합니다. _엘든 링은_ 이러한 메커니즘과 앞서 설명한 수집 메커니즘을 모두 결합한 게임입니다. 플레이어는 적을 쓰러뜨릴 때 수집하는 '룬'을 수집합니다. 플레이어는 이 룬으로 캐릭터의 레벨을 올리거나 아이템을 구매하거나 장비를 강화할 수 있습니다. 룬은 총합으로 표시되며, 새로운 룬이 수집될 때마다 표시됩니다.

![Elden Ring Souls - Develop a scoring system for a game](https://images.ctfassets.net/3prze68gbwl1/1TKKk0JeBgeChUlJyqg7Fb/fcbdbfe1186cb803590d8806d24d7636/Elden_Ring_Souls.png)

### 업적

도전 과제는 플레이어가 보상과 성취감을 위해 달성할 수 있는 개인 목표이며, 일반적으로 _월드 오브 워크래프트와_ 같은 대규모 멀티플레이어 온라인 롤플레잉 게임(MMORPG)의 필수 요소입니다. 플레이어가 게임을 시작할 때부터 접근할 수 있는 도전 과제는 특정 기준을 수행하는 동안 퀘스트와 스토리라인에서 플레이어의 진행 상황을 시각적/문자로 표현한 것입니다. 도전과제는 일반적으로 플레이어가 게임을 완료하는 데 영향을 미치지는 않지만, 어려운 도전과제를 완료했을 때의 보상, 성취감, 신뢰감을 얻기 위해 더 오래 플레이하도록 유도합니다.

![World of Warcraft Achievements - Scoring system](https://images.ctfassets.net/3prze68gbwl1/3QJubv0tsXx1rgGtr7sr7s/937123dba5af1b4fbc4b211693846db4/World_of_Warcraft_Achievements.png)

### 게임 점수 시스템을 개발하는 단계

이제 채점 시스템을 구성하는 다양한 채점 메커니즘에 대해 배웠으니, 자신의 게임에 가장 적합한 것이 무엇인지 고려해야 합니다. _퐁이나_ _스페이스 인베이더와_ 같은 오래된 게임은 하드웨어의 한계로 인해 덜 복잡했기 때문에 항상 현재 점수, 시간 또는 플레이어의 남은 생명 수를 표시했습니다.

![Steps for developing a scoring system for a game](https://images.ctfassets.net/3prze68gbwl1/7uAZzdLVX8XDYD25kaAqlT/c5ba77e0ac6232ce9166483da0d8f513/Screen_Shot_2022-11-09_at_2.52.16_PM.png)

하지만 최신 게임의 경우 플레이어에게 항상 이 정보를 표시해야 할까요, 아니면 버튼을 눌러 게임 내 통계 창을 불러올 수 있도록 해야 할까요? 현재 목표 점수와 같은 최소한의 정보만 화면에 표시하고 나머지는 리더보드에 표시해야 할까요?

플레이어에게 최고의 피드백 환경을 제공하기 위해 모든 점수 메커니즘을 사용하고 싶을 수도 있습니다. 하지만 채점 시스템을 구성하는 채점 메커니즘의 유용성은 게임의 장르, 플랫폼, 게임의 온라인 연결성에 따라 달라진다는 점을 명심하세요.

### 장르

게임이 속해 있는 장르 또는 스타일은 게임 채점 시스템을 개발하는 첫 번째 출발점입니다. 플레이어는 선호하는 게임 유형이 있지만, 일부 장르는 본질적으로 다른 장르보다 더 복잡합니다. RPG 및 기타 오픈 월드 게임에서는 플레이어의 진행 상황에 대한 피드백을 제공하기 위해 경험치 및 레벨 업 점수 메커니즘이 필요합니다. 이러한 장르의 게임에는 업적이 유용한 추가 점수 메커니즘이지만, 시간이나 통계 게임 메커니즘은 필요하지 않을 수 있습니다. 반면에 1인칭 슈팅(FPS) 게임은 특히 경쟁이 치열한 온라인 대전에서 플레이어의 성과를 정확하게 측정하기 위해 체력, 통계, 업적, 심지어 수집 점수 메커니즘까지 포함하는 복잡한 점수 시스템이 필요합니다.

일반적으로 장르의 유형에 따라 채점 시스템의 일부로 특정 시간에 어떤 채점 메커니즘을 표시할지 결정됩니다. 레이싱 게임의 경우 플레이어의 사용자 인터페이스에 언제든지 현재 시간을 표시해야 하지만, 플레이어가 랩 체크포인트를 통과하는 즉시 플레이어의 최고 기록만 표시할 수 있습니다. FPS 게임에서 플레이어가 다른 플레이어를 제거하면 상호작용이 발생했음을 나타내는 그래픽이나 텍스트가 표시되어야 하지만, 곧바로 화면에서 제거되어야 합니다. 그러나 점수 업데이트에 대한 유용한 피드백을 제공하기 위해 활성 플레이어의 현재 탄약 잔량, 능력 재사용 대기시간, 객관적인 결과는 항상 표시되어야 합니다.

![In-game overlay for game scoring in OW2](https://images.ctfassets.net/3prze68gbwl1/70lECaBkpLZhpsJnDqP67T/f9b92e6b751a2d6d0317ed1c706b6712/OW2_In-Game_Overlay.png)

같은 장르의 게임이라도 서로 돋보일 수 있는 고유한 특징이 있지만, 여러분이 만든 게임은 여러분이 플레이하거나 본 좋아하는 게임에서 영감을 받았을 가능성이 높습니다. 잘 작동한다고 생각되는 다른 게임의 채점 메커니즘을 조사하고 이를 자신의 채점 시스템에 어떻게 통합할지 생각해 보아야 합니다. 진정으로 독특한 채점 시스템을 만들고 싶다면 누락되었거나 독특한 경험이 될 수 있다고 생각되는 부분을 구현하기 시작하세요. 채점 시스템을 디자인할 때는 채점 시스템의 모양과 느낌에 영향을 미치므로 대상 플랫폼을 염두에 두어야 합니다.

### 플랫폼

다른 게임에서 채점 메커니즘에 대한 영감을 얻어 나만의 채점 시스템을 설계할 때는 게임을 출시할 플랫폼에 초점을 맞춰야 합니다.

Windows, Mac, Linux를 포함한 데스크톱용 게임은 게임의 채점 시스템을 구동하는 데 필요한 리소스와 채점 시스템을 구성하는 개별 채점 메커니즘에 맞는 화면 크기 측면에서 더 많은 유연성을 확보할 수 있습니다. 또한 플레이어는 키보드, 마우스, 컨트롤러 등 플레이어를 업데이트하는 채점 메커니즘에 영향을 줄 수 있는 다양한 입력에 액세스할 수 있습니다. 또한 Steam의 앞서 해보기 프로그램과 같은 체험판으로 게임을 출시하는 경우 게임의 채점 시스템에 대한 플레이어의 소중한 피드백을 얻을 수 있으므로, 게임을 개발하는 동안 플레이어의 피드백을 반영하여 채점 시스템을 업데이트할 수 있습니다.

콘솔(PlayStation, Xbox, Nintendo)에 게임을 퍼블리싱하려는 개발자는 개발할 표준 콘솔이 있고, 더 큰 텔레비전 화면에서 플레이할 수 있도록 더 넉넉한 화면 공간을 확보할 수 있습니다. 하지만 일반적으로 피드백 및 업데이트는 가정용 콘솔 퍼블리셔와 협력해야 하고, 시스템에서 점수 매기기와 상호작용하거나 스코어링 메커니즘을 볼 수 있는 컨트롤러가 제한되어 있기 때문에 변경하거나 수정하기가 더 어렵습니다.

![Choosing platform for game scoring development](https://images.ctfassets.net/3prze68gbwl1/4ywxhyfImwTJzsl4LfiIS5/d27d74be31b23280184952b37a6c4273/2022110915370700-691C9B2C6D1F1E032DDC01FD026159FD.jpg)

모바일 플랫폼용 게임을 디자인하는 경우 채점 시스템과 관련하여 입력, 화면 크기, 온라인 기능의 세 가지 사항을 염두에 두어야 합니다. 모바일 장치는 터치스크린 전용이므로 사용자가 게임플레이를 방해하지 않는 방식으로 세부적인 채점 메커니즘에 쉽게 액세스할 수 있도록 해야 합니다. 모바일 기기는 화면이 작기 때문에 채점 시스템을 구성하는 채점 메커니즘을 어디에 어떻게 배치할 것인지가 가장 중요한 디자인 선택 사항입니다. 플레이어의 행동과 게임플레이를 방해할 수 있는 텍스트, 그래픽, 플레이어 통계와 같은 비필수적인 채점 메커니즘을 게임 내내 계속 표시해서는 안 됩니다. 이는 플레이어를 실망시키고 게임에 대한 부정적인 인상을 줄 수 있습니다.

### 온라인 연결

모든 플랫폼의 대부분의 게임에 적용되지만, 가장 인기 있는 모바일 게임은 멀티플레이어, 채팅, 리더보드 등의 온라인 연결을 지원하여 플레이어가 상호 작용하고 사교할 수 있도록 합니다. 온라인 연결을 활성화하면 플레이어가 경기 중에 다른 플레이어의 통계를 보는 등 보다 소셜한 경험을 할 수 있지만, 다른 플레이어의 게임플레이 경험을 방해하지 않도록 주의해야 합니다. 경기 중 플레이어와 채팅할 수 있는 기능은 플레이어가 다른 온라인 플레이어 및 친구들과 소통할 수 있는 방법이지만, 게임플레이에 방해가 되지 않는 작은 창으로 표시되어야 합니다. 일정 시간 동안 사용하지 않으면 채팅이 사라지도록 설정하는 것도 화면 공간을 확보할 수 있는 좋은 방법입니다. 다른 온라인 플레이어의 통계는 현재 활성 상태인 플레이어에게 필수적인 정보만 표시하되, 버튼을 누르거나 프로필을 조회하여 더 자세한 통계를 볼 수 있도록 허용하세요.

![](https://images.ctfassets.net/3prze68gbwl1/qeGkleG2ZTFSRoT0PUd9M/5252b0a2097577161b80d0e32b704439/unity-tablet-min.png)

RPG와 같은 오프라인 게임은 복잡한 스토리 중심의 게임으로, 일반적으로 소셜 기능이 포함되지 않을 것으로 예상됩니다. 이러한 유형의 게임에서는 채점 시스템을 독립적으로 구성할 수 있으며, 로컬 파일에 저장하여 플레이하는 동안 정보를 업데이트하고 저장할 수 있습니다. 그러나 경기 중 지속적인 업데이트가 필요한 온라인 게임, 특히 FPS 및 MOBA 게임은 경기 중에 정확하고 필수적인 정보를 표시해야 합니다. 신뢰할 수 있고 정확하며 효과적인 채점 메커니즘을 표시하지 않는 채점 시스템은 개인이 경기에서 패배하게 되고, 이는 플레이어의 불만으로 이어져 결국 플레이어가 게임을 그만두는 결과로 이어집니다.

온라인 기능을 추가하여 채점 시스템을 대화형 및 소셜 기능으로 만들려면 한 번에 수십만 명의 동시 플레이어를 지원할 수 있는 강력한 인프라가 필요합니다. 채점 시스템은 중요한 경기 중에 플레이어에게 유용하고 효과적이며 재미있는 피드백을 안정적이고 능동적으로 표시할 수 있어야 합니다. 이러한 인프라를 직접 구축할 수도 있지만 시간과 리소스, 유지 관리가 필요하므로 다른 곳에 투자할 수 있습니다. 이때 PubNub이 도움을 드릴 수 있습니다.

### 인터랙티브하고 소셜한 게임 채점 시스템 만들기

[PubNub](https://www.pubnub.com/blog/pubnub-what-is-it-and-why-do-you-need-it/) 은 애플리케이션이 대규모의 글로벌 규모로 실시간 업데이트를 받을 수 있도록 지원하는 개발자 API 플랫폼입니다. PubNub은 [2000개 이상의 고객사](https://www.pubnub.com/blog/getting-started-7-ways-customers-use-pubnub/) 의 기반이 되고 있습니다. 게임 개발자는 PubNub의 확장성과 안정성을 바탕으로 게임 내 채팅, 실시간 점수 업데이트, 플레이어의 게임 복귀를 유도하는 알림 및 알림을 위한 도구와 게임용 온라인 기능을 강화할 수 있습니다. PubNub은 플레이어의 게임플레이 경험에 영향을 주지 않으면서도 실시간으로 점수 시스템을 업데이트할 수 있을 만큼 효율적이고 안정적이며 빠릅니다.

[팬저독의](https://www.pubnub.com/customers/panzerdog/) 빠른 속도의 슈팅 게임 [택티쿨](https://www.panzerdog.com/)은 게임 내 채팅을 강화하기 위해 PubNub를 사용합니다. 팬저독은 PubNub의 확장성과 안정성을 바탕으로 매일 10만 명 이상의 플레이어와 전 세계 1,000만 건의 다운로드를 지원하는 커뮤니케이션을 지원할 수 있었습니다.

[Beamable](https://www.pubnub.com/customers/beamable/)한때 게임 개발사였지만 지금은 Unity용 라이브 게임을 위한 풀스택 라이브옵스 플랫폼으로 전환한 Beamable은 PubNub의 인프라를 통해 채팅 플랫폼을 강화하여 플랫폼을 사용하여 참여도가 높은 인터랙티브 게임을 제작하고 있습니다.

[Mayhem](https://www.pubnub.com/customers/mayhem/) 은 게임 커뮤니티에서 플레이어를 끌어들이는 맞춤형 리그를 구축할 수 있도록 지원합니다. 이들은 원활하고 제한 없는 플레이어 경험을 보장하기 위해 채팅, 실시간 순위표, 푸시 알림을 강화하기 위해 PubNub를 선택했습니다.

PubNub을 사용하여 게임 채점 시스템을 인터랙티브하고 소셜하게 만들려면 먼저 PubNub 계정을 생성하고 다음 중 하나를 가져와야 합니다. [PubNub의 다양한 SDK](https://www.pubnub.com/docs/sdks) 를 가져와야 하며, 여기에는 특별히 고안된 [Unity](https://www.pubnub.com/docs/sdks/unity).

1.  [로그인](https://admin.pubnub.com/#/login) 또는 [계정 생성](https://admin.pubnub.com/#/signup) 을 생성하여 관리자 포털에서 앱을 생성하고 애플리케이션에서 사용할 키를 받습니다. 키 생성 방법은 다음 도움말을 참조하세요. [키 만들기](https://www.pubnub.com/how-to/admin-portal-create-keys/).
    
2.  [게임 개발 환경에 맞는 SDK](https://www.pubnub.com/docs/sdks) 를 선택합니다.
    
3.  SDK의 시작하기 문서에 따라 키를 구성하고 게임에서 PubNub 기능 구현을 시작하세요.
    

PubNub에는 게임 채점 시스템의 특정 요구 사항을 충족할 수 있는 다음과 같은 기능이 API에 내장되어 있습니다.

1.  [게시](https://www.pubnub.com/docs/messages/publish): 채팅 업데이트, 이모티콘 반응, 플레이어 처치, 경기 통계, 파일, 기타 복잡한 메타데이터 등 플레이어 입력이 업데이트될 때마다 업데이트를 전송합니다. [메타데이터](https://www.pubnub.com/docs/metadata/channel-metadata).
    
2.  [구독](https://www.pubnub.com/docs/messages/receive): 연결된 플레이어로부터 업데이트를 수신하여 새롭고 중요한 데이터로 플레이어의 화면을 새로 고칩니다.
    
3.  [프레즌스](https://www.pubnub.com/docs/presence/overview): 플레이어가 게임 내에 있는 동안 플레이어의 온라인 상태를 업데이트하고 친구 목록에 변경 사항을 알립니다.
    
4.  [메시지 지속성](https://www.pubnub.com/docs/storage): 오프라인 플레이어가 로그인하면 놓친 정보를 표시합니다.
    
5.  [푸시 알림](https://www.pubnub.com/docs/push/send): 오프라인 상태인 모바일 플레이어에게 부재중 메시지를 알리고 새로운 게임 내 업데이트, 이벤트 및 뉴스를 알립니다.
    
6.  [오브젝트](https://www.pubnub.com/docs/metadata/channel-metadata): 데이터베이스를 설정하거나 호출할 필요 없이 플레이어에 대한 정보를 한 곳에 저장하세요.
    
7.  [액세스 관리자](https://www.pubnub.com/docs/security/access-control): 플레이어의 비공개 대화, 채팅방, 특별 이벤트 및 플레이어 제한 콘텐츠에 대한 액세스를 제한하세요.
    
8.  [기능](https://www.pubnub.com/docs/functions/overview): 메시지 번역, 부적절한 메시지 검열, 새로운 플레이어의 도착 알림, 점수 업데이트 처리 및 저장, 다른 플레이어에게 멘션 및 점수 업데이트 알림.
    

각 기능을 간단히 요약한 것이지만, PubNub의 [기능](https://www.pubnub.com/docs/functions/overview) 기능은 게임에 영향을 주지 않으면서 실시간 점수 업데이트를 지원하는 데 특히 유용합니다. 함수 기능을 상시적으로 별도로 실행되는 시스템으로 설정하여 트리거된 다양한 이벤트에 대해 사용자에게 업데이트할 수 있습니다.

이벤트 핸들러가 이 정보를 처리하여 플레이어에게 다시 전송할 수 있도록 로직을 저장하고, 모니터링하고, 코드화할 수도 있습니다. 함수에서 이 로직을 수신하도록 게임을 설정하면 이벤트 리스너에서 플레이어에게 이 정보를 다시 표시할 수 있으므로 트리거된 시점부터 다른 플레이어에게 표시되는 시점까지 이 데이터를 완벽하게 제어할 수 있습니다. 이에 대한 실제 예시는 다음에서 확인할 수 있습니다. [Unity 카트 게임](https://www.pubnub.com/tutorials/unity-pubnubprix/).

### PubNub로 채점 시스템 만들기 시작하기

게임의 점수 시스템은 플레이어에게 유용한 피드백을 제공하기 위해 게임 디자인에서 중요하고 필수적인 기능입니다. 플랫폼에 따라 다양한 유형의 게임이 존재하지만, 개발자가 플레이어가 게임 내에서 즐거운 경험을 하는 데 필요한 정보를 알리고 전달하기 위해 사용할 수 있는 채점 메커니즘이 있습니다.

온라인 기능을 추가하면 채점 시스템을 플레이어와 더욱 상호 작용하고 소셜하게 만들 수 있습니다. 이는 플레이어의 만족도와 재방문율로 이어지는 즐거운 경험을 만들어냅니다. PubNub은 이러한 기능을 지원하는 인프라 역할을 하므로 가장 중요한 기능에 집중할 수 있습니다.

다음 리소스를 통해 자세히 알아보세요:

-   다른 고객이 온라인 기능을 통합한 방법 보기 [온라인 기능](https://www.pubnub.com/industry/gaming/) 살펴보기
    
-   [둘러보기](https://www.pubnub.com/tour/introduction/) 를 통해 PubNub의 기본 사항을 알아보세요.
    
-   [플레이](https://www.pubnub.com/demos/) 유니티 데모를 포함한 게임 데모 보기 [펍넙 그랑프리](https://www.pubnub.com/demos/unity-pubnubprix/)에서 다른 플레이어와 채팅하고 실시간으로 리더보드 업데이트를 확인할 수 있는 레이싱 게임 데모를 살펴보세요.
    
-   [학습](https://www.pubnub.com/how-to/) 를 참조하여 PubNub로 나만의 게임과 기능을 제작해 보세요.
    
-   [팔로우](https://www.pubnub.com/demos/) 단계별 튜토리얼을 따라 온라인 기능을 설정하고 빌드하세요. [Unity 게임 펍넙 그랑프리](https://www.pubnub.com/tutorials/unity/).
    
-   [문서 자세히 알아보기](https://www.pubnub.com/docs/sdks) 를 통해 게임의 요구 사항에 맞는 [펍넙 유니티 SDK](https://www.pubnub.com/docs/sdks/unity)를 포함한 문서를 자세히 살펴보고 게임에 고유하게 맞는 PubNub의 기능을 커스터마이징하는 방법을 알아보세요.
    

개발자 지원팀에 언제든지 문의하세요. [devrel@pubnub.com](mailto:devrel@pubnub.com) 으로 문의해 주세요.

펍넙이 어떤 도움을 줄 수 있나요?
===================

이 문서는 원래 [PubNub.com에](https://www.pubnub.com/how-to/develop-game-scoring-system/) 게시되었습니다.

저희 플랫폼은 개발자가 웹 앱, 모바일 앱 및 IoT 디바이스를 위한 실시간 인터랙티브를 구축, 제공 및 관리할 수 있도록 지원합니다.

저희 플랫폼의 기반은 업계에서 가장 크고 확장성이 뛰어난 실시간 에지 메시징 네트워크입니다. 전 세계 15개 이상의 PoP가 8억 명의 월간 활성 사용자를 지원하고 99.999%의 안정성을 제공하므로 중단, 동시 접속자 수 제한, 트래픽 급증으로 인한 지연 시간 문제를 걱정할 필요가 없습니다.

PubNub 체험하기
-----------

[라이브 투어를](https://www.pubnub.com/tour/introduction/) 통해 5분 이내에 모든 PubNub 기반 앱의 필수 개념을 이해하세요.

설정하기
----

PubNub [계정에](https://admin.pubnub.com/signup/) 가입하여 PubNub 키에 무료로 즉시 액세스하세요.

시작하기
----

사용 사례나 [SDK에](https://www.pubnub.com/docs) 관계없이 [PubNub 문서를](https://www.pubnub.com/docs) 통해 바로 시작하고 실행할 수 있습니다.