KR102307870B1 - Method for game test - Google Patents

Method for game test Download PDF

Info

Publication number
KR102307870B1
KR102307870B1 KR1020190091490A KR20190091490A KR102307870B1 KR 102307870 B1 KR102307870 B1 KR 102307870B1 KR 1020190091490 A KR1020190091490 A KR 1020190091490A KR 20190091490 A KR20190091490 A KR 20190091490A KR 102307870 B1 KR102307870 B1 KR 102307870B1
Authority
KR
South Korea
Prior art keywords
game
balance
command
simulation
balancing
Prior art date
Application number
KR1020190091490A
Other languages
Korean (ko)
Other versions
KR20210013812A (en
Inventor
신평호
류철민
박선영
서일환
한규학
Original Assignee
넷마블 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 넷마블 주식회사 filed Critical 넷마블 주식회사
Priority to KR1020190091490A priority Critical patent/KR102307870B1/en
Publication of KR20210013812A publication Critical patent/KR20210013812A/en
Application granted granted Critical
Publication of KR102307870B1 publication Critical patent/KR102307870B1/en

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/56Computing the motion of game characters with respect to other game characters, game objects or elements of the game scene, e.g. for simulating the behaviour of a group of virtual soldiers or for path finding
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/77Game security or game management aspects involving data related to game devices or game servers, e.g. configuration data, software version or amount of memory
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/79Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories
    • A63F13/798Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories for assessing skills or for ranking players, e.g. for generating a hall of fame

Abstract

본 개시의 일 실시예에 따라, 컴퓨터 판독가능 저장 매체에 저장된 컴퓨터 프로그램이 개시된다. 상기 컴퓨터 프로그램은 하나 이상의 프로세서에서 실행되는 경우 게임 데이터 처리를 위한 이하의 동작을 수행하도록 하며, 상기 동작은, 게임 밸런스와 관련된 게임 로그 항목을 적어도 하나 이상 결정하는 동작; 게임 시뮬레이션을 수행하기 위한 명령어를 생성하는 동작; 상기 게임 밸런스와 관련된 게임 로그 항목 및 상기 게임 시뮬레이션을 수행하기 위한 명령어를 가상 머신에 입력하여 게임 밸런스를 테스트하기 위한 게임 시뮬레이션을 수행하는 동작; 및 게임 시뮬레이션 수행 결과 게임 밸런스와 관련된 밸런싱 로그 데이터를 획득하는 동작을 포함할 수 있다.According to an embodiment of the present disclosure, a computer program stored in a computer-readable storage medium is disclosed. When the computer program is executed in one or more processors, the following operations for processing game data are performed, the operations comprising: determining at least one or more game log entries related to game balance; generating a command for performing a game simulation; performing a game simulation for testing game balance by inputting a game log entry related to the game balance and a command for performing the game simulation into a virtual machine; and obtaining balancing log data related to game balance as a result of performing the game simulation.

Description

게임 테스트 방법 {METHOD FOR GAME TEST}How to test a game {METHOD FOR GAME TEST}

본 개시는 게임 서비스에 관한 것으로서, 보다 구체적으로는 게임 테스트를 수행하기 위한 방법에 관한 것이다. The present disclosure relates to a game service, and more particularly, to a method for performing a game test.

최근 IT기술의 급격한 발달과 함께 게임 산업 또한 급격하게 성장하고 있다. 이러한 게임 산업이 성장함에 따라, 게임 서비스를 제공하는 게임 업체 또한 폭발적으로 증가하고 있다. Recently, along with the rapid development of IT technology, the game industry is also rapidly growing. As the game industry grows, game companies that provide game services are also increasing explosively.

또한, 전자 통신 기술의 발달로 게임을 즐기는 사람이 증가하면서 전략 시뮬레이션 게임, 롤플레잉 게임 등 다양한 종류의 게임이 개발되었다. 이러한 게임들은 온라인 및 오프라인 상황에서도 게임을 진행할 수 있고, 특히 온라인 게임은 시공간의 제약이 없어 수많은 유저들이 쉽게 모여 함께 게임을 즐길 수 있다. In addition, as the number of people who enjoy games increases due to the development of electronic communication technology, various types of games such as strategy simulation games and role-playing games have been developed. These games can be played both online and offline, and in particular, online games do not have time and space constraints, so many users can easily gather and enjoy the game together.

게임 시장의 규모가 점점 커지고 게임 업체 간의 경쟁이 치열해지면서 게임유저의 이탈을 막기 위해 게임 출시 전 수행되는 게임 서비스의 QA(Quality Assurance)에 대한 관심도가 커지고 있다.As the size of the game market grows and competition among game companies intensifies, interest in Quality Assurance (QA) of game services performed before game launches to prevent game users from leaving is growing.

다시 말해, 게임 서비스에서 발생하는 이슈에 반응하여 이탈하는 사용자를 방지하기 위해, 게임 업체들은 게임 출시 전, 게임 시스템의 기능적 정합성을 확인함과 동시에 게임 빌드에 오류가 존재하는지 여부에 관한 다양한 테스트 작업을 수행하고 있다.In other words, in order to prevent users from churning in response to issues occurring in the game service, game companies check the functional consistency of the game system before releasing the game, and at the same time perform various tests on whether there are errors in the game build. is performing

다만, 게임 내 존재하는 변수들은 매우 방대하며, 다양한 변수들 각각에 대하여 테스트를 수행하기 위해서는 많은 인력과 시간이 요구될 수 있다. However, the variables existing in the game are very large, and a lot of manpower and time may be required to perform a test on each of the various variables.

따라서, 게임 서비스를 제공함에 있어 게임 밸런스 테스트를 수행하는 시스템에 대한 수요가 당 업계에 존재할 수 있다.Accordingly, there may be a demand in the industry for a system for performing a game balance test in providing a game service.

대한민국 등록특허 제 10-1984947호에서는 게임을 테스트하는 방법 및 그 방법을 수행하는 서버를 개시하고 있다.Korean Patent Registration No. 10-1984947 discloses a method for testing a game and a server for performing the method.

본 개시는 전술한 배경기술에 대응하여 안출된 것으로, 게임 테스트를 수행하기 위한 방법을 제공하기 위함이다. The present disclosure has been devised in response to the above background art, and is intended to provide a method for performing a game test.

전술한 바와 같은 과제를 실현하기 위한 본 개시의 일 실시예에 따라, 컴퓨터 판독가능 저장 매체에 저장되어 컴퓨터로 하여금 이하의 동작들을 수행하도록 하는 명령들을 포함하는 컴퓨터 프로그램이 개시된다. 상기 동작들은 게임 밸런스와 관련된 게임 로그 항목을 적어도 하나 이상 결정하는 동작; 게임 시뮬레이션을 수행하기 위한 명령어를 생성하는 동작; 상기 게임 밸런스와 관련된 게임 로그 항목 및 상기 게임 시뮬레이션을 수행하기 위한 명령어를 가상 머신에 입력하여 게임 밸런스를 테스트하기 위한 게임 시뮬레이션을 수행하는 동작; 및 게임 시뮬레이션 수행 결과 게임 밸런스와 관련된 밸런싱 로그 데이터를 획득하는 동작을 포함할 수 있다.According to an embodiment of the present disclosure for realizing the above-described problems, a computer program including instructions stored in a computer-readable storage medium to cause the computer to perform the following operations is disclosed. The operations may include determining at least one or more game log entries related to game balance; generating a command for performing a game simulation; performing a game simulation for testing game balance by inputting a game log entry related to the game balance and a command for performing the game simulation into a virtual machine; and obtaining balancing log data related to game balance as a result of performing the game simulation.

대안적 실시예에서, 상기 게임 밸런스는, 게임 내 캐릭터의 전투에 관련한 전투 밸런스 또는 게임 내 경제 활동과 관련한 경제 밸런스 중 적어도 하나를 포함할 수 있다.In an alternative embodiment, the game balance may include at least one of a battle balance related to a battle of a character in the game or an economic balance related to an economic activity in the game.

대안적 실시예에서, 전투 밸런스와 관련된 게임 로그 항목은, 캐릭터 정보 항목, 아이템 정보 항목 또는 스킬 정보 항목 중 적어도 하나를 포함할 수 있다.In an alternative embodiment, the game log item related to battle balance may include at least one of a character information item, an item information item, or a skill information item.

대안적 실시예에서, 경제 밸런스와 관련된 게임 로그 항목은, 게임 재화 정보 항목, 게임 아이템 재화 정보 항목 또는 플레이어가 시간당 획득하는 재화 정보 항목 중 적어도 하나를 포함할 수 있다.In an alternative embodiment, the game log item related to economic balance may include at least one of a game goods information item, a game item goods information item, or a goods information item that the player acquires per hour.

대안적 실시예에서, 게임 밸런스와 관련된 게임 로그 항목을 적어도 하나 이상 결정하는 동작은, 복수의 게임 상황을 설정하기 위한 사전 결정된 기준에 기초하여 게임 밸런스와 관련된 게임 로그 항목을 적어도 하나 이상 결정하는 동작을 포함할 수 있다.In an alternative embodiment, the determining of at least one game log entry related to game balance includes determining at least one or more game log entries related to game balance based on a predetermined criterion for setting a plurality of game situations. may include.

대안적 실시예에서, 상기 밸런싱 로그 데이터는, 전투 밸런스와 관련된 게임 로그 항목에 대응하는 전투 밸런싱 로그 데이터 또는 경제 밸런스와 관련된 게임 로그 항목에 대응하는 경제 밸런싱 로그 데이터 중 적어도 하나를 포함할 수 있다.In an alternative embodiment, the balancing log data may include at least one of battle balancing log data corresponding to a game log item related to battle balance or economic balancing log data corresponding to a game log item related to economic balance.

대안적 실시예에서, 상기 게임 시뮬레이션을 수행하기 위한 명령어는, 게임 그래픽을 출력하기 위한 명령어, 사용자 단말과 게임 서버 간의 통신 기능을 수행하기 위한 명령어, 게임의 사회적 기능을 수행하기 위한 명령어 또는 상기 게임 밸런스와 관련된 밸런싱 로그 데이터를 획득하기 위한 명령어 중 적어도 하나를 포함할 수 있다.In an alternative embodiment, the command for performing the game simulation is a command for outputting game graphics, a command for performing a communication function between the user terminal and the game server, a command for performing a social function of the game, or the game It may include at least one of commands for obtaining balancing log data related to balance.

대안적 실시예에서, 상기 게임 밸런스와 관련된 밸런싱 로그 데이터를 획득하기 위한 명령어는, 게임 캐릭터의 활동을 야기하는 명령어, 게임 환경을 제어하는 명령어, 전투 밸런싱 로그 데이터를 획득하기 위한 명령어 또는 경제 밸런싱 로그 데이터를 획득하기 위한 명령어 중 적어도 하나를 포함할 수 있다.In an alternative embodiment, the command for obtaining balancing log data related to game balance includes a command for causing an activity of a game character, a command for controlling a game environment, a command for obtaining battle balancing log data, or an economic balancing log It may include at least one of instructions for acquiring data.

대안적 실시예에서, 게임 시뮬레이션을 수행하기 위한 명령어를 생성하는 동작은, 게임 시뮬레이션을 경량화 하기 위하여 게임 밸런스와 관련된 밸런싱 로그 데이터를 획득하기 위한 명령어를 포함하여 게임 시뮬레이션을 수행하기 위한 명령어를 생성하는 동작을 포함할 수 있다.In an alternative embodiment, the operation of generating the command for performing the game simulation includes a command for obtaining balancing log data related to game balance in order to lighten the game simulation, and generating the command for performing the game simulation. It can include actions.

대안적 실시예에서, 게임 시뮬레이션을 수행하는 동작은, 복수의 가상 머신에서 병렬적으로 게임 시뮬레이션을 수행하는 동작을 포함할 수 있다.In an alternative embodiment, the operation of performing the game simulation may include performing the game simulation in parallel in a plurality of virtual machines.

대안적 실시예에서, 상기 복수의 가상 머신에서 병렬적으로 게임 시뮬레이션을 수행하는 동작은, 상기 복수의 가상 머신 각각에 대하여, 각각 상이한 상기 게임 밸런스와 관련된 게임 로그 항목 및 상기 게임 시뮬레이션을 수행하기 위한 명령어를 입력하여, 복수의 게임 상황에 대하여 병렬적으로 게임 시뮬레이션을 수행하는 동작을 포함할 수 있다.In an alternative embodiment, the operation of performing the game simulation in the plurality of virtual machines in parallel includes, for each of the plurality of virtual machines, each different game log entry related to the game balance and for performing the game simulation It may include an operation of performing a game simulation in parallel with respect to a plurality of game situations by inputting a command.

대안적 실시예에서, 상기 밸런싱 로그 데이터를 기초로 전투 밸런싱 테스트 또는 경제 밸런싱 테스트를 수행하는 동작을 더 포함할 수 있다.In an alternative embodiment, the method may further include performing a combat balancing test or an economic balancing test based on the balancing log data.

대안적 실시예에서, 상기 전투 밸런싱 테스트 결과를 기초로 게임 상의 전투 능력을 조정하는 동작을 더 포함할 수 있다.In an alternative embodiment, the method may further include adjusting the combat ability in the game based on the result of the battle balancing test.

대안적 실시예에서, 상기 경제 밸런싱 테스트 결과를 기초로 게임 상의 경제 상태를 조정하는 동작을 더 포함할 수 있다.In an alternative embodiment, the operation may further include adjusting the economic state in the game based on the economic balancing test result.

본 개시의 다른 일 실시예에 따라 게임 테스트를 수행하기 위한 방법이 개시된다. 게임 밸런스와 관련된 게임 로그 항목을 적어도 하나 이상 결정하는 단계; 게임 시뮬레이션을 수행하기 위한 명령어를 생성하는 단계; 상기 게임 밸런스와 관련된 게임 로그 항목 및 상기 게임 시뮬레이션을 수행하기 위한 명령어를 가상 머신에 입력하여 게임 밸런스를 테스트하기 위한 게임 시뮬레이션을 수행하는 단계; 및 게임 시뮬레이션 수행 결과 게임 밸런스와 관련된 밸런싱 로그 데이터를 획득하는 단계를 포함할 수 있다.A method for performing a game test is disclosed according to another embodiment of the present disclosure. determining at least one game log entry related to game balance; generating a command for performing a game simulation; performing a game simulation for testing game balance by inputting a game log entry related to the game balance and a command for performing the game simulation into a virtual machine; and obtaining balancing log data related to game balance as a result of performing the game simulation.

본 개시의 다른 일 실시예에 따라 서버가 개시된다. 상기 서버는 하나 이상의 프로세서; 및 상기 프로세서에서 실행가능한 명령들을 저장하는 메모리; 를 포함하고, 상기 하나 이상의 프로세서는 게임 밸런스와 관련된 게임 로그 항목을 적어도 하나 이상 결정하고, 게임 시뮬레이션을 수행하기 위한 명령어를 생성하고, 상기 게임 밸런스와 관련된 게임 로그 항목 및 상기 게임 시뮬레이션을 수행하기 위한 명령어를 가상 머신에 입력하여 게임 밸런스를 테스트하기 위한 게임 시뮬레이션을 수행하고, 그리고 게임 시뮬레이션 수행 결과 게임 밸런스와 관련된 밸런싱 로그 데이터를 획득할 수 있다.A server is disclosed according to another embodiment of the present disclosure. The server may include one or more processors; and a memory storing instructions executable by the processor; Including, wherein the one or more processors determine at least one or more game log entries related to game balance, generate a command for performing a game simulation, and perform game log entries related to the game balance and the game simulation A command may be input into the virtual machine to perform a game simulation for testing game balance, and balancing log data related to game balance may be acquired as a result of the game simulation execution.

본 개시의 일 실시예에 따라, 게임 테스트를 수행하기 위한 방법을 제공할 수 있다. According to an embodiment of the present disclosure, a method for performing a game test may be provided.

상기 언급된 본 개시내용의 특징들이 상세하게, 보다 구체화된 설명으로, 이하의 실시예들을 참조하여 이해될 수 있도록, 실시예들 중 일부는 첨부되는 도면에서 도시된다. 또한, 도면과의 유사한 참조번호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭하는 것으로 의도된다. 그러나, 첨부된 도면들은 단지 본 개시내용의 특정한 전형적인 실시예들만을 도시하는 것일 뿐, 본 발명의 범위를 한정하는 것으로 고려되지는 않으며, 동일한 효과를 갖는 다른 실시예들이 충분히 인식될 수 있다는 점을 유의하도록 한다.
도 1은 본 개시의 일 실시예에 따른 게임 테스트를 수행하기 위한 시스템에 대한 개략도를 도시한다.
도 2은 본 개시의 일 실시예에 따른 게임 테스트를 수행하기 위한 서버의 블록 구성도이다.
도 3는 본 개시의 일 실시예에 따라 게임 테스트를 수행하기 위한 방법을 설명하기 위한 예시도이다.
도 4은 본 개시의 일 실시예에 따라 전투 밸런스 테스트를 수행하기 위한 방법을 설명하기 위한 예시도이다.
도 5는 본 개시의 일 실시예에 따라 게임 테스트를 수행하는 방법의 순서도이다.
도 6는 본 개시의 일 실시예에 따라 게임 테스트를 수행하기 위한 모듈을 도시한 블록 구성도이다.
도 7은 본 개시의 실시예들이 구현될 수 있는 예시적인 컴퓨팅 환경에 대한 간략하고 일반적인 개략도이다.
BRIEF DESCRIPTION OF THE DRAWINGS So that the above-mentioned features of the present disclosure may be understood in detail, with a more specific description, with reference to the following embodiments, some of the embodiments are shown in the accompanying drawings. Also, like reference numerals in the drawings are intended to refer to the same or similar functions throughout the various aspects. However, it should be noted that the accompanying drawings only show certain typical embodiments of the present disclosure and are not to be considered as limiting the scope of the present disclosure, and other embodiments having the same effect may be fully appreciated. Take note.
1 shows a schematic diagram of a system for performing a game test according to an embodiment of the present disclosure;
2 is a block diagram of a server for performing a game test according to an embodiment of the present disclosure.
3 is an exemplary diagram for explaining a method for performing a game test according to an embodiment of the present disclosure.
4 is an exemplary diagram for explaining a method for performing a battle balance test according to an embodiment of the present disclosure.
5 is a flowchart of a method of performing a game test according to an embodiment of the present disclosure.
6 is a block diagram illustrating a module for performing a game test according to an embodiment of the present disclosure.
7 is a simplified, general schematic diagram of an exemplary computing environment in which embodiments of the present disclosure may be implemented.

다양한 실시예들이 이제 도면을 참조하여 설명된다. 본 명세서에서, 다양한 설명들이 본 개시의 이해를 제공하기 위해서 제시된다. 그러나, 이러한 실시예들은 이러한 구체적인 설명 없이도 실행될 수 있음이 명백하다.Various embodiments are now described with reference to the drawings. In this specification, various descriptions are presented to provide an understanding of the present disclosure. However, it is apparent that these embodiments may be practiced without these specific descriptions.

본 명세서에서 사용되는 용어 "컴포넌트", "모듈", "시스템" 등은 컴퓨터-관련 엔티티, 하드웨어, 펌웨어, 소프트웨어, 소프트웨어 및 하드웨어의 조합, 또는 소프트웨어의 실행을 지칭한다. 예를 들어, 컴포넌트는 프로세서상에서 실행되는 처리과정(procedure), 프로세서, 객체, 실행 스레드, 프로그램, 및/또는 컴퓨터일 수 있지만, 이들로 제한되는 것은 아니다. 예를 들어, 컴퓨팅 장치에서 실행되는 애플리케이션 및 컴퓨팅 장치 모두 컴포넌트일 수 있다. 하나 이상의 컴포넌트는 프로세서 및/또는 실행 스레드 내에 상주할 수 있다. 일 컴포넌트는 하나의 컴퓨터 내에 로컬화 될 수 있다. 일 컴포넌트는 2개 이상의 컴퓨터들 사이에 분배될 수 있다. 또한, 이러한 컴포넌트들은 그 내부에 저장된 다양한 데이터 구조들을 갖는 다양한 컴퓨터 판독가능한 매체로부터 실행할 수 있다. 컴포넌트들은 예를 들어 하나 이상의 데이터 패킷들을 갖는 신호(예를 들면, 로컬 시스템, 분산 시스템에서 다른 컴포넌트와 상호작용하는 하나의 컴포넌트로부터의 데이터 및/또는 신호를 통해 다른 시스템과 인터넷과 같은 네트워크를 통해 전송되는 데이터)에 따라 로컬 및/또는 원격 처리들을 통해 통신할 수 있다.The terms “component,” “module,” “system,” and the like, as used herein, refer to a computer-related entity, hardware, firmware, software, a combination of software and hardware, or execution of software. For example, a component can be, but is not limited to being, a process running on a processor, a processor, an object, a thread of execution, a program, and/or a computer. For example, both an application running on a computing device and the computing device may be a component. One or more components may reside within a processor and/or thread of execution. A component may be localized within one computer. A component may be distributed between two or more computers. In addition, these components can execute from various computer readable media having various data structures stored therein. Components may communicate via a network such as the Internet with another system, for example via a signal having one or more data packets (eg, data and/or signals from one component interacting with another component in a local system, distributed system, etc.) may communicate via local and/or remote processes depending on the data being transmitted).

더불어, 용어 "또는"은 배타적 "또는"이 아니라 내포적 "또는"을 의미하는 것으로 의도된다. 즉, 달리 특정되지 않거나 문맥상 명확하지 않은 경우에, "X는 A 또는 B를 이용한다"는 자연적인 내포적 치환 중 하나를 의미하는 것으로 의도된다. 즉, X가 A를 이용하거나; X가 B를 이용하거나; 또는 X가 A 및 B 모두를 이용하는 경우, "X는 A 또는 B를 이용한다"가 이들 경우들 어느 것으로도 적용될 수 있다. 또한, 본 명세서에 사용된 "및/또는"이라는 용어는 열거된 관련 아이템들 중 하나 이상의 아이템의 가능한 모든 조합을 지칭하고 포함하는 것으로 이해되어야 한다.In addition, the term “or” is intended to mean an inclusive “or” rather than an exclusive “or.” That is, unless otherwise specified or clear from context, "X employs A or B" is intended to mean one of the natural implicit substitutions. That is, X employs A; X employs B; or when X employs both A and B, "X employs A or B" may apply to either of these cases. It should also be understood that the term “and/or” as used herein refers to and includes all possible combinations of one or more of the listed related items.

또한, "포함한다" 및/또는 "포함하는"이라는 용어는, 해당 특징 및/또는 구성요소가 존재함을 의미하는 것으로 이해되어야 한다. 다만, "포함한다" 및/또는 "포함하는"이라는 용어는, 하나 이상의 다른 특징, 구성요소 및/또는 이들의 그룹의 존재 또는 추가를 배제하지 않는 것으로 이해되어야 한다. 또한, 달리 특정되지 않거나 단수 형태를 지시하는 것으로 문맥상 명확하지 않은 경우에, 본 명세서와 청구범위에서 단수는 일반적으로 "하나 또는 그 이상"을 의미하는 것으로 해석되어야 한다.Also, the terms "comprises" and/or "comprising" should be understood to mean that the feature and/or element in question is present. However, it should be understood that the terms "comprises" and/or "comprising" do not exclude the presence or addition of one or more other features, elements and/or groups thereof. Also, unless otherwise specified or unless the context is clear as to designating a singular form, the singular in the specification and claims should generally be construed to mean "one or more."

그리고, “A 또는 B 중 적어도 하나”이라는 용어는, “A만을 포함하는 경우”, “B 만을 포함하는 경우”, “A와 B의 구성으로 조합된 경우”를 의미하는 것으로 해석되어야 한다. In addition, the term “at least one of A or B” should be interpreted as meaning “includes only A”, “includes only B”, and “in the case of a combination of A and B”.

당업자들은 추가적으로 여기서 개시된 실시예들과 관련되어 설명된 다양한 예시적 논리적 블록들, 구성들, 모듈들, 회로들, 수단들, 로직들, 및 알고리즘 단계들이 전자 하드웨어, 컴퓨터 소프트웨어, 또는 양쪽 모두의 조합들로 구현될 수 있음을 인식해야 한다. 하드웨어 및 소프트웨어의 상호교환성을 명백하게 예시하기 위해, 다양한 예시적 컴포넌트들, 블록들, 구성들, 수단들, 로직들, 모듈들, 회로들, 및 단계들은 그들의 기능성 측면에서 일반적으로 위에서 설명되었다. 그러한 기능성이 하드웨어로 또는 소프트웨어로서 구현되는지 여부는 전반적인 시스템에 부과된 특정 어플리케이션(application) 및 설계 제한들에 달려 있다. 숙련된 기술자들은 각각의 특정 어플리케이션들을 위해 다양한 방법들로 설명된 기능성을 구현할 수 있다. 다만, 그러한 구현의 결정들이 본 개시내용의 영역을 벗어나게 하는 것으로 해석되어서는 안된다.Those skilled in the art will further appreciate that the various illustrative logical blocks, configurations, modules, circuits, means, logics, and algorithm steps described in connection with the embodiments disclosed herein may be implemented in electronic hardware, computer software, or combinations of both. It should be recognized that they can be implemented with To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, configurations, means, logics, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application. However, such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure.

본 개시내용의 청구범위에서의 동작들에 대한 권리범위는, 각 동작들에 기재된 기능 및 특징들에 의해 발생되는 것이지, 각각의 동작에서 그 순서의 선후관계를 명시하지 않는 이상, 청구범위에서의 각 동작들의 기재 순서에 영향을 받지 않는다. 예를 들어, A동작 및 B동작를 포함하는 동작으로 기재된 청구범위에서, A동작이 B동작 보다 먼저 기재되었다고 하더라도, A동작이 B동작에 선행되어야 한다는 것으로 권리범위가 제한되지는 않는다.The scope of the actions in the claims of the present disclosure is generated by the functions and features described in the respective actions, and unless a precedence of the order in each action is specified, the claims are The order of description of each operation is not affected. For example, in a claim described as an action including action A and action B, even if action A is described before action B, the scope of rights is not limited to that action A must precede action B.

제시된 실시예들에 대한 설명은 본 개시의 기술 분야에서 통상의 지식을 가진 자가 본 발명을 이용하거나 또는 실시할 수 있도록 제공된다. 이러한 실시예들에 대한 다양한 변형들은 본 개시의 기술 분야에서 통상의 지식을 가진 자에게 명백할 것이다. 여기에 정의된 일반적인 원리들은 본 개시의 범위를 벗어남이 없이 다른 실시예들에 적용될 수 있다. 그리하여, 본 발명은 여기에 제시된 실시예들로 한정되는 것이 아니다. 본 발명은 여기에 제시된 원리들 및 신규한 특징들과 일관되는 최광의의 범위에서 해석되어야 할 것이다. Descriptions of the presented embodiments are provided to enable those skilled in the art to use or practice the present invention. Various modifications to these embodiments will be apparent to those skilled in the art of the present disclosure. The generic principles defined herein may be applied to other embodiments without departing from the scope of the present disclosure. Thus, the present invention is not limited to the embodiments presented herein. This invention is to be construed in its widest scope consistent with the principles and novel features presented herein.

도 1은 본 개시의 일 실시예에 따른 게임 테스트를 수행하기 위한 시스템에 대한 개략도를 도시한다.1 shows a schematic diagram of a system for performing a game test according to an embodiment of the present disclosure;

도 1에 도시된 바와 같이, 게임 테스트를 수행하기 위한 시스템은 테스트 수행 서버(100), 게임 서버(30), 사용자 단말(10), 관리자 단말(20) 및 통신 네트워크를 포함할 수 있다. 도 1에서 도시되는 컴포넌트들은 예시적인 것으로서, 추가적인 컴포넌트들이 존재하거나 또는 도 1에서 도시되는 컴포넌트들 중 일부는 생략될 수도 있다.1 , a system for performing a game test may include a test execution server 100 , a game server 30 , a user terminal 10 , a manager terminal 20 , and a communication network. The components illustrated in FIG. 1 are exemplary, and additional components may be present or some of the components illustrated in FIG. 1 may be omitted.

사용자 단말(10)은 네트워크를 통하여 서로 간에 또는 다른 노드와의 통신하기 위한 매커니즘을 가지며, 게임 내 밸런스 테스트를 수행하기 위한 시스템에서의 임의의 형태의 노드를 의미할 수 있다. 예를 들어, 사용자 단말(10)은 PC, 랩탑 컴퓨터, 워크스테이션, 단말 및/또는 네트워크 접속성을 갖는 임의의 전자 디바이스를 포함할 수 있다. 또한, 사용자 단말(10)은 에이전트(Agent), API(Application Programming Interface) 및 플러그-인(Plug-in) 중 적어도 하나에 의해 구현되는 임의의 서버를 포함할 수도 있다. 또한, 사용자 단말(10)은 애플리케이션 소스 및/또는 클라이언트 애플리케이션을 포함할 수 있다.The user terminal 10 has a mechanism for communicating with each other or with other nodes through a network, and may mean any type of node in a system for performing an in-game balance test. For example, the user terminal 10 may include a PC, a laptop computer, a workstation, a terminal, and/or any electronic device having network connectivity. Also, the user terminal 10 may include an arbitrary server implemented by at least one of an agent, an application programming interface (API), and a plug-in. In addition, the user terminal 10 may include an application source and/or a client application.

사용자 단말(10)은 게임 서버(30)에 접속하여 게임 서버(30)에서 제공하는 게임을 수행할 수 있으며, 게임에 포함된 복수의 콘텐츠에 관련된 게임 플레이를 수행할 수 있다. 본 명세서에서의 게임은 모바일 게임, 웹 게임, VR 게임, P2P 게임, 온라인/오프라인 게임 등 임의의 형태의 게임을 포함할 수 있다. 게임 서버(30) 및 사용자 단말(10)은 네트워크를 통해 본 개시에 따른 게임 테스트 수행 시스템을 위한 데이터를 상호 송수신할 수 있다.The user terminal 10 may access the game server 30 to play a game provided by the game server 30 , and may play a game related to a plurality of contents included in the game. The game in the present specification may include any type of game, such as a mobile game, a web game, a VR game, a P2P game, an online/offline game, and the like. The game server 30 and the user terminal 10 may mutually transmit and receive data for the game test execution system according to the present disclosure through a network.

본 개시에서의 관리자 단말(20)은 게임 테스트에 관련된 정보를 생성하거나 수정하고자 하는 적어도 하나의 단말일 수 있다. 또한, 관리자 단말(20)은 테스트 수행 서버(100) 및 게임 서버(30)로부터 게임 테스트 관련 정보를 수신하여 디스플레이 하거나, 게임 내 밸런스를 확보하기 위하여 게임의 빌드를 수정하도록 하는 정보를 테스트 수행 서버(100)로 전송할 수 있다.The manager terminal 20 in the present disclosure may be at least one terminal for generating or modifying information related to a game test. In addition, the manager terminal 20 receives and displays game test-related information from the test execution server 100 and the game server 30, or tests the information for modifying the build of the game in order to secure in-game balance. (100) can be transmitted.

관리자 단말(20)은 테스트 수행 서버(100) 및 게임 서버(30)와 통신을 위한 메커니즘을 갖는 시스템에서의 임의의 형태의 노드(들)를 의미할 수 있다. 예를 들어, 이러한 관리자 단말(20)은 PC(personal computer), 노트북(note book), 모바일 단말기(mobile terminal), 스마트 폰(smart phone), 태블릿 PC(tablet pc) 및 웨어러블 디바이스(wearable device) 등을 포함할 수 있으며, 유/무선 네트워크에 접속할 수 있는 모든 종류의 단말을 포함할 수 있다. 또한, 관리자 단말(20)은 에이전트, API(Application Programming Interface) 및 플러그-인(Plug-in) 중 적어도 하나에 의해 구현되는 임의의 서버를 포함할 수도 있다. 또한, 관리자 단말(20)은 애플리케이션 소스 및/또는 클라이언트 애플리케이션을 포함할 수 있다.The manager terminal 20 may mean any type of node(s) in a system having a mechanism for communication with the test execution server 100 and the game server 30 . For example, the manager terminal 20 is a PC (personal computer), a notebook (note book), a mobile terminal (mobile terminal), a smart phone (smart phone), a tablet PC (tablet pc) and a wearable device (wearable device) and the like, and may include all types of terminals capable of accessing a wired/wireless network. In addition, the manager terminal 20 may include an arbitrary server implemented by at least one of an agent, an application programming interface (API), and a plug-in. In addition, the manager terminal 20 may include an application source and/or a client application.

본 개시의 일 실시에서의 게임 서버(30) 및 테스트 수행 서버(100)는 예를 들어, 마이크로프로세서, 메인프레임 컴퓨터, 디지털 프로세서, 휴대용 디바이스 및 디바이스 제어기 등과 같은 임의의 타입의 컴퓨터 시스템 또는 컴퓨터 디바이스를 포함할 수 있다.The game server 30 and test execution server 100 in one embodiment of the present disclosure may be any type of computer system or computer device, such as, for example, microprocessors, mainframe computers, digital processors, portable devices and device controllers, and the like. may include.

게임 서버(30)는 사용자 단말(10)로 하여금 게임 플레이를 허용할 수 있다. 테스트 수행 서버(100)는 게임 서버(30)에 접속한 사용자 단말(10)이 게임 내에서 플레이 가능한 임의의 형태의 플레이에 대한 플레이 정보를 수집(또는, 획득)하여 게임 테스트를 수행할 수 있다.The game server 30 may allow the user terminal 10 to play a game. The test execution server 100 may perform a game test by collecting (or acquiring) play information about any type of play that the user terminal 10 connected to the game server 30 can play in the game. .

도 1에서 게임 서버(30) 및 테스트 수행 서버(100)가 별도의 엔티티로서 분리되어 표현되었지만, 본 개시내용의 실시예에 따라서 테스트 수행 서버(100)가 게임 서버(30) 내에 포함되어, 게임 플레이 기능 및 게임의 밸런스 테스트 수행 기능을 하나의 통합 서버에서 수행할 수도 있다. 이러한 예시에서, 테스트 수행 서버(100)의 기능이 게임 서버(30)에 통합되는 경우, 게임 서버(30)는 사용자 단말(10)이 수행한 게임 플레이 정보를 통해 게임 테스트를 수행할 수 있다. Although the game server 30 and the test performing server 100 are represented separately as separate entities in FIG. 1 , the test performing server 100 is included in the game server 30 according to an embodiment of the present disclosure, Play function and game balance test execution function can also be performed in one integrated server. In this example, when the function of the test performing server 100 is integrated into the game server 30 , the game server 30 may perform a game test through the game play information performed by the user terminal 10 .

또한, 테스트 수행 서버(100)와 게임 서버(30)가 분리된 경우, 테스트 수행 서버(100)는 게임 서버(30)로부터 사용자 단말(10)이 수행한 게임 플레이 정보를 수집(또는, 획득)하여 게임 테스트 수행할 수 있다. 게임 플레이 정보는 게임 내 접속한 사용자 단말(10)이 복수의 콘텐츠에 대한 플레이를 수행하는 것에 대응하여 생성되는 게임 로그 데이터일 수 있다. 즉, 테스트 수행 서버(100)는 게임 서버(30)에 사용자 단말(10)이 접속하여 수행하는 실시간 게임 플레이에 대한 게임 로그 데이터에 기초하여 게임 내 밸런스 테스트를 수행할 수 있다. In addition, when the test performing server 100 and the game server 30 are separated, the test performing server 100 collects (or acquires) game play information performed by the user terminal 10 from the game server 30 . So you can test the game. The game play information may be game log data generated in response to the user terminal 10 accessed in the game performing play on a plurality of contents. That is, the test performing server 100 may perform an in-game balance test based on game log data for real-time game play performed by the user terminal 10 by accessing the game server 30 .

본 개시의 일 실시예에 따르면, 테스트 수행 서버(100)는 클라우드 컴퓨팅 서비스를 제공하는 서버일 수 있다. 보다 구체적으로, 테스트 수행 서버(100)는 인터넷 기반 컴퓨팅의 일종으로 정보를 사용자의 컴퓨터가 아닌 인터넷에 연결된 다른 컴퓨터로 처리하는 클라우드 컴퓨팅 서비스를 제공하는 서버일 수 있다. 상기 클라우드 컴퓨팅 서비스는 인터넷 상에 자료를 저장해 두고, 사용자가 필요한 자료나 프로그램을 자신의 컴퓨터에 설치하지 않고도 인터넷 접속을 통해 언제 어디서나 이용할 수 있는 서비스일 수 있으며, 인터넷 상에 저장된 자료들을 간단한 조작 및 클릭으로 쉽게 공유하고 전달할 수 있다. 또한, 클라우드 컴퓨팅 서비스는 인터넷 상의 서버에 단순히 자료를 저장하는 것뿐만 아니라, 별도로 프로그램을 설치하지 않아도 웹에서 제공하는 응용프로그램의 기능을 이용하여 원하는 작업을 수행할 수 있으며, 여러 사람이 동시에 문서를 공유하면서 작업을 진행할 수 있는 서비스일 수 있다. 또한, 클라우드 컴퓨팅 서비스는 IaaS(Infrastructure as a Service), PaaS(Platform as a Service), SaaS(Software as a Service), 가상 머신 기반 클라우드 서버 및 컨테이너 기반 클라우드 서버 중 적어도 하나의 형태로 구현될 수 있다. 즉, 본 개시의 테스트 수행 서버(100)는 상술한 클라우드 컴퓨팅 서비스 중 적어도 하나의 형태로 구현될 수 있다. 전술한 클라우드 컴퓨팅 서비스의 구체적인 기재는 예시일 뿐, 본 개시는 클라우드 컴퓨팅 환경을 구축하는 임의의 플랫폼을 포함할 수도 있다.According to an embodiment of the present disclosure, the test execution server 100 may be a server that provides a cloud computing service. More specifically, the test execution server 100 is a type of Internet-based computing, and may be a server that provides a cloud computing service that processes information not with a user's computer but with another computer connected to the Internet. The cloud computing service may be a service that stores data on the Internet and allows the user to use it anytime and anywhere through Internet access without installing necessary data or programs on his/her computer. Easy to share and deliver with a click. In addition, cloud computing service not only stores data on a server on the Internet, but also enables users to perform desired tasks using the functions of application programs provided on the web without installing a separate program, and multiple people can simultaneously view documents. It may be a service that allows you to work while sharing. In addition, the cloud computing service may be implemented in the form of at least one of Infrastructure as a Service (IaaS), Platform as a Service (PaaS), Software as a Service (SaaS), a virtual machine-based cloud server, and a container-based cloud server. . That is, the test execution server 100 of the present disclosure may be implemented in the form of at least one of the above-described cloud computing services. The detailed description of the above-described cloud computing service is only an example, and the present disclosure may include any platform for building a cloud computing environment.

본 개시의 일 실시예에 따르면, 테스트 수행 서버(100)는 클라우드 환경을 구축하여 별도의 게임 플레이 정보를 수집하여 게임 내 밸런스 테스트를 수행할 수 있다. 구체적으로, 테스트 수행 서버(100)는 게임 서버(30)로부터 사용자 단말(10)이 수행한 게임 플레이 정보를 통해 게임 내 밸런스 테스트를 수행하는 것이 아닌, 클라우드 환경을 구축하여 복수의 OS를 구동하고, 복수의 OS 각각에서 게임 서비스에 대한 게임 플레이가 수행되는 것에 대응하여 생성되는 게임 로그 데이터를 획득할 수 있다. 또한, 테스트 수행 서버(100)는 복수의 OS 각각에서 획득한 게임 플레이 정보(즉, 게임 로그 데이터)에 기초하여 게임 내 밸런스 테스트를 수행할 수 있다.According to an embodiment of the present disclosure, the test execution server 100 may establish a cloud environment and collect separate game play information to perform an in-game balance test. Specifically, the test execution server 100 builds a cloud environment and drives a plurality of OSs, rather than performing an in-game balance test through the game play information performed by the user terminal 10 from the game server 30 , , it is possible to obtain game log data generated in response to the game play being performed for the game service in each of the plurality of OSs. In addition, the test execution server 100 may perform an in-game balance test based on game play information (ie, game log data) obtained from each of the plurality of OSs.

즉, 테스트 수행 서버(100)는 클라우드 환경에서 가상 머신을 구동하여 복수의 OS를 구동하고, 상기 복수의 OS 각각에서 게임 플레이가 수행됨에 따라 생성되는 게임 플레이 정보를 획득하여 게임 내 밸런스 테스트를 수행할 수 있다. 가상 머신은 컴퓨팅 환경을 소프트웨어로 구현한 것을 포함할 수 있다. 가상 머신은 실제 하드웨어와 직접적인 통신이 없는 가상의 컴퓨터를 포함할 수 있다. 가상 머신에 OS(즉, 운영 체제)나 응용 프로그램을 설치 및 실행할 수 있다.That is, the test execution server 100 drives a plurality of OSs by driving a virtual machine in a cloud environment, obtains game play information generated as game play is performed in each of the plurality of OSs, and performs an in-game balance test can do. A virtual machine may include a software implementation of a computing environment. A virtual machine may include a virtual computer that has no direct communication with real hardware. You can install and run an OS (i.e. operating system) or applications in a virtual machine.

테스트 수행 서버(100)가 게임 서버(30)로부터 사용자 단말(10)이 게임 플레이를 수행함에 따라 발생하는 게임 플레이 정보, 또는 테스트 수행 서버(100) 자체에서 클라우드 환경을 구축하여 복수의 OS를 구동하고, 복수의 OS 각각에서 게임 플레이가 수행됨에 따라 발생하는 게임 플레이 정보 중 적어도 하나에 기초하여 게임 내 밸런스 테스트를 수행하는 방법에 대한 구체적인 설명은 도 2를 참조하여 자세히 후술하도록 한다.The test execution server 100 drives a plurality of OSs by building a cloud environment in the test execution server 100, game play information generated as the user terminal 10 performs game play from the game server 30, or in the test execution server 100 itself. and a method of performing an in-game balance test based on at least one of game play information generated as game play is performed in each of the plurality of OSs will be described later in detail with reference to FIG. 2 .

도 2은 본 개시의 일 실시예에 따른 게임 테스트를 수행하기 위한 서버의 블록 구성도이다.2 is a block diagram of a server for performing a game test according to an embodiment of the present disclosure.

도 2에 도시된 테스트 수행 서버(100)의 구성은 간략화 하여 나타낸 예시일 뿐이다. 본 개시의 일 실시예에서 테스트 수행 서버(100)는 게임 테스트를 수행하기 위한 다른 구성들이 포함될 수 있고, 개시된 구성들 중 일부만이 테스트 수행 서버(100)를 구성할 수도 있다.The configuration of the test execution server 100 shown in FIG. 2 is only a simplified example. In an embodiment of the present disclosure, the test performing server 100 may include other components for performing a game test, and only some of the disclosed components may configure the test performing server 100 .

테스트 수행 서버(100)는 프로세서(110), 메모리(130), 네트워크부(150)를 포함할 수 있다.The test execution server 100 may include a processor 110 , a memory 130 , and a network unit 150 .

본 개시의 일 실시예에 따르면, 테스트 수행 서버(100)는 게임 서버(30) 및 관리자 단말(20)과 데이터를 송수신하는 네트워크부(150)를 포함할 수 있다. 네트워크부(150)는 게임 서버(30)로부터 사용자 단말(10)이 수행한 게임 플레이 정보를 수신할 수 있다. 또한, 네트워크부(150)는 관리자 단말(20)로부터 수행하고자 하는 밸런스 테스트에 관련한 정보, 또는 게임 내 밸런스를 확보하기 위한 게임의 빌드 수정에 관련한 정보를 수신할 수 있다. According to an embodiment of the present disclosure, the test execution server 100 may include the game server 30 and the network unit 150 for transmitting and receiving data to and from the manager terminal 20 . The network unit 150 may receive game play information performed by the user terminal 10 from the game server 30 . In addition, the network unit 150 may receive information related to a balance test to be performed from the manager terminal 20 or information related to a build modification of a game to secure in-game balance.

본 개시의 일 실시예에 따른 네트워크부(150)는 공중전화 교환망(PSTN: Public Switched Telephone Network), xDSL(x Digital Subscriber Line), RADSL(Rate Adaptive DSL), MDSL(Multi Rate DSL), VDSL(Very High Speed DSL), UADSL(Universal Asymmetric DSL), HDSL(High Bit Rate DSL) 및 근거리 통신망(LAN) 등과 같은 다양한 유선 통신 시스템들을 사용할 수 있다.The network unit 150 according to an embodiment of the present disclosure includes a Public Switched Telephone Network (PSTN), x Digital Subscriber Line (xDSL), Rate Adaptive DSL (RADSL), Multi Rate DSL (MDSL), VDSL ( A variety of wired communication systems such as Very High Speed DSL), Universal Asymmetric DSL (UADSL), High Bit Rate DSL (HDSL), and Local Area Network (LAN) can be used.

또한, 본 명세서에서 제시되는 네트워크부(150)는 CDMA(Code Division Multi Access), TDMA(Time Division Multi Access), FDMA(Frequency Division Multi Access), OFDMA(Orthogonal Frequency Division Multi Access), SC-FDMA(Single Carrier-FDMA) 및 다른 시스템들과 같은 다양한 무선 통신 시스템들을 사용할 수 있다. In addition, the network unit 150 presented herein is CDMA (Code Division Multi Access), TDMA (Time Division Multi Access), FDMA (Frequency Division Multi Access), OFDMA (Orthogonal Frequency Division Multi Access), SC-FDMA ( A variety of wireless communication systems may be used, such as Single Carrier-FDMA) and other systems.

본 개시에서 네트워크부(150)는 유선 및 무선 등과 같은 그 통신 양태를 가리지 않고 구성될 수 있으며, 단거리 통신망(PAN: Personal Area Network), 근거리 통신망(WAN: Wide Area Network) 등 다양한 통신망으로 구성될 수 있다. 또한, 상기 네트워크는 공지의 월드와이드웹(WWW: World Wide Web)일 수 있으며, 적외선(IrDA: Infrared Data Association) 또는 블루투스(Bluetooth)와 같이 단거리 통신에 이용되는 무선 전송 기술을 이용할 수도 있다.In the present disclosure, the network unit 150 may be configured regardless of its communication mode, such as wired and wireless, and may be configured with various communication networks such as a personal area network (PAN) and a wide area network (WAN). can In addition, the network may be a well-known World Wide Web (WWW), and may use a wireless transmission technology used for short-range communication, such as infrared (IrDA) or Bluetooth (Bluetooth).

본 명세서에서 설명된 기술들은 위에서 언급된 네트워크들뿐만 아니라, 다른 네트워크들에서도 사용될 수 있다.The techniques described herein may be used in the networks mentioned above, as well as in other networks.

본 개시의 일 실시예에 따르면, 메모리(130)는 프로세서(110)가 생성하거나 결정한 임의의 형태의 정보 및 네트워크부(150)가 수신한 임의의 형태의 정보를 저장할 수 있다.According to an embodiment of the present disclosure, the memory 130 may store any type of information generated or determined by the processor 110 and any type of information received by the network unit 150 .

본 개시의 일 실시예에 따르면, 메모리(130)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(Random Access Memory, RAM), SRAM(Static Random Access Memory), 롬(Read-Only Memory, ROM), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. 테스트 수행 서버(100)는 인터넷(internet) 상에서 상기 메모리(130)의 저장 기능을 수행하는 웹 스토리지(web storage)와 관련되어 동작할 수도 있다. 전술한 메모리에 대한 기재는 예시일 뿐, 본 개시는 이에 제한되지 않는다.According to an embodiment of the present disclosure, the memory 130 is a flash memory type, a hard disk type, a multimedia card micro type, and a card type memory (eg, SD or XD memory, etc.), Random Access Memory (RAM), Static Random Access Memory (SRAM), Read-Only Memory (ROM), Electrically Erasable Programmable Read-Only Memory (EEPROM), Programmable Read (PROM) -Only Memory), a magnetic memory, a magnetic disk, and an optical disk may include at least one type of storage medium. The test execution server 100 may operate in relation to a web storage that performs a storage function of the memory 130 on the Internet. The description of the above-described memory is only an example, and the present disclosure is not limited thereto.

본 개시의 일 실시예에 따르면, 프로세서(110)는 메모리(130)에 저장된 컴퓨터 프로그램을 판독하여 본 개시의 일 실시예에 따른 게임 내 밸런스 테스트를 수행할 수 있다.According to an embodiment of the present disclosure, the processor 110 may read a computer program stored in the memory 130 to perform an in-game balance test according to an embodiment of the present disclosure.

본 개시의 일 실시예에 따르면, 프로세서(110)는 통상적으로 테스트 수행 서버(100)의 전반적인 동작을 처리할 수 있다. 프로세서(110)는 위에서 살펴본 구성요소들을 통해 입력 또는 출력되는 신호, 데이터, 정보 등을 처리하거나 메모리(130)에 저장된 응용 프로그램을 구동함으로써, 관리자에게 적절한 정보 또는, 기능을 제공하거나 처리할 수 있다.According to an embodiment of the present disclosure, the processor 110 may typically process the overall operation of the test performing server 100 . The processor 110 processes signals, data, information, etc. input or output through the above-described components or by driving an application program stored in the memory 130, thereby providing or processing appropriate information or functions to the manager. .

본 개시의 일 실시예에 따르면, 프로세서(110)는 클라우드 환경에서 가상 머신을 구동하여 복수의 OS를 구동할 수 있다. 본 개시에서의 클라우드 환경은, 물리적 자원을 추상화하여 논리적 자원 형태로 구축하는 기술로 가상 머신 기반의 서버 가상화를 포함할 수 있다. 구체적으로, 클라우드 환경은, 물리적 서버 위에 운영체제를 설치하고, 그 위에 하이퍼바이저를 기반으로 자원을 분할하여 가상머신을 생성한 뒤에 또 다시 운영체제(이하 게스트 OS)를 설치하고 원하는 응용프로그램을 구동하는 방식을 포함할 수 있다. 이러한 방식을 통해 하나의 물리적인 시스템에 독자적으로 운영 가능한 복수의 OS를 가질 수 있다. 즉, 테스트 수행 서버(100)는 클라우드 환경을 구축하여 독자적으로 운영 가능한 복수의 OS를 구동시킬 수 있다. According to an embodiment of the present disclosure, the processor 110 may drive a plurality of OSs by driving a virtual machine in a cloud environment. The cloud environment in the present disclosure may include virtual machine-based server virtualization as a technology for abstracting physical resources and building them in the form of logical resources. Specifically, in a cloud environment, an operating system is installed on a physical server, a virtual machine is created by dividing resources based on a hypervisor thereon, and an operating system (hereinafter referred to as a guest OS) is installed again and a desired application is driven. may include. In this way, it is possible to have a plurality of OSs independently operable in one physical system. That is, the test execution server 100 may build a cloud environment and drive a plurality of independently operable OSs.

본 개시의 일 실시예에 따라, 프로세서(110)는 게임 밸런스 테스트를 수행할 수 있다. 게임 밸런스를 테스트하기 위하여 프로세서(110)는 게임 밸런스와 관련된 게임 로그 항목을 적어도 하나 이상 결정할 수 있다. 게임 로그 항목은 게임 로그 데이터의 속성(attribute)을 포함할 수 있다. 또한, 게임 로그 항목은 게임 로그 데이터 테이블에서 컬럼(column)을 포함할 수 있다. 게임 로그 항목은 캐릭터가 게임 상에서 수행한 모든 기록에 대한 항목을 포함할 수 있으며, 그 중에서 전투 밸런스와 관련된 게임 로그 항목 또는 경제 밸런스와 관련된 게임 로그 항목을 포함할 수 있다. 게임 로그 항목은 예를 들어, 사용자 ID, 캐릭터 명칭, 캐릭터 착용 아이템, 캐릭터 레벨, 캐릭터 조합, 스테이지, 캐릭터 체력, 캐릭터 마력, 보유 아이템, 보유 재화, 길드명, 길드원 수, 길드원 목록 등을 포함할 수 있다. 전술한 사항은 예시일 뿐이며, 게임 로그 항목은 전술한 사항에 한정되지 않는다.According to an embodiment of the present disclosure, the processor 110 may perform a game balance test. In order to test the game balance, the processor 110 may determine at least one game log entry related to the game balance. The game log entry may include an attribute of game log data. Also, the game log entry may include a column in the game log data table. The game log item may include items for all records performed by the character in the game, and among them, a game log item related to battle balance or a game log item related to economic balance may be included. The game log entry may include, for example, user ID, character name, character wear item, character level, character combination, stage, character stamina, character magic, possessed items, possessed goods, guild name, number of guild members, list of guild members, etc. can The above is only an example, and the game log entry is not limited to the above.

본 개시의 일 실시예에 따라, 게임 밸런스는 게임에 등장하는 요소들의 균형을 포함할 수 있다. 게임 밸런스는 게임에 등장하는 요소 간에 조율과 지침을 통해서 게임 시뮬레이션을 수행하고, 게임 테스트를 통해 검증하는 작업을 통해 맞춰지는 게임 상에서의 균형을 포함할 수 있다. 게임에 등장하는 요소들은 게임 오브젝트를 포함할 수 있으며, 게임 오브젝트는 예를 들어, 게임 캐릭터, 게임 아이템, 게임 상에서 거래되는 재화 등을 포함할 수 있다. According to an embodiment of the present disclosure, the game balance may include a balance of elements appearing in the game. Game balance may include a balance in the game that is adjusted through the operation of performing game simulation through coordination and guidance between elements appearing in the game, and verifying through game testing. Elements appearing in the game may include game objects, and the game objects may include, for example, game characters, game items, and goods traded on the game.

본 개시의 일 실시예에 따라, 게임 밸런스는 게임 내 캐릭터의 전투에 관련한 전투 밸런스 또는 게임 내 경제 활동과 관련한 경제 밸런스 중 적어도 하나를 포함할 수 있다. According to an embodiment of the present disclosure, the game balance may include at least one of a battle balance related to a battle of a character in the game or an economic balance related to an in-game economic activity.

전투 밸런스는 캐릭터가 전투 상황에서 균형 있는 전투를 수행하기 위한 게임 밸런스를 포함할 수 있다. 전투 밸런스는 예를 들어, PvP(플레이어 간 전투: player vs player), PvE(플레이어와 환경간의 전투: player vs environment) 상황에서의 전투 밸런스를 포함할 수 있다. 예를 들어, 전투 밸런스는 플레이어 간 전투에서 게임에 투자한 코스트(예를 들어, 시간, 비용 등)가 유사한 사용자들의 전투 밸런스를 포함할 수 있다. 예를 들어, 전투 밸런스는 플레이어와 환경간의 전투 상황에서 플레이어가 적절한 난이도를 느낄 수 있는 전투 밸런스를 포함할 수 있다. The battle balance may include a game balance for the character to perform a balanced battle in a battle situation. The battle balance may include, for example, battle balance in a PvP (player vs. player) or PvE (player vs. environment: player vs environment) situation. For example, the battle balance may include a battle balance of users having similar costs (eg, time, cost, etc.) invested in a game in a player-to-player battle. For example, the battle balance may include a battle balance that allows the player to feel an appropriate level of difficulty in a battle situation between the player and the environment.

본 개시의 일 실시예에 따라, 경제 밸런스는 게임 거래에서 균형 있는 거래가 이루어지도록 하기 위한 게임 밸런스를 포함할 수 있다. 경제 밸런스는 개임 내 재화에 대한 밸런스를 포함할 수 있다. 예를 들어, 경제 밸런스는 개임 내 재화를 획득하기 위해서 플레이어가 투자해야 하는 코스트가 적절한지 여부에 관련한 정보를 포함할 수 있다. 경제 밸런스는 균형 있는 거래를 통해 사용자의 게임 상에서 원활한 게임 플레이를 수행하기 위한 게임 밸런스를 포함할 수 있다. 경제 밸런스를 통해 게임 상에서 건전한 상거래 질서를 확보하여, 사용자 간의 원활한 거래 질서를 확보하고, 아이템 독과점, 매점매석, 인플레이션, 디플레이션과 같은 현상을 방지할 수 있다. 전술한 게임 밸런스는 예시일 뿐 본 개시는 이에 제한되지 않는다.According to an embodiment of the present disclosure, the economic balance may include a game balance for making a balanced transaction in a game transaction. The economic balance may include the balance of goods within the game. For example, the economic balance may include information regarding whether the cost that the player must invest to obtain the goods in the game is appropriate. The economic balance may include a game balance for performing smooth game play on a user's game through a balanced transaction. It is possible to secure a sound order of commerce in the game through economic balance, to ensure a smooth transaction order among users, and to prevent phenomena such as item monopoly, kiosk, inflation, and deflation. The above-described game balance is merely an example, and the present disclosure is not limited thereto.

본 개시의 일 실시예에 따라, 게임 밸런스와 관련된 게임 로그 항목은 전투 밸런스와 관련된 게임 로그 항목 및/또는 경제 밸런스와 관련된 게임 로그 항목을 포함할 수 있다. 전투 밸런스와 관련된 게임 로그 항목은 전투 밸런싱 테스트를 위하여 결정되는 게임 로그 항목을 포함할 수 있다. 전투 밸런스와 관련된 게임 로그 항목은 캐릭터 정보 항목, 아이템 정보 항목, 또는 스킬 정보 항목 중 적어도 하나를 포함할 수 있다. 캐릭터 정보 항목은 게임 시뮬레이션 상에서 플레이 되는 캐릭터 정보에 대한 게임 로그 항목을 포함할 수 있다. 캐릭터 정보 항목은 예를 들어, 캐릭터 ID, 캐릭터 직업, 캐릭터 조합, 캐릭터 능력치, 캐릭터 레벨, 캐릭터의 체력 및 마력을 포함할 수 있다. 아이템 정보 항목은 게임 시뮬레이션 상에서 사용되는 아이템 정보에 관련된 게임 로그 항목을 포함할 수 있다. 아이템 정보 항목은 예를 들어, 아이템 명칭, 아이템 조합, 캐릭터가 착용한 아이템을 포함할 수 있다. 스킬 정보 항목은 게임 시뮬레이션 상에서 사용되는 스킬 정보와 관련된 게임 로그 항목을 포함할 수 있다. 스킬 정보 항목은 예를 들어, 스킬 명칭, 스킬 시퀸스(예를 들어, 적어도 하나 이상의 스킬들을 시계열적으로 나열), 스킬 쿨타임(스킬을 사용할 수 있는 최소 시간 간격)를 포함할 수 있다. 전술한 전투 밸런스와 관련된 게임 로그 항목은 예시일 뿐 본 개시는 이에 제한되지 않는다.According to an embodiment of the present disclosure, a game log item related to game balance may include a game log item related to battle balance and/or a game log item related to economic balance. The game log item related to battle balance may include a game log item determined for a battle balancing test. The game log item related to battle balance may include at least one of a character information item, an item information item, and a skill information item. The character information item may include a game log item for character information played in a game simulation. The character information item may include, for example, a character ID, a character job, a character combination, a character ability value, a character level, and the character's physical strength and magic power. The item information item may include a game log item related to item information used in a game simulation. The item information item may include, for example, an item name, an item combination, and an item worn by a character. The skill information item may include a game log item related to skill information used in a game simulation. The skill information item may include, for example, a skill name, a skill sequence (eg, listing at least one or more skills in time series), and a skill cooldown time (a minimum time interval during which a skill can be used). The game log entry related to the above-described battle balance is merely an example, and the present disclosure is not limited thereto.

본 개시의 일 실시예에 따라, 경제 밸런스와 관련된 게임 로그 항목은 경제 밸런스를 테스트하기 위하여 결정되는 게임 로그 항목을 포함할 수 있다. 경제 밸런스와 관련된 게임 로그 항목은, 게임 재화 정보 항목, 게임 아이템 재화 정보 항목 또는 플레이어가 시간당 획득하는 재화 정보 항목 중 적어도 하나를 포함할 수 있다. 게임 재화 정보 항목은 게임 시뮬레이션이 수행되는 과정에서 게임 재화와 관련된 게임 로그 항목을 포함할 수 있다. 게임 재화 정보 항목은 게임 내 재화(예를 들어, 게임 머니, 게임 골드)수량 항목, 게임 내 재화 생성 속도 항목, 게임 내 재화 소멸 속도 항목을 포함할 수 있다. 게임 아이템 재화 정보 항목은 게임 시뮬레이션이 수행되는 과정에서 게임 아이템 재화 정보와 관련된 게임 로그 항목을 포함할 수 있다. 게임 아이템 재화 정보 항목은 예를 들어, 아이템 수량 항목, 아이템 재화 가치 항목, 아이템 거래 횟수 항목, 아이템 수요 항목을 포함할 수 있다. 플레이어가 시간당 획득하는 재화 정보는 게임 시뮬레이션이 수행되는 과정에서 획득할 수 있는 재화 정보와 관련된 게임 로그 항목을 포함할 수 있다. 플레이어가 시간당 획득하는 재화 정보 와 관련된 게임 로그 항목은 예를 들어, 사냥터에서 시간당 획득하는 재화 항목, 대전에서 시간당 획득하는 재화 항목, 튜토리얼에서 시간당 획득하는 재화 항목, 퀘스트에서 시간당 획득하는 재화 항목, 스테이지에서 시간당 획득하는 재화 항목 등을 포함할 수 있다. 전술한 경제 밸런스와 관련된 게임 로그 항목은 예시일 뿐 본 개시는 이에 제한되지 않는다.According to an embodiment of the present disclosure, a game log item related to economic balance may include a game log item determined to test economic balance. The game log item related to economic balance may include at least one of a game goods information item, a game item goods information item, and a goods information item that the player acquires per hour. The game goods information item may include a game log item related to game goods in the process of performing a game simulation. The game goods information item may include a quantity item of in-game goods (eg, game money, game gold), an in-game goods generation speed item, and an in-game goods extinction rate item. The game item currency information item may include a game log item related to the game item currency information while the game simulation is performed. The game item goods information item may include, for example, an item quantity item, an item currency value item, an item transaction count item, and an item demand item. The goods information that the player acquires per hour may include game log entries related to goods information that can be acquired while the game simulation is performed. The game log entries related to the goods acquired by the player per hour are, for example, goods acquired per hour in hunting grounds, goods acquired per hour in battle, goods acquired per hour in tutorials, goods acquired per hour in quests, stages may include items of goods acquired per hour in The above-described game log entries related to economic balance are merely examples, and the present disclosure is not limited thereto.

본 개시의 일 실시예에 따라, 프로세서(110)는 게임 밸런스와 관련된 게임 로그 항목을 적어도 하나 이상 결정할 수 있다. 또한, 프로세서(110)는 관리자 단말(20) 또는 게임 서버(30)에서 생성된 게임 테스트에 관련된 정보(예를 들어, 게임 밸런스와 관련된 게임 로그 항목을 결정하기 위한 기준, 관리자가 결정한 게임 밸런스와 관련된 게임 로그 항목)를 수신하여, 이를 기초로 게임 밸런스와 관련된 게임 로그 항목을 적어도 하나 이상 결정할 수 있다. 전술한 사항은 예시일 뿐 본 개시는 이에 제한되지 않는다.According to an embodiment of the present disclosure, the processor 110 may determine at least one game log entry related to game balance. In addition, the processor 110 includes information related to the game test generated by the manager terminal 20 or the game server 30 (eg, a criterion for determining a game log entry related to game balance, a game balance determined by the manager, and related game log entries), and based on the received, at least one game log entry related to game balance may be determined. The foregoing is merely an example, and the present disclosure is not limited thereto.

본 개시의 일 실시예에 따라, 프로세서(110)는 복수의 게임 상황을 설정하기 위한 사전 결정된 기준에 기초하여 게임 밸런스와 관련된 게임 로그 항목을 적어도 하나 이상 결정할 수 있다. 게임 상황은 게임을 수행하는 과정에서 발생할 수 있는 모든 상황을 포함할 수 있다. 게임 상황은 캐릭터가 게임 상에서 전투를 수행하는 일련의 동작 과정을 포함할 수 있다. 또한, 게임 상황은 캐릭터가 게임 상에서 거래를 수행하는 일련의 동작 과정을 포함할 수 있다. 복수의 게임 상황을 설정하기 위한 사전 결정된 기준은 게임 테스트를 수행하고자 하는 게임 상황을 설정하기 위한 기준을 포함할 수 있다. 예를 들어, 캐릭터A가 전투를 수행하는 상황에서 전투 밸런싱 테스트를 수행하고자 하는 경우, 프로세서(110)는 전투 밸런스와 관련된 게임 로그 항목을 결정할 수 있다. 더 구체적으로, 프로세서(110)는 캐릭터 A의 전투 밸런싱 테스트를 위하여 캐릭터 ID 항목, 캐릭터의 직업 항목, 캐릭터 레벨 항목, 캐릭터의 체력 항목, 캐릭터가 착용한 아이템 항목, 캐릭터가 사용한 스킬 명칭 항목, 캐릭터가 사용한 스킬 시퀸스 항목을 결정할 수 있다. 이를 통해, 프로세서(110)는 캐릭터A가 특정 스킬 시퀸스를 사용하는 상황에 대한 전투 밸런싱 테스트를 수행할 수 있다. 또한 프로세서(110)는 캐릭터A가 특정 아이템을 착용한 상황에 대한 전투 밸런싱 테스트를 수행할 수 있다. 전술한 사항은 예시일 뿐, 본 개시는 이에 제한되지 않는다.According to an embodiment of the present disclosure, the processor 110 may determine at least one game log item related to game balance based on a predetermined criterion for setting a plurality of game situations. The game situation may include any situation that may occur in the process of performing the game. The game situation may include a series of operation processes in which the character performs a battle in the game. In addition, the game situation may include a series of operation processes in which the character performs a transaction in the game. The predetermined criteria for setting a plurality of game situations may include criteria for setting a game situation in which a game test is to be performed. For example, when character A wants to perform a battle balancing test in a situation in which battle is performed, the processor 110 may determine a game log entry related to battle balance. More specifically, the processor 110 is a character ID item, a character's job item, a character level item, a character's physical strength item, an item item worn by the character, a skill name item used by the character, a character for the character A's battle balancing test You can decide which skill sequence item is used. Through this, the processor 110 may perform a battle balancing test for a situation in which character A uses a specific skill sequence. In addition, the processor 110 may perform a battle balancing test for a situation in which character A wears a specific item. The foregoing is merely an example, and the present disclosure is not limited thereto.

본 개시의 일 실시예에 따라, 게임 로그 데이터는 게임 상의 캐릭터가 게임 상에서 수행한 모든 기록을 포함할 수 있다. 게임 로그 데이터는 액션 로그 데이터 및 히스토리 로그 데이터를 포함할 수 있다. 액션 로그 데이터는 게임 상의 캐릭터 활동에 대해, 그 즉시 남는 기록을 포함할 수 있다. 히스토리 로그 데이터는 게임 변동 내역을 분석하기 위해 일정한 주기로 기록된 현재의 상태에 대한 기록을 포함할 수 있다. 게임 로그 데이터는 또한, 게임 밸런스와 관련된 밸런싱 로그 데이터를 포함할 수 있다. 게임 로그 데이터는 예를 들어, 캐릭터 플레이 타임, 계정 플레이 타임, 아이템별 사용빈도, 개인상점 거래품목, 아이템 생성, 아이템 습득, 아이템 드랍, 아이템 소비, 아이템 생성, 아이템 소멸, 아이템 거래, 아이템 강화, 캐릭터 이동, 캐릭터 사망, 캐릭터 레벨업, 캐릭터 생성, 캐릭터 공격, 캐릭터 방어, 캐릭터가 사용한 스킬, 캐릭터 레벨, 서버 시작과 종료시간, 서버 응답시간, 운영자 명령어, 몬스터 생성, 현재 캐릭터가 착용하고 있는 아이템을 포함할 수 있다. 전술한 게임 로그 데이터는 예시일 뿐 본 개시는 이에 제한되지 않는다.According to an embodiment of the present disclosure, the game log data may include all records performed by a character in the game in the game. The game log data may include action log data and history log data. The action log data may include an immediate record of the character's activity in the game. The history log data may include a record of a current state recorded at regular intervals in order to analyze game change details. The game log data may also include balancing log data related to game balance. Game log data includes, for example, character play time, account play time, frequency of use by item, personal store transaction items, item creation, item acquisition, item drop, item consumption, item creation, item destruction, item transaction, item enhancement, Character movement, character death, character level up, character creation, character attack, character defense, character used skill, character level, server start and end time, server response time, operator command, monster creation, item currently worn by the character may include. The above-described game log data is merely an example, and the present disclosure is not limited thereto.

본 개시의 일 실시예에 따라, 밸런싱 로그 데이터는 게임 밸런스와 관련된 게임 로그 데이터를 포함할 수 있다. 밸런싱 로그 데이터는 전투 밸런싱 로그 데이터 또는 경제 밸런싱 로그 데이터를 포함할 수 있다. 전투 밸런싱 로그 데이터는 전투 밸런스와 관련된 게임 로그 데이터를 포함할 수 있다. 전투 밸런싱 로그 데이터는 예를 들어, 캐릭터별 데미지 데이터, 캐릭터 조합별 데미지 데이터, 캐릭터 직업별 데미지 데이터, 아이템별 데미지 데이터, 아이템 조합별 데미지 데이터, 스킬별 데미지 데이터, 스킬 시퀸스별 데미지 데이터를 포함할 수 있다. 데미지 데이터는 캐릭터의 행위로 발생한 데미지를 포함할 수 있으며, 데미지 데이터는 최대 데미지 데이터, 최소 데미지 데이터, 평균 데미지 데이터를 포함할 수 있다. 본 개시의 일 실시예에 따라, 경제 밸런싱 로그 데이터는 경제 밸런스와 관련된 게임 로그 데이터를 포함할 수 있다. 경제 밸런싱 로그 데이터는 특정 시점에 존재하는 재화의 수량, 특정 기간동안 재화의 생성 속도, 특정 기간 동안 재화의 소멸 속도, 아이템 가격, 시간당 사냥터에서 획득하는 재화 등을 포함할 수 있다. 전술한 밸런싱 로그 데이터는 예시일 뿐 본 개시는 이에 제한되지 않는다.According to an embodiment of the present disclosure, the balancing log data may include game log data related to game balance. The balancing log data may include battle balancing log data or economic balancing log data. The battle balancing log data may include game log data related to battle balance. Combat balancing log data may include, for example, damage data for each character, damage data for each character combination, damage data for each character class, damage data for each item, damage data for each item combination, damage data for each skill, and damage data for each skill sequence. can The damage data may include damage caused by the character's actions, and the damage data may include maximum damage data, minimum damage data, and average damage data. According to an embodiment of the present disclosure, economic balancing log data may include game log data related to economic balance. The economic balancing log data may include the quantity of goods that exist at a specific time, the rate of generation of goods during a specific period, the rate of extinction of goods during a specific period, item prices, and goods obtained from hunting grounds per hour. The above-described balancing log data is merely an example, and the present disclosure is not limited thereto.

본 개시의 일 실시예에 따라, 프로세서(110)는 게임 시뮬레이션을 수행하기 위한 명령어를 생성할 수 있다. 또한, 프로세서(110)는 관리자 단말(20) 또는 게임 서버(30)에서 생성된 게임 테스트에 관련된 정보(예를 들어, 게임 시뮬레이션을 수행하기 위한 명령어, 관리자가 작성한 게임 시뮬레이션을 수행하기 위한 명령어, 게임 시뮬레이션을 수행하기 위한 명령어를 생성하기 위한 규칙)를 수신하여, 이를 기초로 게임 시뮬레이션을 수행하기 위한 명령어를 생성할 수 있다. 전술한 사항은 예시일 뿐 본 개시는 이에 제한되지 않는다. According to an embodiment of the present disclosure, the processor 110 may generate an instruction for performing a game simulation. In addition, the processor 110 includes information related to the game test generated by the manager terminal 20 or the game server 30 (eg, a command for performing a game simulation, a command for performing a game simulation written by the manager, A rule for generating a command for performing a game simulation) may be received, and a command for performing a game simulation may be generated based on the received. The foregoing is merely an example, and the present disclosure is not limited thereto.

본 개시의 일 실시예에 따라, 게임 시뮬레이션은 게임 가설을 검증하기 위하여 행하는 실험을 포함할 수 있다. 게임 가설은 게임 개발자가 현실적 조건에서 증명하거나 검증하기 어려운 사물, 현상의 원인, 합법칙성에 관하여 수행하는 예측을 포함할 수 있다. 전술한 게임 시뮬레이션은 예시일 뿐 본 개시는 이에 제한되지 않는다.According to an embodiment of the present disclosure, the game simulation may include an experiment performed to verify a game hypothesis. A game hypothesis may include predictions made by game developers about the causes of objects, phenomena, and legalities that are difficult to prove or verify under realistic conditions. The above-described game simulation is merely an example, and the present disclosure is not limited thereto.

본 개시의 일 실시예에 따라, 게임 시뮬레이션을 수행하기 위한 명령어는 다양한 형태의 언어로 표현될 수 있으며, 예를 들어, C, C++, C#, Java, Python 형태의 명령어를 포함할 수 있다. 또한 게임 시뮬레이션을 수행하기 위한 명령어는 바이트코드를 포함할 수 있다. 바이트코드는 특정 하드웨어가 아닌 가상 컴퓨터에서 실행되는 실행 프로그램을 위한 이진 표현법일 수 있다. 본 개시의 일 실시예에 따라, 게임 시뮬레이션을 수행하기 위한 명령어는 DLL(Dynamic Link Library), Shared Object를 포함할 수 있다. DLL은 동적 라이브러리로서, 프로그램이 사용할 수 있는 복수개의 함수들을 포함할 수 있다. 라이브러리는 소프트웨어 개발에서 자주 사용되는 기초적인 함수들을 표준화하여 저장한 파일을 포함할 수 있다. 전술한 게임 시뮬레이션을 수행하기 위한 명령어는 예시일 뿐 본 개시는 이에 제한되지 않는다.According to an embodiment of the present disclosure, a command for performing a game simulation may be expressed in various types of languages, and may include, for example, C, C++, C#, Java, or Python type commands. In addition, the instruction for performing the game simulation may include a bytecode. Bytecode can be a binary representation for an executable program running on a virtual machine rather than on specific hardware. According to an embodiment of the present disclosure, a command for performing a game simulation may include a dynamic link library (DLL) and a shared object. A DLL is a dynamic library and may include a plurality of functions that a program can use. The library may include a standardized and saved file of basic functions frequently used in software development. The instructions for performing the above-described game simulation are merely examples, and the present disclosure is not limited thereto.

본 개시의 일 실시예에 따라, 게임 시뮬레이션을 수행하기 위한 명령어는, 게임 그래픽을 출력하기 위한 명령어, 사용자 단말과 게임 서버 간의 통신 기능을 수행하기 위한 명령어, 게임의 사회적 기능을 수행하기 위한 명령어 또는 게임 밸런스와 관련된 밸런싱 로그 데이터를 획득하기 위한 명령어 중 적어도 하나를 포함할 수 있다. 게임 그래픽을 출력하기 위한 명령어는 디스플레이를 통해 출력되는 게임 영상을 실행하기 위한 명령어를 포함할 수 있다. 사용자 단말과 게임 서버 간의 통신 기능을 수행하기 위한 명령어는 통신 네트워크에 포함된 단말들이 서로 간에 네트워크 통신을 할 수 있도록 하는 명령어로서, 데이터를 수신하기 위한 명령어, 데이터를 송신하기 위한 명령어, 사용자를 인증하기 위한 명령어를 포함할 수 있다. 게임의 사회적 기능을 수행하기 위한 명령어는 게임을 플레이하는 사용자들 간의 사회적 활동을 가능하도록 하기 위한 명령어를 포함할 수 있다. 예를 들어, 게임의 사회적 기능을 수행하기 위한 명령어는 게임을 플레이하는 사용자들 간의 채팅, 길드 생성, 길드원 모집, 길드 가입 및 탈퇴, 욕설 방지 기능 등과 같이 게임의 사회적 기능을 수행하기 위한 명령어를 포함할 수 있다. 전술한 명령어는 예시일 뿐, 본 개시는 이에 제한되지 않는다.According to an embodiment of the present disclosure, a command for performing a game simulation includes a command for outputting game graphics, a command for performing a communication function between a user terminal and a game server, a command for performing a social function of the game, or It may include at least one of commands for obtaining balancing log data related to game balance. The command for outputting game graphics may include a command for executing a game image output through a display. The command for performing a communication function between the user terminal and the game server is a command that enables the terminals included in the communication network to communicate with each other. A command for receiving data, a command for transmitting data, and a user authentication It may contain instructions for The command for performing the social function of the game may include a command for enabling social activity between users who play the game. For example, the command for performing the social function of the game includes a command for performing the social function of the game, such as chatting between users who play the game, creating a guild, recruiting guild members, joining and leaving the guild, and preventing profanity. can do. The above-described instructions are merely examples, and the present disclosure is not limited thereto.

본 개시의 일 실시예에 따라, 게임 밸런스와 관련된 밸런싱 로그 데이터를 획득하기 위한 명령어는 밸런싱 테스트에 사용되는 밸런싱 로그 데이터를 획득하기 위한 명령어를 포함할 수 있다. 게임 밸런스와 관련된 밸런싱 로그 데이터를 획득하기 위한 명령어는, 게임 캐릭터의 활동을 야기하는 명령어, 게임 환경을 제어하는 명령어, 전투 밸런싱 로그 데이터를 획득하기 위한 명령어 또는 경제 밸런싱 로그 데이터를 획득하기 위한 명령어 중 적어도 하나를 포함할 수 있다. 게임 캐릭터의 활동을 야기하는 명령어는 게임 상의 캐릭터의 활동을 제어하는 명령어로서, 캐릭터 이동 명령어, 캐릭터 공격 명령어, 캐릭터 방어 명령어, 캐릭터 스킬 사용 명령어, 캐릭터 아이템 구매 명령어 등을 포함할 수 있다. 게임 환경을 제어하는 명령어는 게임 상의 캐릭터와 상호작용하는 요소들을 제어하는 명령어를 포함할 수 있다. 예를 들어, 게임 환경을 제어하는 명령어는 게임 상점의 위치를 변경하는 명령어, 게임 상의 NPC(non-player character)의 능력치를 조정하는 명령어, 게임 상의 NPC 움직임을 제어하는 명령어를 포함할 수 있다. 본 개시의 일 실시예에 따라, 전투 밸런싱 로그 데이터를 획득하기 위한 명령어는 예를 들어, 데미지 데이터를 획득하기 위한 명령어를 포함할 수 있다. 데미지 데이터는 캐릭터의 행위로 발생한 데미지를 포함할 수 있다. 전투 밸런싱 로그 데이터를 획득하기 위한 명령어는 예를 들어, 프로세서(110)가 결정한 게임 로그 항목을 입력 받아 게임 로그 항목에 대응되는 데미지 데이터를 획득하기 위한 명령어를 포함할 수 있다. 구체적으로, 프로세서(110)가 게임 로그 항목을 캐릭터 ID (예를 들어, 캐릭터 ID는 캐릭터A), 캐릭터가 사용한 스킬(예를 들어, 사용한 스킬은 스킬A)로 결정할 수 있다. 이 때 프로세서(110)는 전투 밸런싱 로그 데이터를 획득하기 위한 명령어를 통해, 캐릭터A가 스킬A를 사용하여 발생한 데미지 데이터를 획득할 수 있다. 본 개시의 일 실시예에 따라, 경제 밸런싱 로그 데이터를 획득하기 위한 명령어는 예를 들어, 재화 데이터를 획득하기 위한 명령어를 포함할 수 있다. 경제 밸런싱 로그 데이터를 획득하기 위한 명령어는 예를 들어, 프로세서(110)가 결정한 게임 로그 항목을 입력 받아 게임 로그 항목에 대응되는 재화 데이터를 획득하기 위한 명령어를 포함할 수 있다. 구체적으로, 프로세서(110)가 게임 로그 항목을 시간당 사냥터에서 획득하는 재화로 결정할 수 있다. 이 때 프로세서(110)는 전투 밸런싱 로그 데이터를 획득하기 위한 명령어를 통해, 사냥터A에서 시간당 획득하는 재화는 100골드라는 재화 데이터를 획득할 수 있다. 전술한 명령어는 예시일 뿐 본 개시는 이에 제한되지 않는다.According to an embodiment of the present disclosure, a command for acquiring balancing log data related to game balance may include a command for acquiring balancing log data used for a balancing test. The command for obtaining balancing log data related to game balance includes a command for causing an activity of a game character, a command for controlling the game environment, a command for obtaining battle balancing log data, or a command for obtaining economic balancing log data. It may include at least one. The command for causing the activity of the game character is a command for controlling the activity of the character in the game, and may include a character movement command, a character attack command, a character defense command, a character skill use command, a character item purchase command, and the like. The command to control the game environment may include commands to control elements that interact with the character in the game. For example, the command for controlling the game environment may include a command for changing the location of the game store, a command for adjusting the ability values of a non-player character (NPC) in the game, and a command for controlling the movement of the NPC in the game. According to an embodiment of the present disclosure, a command for obtaining battle balancing log data may include, for example, a command for obtaining damage data. The damage data may include damage caused by the character's actions. The command for obtaining the battle balancing log data may include, for example, a command for receiving the game log item determined by the processor 110 and obtaining damage data corresponding to the game log item. Specifically, the processor 110 may determine the game log entry as a character ID (eg, character ID is character A) and a skill used by the character (eg, used skill is skill A). In this case, the processor 110 may acquire damage data generated by the character A using the skill A through a command for acquiring the battle balancing log data. According to an embodiment of the present disclosure, an instruction for obtaining economic balancing log data may include, for example, an instruction for obtaining goods data. The command for obtaining the economic balancing log data may include, for example, a command for receiving a game log item determined by the processor 110 and obtaining goods data corresponding to the game log item. Specifically, the processor 110 may determine the game log item as the goods obtained from the hunting grounds per hour. At this time, the processor 110 may acquire the goods data of 100 gold as the goods acquired per hour in the hunting ground A through a command for acquiring battle balancing log data. The above-described instructions are merely examples, and the present disclosure is not limited thereto.

본 개시의 일 실시예에 따라, 프로세서(110)는 게임 시뮬레이션을 수행하기 위한 명령어를 생성할 수 있다. 프로세서(110)는 게임 시뮬레이션을 경량화 하기 위하여 게임 밸런스와 관련된 밸런싱 로그 데이터를 획득하기 위한 명령어를 포함하여 게임 시뮬레이션을 수행하기 위한 명령어를 생성할 수 있다. 게임 상의 밸런스를 테스트하기 위해서는 밸런싱 로그 데이터만 필요할 수 있다. 프로세서(110)는 게임 시뮬레이션을 수행함에 있어 게임 상의 밸런스를 테스트하기 위하여 불필요한 게임 그래픽을 출력하기 위한 명령어, 사용자 단말과 게임 서버 간의 통신 기능을 수행하기 위한 명령어 및 게임의 사회적 기능을 수행하기 위한 명령어를 게임 시뮬레이션을 수행하기 위한 명령어에서 제외시킬 수 있다. 이를 통해, 프로세서(110)는 게임 시뮬레이션에 필요한 연산량을 대폭 줄일 수 있으며, 밸런싱 로그 데이터를 더욱 빠른 시간 내에 획득할 수 있다. 따라서 다양한 게임 상황에서 게임 시뮬레이션을 단시간내에 수행할 수 있어, 게임 개발자가 예측하지 못한 밸런스 붕괴 현상을 감지할 수 있으며, 게임 개발자가 예측하지 문제 게임 상 문제점을 일반 사용자에게 배포하기 전에 알 수 있다. 이를 통해 게임 개발자 및/또는 게임 회사는 질적으로 향상된 게임 상의 밸런스 테스트를 수행함으로써 완성도 높은 게임을 만들 수 있다.According to an embodiment of the present disclosure, the processor 110 may generate an instruction for performing a game simulation. The processor 110 may generate a command for performing a game simulation, including a command for acquiring balancing log data related to game balance, in order to lighten the game simulation. You may only need balancing log data to test your in-game balance. The processor 110 is a command for outputting unnecessary game graphics in order to test the balance in the game in performing the game simulation, a command for performing a communication function between the user terminal and the game server, and a command for performing a social function of the game can be excluded from the command for performing game simulation. Through this, the processor 110 can significantly reduce the amount of computation required for game simulation, and can acquire balancing log data in a shorter time. Therefore, game simulations can be performed in a short period of time in various game situations, so that the game developer can detect an unexpected balance breakdown, and the game developer can know the problem before distributing the game to the general user. This allows game developers and/or game companies to create high-quality games by performing qualitatively improved game balance tests.

게임 시뮬레이션을 수행함에서 있어 게임 그래픽을 출력하기 위한 명령어가 게임 시뮬레이션을 수행하기 위한 명령에서 포함되어 있는 경우, 컴퓨팅 장치의 연산량이 기하급수적으로 커질 수가 있다. 하지만 게임 상의 밸런스 테스트에서 게임 시뮬레이션을 수행하여 최종적으로 얻고자 하는 것은 게임 밸런싱 로그 데이터일 수 있다. 따라서 과도한 연산량을 요구하는 게임 그래픽을 출력하기 위한 명령어는 게임 시뮬레이션을 수행하는데 컴퓨팅 장치에 연산 부담을 안길 수 있다. 하지만 본 개시는, 단순히 게임 밸런스와 관련된 밸런싱 로그 데이터를 획득하기 위한 명령어를 이용하여 게임 시뮬레이션을 수행함으로써, 밸런싱 로그 데이터를 빠른 시간 내에 획득할 수 있다. 또한 다양한 캐릭터의 조합, 아이템의 조합, 스킬의 조합으로 게임 시뮬레이션을 수행할 수 있어, 사용자에게 게임 서비스가 시작되기 전에 정확도 높은 게임 테스트를 수행할 수도 있다. 이를 통해, 완결성이 높은 게임 서비스를 게임 서비스 제공 초기부터 사용자들에게 제공하여 수많은 사용자들의 이목과 관심을 끌 수 있다. In performing a game simulation, when a command for outputting game graphics is included in a command for performing a game simulation, the amount of computation of the computing device may increase exponentially. However, in the game balance test, the final goal to obtain by performing a game simulation may be game balancing log data. Accordingly, a command for outputting game graphics that requires an excessive amount of computation may impose a computational burden on the computing device to perform game simulation. However, in the present disclosure, by simply performing a game simulation using a command for acquiring balancing log data related to game balance, balancing log data can be acquired within a short time. In addition, a game simulation can be performed by combining various characters, items, and skills, so that a high-accuracy game test can be performed before the game service starts to the user. Through this, a game service with a high degree of completeness can be provided to users from the early stage of providing the game service, thereby attracting the attention and interest of numerous users.

본 개시의 일 실시예에 따라, 프로세서(110)는 게임 밸런스와 관련된 게임 로그 항목 및 게임 시뮬레이션을 수행하기 위한 명령어를 가상 머신에 입력하여 게임 밸런스를 테스트하기 위한 게임 시뮬레이션을 수행할 수 있다. 게임 테스트를 수행하기 위한 게임 시뮬레이션은 도 3을 참조하여 설명될 수 있다. 도 3에 도시된 컴포넌트 중 적어도 일부는 게임 테스트를 수행하기 위하여 생략될 수 있고, 게임 테스트를 수행하기 위한 다른 컴포넌트들이 포함될 수도 있다.According to an embodiment of the present disclosure, the processor 110 may perform a game simulation for testing game balance by inputting a game log entry related to game balance and a command for performing a game simulation to the virtual machine. A game simulation for performing a game test may be described with reference to FIG. 3 . At least some of the components shown in FIG. 3 may be omitted to perform the game test, and other components for performing the game test may be included.

본 개시의 일 실시예에 따라, 프로세서(110)는 게임 밸런스와 관련된 게임 로그 항목(240)을 결정할 수 있다. 프로세서(110)는 게임 시뮬레이션을 수행하기 위한 명령어(220)를 생성할 수 있다. 프로세서(110)는 게임 밸런스와 관련된 게임 로그 항목(240) 및 게임 시뮬레이션을 수행하기 위한 명령어(220)를 가상 머신(210)에 입력할 수 있다. 이 때 가상 머신(210)은 적어도 하나 이상 존재할 수 있다. 전술한 사항은 예시일 뿐 본 개시는 이에 제한되지 않는다.According to an embodiment of the present disclosure, the processor 110 may determine a game log entry 240 related to game balance. The processor 110 may generate the instruction 220 for performing the game simulation. The processor 110 may input a game log entry 240 related to game balance and a command 220 for performing a game simulation to the virtual machine 210 . At this time, at least one virtual machine 210 may exist. The foregoing is merely an example, and the present disclosure is not limited thereto.

본 개시의 일 실시예에 따라, 프로세서(110)는 복수의 가상 머신(210)에서 병렬적으로 게임 시뮬레이션을 수행할 수 있다. 복수의 가상 머신(210)에서 병렬적으로 게임 시뮬레이션을 수행함으로써, 동시에 복잡하고 다양한 게임 상황에 대한 시뮬레이션 및 게임 가설을 검증할 수 있다. 전술한 사항은 예시일 뿐 본 개시는 이에 제한되지 않는다.According to an embodiment of the present disclosure, the processor 110 may perform a game simulation in parallel in the plurality of virtual machines 210 . By performing game simulations in parallel in the plurality of virtual machines 210 , simulations and game hypotheses for complex and various game situations can be verified at the same time. The foregoing is merely an example, and the present disclosure is not limited thereto.

본 개시의 일 실시예에 따라, 프로세서(110)는 복수의 가상 머신 각각에 대하여, 각각 상이한 게임 밸런스와 관련된 게임 로그 항목 및 게임 시뮬레이션을 수행하기 위한 명령어를 입력하여, 복수의 게임 상황에 대하여 병렬적으로 게임 시뮬레이션을 수행할 수 있다. 게임 상황은 게임을 수행하는 과정에서 발생할 수 있는 모든 상황을 포함할 수 있다. 게임 상황은 캐릭터가 게임 상에서 전투를 수행하는 일련의 동작 과정을 포함할 수 있다. 게임 상황은 캐릭터가 게임 상에서 거래를 수행하는 일련의 동작 과정을 포함할 수 있다. 따라서 본 개시의 일 실시예에 따라, 가상 머신1에서 전투 밸런싱 테스트를 위한 게임 시뮬레이션이 수행되고, 가상 머신2에서는 경제 밸런싱 테스트를 위한 게임 시뮬레이션이 수행될 수 있다. 본 개시의 다른 일 실시예에 따라, 가상 머신1에서는 캐릭터A가 스킬B를 사용한 상황에서 전투 밸런싱 테스트를 위한 게임 시뮬레이션이 수행되고, 가상 머신2에서는 캐릭터A가 스킬 시퀸스C를 사용한 상황에서 전투 밸런싱 테스트를 위한 게임 시뮬레이션이 수행될 수 있다. 본 개시의 다른 일 실시예에 따라, 가상 머신1에서 캐릭터A, 캐릭터B, 캐릭터C의 조합으로 전투 밸런싱 테스트를 위한 게임 시뮬레이션이 수행되고, 가상 머신2에서는 캐릭터A, 캐릭터B, 캐릭터D의 조합으로 전투 밸런싱 테스트를 위한 게임 시뮬레이션이 수행될 수 있다. 다양한 캐릭터 조합으로 게임 시뮬레이션을 수행함으로써, 프로세서(110)는 특정 캐릭터 조합이 전투 밸런스 붕괴를 초래하는지 확인할 수 있다. 전술한 사항은 예시일 뿐 본 개시는 이에 제한되지 않는다. According to an embodiment of the present disclosure, the processor 110 inputs, to each of a plurality of virtual machines, a game log entry related to a different game balance and a command for performing a game simulation, and parallel for a plurality of game situations You can perform game simulations. The game situation may include any situation that may occur in the process of performing the game. The game situation may include a series of operation processes in which the character performs a battle in the game. The game situation may include a series of operation processes in which the character performs a transaction in the game. Therefore, according to an embodiment of the present disclosure, a game simulation for a battle balancing test may be performed in the virtual machine 1 , and a game simulation for an economic balancing test may be performed in the virtual machine 2 . According to another embodiment of the present disclosure, in virtual machine 1, a game simulation for a battle balancing test is performed in a situation where character A uses skill B, and in virtual machine 2, battle balancing is performed in a situation where character A uses skill sequence C. A game simulation for testing may be performed. According to another embodiment of the present disclosure, a game simulation for a battle balancing test is performed with a combination of character A, character B, and character C in virtual machine 1, and a combination of character A, character B, and character D in virtual machine 2 game simulation for battle balancing test can be performed. By performing the game simulation with various character combinations, the processor 110 can check whether a specific character combination causes the battle balance to collapse. The foregoing is merely an example, and the present disclosure is not limited thereto.

본 개시의 일 실시예에 따라, 프로세서(110)는 게임 시뮬레이션 수행 결과 게임 밸런스와 관련된 밸런싱 로그 데이터를 획득할 수 있다. According to an embodiment of the present disclosure, the processor 110 may obtain balancing log data related to game balance as a result of performing a game simulation.

본 개시의 일 실시예에 따라, 프로세서(110)는 획득한 밸런싱 로그 데이터를 큐(250)로 전송할 수 있다. 큐(250)는 클라우드 환경의 대용량 메시지 큐를 포함할 수 있다. (예를 들어, 구글의 Pub/Sub) 큐(250)는 데이터를 발송하는 쪽에서 데이터를 생성하는 속도가 데이터를 수신하는 쪽에서 시간당 수신할 수 있는 데이터의 양을 초과하는 경우 데이터를 잠시 저장하기 위하여 사용될 수 있다. 즉, 큐(250)는 일종의 버퍼 역할을 수행할 수 있다. 대용량 메시지 큐는 대용량 스케일의 메시지를 처리하기 위하여 설계된 큐를 포함할 수 있다. 대용량 메시지 큐는 메시지 보내는 쪽과 메시지 수신하는 쪽이 일대다 관계일 수 있다. 전술한 큐는 예시일 뿐 본 개시는 이에 제한되지 않는다.According to an embodiment of the present disclosure, the processor 110 may transmit the obtained balancing log data to the queue 250 . The queue 250 may include a large message queue in the cloud environment. (For example, Google's Pub/Sub) queue 250 temporarily stores data when the data generating speed at the data sending side exceeds the amount of data that can be received per hour at the data receiving side. can be used That is, the queue 250 may serve as a kind of buffer. Large message queues may include queues designed to process large-scale messages. A large message queue may have a one-to-many relationship between a message sender and a message receiver. The above-described queue is merely an example, and the present disclosure is not limited thereto.

본 개시의 일 실시예에 따라, 프로세서(110)는 큐(250)에서 획득한 밸런싱 로그 데이터를 실시간 분석기(270)에 입력할 수 있다. 프로세서(110)는 실시간 분석기(270)를 통해, 밸런싱 로그 데이터를 빅데이터 분석기(280)에서 빅데이터 분석을 수행하기 위한 데이터 가공을 수행할 수 있다. 예를 들어, 전투 밸런싱 로그 데이터에 포함된 데미지 데이터는, 실시간 분석기(270)를 통해 최대 데미지 데이터, 최소 데미지 데이터, 평균 데미지 데이터로 나누어질 수 있다. 따라서 프로세서(110)는 실시간 분석기(270)로부터 획득한 최대 데미지 데이터, 최소 데미지 데이터, 평균 데미지 데이터를 빅데이터 분석기(280)에 입력할 수 있다. 전술한 실시간 분석기(270)는 예시일 뿐 본 개시는 이에 제한되지 않는다.According to an embodiment of the present disclosure, the processor 110 may input the balancing log data obtained from the queue 250 to the real-time analyzer 270 . The processor 110 may perform data processing for performing big data analysis on the balancing log data in the big data analyzer 280 through the real-time analyzer 270 . For example, damage data included in the battle balancing log data may be divided into maximum damage data, minimum damage data, and average damage data through the real-time analyzer 270 . Accordingly, the processor 110 may input the maximum damage data, the minimum damage data, and the average damage data obtained from the real-time analyzer 270 to the big data analyzer 280 . The real-time analyzer 270 described above is merely an example, and the present disclosure is not limited thereto.

본 개시의 일 실시예에 따라, 프로세서(110)는 빅데이터 분석기(280)를 통해 실시간 분석기(270)로부터 획득한 데이터에 기초하여 빅데이터 분석을 수행할 수 있다. 빅데이터 분석은 기존 데이터베이스 관리도구의 능력을 넘어서는 대량의 정형 및/또는 비정형 데이터의 집합의 데이터에 대하여 가치 있는 분석결과를 추출하는 기술을 포함할 수 있다. 프로세서(110)는 빅데이터 분석기(280)를 통해, 밸런싱 로그 데이터를 분석할 수 있다. 따라서 프로세서(110)는 빅데이터 분석기(280)를 통해, 전투 밸런스가 붕괴(예를 들어, 특정 캐릭터가 다른 캐릭터에 비해 절대적으로 우월하거나 열등한 지위에 있는 경우)되었는지 여부, 경제 밸런스가 붕괴(예를 들어, 인플레이션으로 재화의 가치가 하락하여 게임에 새로 진입하는 사용자가 아이템을 구매하지 못하는 경우, 인게임 재화의 획득률이 사용자의 흥미를 이끌어낼 정도로 적절한지 여부 등)되었는지 여부를 확인할 수 있다. 전술한 사항은 예시일 뿐 본 개시는 이에 제한되지 않는다.According to an embodiment of the present disclosure, the processor 110 may perform big data analysis based on data obtained from the real-time analyzer 270 through the big data analyzer 280 . Big data analysis may include a technique for extracting valuable analysis results from data of a large set of structured and/or unstructured data that exceeds the capabilities of existing database management tools. The processor 110 may analyze the balancing log data through the big data analyzer 280 . Therefore, the processor 110 through the big data analyzer 280, whether the battle balance has collapsed (eg, when a specific character is in an absolutely superior or inferior position compared to other characters), whether the economic balance is collapsed (eg For example, if the value of goods has decreased due to inflation and a new user entering the game cannot purchase an item, it is possible to check whether the acquisition rate of in-game goods is appropriate enough to arouse the user's interest, etc.). The foregoing is merely an example, and the present disclosure is not limited thereto.

본 개시의 일 실시예에 따라, Report(290)는 빅데이터 분석기(280)를 통해 획득한 분석 결과를 포함할 수 있다. Report(290)는 게임 내 밸런스에 대한 정보를 도식화하여 사용자에게 게임 내 밸런스에 대한 인사이트를 제공하기 위한 정보를 포함할 수 있다. Report(290)는 사용자 단말(10) 및/또는 관리자 단말(20)에서 게임 테스트 수행 결과를 볼 수 있도록 하는 사용자 인터페이스 정보를 포함할 수 있다. 전술한 Report(290)는 예시일 뿐 본 개시는 이에 제한되지 않는다.According to an embodiment of the present disclosure, the Report 290 may include an analysis result obtained through the big data analyzer 280 . The report 290 may include information for providing insight into in-game balance to the user by schematizing information on in-game balance. The report 290 may include user interface information for viewing the game test execution result in the user terminal 10 and/or the manager terminal 20 . The aforementioned Report 290 is merely an example, and the present disclosure is not limited thereto.

본 개시의 일 실시예에 따라, 프로세서(110)는 밸런싱 로그 데이터를 기초로 전투 밸런싱 테스트 또는 경제 밸런싱 테스트를 수행할 수 있다. 전투 밸런싱 테스트는 게임 테스트의 일종으로서, 캐릭터가 전투 상황에서 균형 있는 전투를 수행하기 위한 게임 밸런스 테스트를 포함할 수 있다. 경제 밸런싱 테스트는 게임 거래에서 균형 있는 거래가 이루어지도록 하기 위한 게임 밸런스 테스트를 포함할 수 있다. 전술한 사항은 예시일 뿐 본 개시는 이에 제한될 수 있다.According to an embodiment of the present disclosure, the processor 110 may perform a combat balancing test or an economic balancing test based on balancing log data. The battle balancing test is a type of game test, and may include a game balance test for a character to perform a balanced battle in a combat situation. The economic balancing test may include a game balance test to ensure a balanced trade in game trading. The foregoing is merely an example, and the present disclosure may be limited thereto.

본 개시의 일 실시예에 따라, 프로세서(110) 전투 밸런싱 테스트 결과를 기초로 게임 상의 전투 능력을 조정할 수 있다. 또한, 프로세서(110) 게임 서버(30) 및/또는 관리자 단말(20)로부터 수신한 정보에 기초하여 게임 상의 전투 능력을 조정할 수도 있다. 데미지가 전투 밸런스 붕괴를 초래할 정도로 큰 경우, 프로세서(110)는 데미지를 감소시킬 수 있다. 예를 들어, 캐릭터A의 데미지가 전투 밸런스 붕괴를 초래할 정도로 큰 경우, 프로세서(110)는 캐릭터A의 데미지를 감소시킬 수 있다. 반대로 데미지가 전투 밸런스 붕괴를 초래할 정도로 작은 경우, 프로세서(110)는 데미지를 증가시킬 수 있다. 전투 밸런스가 붕괴되는 경우, 우월한 지위에 있는 사용자는 항상 승리하므로 게임에 쉽게 싫증을 느끼고, 항상 패배하는 사용자는 게임에 흥미를 잃어 양쪽 사용자 모두 게임에서 이탈할 수 있다. 따라서 다양한 게임 상황에서 전투 밸런싱 테스트를 통해 전투 밸런싱이 붕괴되는지 여부를 확인하는 것이 중요할 수 있다. 그러므로, 전투 밸런스가 붕괴된 게임 상황을 찾아내어 조정함으로써, 전투 밸런스를 맞출 수 있다. 전술한 사항은 예시일 뿐 본 개시는 이에 제한되지 않는다.According to an embodiment of the present disclosure, the combat ability in the game may be adjusted based on the result of the processor 110 battle balancing test. In addition, based on the information received from the processor 110 , the game server 30 and/or the manager terminal 20 , the combat ability in the game may be adjusted. If the damage is large enough to cause the battle balance to collapse, the processor 110 may reduce the damage. For example, when the damage of the character A is large enough to cause the battle balance to collapse, the processor 110 may reduce the damage of the character A. Conversely, if the damage is small enough to cause the battle balance to collapse, the processor 110 may increase the damage. When the battle balance is disrupted, the user in a superior position always wins and thus easily gets bored with the game, and the user who always loses loses interest in the game and both users may drop out of the game. Therefore, it can be important to test combat balancing in various game situations to see if combat balancing breaks down. Therefore, it is possible to balance the battle by finding and adjusting the game situation in which the battle balance is disrupted. The foregoing is merely an example, and the present disclosure is not limited thereto.

본 개시의 일 실시예에 따라, 프로세서(110)는 경제 밸런싱 테스트 결과를 기초로 게임 상의 경제 상태를 조정할 수 있다. 또한, 프로세서(110) 게임 서버(30) 및/또는 관리자 단말(20)로부터 수신한 정보에 기초하여 게임 상의 재화를 조정할 수도 있다. 게임 상의 재화가 경제 밸런스 붕괴를 초래할 정도로 가치가 하락한 경우, 프로세서(110)는 재화의 소멸 속도를 증가시킬 수 있다. 프로세서(110)는 재화의 소멸 속도를 증가시킴으로써, 하락된 재화의 가치를 다시 상승시킬 수 있다. 예를 들어, 게임 상의 인플레이션 현상으로 재화의 가치가 하락한 경우, 프로세서(110)는 게임 상의 재화의 소멸 속도를 증가시켜 재화 가치의 하락을 막을 수 있다. 반대로, 게임 상의 재화가 경제 밸런스 붕괴를 초래할 정도로 가치가 상승한 경우, 프로세서(110)는 재화의 생성 속도를 증가시킬 수 있다. 이를 통해, 게임에 처음 진입하는 사용자들은 적정한 가격에 아이템을 구매하여 게임 플레이를 수행할 수 있어, 원활한 게임 플레이를 즐길 수 있다. 인플레이션, 디플레이션은 게임 사용자들의 이탈을 유발할 수 있으므로, 경제 밸런싱 테스트를 통해, 게임 상의 경제 밸런스를 맞추는 것이 중요할 수 있다. 따라서, 경제 밸런스가 붕괴된 게임 상황을 찾아내어 조정함으로써, 경제 밸런스를 맞출 수 있다. 전술한 사항은 예시일 뿐 본 개시는 이에 제한되지 않는다.According to an embodiment of the present disclosure, the processor 110 may adjust the economic state in the game based on the economic balancing test result. In addition, on the basis of the information received from the processor 110, the game server 30 and/or the manager terminal 20, it is also possible to adjust the goods in the game. When the value of the goods in the game has fallen enough to cause the economic balance to collapse, the processor 110 may increase the rate of extinction of the goods. The processor 110 may increase the value of the fallen goods again by increasing the rate of extinction of the goods. For example, when the value of goods decreases due to inflation in the game, the processor 110 may increase the rate of extinction of the goods in the game to prevent a decrease in the value of the goods. Conversely, when the value of the goods in the game rises enough to cause the economic balance to collapse, the processor 110 may increase the generation speed of the goods. Through this, users who enter the game for the first time can purchase items at an appropriate price and play the game, so that they can enjoy smooth game play. Inflation and deflation can cause game users to churn, so it may be important to balance the economy in the game through an economic balancing test. Accordingly, economic balance can be achieved by finding and adjusting the game situation in which the economic balance has collapsed. The foregoing is merely an example, and the present disclosure is not limited thereto.

본 개시에 따라 게임 상의 밸런스 테스트를 수행하는 경우, 게임 시뮬레이션을 경량화하기 명령어만을 사용함으로써, 게임 시뮬레이션의 속도가 향상될 수 있다. 또한 복수개의 가상 머신에서 서로 다른 조합의 게임 로그 항목을 입력함으로써 다양한 게임 상황에 대하여 게임 시뮬레이션을 수행할 수 있다. 그리고, 복수개의 가상 머신에서 병렬적으로 게임 시뮬레이션을 수행하므로 동시에 다양한 게임 시뮬레이션을 수행할 수 있다. 따라서 빠른 시간 동안 수많은 게임 가설을 검증할 수 있고, 또한 게임이 출시되기 전에 게임의 문제점을 발견하여 수정함으로써 완성도가 높은 게임을 사용자에게 제공할 수 있다.When performing a balance test on a game according to the present disclosure, the speed of the game simulation may be improved by using only the command to lighten the game simulation. In addition, game simulations can be performed for various game situations by inputting game log entries of different combinations in a plurality of virtual machines. In addition, since game simulations are performed in parallel in a plurality of virtual machines, various game simulations can be performed at the same time. Therefore, it is possible to verify numerous game hypotheses in a short period of time, and to provide users with a game with a high degree of completeness by finding and correcting game problems before the game is released.

도 3는 본 개시의 일 실시예에 따라 게임 테스트를 수행하기 위한 방법을 설명하기 위한 예시도이다.3 is an exemplary diagram for explaining a method for performing a game test according to an embodiment of the present disclosure.

도 3에 도시된 컴포넌트 중 적어도 일부는 게임 테스트를 수행하기 위하여 생략될 수 있고, 게임 테스트를 수행하기 위한 다른 컴포넌트들이 포함될 수 있다.At least some of the components shown in FIG. 3 may be omitted to perform a game test, and other components for performing a game test may be included.

본 개시의 일 실시예에 따라, 테스트 수행 서버(100)는 게임 밸런스와 관련된 게임 로그 항목(240)을 결정할 수 있다. 테스트 수행 서버(100)는 게임 시뮬레이션을 수행하기 위한 명령어(220)를 생성할 수 있다. 테스트 수행 서버(100)는 게임 밸런스와 관련된 게임 로그 항목(240) 및 게임 시뮬레이션을 수행하기 위한 명령어(220)를 가상 머신(210)에 입력할 수 있다. 이 때 가상 머신(210)은 적어도 하나 이상 존재할 수 있다. 본 개시의 일 실시예에 따라, 테스트 수행 서버(100)는 복수의 가상 머신(210)에서 병렬적으로 게임 시뮬레이션을 수행하도록 할 수 있다. 복수의 가상 머신(210)에서 병렬적으로 게임 시뮬레이션을 수행함으로써, 같은 시간 동안에 복잡하고 다양한 게임 상황 시뮬레이션 및 게임 가설을 검증할 수 있다. 본 개시의 일 실시예에 따라, 테스트 수행 서버(100)는 복수의 가상 머신 각각에 대하여, 각각 상이한 게임 밸런스와 관련된 게임 로그 항목 및 게임 시뮬레이션을 수행하기 위한 명령어를 입력하여, 복수의 게임 상황에 대하여 병렬적으로 게임 시뮬레이션을 수행할 수 있다.According to an embodiment of the present disclosure, the test execution server 100 may determine a game log entry 240 related to game balance. The test execution server 100 may generate a command 220 for performing a game simulation. The test execution server 100 may input a game log entry 240 related to game balance and a command 220 for performing a game simulation to the virtual machine 210 . At this time, at least one virtual machine 210 may exist. According to an embodiment of the present disclosure, the test execution server 100 may perform a game simulation in parallel in a plurality of virtual machines 210 . By performing game simulations in parallel in the plurality of virtual machines 210 , it is possible to verify complex and various game situation simulations and game hypotheses during the same time period. According to an embodiment of the present disclosure, the test execution server 100 inputs, to each of a plurality of virtual machines, a game log entry related to a different game balance, and a command for performing a game simulation, in a plurality of game situations. game simulations can be performed in parallel.

본 개시의 일 실시예에 따라, 테스트 수행 서버(100)는 게임 시뮬레이션 수행 결과 게임 밸런스와 관련된 밸런싱 로그 데이터를 획득할 수 있다. According to an embodiment of the present disclosure, the test execution server 100 may acquire balancing log data related to game balance as a result of performing a game simulation.

본 개시의 일 실시예에 따라, 테스트 수행 서버(100)는 획득한 밸런싱 로그 데이터를 큐(250)에 저장할 수 있다. 큐(250)는 클라우드 환경의 대용량 메시지 큐를 포함할 수 있다. (예를 들어, 구글의 Pub/Sub) 큐(250)는 데이터를 발송하는 쪽에서 데이터를 생성하는 속도가 데이터를 수신하는 쪽에서 시간당 수신할 수 있는 데이터의 양을 초과하는 경우 데이터를 잠시 저장하기 위하여 사용될 수 있다. (즉, 버퍼 역할을 수행할 수 있다.) 대용량 메시지 큐는 대용량 스케일의 메시지를 처리하기 위하여 설계된 큐를 포함할 수 있다. 대용량 메시지 큐는 데이터를 보내는 쪽과 데이터를 수신하는 쪽이 일대다 관계일 수 있다. 전술한 큐는 예시일 뿐 본 개시는 이에 제한되지 않는다.According to an embodiment of the present disclosure, the test execution server 100 may store the obtained balancing log data in the queue 250 . The queue 250 may include a large message queue in the cloud environment. (For example, Google's Pub/Sub) queue 250 temporarily stores data when the data generating speed at the data sending side exceeds the amount of data that can be received per hour at the data receiving side. can be used (That is, it can serve as a buffer.) The large-capacity message queue may include a queue designed to process large-scale messages. In a large message queue, there can be a one-to-many relationship between the sending side and the receiving side of the data. The above-described queue is merely an example, and the present disclosure is not limited thereto.

본 개시의 일 실시예에 따라, 테스트 수행 서버(100)는 큐(250)에서 획득한 밸런싱 로그 데이터를 실시간 분석기(270)에 입력할 수 있다. 테스트 수행 서버(100)는 실시간 분석기(270)를 통해, 밸런싱 로그 데이터를 빅데이터 분석기(280)에서 빅데이터 분석을 수행하기 위한 데이터 가공을 수행할 수 있다. 예를 들어, 전투 밸런싱 로그 데이터에 포함된 데미지 데이터는, 실시간 분석기(270)를 통해 최대 데미지 데이터, 최소 데미지 데이터, 평균 데미지 데이터로 나누어질 수 있다. 따라서 테스트 수행 서버(100)는 실시간 분석기(270)로부터 획득한 최대 데미지 데이터, 최소 데미지 데이터, 평균 데미지 데이터를 빅데이터 분석기(280)에 입력할 수 있다. 전술한 실시간 분석기(270)는 예시일 뿐 본 개시는 이에 제한되지 않는다.According to an embodiment of the present disclosure, the test execution server 100 may input the balancing log data obtained from the queue 250 to the real-time analyzer 270 . The test execution server 100 may perform data processing for performing big data analysis on the balancing log data in the big data analyzer 280 through the real-time analyzer 270 . For example, damage data included in the battle balancing log data may be divided into maximum damage data, minimum damage data, and average damage data through the real-time analyzer 270 . Therefore, the test execution server 100 may input the maximum damage data, the minimum damage data, and the average damage data obtained from the real-time analyzer 270 to the big data analyzer 280 . The real-time analyzer 270 described above is merely an example, and the present disclosure is not limited thereto.

본 개시의 일 실시예에 따라, 테스트 수행 서버(100)는 빅데이터 분석기(280)를 통해 실시간 분석기(270)로부터 획득한 데이터에 기초하여 빅데이터 분석을 수행할 수 있다. 빅데이터 분석은 기존 데이터베이스 관리도구의 능력을 넘어서는 대량의 정형 및/또는 비정형 데이터의 집합의 데이터에 대하여 가치 있는 분석결과를 추출하는 기술을 포함할 수 있다. 테스트 수행 서버(100)는 빅데이터 분석기(280)를 통해, 밸런싱 로그 데이터를 분석할 수 있다. 따라서 테스트 수행 서버(100)는 빅데이터 분석기(280)를 통해, 전투 밸런스가 붕괴(예를 들어, 특정 캐릭터가 다른 캐릭터에 비해 절대적으로 우월하거나 열등한 지위에 있는 경우)되었는지 여부, 경제 밸런스가 붕괴(예를 들어, 인플레이션으로 재화의 가치가 하락하여 게임에 새로 진입하는 사용자가 아이템을 구매하지 못하는 경우)되었는지 여부를 확인할 수 있다. 전술한 사항은 예시일 뿐 본 개시는 이에 제한되지 않는다.According to an embodiment of the present disclosure, the test execution server 100 may perform big data analysis based on data obtained from the real-time analyzer 270 through the big data analyzer 280 . Big data analysis may include a technique for extracting valuable analysis results from data of a large set of structured and/or unstructured data that exceeds the capabilities of existing database management tools. The test execution server 100 may analyze the balancing log data through the big data analyzer 280 . Therefore, the test execution server 100 through the big data analyzer 280, whether the battle balance has collapsed (for example, if a specific character is in an absolutely superior or inferior position compared to other characters), the economic balance is collapsed (For example, when the value of a good has decreased due to inflation and a new user entering the game cannot purchase an item) or not. The foregoing is merely an example, and the present disclosure is not limited thereto.

본 개시의 일 실시예에 따라, Report(290)는 빅데이터 분석기(280)를 통해 획득한 분석 결과를 포함할 수 있다. Report(290)는 게임 내 밸런스에 대한 정보를 도식화하여 사용자에게 게임 내 밸런스에 대한 인사이트를 제공하기 위한 정보를 포함할 수 있다. Report(290)는 사용자 단말(10) 및/또는 관리자 단말(20)에서 게임 테스트 수행 결과를 볼 수 있도록 하는 사용자 인터페이스(텍스트 및 이미지 형태의 보고서)를 포함할 수 있다. 전술한 Report(290)는 예시일 뿐 본 개시는 이에 제한되지 않는다.According to an embodiment of the present disclosure, the Report 290 may include an analysis result obtained through the big data analyzer 280 . The report 290 may include information for providing insight into in-game balance to the user by schematizing information on in-game balance. The report 290 may include a user interface (text and image type report) for viewing the game test execution result in the user terminal 10 and/or the manager terminal 20 . The aforementioned Report 290 is merely an example, and the present disclosure is not limited thereto.

도 4은 본 개시의 일 실시예에 따라 전투 밸런스 테스트를 수행하기 위한 방법을 설명하기 위한 예시도이다.4 is an exemplary diagram for explaining a method for performing a battle balance test according to an embodiment of the present disclosure.

도 4는 데미지 데이터(330)를 개시하고 있다. 데미지 데이터(330)는 전투 밸런싱 로그 데이터일 수 있다. 데미지 데이터는 캐릭터의 행위로 발생한 데미지를 포함할 수 있으며, 데미지 데이터는 최대 데미지 데이터, 최소 데미지 데이터, 평균 데미지 데이터를 포함할 수 있다. 전투 밸런싱 로그 데이터는 예를 들어, 캐릭터별 데미지 데이터, 캐릭터 조합별 데미지 데이터, 캐릭터 직업별 데미지 데이터, 아이템별 데미지 데이터, 아이템 조합별 데미지 데이터, 스킬별 데미지 데이터, 스킬 시퀸스별 데미지 데이터를 포함할 수 있다. 전술한 사항은 예시일 뿐 본 개시는 이에 제한되지 않는다. 4 discloses damage data 330 . The damage data 330 may be combat balancing log data. The damage data may include damage caused by the character's actions, and the damage data may include maximum damage data, minimum damage data, and average damage data. Combat balancing log data may include, for example, damage data for each character, damage data for each character combination, damage data for each character class, damage data for each item, damage data for each item combination, damage data for each skill, and damage data for each skill sequence. can The foregoing is merely an example, and the present disclosure is not limited thereto.

본 개시의 일 실시예에 따라, 테스트 수행 서버(100)는 복수의 가상 머신(210)에서 병렬적으로 게임 시뮬레이션을 수행할 수 있다. 본 개시의 일 실시예에 따라, 테스트 수행 서버(100)는 복수의 가상 머신 각각에 대하여, 각각 상이한 게임 밸런스와 관련된 게임 로그 항목 및 게임 시뮬레이션을 수행하기 위한 명령어를 입력하여, 복수의 게임 상황에 대하여 병렬적으로 게임 시뮬레이션을 수행할 수 있다. 테스트 수행 서버(100)는 복수의 게임 상황에 대하여 병렬적으로 가상 머신(210)에서 게임 시뮬레이션을 수행한 결과에 대하여 데미지 데이터(330)를 획득할 수 있다. 전술한 사항은 예시일 뿐 본 개시는 이에 제한되지 않는다.According to an embodiment of the present disclosure, the test execution server 100 may perform a game simulation in parallel in the plurality of virtual machines 210 . According to an embodiment of the present disclosure, the test execution server 100 inputs, to each of a plurality of virtual machines, a game log entry related to a different game balance, and a command for performing a game simulation, in a plurality of game situations. game simulations can be performed in parallel. The test execution server 100 may acquire the damage data 330 with respect to a result of performing a game simulation in the virtual machine 210 in parallel with respect to a plurality of game situations. The foregoing is merely an example, and the present disclosure is not limited thereto.

하기에서는 복수의 게임 상황에 대하여 게임 시뮬레이션을 수행하여 데미지 데이터(330)를 획득하는 예시를 서술한다.Hereinafter, an example of acquiring the damage data 330 by performing a game simulation for a plurality of game situations will be described.

본 개시의 일 실시예에 따라, 테스트 수행 서버(100)는 복수의 게임 상황에 대하여 게임 시뮬레이션을 수행하기 위하여 적어도 하나 이상의 게임 로그 항목(240)을 결정할 수 있다. 게임 로그 항목은 게임 로그 데이터의 속성(attribute)을 포함할 수 있다. 또한, 게임 로그 항목은 게임 로그 데이터 테이블에서 컬럼(column)을 포함할 수 있다. 예를 들어, 캐릭터A가 전투를 수행하는 상황에서 전투 밸런싱 테스트를 수행하고자 하는 경우, 테스트 수행 서버(100)는 전투 밸런스와 관련된 게임 로그 항목을 결정할 수 있다. 더 구체적으로, 테스트 수행 서버(100)는 캐릭터 A의 전투 밸런싱 테스트를 위하여 캐릭터 ID, 캐릭터의 직업, 캐릭터 레벨, 캐릭터의 체력, 캐릭터가 착용한 아이템, 캐릭터가 사용한 스킬 명칭, 캐릭터가 사용한 스킬 시퀸스를 결정할 수 있다. 전술한 사항은 예시일 뿐 본 개시는 이에 제한되지 않는다.According to an embodiment of the present disclosure, the test execution server 100 may determine at least one game log item 240 to perform a game simulation for a plurality of game situations. The game log entry may include an attribute of game log data. Also, the game log entry may include a column in the game log data table. For example, when character A wants to perform a battle balancing test in a situation in which battle is performed, the test execution server 100 may determine a game log entry related to battle balance. More specifically, the test execution server 100 performs a character ID, a character's job, a character level, a character's physical strength, an item worn by the character, a skill name used by the character, and a skill sequence used by the character for the character A's battle balancing test. can be decided The foregoing is merely an example, and the present disclosure is not limited thereto.

본 개시의 일 실시예에 따라, 테스트 수행 서버(100)는 다양한 캐릭터 또는 캐릭터의 조합에 대하여 게임 시뮬레이션을 통해 데미지 데이터를 획득할 수 있다. 예를 들어, 테스트 수행 서버(100)는 캐릭터A의 데미지 데이터를 획득할 수 있다. 또한 테스트 수행 서버(100)는 캐릭터A, 캐릭터B, 캐릭터C의 조합의 데미지 데이터를 획득할 수 있다. (캐릭터 조합의 경우, 캐릭터 시너지 효과로 인해 발생하는 데미지가 증가하거나 감소할 수 있다.) 테스트 수행 서버(100)는 캐릭터A, 캐릭터A의 리더인 캐릭터B, 캐릭터A의 서포터인 캐릭터C 조합의 데미지 데이터를 획득할 수 있다. 다수의 캐릭터가 함께 플레이하는 게임의 경우, 함께 플레이하는 캐릭터, 함께 플레이하는 캐릭터의 지위에 따라 발생하는 데미지가 상이하므로, 함께 플레이하는 캐릭터 지위에 따른 데미지 데이터도 밸런싱 테스트를 위해 필요할 수 있다. 전술한 사항은 예시일 뿐 본 개시는 이에 제한되지 않는다.According to an embodiment of the present disclosure, the test execution server 100 may acquire damage data through game simulation for various characters or combinations of characters. For example, the test execution server 100 may acquire damage data of character A. In addition, the test execution server 100 may acquire damage data of a combination of character A, character B, and character C. (In the case of a character combination, damage caused by character synergy may increase or decrease.) The test execution server 100 is a combination of character A, character B, the leader of character A, and character C, a supporter of character A. Damage data can be obtained. In the case of a game in which a plurality of characters are played together, damage data according to the status of the characters playing together may be required for the balancing test because damage caused by the characters playing together and the status of the characters playing together is different. The foregoing is merely an example, and the present disclosure is not limited thereto.

본 개시의 일 실시예에 따라, 테스트 수행 서버(100)는 캐릭터 직업별 조합에 대하여 게임 시뮬레이션을 통해 데미지 데이터를 획득할 수 있다. 예를 들어, 테스트 수행 서버(100)는 전사, 궁수, 마법사 조합의 데미지 데이터, 또는 전사, 마법사 조합의 데미지 데이터(330)를 획득할 수 있다. 테스트 수행 서버(100)는 캐릭터 직업별 조합에 대한 데미지 데이터(330)를 획득함으로써, 어떤 캐릭터 직업별 조합이 전투 밸런스 붕괴시킬 정도로 데미지가 강한지 또는 약한지를 판단할 수 있다. 이를 통해, 테스트 수행 서버(100)는 데미지를 조정함으로써 전투 밸런스를 맞출 수 있다. 전술한 사항은 예시일 뿐 본 개시는 이에 제한되지 않는다.According to an embodiment of the present disclosure, the test execution server 100 may acquire damage data through a game simulation for each character occupation-specific combination. For example, the test execution server 100 may obtain damage data of a combination of warriors, archers, and wizards, or damage data 330 of a combination of warriors and wizards. The test execution server 100 may determine whether the damage is strong or weak enough to destroy the battle balance of a certain character job combination by acquiring the damage data 330 for each character job combination. Through this, the test execution server 100 may adjust the battle balance by adjusting the damage. The foregoing is merely an example, and the present disclosure is not limited thereto.

본 개시의 일 실시예에 따라, 테스트 수행 서버(100)는 아이템 및/또는 아이템 조합에 대하여 게임 시뮬레이션을 통해 데미지 데이터(330)를 획득할 수 있다. 예를 들어, 테스트 수행 서버는 장갑 아이템, 투구 아이템, 검 아이템 조합의 데미지 데이터 또는 갑옷 아이템, 활 아이템, 화살 아이템 조합의 데미지 데이터를 획득할 수 있다. 테스트 수행 서버(100)는 아이템 및/또는 아이템 조합에 대한 데미지 데이터(330)를 획득함으로써, 어떤 아이템 및/또는 아이템 조합이 전투 밸런스 붕괴시킬 정도로 데미지가 강한지 또는 약한지를 판단할 수 있다. 이를 통해, 테스트 수행 서버(100)는 데미지를 조정함으로써 전투 밸런스를 맞출 수 있다. 전술한 사항은 예시일 뿐 본 개시는 이에 제한되지 않는다.According to an embodiment of the present disclosure, the test execution server 100 may acquire the damage data 330 through a game simulation for an item and/or a combination of items. For example, the test execution server may acquire damage data of a combination of glove item, helmet item, and sword item or damage data of a combination of armor item, bow item, and arrow item. The test execution server 100 may determine which item and/or item combination has strong or weak damage enough to destroy the battle balance by acquiring the damage data 330 for the item and/or item combination. Through this, the test execution server 100 may adjust the battle balance by adjusting the damage. The foregoing is merely an example, and the present disclosure is not limited thereto.

본 개시의 일 실시예에 따라, 테스트 수행 서버(100)는 스킬 및/또는 스킬 시퀸스에 대하여 게임 시뮬레이션을 통해 데미지 데이터(330)를 획득할 수 있다. 예를 들어, 테스트 수행 서버는 스킬 시퀸스(스킬A, 스킬B, 스킬C)의 데미지 데이터를 획득할 수 있다. 테스트 수행 서버(100)는 스킬 및/또는 스킬 시퀸스에 대한 데미지 데이터(330)를 획득함으로써, 어떤 스킬 및/또는 스킬 시퀸스가 전투 밸런스를 붕괴시킬 정도로 데미지가 강한지 또는 약한지 판단할 수 있다. 이를 통해, 테스트 수행 서버(100)는 데미지를 조정함으로써 전투 밸런스를 맞출 수 있다. 전술한 사항은 예시일 뿐 본 개시는 이에 제한되지 않는다.According to an embodiment of the present disclosure, the test execution server 100 may acquire the damage data 330 through a game simulation with respect to a skill and/or a skill sequence. For example, the test execution server may acquire damage data of the skill sequence (skill A, skill B, skill C). The test execution server 100 may determine which skill and/or skill sequence has strong or weak damage enough to disrupt the battle balance by acquiring the damage data 330 for the skill and/or skill sequence. Through this, the test execution server 100 may adjust the battle balance by adjusting the damage. The foregoing is merely an example, and the present disclosure is not limited thereto.

도 4에 도시된 큐(250), 실시간 분석기(270), 빅데이터 분석기(280), Report(290)은 도 3에서 전술되어 이하에서 설명은 생략하도록 한다.The queue 250, the real-time analyzer 270, the big data analyzer 280, and the Report 290 shown in FIG. 4 have been described above in FIG. 3, and thus descriptions thereof will be omitted.

도 5는 본 개시의 일 실시예에 따라 게임 테스트를 수행하는 방법의 순서도이다.5 is a flowchart of a method of performing a game test according to an embodiment of the present disclosure.

테스트 수행 서버(100)는 게임 밸런스와 관련된 게임 로그 항목을 적어도 하나 이상 결정(410)할 수 있다. The test execution server 100 may determine ( 410 ) at least one or more game log entries related to game balance.

본 개시의 일 실시예에 따라, 게임 밸런스는, 게임 내 캐릭터의 전투에 관련한 전투 밸런스 또는 게임 내 경제 활동과 관련한 경제 밸런스 중 적어도 하나를 포함할 수 있다.According to an embodiment of the present disclosure, the game balance may include at least one of a battle balance related to a battle of a character in the game or an economic balance related to an economic activity in the game.

본 개시의 일 실시예에 따라, 전투 밸런스와 관련된 게임 로그 항목은, 캐릭터 정보 항목, 아이템 정보 항목 또는 스킬 정보 항목 중 적어도 하나를 포함할 수 있다.According to an embodiment of the present disclosure, the game log item related to battle balance may include at least one of a character information item, an item information item, and a skill information item.

본 개시의 일 실시예에 따라, 경제 밸런스와 관련된 게임 로그 항목은, 게임 재화 정보 항목, 게임 아이템 재화 정보 항목 또는 플레이어가 시간당 획득하는 재화 정보 항목 중 적어도 하나를 포함할 수 있다.According to an embodiment of the present disclosure, the game log item related to economic balance may include at least one of a game goods information item, a game item goods information item, or a goods information item that the player acquires per hour.

테스트 수행 서버(100)는 게임 시뮬레이션을 수행하기 위한 명령어를 생성(420)할 수 있다.The test execution server 100 may generate 420 a command for performing a game simulation.

본 개시의 일 실시예에 따라, 게임 시뮬레이션을 수행하기 위한 명령어는, 게임 그래픽을 출력하기 위한 명령어, 사용자 단말과 게임 서버 간의 통신 기능을 수행하기 위한 명령어, 게임의 사회적 기능을 수행하기 위한 명령어 또는 상기 게임 밸런스와 관련된 밸런싱 로그 데이터를 획득하기 위한 명령어 중 적어도 하나를 포함할 수 있다.According to an embodiment of the present disclosure, a command for performing a game simulation includes a command for outputting game graphics, a command for performing a communication function between a user terminal and a game server, a command for performing a social function of the game, or It may include at least one of commands for acquiring balancing log data related to the game balance.

본 개시의 일 실시예에 따라, 게임 밸런스와 관련된 밸런싱 로그 데이터를 획득하기 위한 명령어는, 게임 캐릭터의 활동을 야기하는 명령어, 게임 환경을 제어하는 명령어, 전투 밸런싱 로그 데이터를 획득하기 위한 명령어 또는 경제 밸런싱 로그 데이터를 획득하기 위한 명령어 중 적어도 하나를 포함할 수 있다.According to an embodiment of the present disclosure, a command for obtaining balancing log data related to game balance is a command for causing an activity of a game character, a command for controlling a game environment, a command for obtaining battle balancing log data, or economy It may include at least one of commands for obtaining balancing log data.

테스트 수행 서버(100)는 게임 밸런스와 관련된 게임 로그 항목 및 게임 시뮬레이션을 수행하기 위한 명령어를 가상 머신에 입력하여 게임 밸런스를 테스트하기 위한 게임 시뮬레이션을 수행(430)할 수 있다.The test execution server 100 may perform a game simulation for testing game balance by inputting a game log entry related to game balance and a command for performing a game simulation to the virtual machine ( 430 ).

테스트 수행 서버(100)는 게임 시뮬레이션 수행 결과 게임 밸런스와 관련된 밸런싱 로그 데이터를 획득(440)할 수 있다.The test execution server 100 may acquire ( 440 ) balancing log data related to game balance as a result of performing the game simulation.

본 개시의 일 실시예에 따라, 밸런싱 로그 데이터는, 전투 밸런스와 관련된 게임 로그 항목에 대응하는 전투 밸런싱 로그 데이터 또는 경제 밸런스와 관련된 게임 로그 항목에 대응하는 경제 밸런싱 로그 데이터 중 적어도 하나를 포함할 수 있다.According to an embodiment of the present disclosure, the balancing log data may include at least one of battle balancing log data corresponding to a game log item related to battle balance or economic balancing log data corresponding to a game log item related to economic balance. have.

도 6는 본 개시의 일 실시예에 따라 게임 테스트를 수행하기 위한 모듈을 도시한 블록 구성도이다.6 is a block diagram illustrating a module for performing a game test according to an embodiment of the present disclosure.

본 개시의 일 실시예에 따라 게임 테스트는 다음과 같은 모듈에 의해 구현될 수 있다.According to an embodiment of the present disclosure, the game test may be implemented by the following module.

본 개시의 일 실시예에 따라, 게임 밸런스와 관련된 게임 로그 항목을 적어도 하나 이상 결정하기 위한 모듈(510); 게임 시뮬레이션을 수행하기 위한 명령어를 생성하기 위한 모듈(520); 상기 게임 밸런스와 관련된 게임 로그 항목 및 상기 게임 시뮬레이션을 수행하기 위한 명령어를 가상 머신에 입력하여 게임 밸런스를 테스트하기 위한 게임 시뮬레이션을 수행하기 위한 모듈(530); 게임 시뮬레이션 수행 결과 게임 밸런스와 관련된 밸런싱 로그 데이터를 획득하기 위한 모듈(540)에 의하여 구현될 수 있다.According to an embodiment of the present disclosure, a module 510 for determining at least one or more game log entries related to game balance; a module 520 for generating instructions for performing a game simulation; a module 530 for performing a game simulation for testing game balance by inputting a game log entry related to the game balance and a command for performing the game simulation into a virtual machine; It may be implemented by the module 540 for acquiring balancing log data related to game balance as a result of performing game simulation.

게임 테스트를 수행하기 위한 대안적 실시예에서, 게임 밸런스와 관련된 게임 로그 항목을 적어도 하나 이상 결정하기 위한 모듈(510)은 복수의 게임 상황을 설정하기 위한 사전 결정된 기준에 기초하여 게임 밸런스와 관련된 게임 로그 항목을 적어도 하나 이상 결정하기 위한 모듈을 포함할 수 있다.In an alternative embodiment for performing a game test, the module 510 for determining at least one game log entry related to game balance may include a game related to game balance based on a predetermined criterion for setting a plurality of game situations. A module for determining at least one or more log entries may be included.

게임 테스트를 수행하기 위한 대안적 실시예에서, 게임 시뮬레이션을 수행하기 위한 명령어를 생성하기 위한 모듈(520)은 게임 시뮬레이션을 경량화 하기 위하여 게임 밸런스와 관련된 밸런싱 로그 데이터를 획득하기 위한 명령어를 포함하여 게임 시뮬레이션을 수행하기 위한 명령어를 생성하기 위한 모듈을 포함할 수 있다.In an alternative embodiment for performing a game test, the module 520 for generating instructions for performing a game simulation includes instructions for obtaining balancing log data related to game balance in order to lighten the game simulation. It may include a module for generating instructions for performing the simulation.

게임 테스트를 수행하기 위한 대안적 실시예에서, 게임 밸런스와 관련된 게임 로그 항목 및 게임 시뮬레이션을 수행하기 위한 명령어를 가상 머신에 입력하여 게임 밸런스를 테스트하기 위한 게임 시뮬레이션을 수행하기 위한 모듈(530)은 복수의 가상 머신에서 병렬적으로 게임 시뮬레이션을 수행하기 위한 모듈을 포함할 수 있다.In an alternative embodiment for performing a game test, a module 530 for performing a game simulation for testing game balance by inputting a game log entry related to game balance and a command for performing a game simulation into the virtual machine, A module for performing a game simulation in parallel in a plurality of virtual machines may be included.

게임 테스트를 수행하기 위한 대안적 실시예에서, 복수의 가상 머신에서 병렬적으로 게임 시뮬레이션을 수행하기 위한 모듈은 각각 상이한 상기 게임 밸런스와 관련된 게임 로그 항목 및 상기 게임 시뮬레이션을 수행하기 위한 명령어를 입력하여, 복수의 게임 상황에 대하여 병렬적으로 게임 시뮬레이션을 수행하기 위한 모듈을 포함할 수 있다.In an alternative embodiment for performing a game test, a module for performing a game simulation in parallel in a plurality of virtual machines by inputting a game log entry related to each different game balance and a command for performing the game simulation , a module for performing a game simulation in parallel for a plurality of game situations.

게임 테스트를 수행하기 위한 대안적 실시예에서, 밸런싱 로그 데이터를 기초로 전투 밸런싱 테스트 또는 경제 밸런싱 테스트를 수행하기 위한 모듈을 더 포함할 수 있다.In an alternative embodiment for performing the game test, the module may further include a module for performing a combat balancing test or an economic balancing test based on the balancing log data.

게임 테스트를 수행하기 위한 대안적 실시예에서, 전투 밸런싱 테스트 결과를 기초로 게임 상의 전투 능력을 조정하기 위한 모듈을 더 포함할 수 있다.In an alternative embodiment for performing the game test, the module may further include a module for adjusting the combat ability in the game based on the battle balancing test result.

게임 테스트를 수행하기 위한 대안적 실시예에서, 경제 밸런싱 테스트 결과를 기초로 게임 상의 경제 상태를 조정하기 위한 모듈을 더 포함할 수 있다.In an alternative embodiment for performing the game test, the module may further include a module for adjusting the economic state on the game based on the economic balancing test result.

본 개시의 일 실시예에 따르면 게임 테스트를 수행하기 위한 모듈은, 컴퓨팅 장치를 구현하기 위한 수단, 회로 또는 로직에 의하여 구현될 수도 있다. 당업자들은 추가적으로 여기서 개시된 실시예들과 관련되어 설명된 다양한 예시적 논리적 블록들, 구성들, 모듈들, 회로들, 수단들, 로직들 및 알고리즘 단계들이 전자 하드웨어, 컴퓨터 소프트웨어, 또는 양쪽 모두의 조합들로 구현될 수 있음을 인식해야 한다. 하드웨어 및 소프트웨어의 상호교환성을 명백하게 예시하기 위해, 다양한 예시적 컴포넌트들, 블록들, 구성들, 수단들, 로직들, 모듈들, 회로들, 및 단계들은 그들의 기능성 측면에서 일반적으로 위에서 설명되었다. 그러한 기능성이 하드웨어로 또는 소프트웨어로서 구현되는지 여부는 전반적인 시스템에 부과된 특정 어플리케이션(application) 및 설계 제한들에 달려 있다. 숙련된 기술자들은 각각의 특정 어플리케이션들을 위해 다양한 방법들로 설명된 기능성을 구현할 수 있으나, 그러한 구현의 결정들이 본 개시내용의 영역을 벗어나게 하는 것으로 해석되어서는 안된다.According to an embodiment of the present disclosure, a module for performing a game test may be implemented by means, circuitry or logic for implementing a computing device. Those skilled in the art will further appreciate that the various illustrative logical blocks, configurations, modules, circuits, means, logics, and algorithm steps described in connection with the embodiments disclosed herein may be combined with electronic hardware, computer software, or combinations of both. It should be recognized that it can be implemented as To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, configurations, means, logics, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure.

도 7은 본 개시의 실시예들이 구현될 수 있는 예시적인 컴퓨팅 환경에 대한 간략하고 일반적인 개략도이다.7 is a simplified, general schematic diagram of an exemplary computing environment in which embodiments of the present disclosure may be implemented.

본 개시가 일반적으로 컴퓨팅 장치에 의해 구현될 수 있는 것으로 전술되었지만, 당업자라면 본 개시가 하나 이상의 컴퓨터 상에서 실행될 수 있는 컴퓨터 실행가능 명령어 및/또는 기타 프로그램 모듈들과 결합되어 및/또는 하드웨어와 소프트웨어의 조합으로써 구현될 수 있다는 것을 잘 알 것이다.Although the present disclosure has been described above generally as being capable of being implemented by a computing device, those skilled in the art will appreciate that the present disclosure is a combination of hardware and software and/or in combination with computer-executable instructions and/or other program modules that may be executed on one or more computers. It will be appreciated that it can be implemented as a combination.

일반적으로, 프로그램 모듈은 특정의 태스크를 수행하거나 특정의 추상 데이터 유형을 구현하는 루틴, 프로그램, 컴포넌트, 데이터 구조, 기타 등등을 포함한다. 또한, 당업자라면 본 개시의 방법이 단일-프로세서 또는 멀티프로세서 컴퓨터 시스템, 미니컴퓨터, 메인프레임 컴퓨터는 물론 퍼스널 컴퓨터, 핸드헬드 컴퓨팅 장치, 마이크로프로세서-기반 또는 프로그램가능 가전 제품, 기타 등등(이들 각각은 하나 이상의 연관된 장치와 연결되어 동작할 수 있음)을 비롯한 다른 컴퓨터 시스템 구성으로 실시될 수 있다는 것을 잘 알 것이다.Generally, program modules include routines, programs, components, data structures, etc. that perform particular tasks or implement particular abstract data types. In addition, those skilled in the art will appreciate that the methods of the present disclosure are suitable for single-processor or multiprocessor computer systems, minicomputers, mainframe computers as well as personal computers, handheld computing devices, microprocessor-based or programmable consumer electronics, etc. (each of which is It will be appreciated that other computer system configurations may be implemented, including those that may operate in connection with one or more associated devices.

본 개시의 설명된 실시예들은 또한 어떤 태스크들이 통신 네트워크를 통해 연결되어 있는 원격 처리 장치들에 의해 수행되는 분산 컴퓨팅 환경에서 실시될 수 있다. 분산 컴퓨팅 환경에서, 프로그램 모듈은 로컬 및 원격 메모리 저장 장치 둘 다에 위치할 수 있다.The described embodiments of the present disclosure may also be practiced in distributed computing environments where certain tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.

컴퓨터는 통상적으로 다양한 컴퓨터 판독가능 매체를 포함한다. 컴퓨터에 의해 액세스 가능한 매체는 그 어떤 것이든지 컴퓨터 판독가능 매체가 될 수 있고, 이러한 컴퓨터 판독가능 매체는 휘발성 및 비휘발성 매체, 일시적(transitory) 및 비일시적(non-transitory) 매체, 이동식 및 비-이동식 매체를 포함한다. 제한이 아닌 예로서, 컴퓨터 판독가능 매체는 컴퓨터 판독가능 저장 매체 및 컴퓨터 판독가능 전송 매체를 포함할 수 있다. 컴퓨터 판독가능 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보를 저장하는 임의의 방법 또는 기술로 구현되는 휘발성 및 비휘발성 매체, 일시적 및 비-일시적 매체, 이동식 및 비이동식 매체를 포함한다. 컴퓨터 판독가능 저장 매체는 RAM, ROM, EEPROM, 플래시 메모리 또는 기타 메모리 기술, CD-ROM, DVD(digital video disk) 또는 기타 광 디스크 저장 장치, 자기 카세트, 자기 테이프, 자기 디스크 저장 장치 또는 기타 자기 저장 장치, 또는 컴퓨터에 의해 액세스될 수 있고 원하는 정보를 저장하는 데 사용될 수 있는 임의의 기타 매체를 포함하지만, 이에 한정되지 않는다.Computers typically include a variety of computer-readable media. Any medium accessible by a computer can be a computer readable medium, and such computer readable media includes volatile and nonvolatile media, transitory and non-transitory media, removable and non-transitory media. including removable media. By way of example, and not limitation, computer-readable media may include computer-readable storage media and computer-readable transmission media. Computer-readable storage media includes volatile and non-volatile media, transitory and non-transitory media, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. includes media. A computer-readable storage medium may be RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital video disk (DVD) or other optical disk storage device, magnetic cassette, magnetic tape, magnetic disk storage device, or other magnetic storage device. device, or any other medium that can be accessed by a computer and used to store the desired information.

컴퓨터 판독가능 전송 매체는 통상적으로 반송파(carrier wave) 또는 기타 전송 메커니즘(transport mechanism)과 같은 피변조 데이터 신호(modulated data signal)에 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터 등을 구현하고 모든 정보 전달 매체를 포함한다. 피변조 데이터 신호라는 용어는 신호 내에 정보를 인코딩하도록 그 신호의 특성들 중 하나 이상을 설정 또는 변경시킨 신호를 의미한다. 제한이 아닌 예로서, 컴퓨터 판독가능 전송 매체는 유선 네트워크 또는 직접 배선 접속(direct-wired connection)과 같은 유선 매체, 그리고 음향, RF, 적외선, 기타 무선 매체와 같은 무선 매체를 포함한다. 상술된 매체들 중 임의의 것의 조합도 역시 컴퓨터 판독가능 전송 매체의 범위 안에 포함되는 것으로 한다.Computer readable transmission media typically embodies computer readable instructions, data structures, program modules or other data, etc. in a modulated data signal such as a carrier wave or other transport mechanism, and Includes any information delivery medium. The term modulated data signal means a signal in which one or more of the characteristics of the signal is set or changed so as to encode information in the signal. By way of example, and not limitation, computer-readable transmission media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared, and other wireless media. Combinations of any of the above are also intended to be included within the scope of computer-readable transmission media.

컴퓨터(1102)를 포함하는 본 개시의 여러가지 측면들을 구현하는 예시적인 환경(1100)이 나타내어져 있으며, 컴퓨터(1102)는 처리 장치(1104), 시스템 메모리(1106) 및 시스템 버스(1108)를 포함한다. 시스템 버스(1108)는 시스템 메모리(1106)(이에 한정되지 않음)를 비롯한 시스템 컴포넌트들을 처리 장치(1104)에 연결시킨다. 처리 장치(1104)는 다양한 상용 프로세서들 중 임의의 프로세서일 수 있다. 듀얼 프로세서 및 기타 멀티프로세서 아키텍처도 역시 처리 장치(1104)로서 이용될 수 있다.An example environment 1100 implementing various aspects of the disclosure is shown including a computer 1102 , the computer 1102 including a processing unit 1104 , a system memory 1106 , and a system bus 1108 . do. The system bus 1108 couples system components, including but not limited to system memory 1106 , to the processing device 1104 . The processing device 1104 may be any of a variety of commercially available processors. Dual processor and other multiprocessor architectures may also be used as processing unit 1104 .

시스템 버스(1108)는 메모리 버스, 주변장치 버스, 및 다양한 상용 버스 아키텍처 중 임의의 것을 사용하는 로컬 버스에 추가적으로 상호 연결될 수 있는 몇 가지 유형의 버스 구조 중 임의의 것일 수 있다. 시스템 메모리(1106)는 판독 전용 메모리(ROM)(1110) 및 랜덤 액세스 메모리(RAM)(1112)를 포함한다. 기본 입/출력 시스템(BIOS)은 ROM, EPROM, EEPROM 등의 비휘발성 메모리(1110)에 저장되며, 이 BIOS는 시동 중과 같은 때에 컴퓨터(1102) 내의 구성요소들 간에 정보를 전송하는 일을 돕는 기본적인 루틴을 포함한다. RAM(1112)은 또한 데이터를 캐싱하기 위한 정적 RAM 등의 고속 RAM을 포함할 수 있다.The system bus 1108 may be any of several types of bus structures that may further be interconnected to a memory bus, a peripheral bus, and a local bus using any of a variety of commercial bus architectures. System memory 1106 includes read only memory (ROM) 1110 and random access memory (RAM) 1112 . A basic input/output system (BIOS) is stored in non-volatile memory 1110, such as ROM, EPROM, EEPROM, etc., which is the basic input/output system (BIOS) that helps transfer information between components within computer 1102, such as during startup. contains routines. RAM 1112 may also include high-speed RAM, such as static RAM, for caching data.

컴퓨터(1102)는 또한 내장형 하드 디스크 드라이브(HDD)(1114)(예를 들어, EIDE, SATA)-이 내장형 하드 디스크 드라이브(1114)는 또한 적당한 섀시(도시 생략) 내에서 외장형 용도로 구성될 수 있음-, 자기 플로피 디스크 드라이브(FDD)(1116)(예를 들어, 이동식 디스켓(1118)으로부터 판독을 하거나 그에 기록을 하기 위한 것임), 및 광 디스크 드라이브(1120)(예를 들어, CD-ROM 디스크(1122)를 판독하거나 DVD 등의 기타 고용량 광 매체로부터 판독을 하거나 그에 기록을 하기 위한 것임)를 포함한다. 하드 디스크 드라이브(1114), 자기 디스크 드라이브(1116) 및 광 디스크 드라이브(1120)는 각각 하드 디스크 드라이브 인터페이스(1124), 자기 디스크 드라이브 인터페이스(1126) 및 광 드라이브 인터페이스(1128)에 의해 시스템 버스(1108)에 연결될 수 있다. 외장형 드라이브 구현을 위한 인터페이스(1124)는 USB(Universal Serial Bus) 및 IEEE 1394 인터페이스 기술 중 적어도 하나 또는 그 둘 다를 포함한다.The computer 1102 may also be configured for external use within an internal hard disk drive (HDD) 1114 (eg, EIDE, SATA) - this internal hard disk drive 1114 may also be configured for external use within a suitable chassis (not shown). Yes-, magnetic floppy disk drive (FDD) 1116 (eg, for reading from or writing to removable diskette 1118), and optical disk drive 1120 (eg, CD-ROM) for reading from, or writing to, disk 1122, or other high capacity optical media such as DVD. The hard disk drive 1114 , the magnetic disk drive 1116 , and the optical disk drive 1120 are connected to the system bus 1108 by the hard disk drive interface 1124 , the magnetic disk drive interface 1126 , and the optical drive interface 1128 , respectively. ) can be connected to The interface 1124 for external drive implementation includes at least one or both of Universal Serial Bus (USB) and IEEE 1394 interface technologies.

이들 드라이브 및 그와 연관된 컴퓨터 판독가능 매체는 데이터, 데이터 구조, 컴퓨터 실행가능 명령어, 기타 등등의 비휘발성 저장을 제공한다. 컴퓨터(1102)의 경우, 드라이브 및 매체는 임의의 데이터를 적당한 디지털 형식으로 저장하는 것에 대응한다. 상기에서의 컴퓨터 판독가능 매체에 대한 설명이 HDD, 이동식 자기 디스크, 및 CD 또는 DVD 등의 이동식 광 매체를 언급하고 있지만, 당업자라면 집 드라이브(zip drive), 자기 카세트, 플래쉬 메모리 카드, 카트리지, 기타 등등의 컴퓨터에 의해 판독가능한 다른 유형의 매체도 역시 예시적인 운영 환경에서 사용될 수 있으며 또 임의의 이러한 매체가 본 개시의 방법들을 수행하기 위한 컴퓨터 실행가능 명령어를 포함할 수 있다는 것을 잘 알 것이다.These drives and their associated computer-readable media provide non-volatile storage of data, data structures, computer-executable instructions, and the like. In the case of computer 1102, drives and media correspond to storing any data in a suitable digital format. Although the description of computer readable media above refers to HDDs, removable magnetic disks, and removable optical media such as CDs or DVDs, those skilled in the art will use zip drives, magnetic cassettes, flash memory cards, cartridges, etc. It will be appreciated that other tangible computer-readable media such as etc. may also be used in the exemplary operating environment and any such media may include computer-executable instructions for performing the methods of the present disclosure.

운영 체제(1130), 하나 이상의 애플리케이션 프로그램(1132), 기타 프로그램 모듈(1134) 및 프로그램 데이터(1136)를 비롯한 다수의 프로그램 모듈이 드라이브 및 RAM(1112)에 저장될 수 있다. 운영 체제, 애플리케이션, 모듈 및/또는 데이터의 전부 또는 그 일부분이 또한 RAM(1112)에 캐싱될 수 있다. 본 개시가 여러가지 상업적으로 이용가능한 운영 체제 또는 운영 체제들의 조합에서 구현될 수 있다는 것을 잘 알 것이다.A number of program modules may be stored in the drive and RAM 1112 , including an operating system 1130 , one or more application programs 1132 , other program modules 1134 , and program data 1136 . All or portions of the operating system, applications, modules, and/or data may also be cached in RAM 1112 . It will be appreciated that the present disclosure may be implemented in various commercially available operating systems or combinations of operating systems.

사용자는 하나 이상의 유선/무선 입력 장치, 예를 들어, 키보드(1138) 및 마우스(1140) 등의 포인팅 장치를 통해 컴퓨터(1102)에 명령 및 정보를 입력할 수 있다. 기타 입력 장치(도시 생략)로는 마이크, IR 리모콘, 조이스틱, 게임 패드, 스타일러스 펜, 터치 스크린, 기타 등등이 있을 수 있다. 이들 및 기타 입력 장치가 종종 시스템 버스(1108)에 연결되어 있는 입력 장치 인터페이스(1142)를 통해 처리 장치(1104)에 연결되지만, 병렬 포트, IEEE 1394 직렬 포트, 게임 포트, USB 포트, IR 인터페이스, 기타 등등의 기타 인터페이스에 의해 연결될 수 있다.A user may enter commands and information into the computer 1102 via one or more wired/wireless input devices, for example, a pointing device such as a keyboard 1138 and a mouse 1140 . Other input devices (not shown) may include a microphone, IR remote control, joystick, game pad, stylus pen, touch screen, and the like. Although these and other input devices are often connected to the processing unit 1104 through an input device interface 1142 that is connected to the system bus 1108, parallel ports, IEEE 1394 serial ports, game ports, USB ports, IR interfaces, It may be connected by other interfaces, etc.

모니터(1144) 또는 다른 유형의 디스플레이 장치도 역시 비디오 어댑터(1146) 등의 인터페이스를 통해 시스템 버스(1108)에 연결된다. 모니터(1144)에 부가하여, 컴퓨터는 일반적으로 스피커, 프린터, 기타 등등의 기타 주변 출력 장치(도시 생략)를 포함한다.A monitor 1144 or other type of display device is also coupled to the system bus 1108 via an interface, such as a video adapter 1146 . In addition to the monitor 1144, the computer typically includes other peripheral output devices (not shown), such as speakers, printers, and the like.

컴퓨터(1102)는 유선 및/또는 무선 통신을 통한 원격 컴퓨터(들)(1148) 등의 하나 이상의 원격 컴퓨터로의 논리적 연결을 사용하여 네트워크화된 환경에서 동작할 수 있다. 원격 컴퓨터(들)(1148)는 워크스테이션, 컴퓨팅 디바이스 컴퓨터, 라우터, 퍼스널 컴퓨터, 휴대용 컴퓨터, 마이크로프로세서-기반 오락 기기, 피어 장치 또는 기타 통상의 네트워크 노드일 수 있으며, 일반적으로 컴퓨터(1102)에 대해 기술된 구성요소들 중 다수 또는 그 전부를 포함하지만, 간략함을 위해, 메모리 저장 장치(1150)만이 도시되어 있다. 도시되어 있는 논리적 연결은 근거리 통신망(LAN)(1152) 및/또는 더 큰 네트워크, 예를 들어, 원거리 통신망(WAN)(1154)에의 유선/무선 연결을 포함한다. 이러한 LAN 및 WAN 네트워킹 환경은 사무실 및 회사에서 일반적인 것이며, 인트라넷 등의 전사적 컴퓨터 네트워크(enterprise-wide computer network)를 용이하게 해주며, 이들 모두는 전세계 컴퓨터 네트워크, 예를 들어, 인터넷에 연결될 수 있다.Computer 1102 may operate in a networked environment using logical connections to one or more remote computers, such as remote computer(s) 1148 via wired and/or wireless communications. Remote computer(s) 1148 may be workstations, computing device computers, routers, personal computers, portable computers, microprocessor-based entertainment devices, peer devices, or other common network nodes, and are typically connected to computer 1102 . Although it includes many or all of the components described for it, only memory storage device 1150 is shown for simplicity. The logical connections shown include wired/wireless connections to a local area network (LAN) 1152 and/or a larger network, eg, a wide area network (WAN) 1154 . Such LAN and WAN networking environments are common in offices and companies, and facilitate enterprise-wide computer networks, such as intranets, all of which can be connected to a worldwide computer network, for example, the Internet.

LAN 네트워킹 환경에서 사용될 때, 컴퓨터(1102)는 유선 및/또는 무선 통신 네트워크 인터페이스 또는 어댑터(1156)를 통해 로컬 네트워크(1152)에 연결된다. 어댑터(1156)는 LAN(1152)에의 유선 또는 무선 통신을 용이하게 해줄 수 있으며, 이 LAN(1152)은 또한 무선 어댑터(1156)와 통신하기 위해 그에 설치되어 있는 무선 액세스 포인트를 포함하고 있다. WAN 네트워킹 환경에서 사용될 때, 컴퓨터(1102)는 모뎀(1158)을 포함할 수 있거나, WAN(1154) 상의 통신 컴퓨팅 디바이스에 연결되거나, 또는 인터넷을 통하는 등, WAN(1154)을 통해 통신을 설정하는 기타 수단을 갖는다. 내장형 또는 외장형 및 유선 또는 무선 장치일 수 있는 모뎀(1158)은 직렬 포트 인터페이스(1142)를 통해 시스템 버스(1108)에 연결된다. 네트워크화된 환경에서, 컴퓨터(1102)에 대해 설명된 프로그램 모듈들 또는 그의 일부분이 원격 메모리/저장 장치(1150)에 저장될 수 있다. 도시된 네트워크 연결이 예시적인 것이며 컴퓨터들 사이에 통신 링크를 설정하는 기타 수단이 사용될 수 있다는 것을 잘 알 것이다.When used in a LAN networking environment, the computer 1102 is connected to the local network 1152 through a wired and/or wireless communication network interface or adapter 1156 . Adapter 1156 may facilitate wired or wireless communication to LAN 1152 , which also includes a wireless access point installed therein for communicating with wireless adapter 1156 . When used in a WAN networking environment, the computer 1102 may include a modem 1158, be connected to a communication computing device on the WAN 1154, or establish communications over the WAN 1154, such as over the Internet. have other means. A modem 1158 , which may be internal or external and a wired or wireless device, is coupled to the system bus 1108 via a serial port interface 1142 . In a networked environment, program modules described for computer 1102 , or portions thereof, may be stored in remote memory/storage device 1150 . It will be appreciated that the network connections shown are exemplary and other means of establishing a communication link between the computers may be used.

컴퓨터(1102)는 무선 통신으로 배치되어 동작하는 임의의 무선 장치 또는 개체, 예를 들어, 프린터, 스캐너, 데스크톱 및/또는 휴대용 컴퓨터, PDA(portable data assistant), 통신 위성, 무선 검출가능 태그와 연관된 임의의 장비 또는 장소, 및 전화와 통신을 하는 동작을 한다. 이것은 적어도 Wi-Fi 및 블루투스 무선 기술을 포함한다. 따라서, 통신은 종래의 네트워크에서와 같이 미리 정의된 구조이거나 단순하게 적어도 2개의 장치 사이의 애드혹 통신(ad hoc communication)일 수 있다.Computer 1102 may be associated with any wireless device or object that is deployed and operates in wireless communication, for example, printers, scanners, desktop and/or portable computers, portable data assistants (PDAs), communications satellites, wireless detectable tags. It operates to communicate with any device or place, and phone. This includes at least Wi-Fi and Bluetooth wireless technologies. Accordingly, the communication may be a predefined structure as in a conventional network or may simply be an ad hoc communication between at least two devices.

Wi-Fi(Wireless Fidelity)는 유선 없이도 인터넷 등으로의 연결을 가능하게 해준다. Wi-Fi는 이러한 장치, 예를 들어, 컴퓨터가 실내에서 및 실외에서, 즉 기지국의 통화권 내의 아무 곳에서나 데이터를 전송 및 수신할 수 있게 해주는 셀 전화와 같은 무선 기술이다. Wi-Fi 네트워크는 안전하고 신뢰성 있으며 고속인 무선 연결을 제공하기 위해 IEEE 802.11(a, b, g, 기타)이라고 하는 무선 기술을 사용한다. 컴퓨터를 서로에, 인터넷에 및 유선 네트워크(IEEE 802.3 또는 이더넷을 사용함)에 연결시키기 위해 Wi-Fi가 사용될 수 있다. Wi-Fi 네트워크는 비인가 2.4 및 5GHz 무선 대역에서, 예를 들어, 11Mbps(802.11a) 또는 54 Mbps(802.11b) 데이터 레이트로 동작하거나, 양 대역(듀얼 대역)을 포함하는 제품에서 동작할 수 있다.Wi-Fi (Wireless Fidelity) makes it possible to connect to the Internet, etc. without a wire. Wi-Fi is a wireless technology such as cell phones that allows these devices, eg, computers, to transmit and receive data indoors and outdoors, ie anywhere within range of a base station. Wi-Fi networks use a radio technology called IEEE 802.11 (a, b, g, etc.) to provide secure, reliable, and high-speed wireless connections. Wi-Fi can be used to connect computers to each other, to the Internet, and to wired networks (using IEEE 802.3 or Ethernet). Wi-Fi networks may operate in unlicensed 2.4 and 5 GHz radio bands, for example, at 11 Mbps (802.11a) or 54 Mbps (802.11b) data rates, or in products that include both bands (dual band). .

본 개시의 기술 분야에서 통상의 지식을 가진 자는 정보 및 신호들이 임의의 다양한 상이한 기술들 및 기법들을 이용하여 표현될 수 있다는 것을 이해할 것이다. 예를 들어, 위의 설명에서 참조될 수 있는 데이터, 지시들, 명령들, 정보, 신호들, 비트들, 심볼들 및 칩들은 전압들, 전류들, 전자기파들, 자기장들 또는 입자들, 광학장들 또는 입자들, 또는 이들의 임의의 결합에 의해 표현될 수 있다.One of ordinary skill in the art of this disclosure will understand that information and signals may be represented using any of a variety of different technologies and techniques. For example, data, instructions, instructions, information, signals, bits, symbols and chips that may be referenced in the above description are voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields particles or particles, or any combination thereof.

본 개시의 기술 분야에서 통상의 지식을 가진 자는 여기에 개시된 실시예들과 관련하여 설명된 다양한 예시적인 논리 블록들, 모듈들, 프로세서들, 수단들, 회로들 및 알고리즘 단계들이 전자 하드웨어, (편의를 위해, 여기에서 소프트웨어로 지칭되는) 다양한 형태들의 프로그램 또는 설계 코드 또는 이들 모두의 결합에 의해 구현될 수 있다는 것을 이해할 것이다. 하드웨어 및 소프트웨어의 이러한 상호 호환성을 명확하게 설명하기 위해, 다양한 예시적인 컴포넌트들, 블록들, 모듈들, 회로들 및 단계들이 이들의 기능과 관련하여 위에서 일반적으로 설명되었다. 이러한 기능이 하드웨어 또는 소프트웨어로서 구현되는지 여부는 특정한 애플리케이션 및 전체 시스템에 대하여 부과되는 설계 제약들에 따라 좌우된다. 본 개시의 기술 분야에서 통상의 지식을 가진 자는 각각의 특정한 애플리케이션에 대하여 다양한 방식들로 설명된 기능을 구현할 수 있으나, 이러한 구현 결정들은 본 개시의 범위를 벗어나는 것으로 해석되어서는 안 될 것이다.Those of ordinary skill in the art of the present disclosure will recognize that the various illustrative logical blocks, modules, processors, means, circuits, and algorithm steps described in connection with the embodiments disclosed herein include electronic hardware, (convenience For this purpose, it will be understood that it may be implemented by various forms of program or design code (referred to herein as software) or a combination of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. A person skilled in the art of the present disclosure may implement the described functionality in various ways for each specific application, but such implementation decisions should not be interpreted as a departure from the scope of the present disclosure.

여기서 제시된 다양한 실시예들은 방법, 장치, 또는 표준 프로그래밍 및/또는 엔지니어링 기술을 사용한 제조 물품(article)으로 구현될 수 있다. 용어 제조 물품은 임의의 컴퓨터-판독가능 저장장치로부터 액세스 가능한 컴퓨터 프로그램, 캐리어, 또는 매체(media)를 포함한다. 예를 들어, 컴퓨터-판독가능 저장매체는 자기 저장 장치(예를 들면, 하드 디스크, 플로피 디스크, 자기 스트립, 등), 광학 디스크(예를 들면, CD, DVD, 등), 스마트 카드, 및 플래쉬 메모리 장치(예를 들면, EEPROM, 카드, 스틱, 키 드라이브, 등)를 포함하지만, 이들로 제한되는 것은 아니다. 또한, 여기서 제시되는 다양한 저장 매체는 정보를 저장하기 위한 하나 이상의 장치 및/또는 다른 기계-판독가능한 매체를 포함한다.The various embodiments presented herein may be implemented as methods, apparatus, or articles of manufacture using standard programming and/or engineering techniques. The term article of manufacture includes a computer program, carrier, or media accessible from any computer-readable storage device. For example, computer-readable storage media include magnetic storage devices (eg, hard disks, floppy disks, magnetic strips, etc.), optical disks (eg, CDs, DVDs, etc.), smart cards, and flash drives. memory devices (eg, EEPROMs, cards, sticks, key drives, etc.). Also, various storage media presented herein include one or more devices and/or other machine-readable media for storing information.

제시된 프로세스들에 있는 단계들의 특정한 순서 또는 계층 구조는 예시적인 접근들의 일례임을 이해하도록 한다. 설계 우선순위들에 기반하여, 본 개시의 범위 내에서 프로세스들에 있는 단계들의 특정한 순서 또는 계층 구조가 재배열될 수 있다는 것을 이해하도록 한다. 첨부된 방법 청구항들은 샘플 순서로 다양한 단계들의 엘리먼트들을 제공하지만 제시된 특정한 순서 또는 계층 구조에 한정되는 것을 의미하지는 않는다.It is understood that the specific order or hierarchy of steps in the presented processes is an example of exemplary approaches. Based on design priorities, it is understood that the specific order or hierarchy of steps in the processes may be rearranged within the scope of the present disclosure. The appended method claims present elements of the various steps in a sample order, but are not meant to be limited to the specific order or hierarchy presented.

제시된 실시예들에 대한 설명은 임의의 본 개시의 기술 분야에서 통상의 지식을 가진 자가 본 개시를 이용하거나 또는 실시할 수 있도록 제공된다. 이러한 실시예들에 대한 다양한 변형들은 본 개시의 기술 분야에서 통상의 지식을 가진 자에게 명백할 것이며, 여기에 정의된 일반적인 원리들은 본 개시의 범위를 벗어남이 없이 다른 실시예들에 적용될 수 있다. 그리하여, 본 개시는 여기에 제시된 실시예들로 한정되는 것이 아니라, 여기에 제시된 원리들 및 신규한 특징들과 일관되는 최광의의 범위에서 해석되어야 할 것이다.The description of the presented embodiments is provided to enable any person skilled in the art to make or use the present disclosure. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the scope of the present disclosure. Thus, the present disclosure is not intended to be limited to the embodiments presented herein, but is to be construed in the widest scope consistent with the principles and novel features presented herein.

Claims (16)

컴퓨터 판독가능 저장 매체에 저장된 컴퓨터 프로그램으로서, 상기 컴퓨터 프로그램은 하나 이상의 프로세서에서 실행되는 경우 게임 테스트를 수행하기 위한 이하의 동작을 수행하도록 하며, 상기 동작은:
클라우드 환경을 구축하고, 상기 클라우드 환경에서 게임 로그 데이터를 획득하는 동작 - 상기 게임 로그 데이터는, 상기 클라우드 환경에서 가상 머신을 통해 구동되는 적어도 하나의 운영 체제에서 수행되는 게임 플레이에 대응하여 생성됨 -;
상기 게임 로그 데이터에 기초하여 게임 밸런스와 관련된 게임 로그 항목을 적어도 하나 이상 결정하는 동작;
게임 시뮬레이션을 수행하기 위한 명령어를 생성하는 동작;
상기 게임 밸런스와 관련된 게임 로그 항목 및 상기 게임 시뮬레이션을 수행하기 위한 명령어를 가상 머신에 입력하여 게임 밸런스를 테스트하기 위한 게임 시뮬레이션을 수행하는 동작; 및
게임 시뮬레이션 수행 결과 게임 밸런스와 관련된 밸런싱 로그 데이터를 획득하는 동작;
을 포함하는,
컴퓨터 판독가능 저장 매체에 저장된 컴퓨터 프로그램.
A computer program stored on a computer-readable storage medium, wherein the computer program, when executed on one or more processors, performs the following operations for performing a game test, the operations comprising:
constructing a cloud environment and obtaining game log data in the cloud environment, wherein the game log data is generated in response to a game play performed in at least one operating system driven through a virtual machine in the cloud environment;
determining at least one game log item related to game balance based on the game log data;
generating a command for performing a game simulation;
performing a game simulation for testing game balance by inputting a game log entry related to the game balance and a command for performing the game simulation into a virtual machine; and
obtaining balancing log data related to game balance as a result of performing game simulation;
comprising,
A computer program stored on a computer-readable storage medium.
제 1 항에 있어서,
상기 게임 밸런스는,
게임 내 캐릭터의 전투에 관련한 전투 밸런스 또는
게임 내 경제 활동과 관련한 경제 밸런스 중 적어도 하나를 포함하는,
컴퓨터 판독가능 저장 매체에 저장된 컴퓨터 프로그램.
The method of claim 1,
The game balance is
Battle balance related to the battle of characters in the game; or
At least one of economic balance related to economic activity in the game,
A computer program stored on a computer-readable storage medium.
제 2 항에 있어서,
상기 전투 밸런스와 관련된 게임 로그 항목은,
캐릭터 정보 항목, 아이템 정보 항목 또는 스킬 정보 항목 중 적어도 하나를 포함하는,
컴퓨터 판독가능 저장 매체에 저장된 컴퓨터 프로그램.
3. The method of claim 2,
The game log entries related to the battle balance are,
At least one of a character information item, an item information item, or a skill information item,
A computer program stored on a computer-readable storage medium.
제 2 항에 있어서,
상기 경제 밸런스와 관련된 게임 로그 항목은,
게임 재화 정보 항목, 게임 아이템 재화 정보 항목 또는 플레이어가 시간당 획득하는 재화 정보 항목 중 적어도 하나를 포함하는,
컴퓨터 판독가능 저장 매체에 저장된 컴퓨터 프로그램.
3. The method of claim 2,
The game log entries related to the economic balance are,
Containing at least one of a game goods information item, a game item goods information item, or a goods information item that the player acquires per hour,
A computer program stored on a computer-readable storage medium.
제 1 항에 있어서,
게임 밸런스와 관련된 게임 로그 항목을 적어도 하나 이상 결정하는 동작은,
복수의 게임 상황을 설정하기 위한 사전 결정된 기준에 기초하여 게임 밸런스와 관련된 게임 로그 항목을 적어도 하나 이상 결정하는 동작;
을 포함하는,
컴퓨터 판독가능 저장 매체에 저장된 컴퓨터 프로그램.
The method of claim 1,
The action of determining at least one game log entry related to game balance includes:
determining at least one game log item related to game balance based on a predetermined criterion for setting a plurality of game situations;
comprising,
A computer program stored on a computer-readable storage medium.
제 1 항에 있어서,
상기 밸런싱 로그 데이터는,
전투 밸런스와 관련된 게임 로그 항목에 대응하는 전투 밸런싱 로그 데이터 또는
경제 밸런스와 관련된 게임 로그 항목에 대응하는 경제 밸런싱 로그 데이터 중 적어도 하나를 포함하는,
컴퓨터 판독가능 저장 매체에 저장된 컴퓨터 프로그램.
The method of claim 1,
The balancing log data is
Battle balancing log data corresponding to game log entries related to battle balance; or
comprising at least one of economic balancing log data corresponding to game log entries related to economic balance,
A computer program stored on a computer-readable storage medium.
제 1 항에 있어서,
상기 게임 시뮬레이션을 수행하기 위한 명령어는,
게임 그래픽을 출력하기 위한 명령어, 사용자 단말과 게임 서버 간의 통신 기능을 수행하기 위한 명령어, 게임의 사회적 기능을 수행하기 위한 명령어 또는 상기 게임 밸런스와 관련된 밸런싱 로그 데이터를 획득하기 위한 명령어 중 적어도 하나를 포함하는,
컴퓨터 판독가능 저장 매체에 저장된 컴퓨터 프로그램.
The method of claim 1,
The command for performing the game simulation is,
At least one of a command for outputting game graphics, a command for performing a communication function between the user terminal and the game server, a command for performing a social function of the game, or a command for obtaining balancing log data related to the game balance doing,
A computer program stored on a computer-readable storage medium.
제 7 항에 있어서,
상기 게임 밸런스와 관련된 밸런싱 로그 데이터를 획득하기 위한 명령어는,
게임 캐릭터의 활동을 야기하는 명령어, 게임 환경을 제어하는 명령어, 전투 밸런싱 로그 데이터를 획득하기 위한 명령어 또는 경제 밸런싱 로그 데이터를 획득하기 위한 명령어 중 적어도 하나를 포함하는,
컴퓨터 판독가능 저장 매체에 저장된 컴퓨터 프로그램.
8. The method of claim 7,
The command for obtaining balancing log data related to the game balance is,
At least one of a command for causing an activity of a game character, a command for controlling a game environment, a command for acquiring battle balancing log data, or a command for acquiring economic balancing log data,
A computer program stored on a computer-readable storage medium.
제 1 항에 있어서,
게임 시뮬레이션을 수행하기 위한 명령어를 생성하는 동작은,
게임 시뮬레이션을 경량화 하기 위하여 게임 밸런스와 관련된 밸런싱 로그 데이터를 획득하기 위한 명령어를 포함하여 게임 시뮬레이션을 수행하기 위한 명령어를 생성하는 동작을 포함하는,
컴퓨터 판독가능 저장 매체에 저장된 컴퓨터 프로그램.
The method of claim 1,
The operation of generating a command for performing a game simulation is,
In order to lighten the game simulation, including an operation for generating a command for performing a game simulation, including a command for acquiring balancing log data related to game balance,
A computer program stored on a computer-readable storage medium.
제 1 항에 있어서,
게임 시뮬레이션을 수행하는 동작은,
복수의 가상 머신에서 병렬적으로 게임 시뮬레이션을 수행하는 동작;
을 포함하는,
컴퓨터 판독가능 저장 매체에 저장된 컴퓨터 프로그램.
The method of claim 1,
The action to perform the game simulation is,
performing a game simulation in parallel in a plurality of virtual machines;
comprising,
A computer program stored on a computer-readable storage medium.
제 10 항에 있어서,
상기 복수의 가상 머신에서 병렬적으로 게임 시뮬레이션을 수행하는 동작은,
상기 복수의 가상 머신 각각에 대하여,
각각 상이한 상기 게임 밸런스와 관련된 게임 로그 항목 및 상기 게임 시뮬레이션을 수행하기 위한 명령어를 입력하여, 복수의 게임 상황에 대하여 병렬적으로 게임 시뮬레이션을 수행하는 동작;
을 포함하는,
컴퓨터 판독가능 저장 매체에 저장된 컴퓨터 프로그램.
11. The method of claim 10,
The operation of performing a game simulation in parallel in the plurality of virtual machines,
For each of the plurality of virtual machines,
performing a game simulation in parallel for a plurality of game situations by inputting different game log entries related to the game balance and a command for performing the game simulation;
comprising,
A computer program stored on a computer-readable storage medium.
제 1 항에 있어서,
상기 밸런싱 로그 데이터를 기초로 전투 밸런싱 테스트 또는 경제 밸런싱 테스트를 수행하는 동작;
을 더 포함하는,
컴퓨터 판독가능 저장 매체에 저장된 컴퓨터 프로그램.
The method of claim 1,
performing a battle balancing test or an economic balancing test based on the balancing log data;
further comprising,
A computer program stored on a computer-readable storage medium.
제 12 항에 있어서,
상기 전투 밸런싱 테스트 결과를 기초로 게임 상의 전투 능력을 조정하는 동작을 더 포함하는,
컴퓨터 판독가능 저장 매체에 저장된 컴퓨터 프로그램.
13. The method of claim 12,
Further comprising the operation of adjusting the combat ability in the game based on the battle balancing test result,
A computer program stored on a computer-readable storage medium.
제 12 항에 있어서,
상기 경제 밸런싱 테스트 결과를 기초로 게임 상의 경제 상태를 조정하는 동작을 더 포함하는,
컴퓨터 판독가능 저장 매체에 저장된 컴퓨터 프로그램.
13. The method of claim 12,
Further comprising the operation of adjusting the economic state in the game based on the economic balancing test result,
A computer program stored on a computer-readable storage medium.
서버의 하나 이상의 프로세서에서 게임 테스트를 수행하기 위한 방법으로서,
클라우드 환경을 구축하고, 상기 클라우드 환경에서 게임 로그 데이터를 획득하는 단계 - 상기 게임 로그 데이터는, 상기 클라우드 환경에서 가상 머신을 통해 구동되는 적어도 하나의 운영 체제에서 수행되는 게임 플레이에 대응하여 생성됨 -;
상기 게임 로그 데이터에 기초하여 게임 밸런스와 관련된 게임 로그 항목을 적어도 하나 이상 결정하는 단계;
게임 시뮬레이션을 수행하기 위한 명령어를 생성하는 단계;
상기 게임 밸런스와 관련된 게임 로그 항목 및 상기 게임 시뮬레이션을 수행하기 위한 명령어를 가상 머신에 입력하여 게임 밸런스를 테스트하기 위한 게임 시뮬레이션을 수행하는 단계; 및
게임 시뮬레이션 수행 결과 게임 밸런스와 관련된 밸런싱 로그 데이터를 획득하는 단계;
를 포함하는,
서버의 하나 이상의 프로세서에서 게임 테스트를 수행하기 위한 방법.
A method for performing game testing on one or more processors of a server, comprising:
building a cloud environment and acquiring game log data in the cloud environment, wherein the game log data is generated in response to a game play performed in at least one operating system driven through a virtual machine in the cloud environment;
determining at least one game log item related to game balance based on the game log data;
generating a command for performing a game simulation;
performing a game simulation for testing game balance by inputting a game log entry related to the game balance and a command for performing the game simulation into a virtual machine; and
acquiring balancing log data related to game balance as a result of performing a game simulation;
containing,
A method for performing game testing on one or more processors in a server.
게임 테스트를 수행하기 위한 서버로서,
하나 이상의 코어를 포함하는 프로세서;
상기 프로세서에서 실행가능한 프로그램 코드들을 저장하는 메모리;
를 포함하고,
상기 하나 이상의 프로세서는,
클라우드 환경을 구축하고, 상기 클라우드 환경에서 게임 로그 데이터를 획득하고 - 상기 게임 로그 데이터는, 상기 클라우드 환경에서 가상 머신을 통해 구동되는 적어도 하나의 운영 체제에서 수행되는 게임 플레이에 대응하여 생성됨 -,
상기 게임 로그 데이터에 기초하여 게임 밸런스와 관련된 게임 로그 항목을 적어도 하나 이상 결정하고,
게임 시뮬레이션을 수행하기 위한 명령어를 생성하고,
상기 게임 밸런스와 관련된 게임 로그 항목 및 상기 게임 시뮬레이션을 수행하기 위한 명령어를 가상 머신에 입력하여 게임 밸런스를 테스트하기 위한 게임 시뮬레이션을 수행하고, 그리고
게임 시뮬레이션 수행 결과 게임 밸런스와 관련된 밸런싱 로그 데이터를 획득하는,
게임 테스트를 수행하기 위한 서버.
A server for performing game tests, comprising:
a processor including one or more cores;
a memory storing program codes executable by the processor;
including,
The one or more processors,
build a cloud environment, and obtain game log data in the cloud environment, wherein the game log data is generated in response to a game play performed in at least one operating system driven through a virtual machine in the cloud environment;
Determine at least one game log item related to game balance based on the game log data,
generate commands to perform game simulation,
performing a game simulation for testing game balance by inputting a game log entry related to the game balance and a command for performing the game simulation into a virtual machine; and
Acquiring balancing log data related to game balance as a result of performing game simulation,
A server for testing the game.
KR1020190091490A 2019-07-29 2019-07-29 Method for game test KR102307870B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190091490A KR102307870B1 (en) 2019-07-29 2019-07-29 Method for game test

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190091490A KR102307870B1 (en) 2019-07-29 2019-07-29 Method for game test

Publications (2)

Publication Number Publication Date
KR20210013812A KR20210013812A (en) 2021-02-08
KR102307870B1 true KR102307870B1 (en) 2021-09-30

Family

ID=74560224

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190091490A KR102307870B1 (en) 2019-07-29 2019-07-29 Method for game test

Country Status (1)

Country Link
KR (1) KR102307870B1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102597394B1 (en) * 2021-02-22 2023-11-03 (주)스마일게이트홀딩스 Game balance analysis system for turn based battle game character development
CN113157557A (en) * 2021-03-09 2021-07-23 杭州电魂网络科技股份有限公司 Game service testing method, device, equipment and medium based on user-defined high-integration instruction
CN113656303A (en) * 2021-08-16 2021-11-16 网易(杭州)网络有限公司 Method, apparatus, storage medium, and program product for testing new functions of game

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101751515B1 (en) * 2016-02-11 2017-06-27 네이버 주식회사 Apparatus, method, and computer program for testing

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101117130B1 (en) * 2009-03-19 2012-03-07 한국전자통신연구원 Preset control method and runtame game balancing method for game balancing

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101751515B1 (en) * 2016-02-11 2017-06-27 네이버 주식회사 Apparatus, method, and computer program for testing

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"게임제작개론 : #4 게임 밸런싱", 인터넷 slideshare 사이트 게시글(2013.04.18.)*

Also Published As

Publication number Publication date
KR20210013812A (en) 2021-02-08

Similar Documents

Publication Publication Date Title
US10389749B2 (en) Blockchain tracking of virtual universe traversal results
US20220203235A1 (en) Cloud-Based Game Slice Generation and Frictionless Social Sharing with Instant Play
KR102307870B1 (en) Method for game test
US20090275412A1 (en) Multiple-player collaborative content editing
KR20050002646A (en) Inventory management of virtual items in computer games
US20080320041A1 (en) Adding virtual features via real world accessories
US10632387B2 (en) Cognitive user experience optimization
KR20170008697A (en) Server daemon based gameplay management
US11517823B2 (en) Non-transitory computer-readable storage medium, terminal device, and information processing system
WO2021249112A1 (en) Real-world activity simulation augmentation with real-world data of activity
US10807006B1 (en) Behavior-aware player selection for multiplayer electronic games
JP7031811B2 (en) A method and system for training player characters in sports games using spatial dualization
KR101404635B1 (en) Method for processing a drag input in online game
KR102245783B1 (en) Computer programs for performing in-game balace tests
US20200319855A1 (en) Parameter modification of virtual entities for client applications
US20240042330A1 (en) Game performance prediction from real-world performance data
US20150273344A1 (en) User Assembly of Lightweight User Interface for Games
KR102186412B1 (en) Method for providing game content
US11577172B2 (en) Device, method, and computer program for providing game service
KR20200138891A (en) Method and system for game using skill succession in sports game
US11660538B2 (en) Methods and systems for game system creation
US8972476B2 (en) Evidence-based virtual world visualization
KR20200060140A (en) Method for providing payment analysis information in game providing apparatus and game providing apparatus
KR20200038153A (en) Method for processing image of game on computing devices and computing devices
KR20210004899A (en) Method to process data

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant