KR20140001101A - 게임 플레이-스타일 컨버전스 검출 및 게임 변경 - Google Patents
게임 플레이-스타일 컨버전스 검출 및 게임 변경 Download PDFInfo
- Publication number
- KR20140001101A KR20140001101A KR1020130044311A KR20130044311A KR20140001101A KR 20140001101 A KR20140001101 A KR 20140001101A KR 1020130044311 A KR1020130044311 A KR 1020130044311A KR 20130044311 A KR20130044311 A KR 20130044311A KR 20140001101 A KR20140001101 A KR 20140001101A
- Authority
- KR
- South Korea
- Prior art keywords
- game
- actions
- log
- tests
- computing devices
- Prior art date
Links
- 230000009471 action Effects 0.000 claims abstract description 586
- 238000012360 testing method Methods 0.000 claims abstract description 215
- 238000000034 method Methods 0.000 claims abstract description 133
- 230000008859 change Effects 0.000 claims abstract description 88
- 230000004044 response Effects 0.000 claims abstract description 53
- 238000001514 detection method Methods 0.000 claims abstract description 30
- 238000004458 analytical method Methods 0.000 claims description 38
- 230000001419 dependent effect Effects 0.000 claims description 3
- 238000007418 data mining Methods 0.000 abstract description 12
- 238000005516 engineering process Methods 0.000 abstract description 6
- 238000004891 communication Methods 0.000 description 20
- 230000008569 process Effects 0.000 description 20
- 230000015654 memory Effects 0.000 description 15
- 230000006870 function Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 8
- 230000009286 beneficial effect Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 238000013500 data storage Methods 0.000 description 5
- 230000036541 health Effects 0.000 description 5
- 230000033001 locomotion Effects 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 230000015556 catabolic process Effects 0.000 description 3
- 238000007405 data analysis Methods 0.000 description 3
- 238000006731 degradation reaction Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000003252 repetitive effect Effects 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 230000002411 adverse Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 239000000758 substrate Substances 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 235000019788 craving Nutrition 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 239000003607 modifier Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000009885 systemic effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
- 230000017260 vegetative to reproductive phase transition of meristem Effects 0.000 description 1
- 230000035899 viability Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/45—Controlling the progress of the video game
- A63F13/47—Controlling the progress of the video game involving branching, e.g. choosing one of several possible scenarios at a given point in time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/35—Details of game servers
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/80—Special adaptations for executing a specific game genre or game mode
- A63F13/822—Strategy games; Role-playing games
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/50—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
- A63F2300/53—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing
- A63F2300/535—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing for monitoring, e.g. of user parameters, terminal parameters, application parameters, network parameters
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Business, Economics & Management (AREA)
- Tourism & Hospitality (AREA)
- General Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Economics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
게임 플레이에서 컨버전스를 검출하고 그 후 컨버전스를 극복하거나 방지하도록 게임을 변경하는 게이밍 기술들이 일반적으로 설명된다. 일 실시형태에서, 대표적인 게이밍 방법은: 복수의 컴퓨팅 디바이스들에 게임을 동시에 제공하는 단계; 상기 컴퓨팅 디바이스들에 제공되는 게임 테스트들을 포함하는 게임 시나리오 형태를 식별하는 단계; 상기 게임 테스트들에 응답하여 상기 컴퓨팅 디바이스들로부터 게임 액션들을 획득하는 단계; 상기 게임 테스트들을 통과하는 상기 게임 액션들의 상기 컴퓨팅 디바이스들 전체에서의 컨버전스를 결정하는 단계; 및 상기 컨버전스의 상기 게임 액션들이 변경된 하나 이상의 게임 테스트들을 통과하지 못하도록 상기 게임 시나리오 형태의 상기 게임 테스트들을 변경하는 단계를 포함할 수 있다. 상기 게임은 MMORPG일 수 있고, 상기 게임 시나리오는 배틀일 수 있으며; 상기 게임 테스트들은 적들일 수 있고; 상기 게임 액션들은 배틀 액션들일 수 있으며; 컨버전스는, 배틀들에서 적들을 물리치는 반복된 게임 액션 패턴들일 수 있다.
Description
사회가 발전하고 사람들이 함께 모이기 시작함에 따라, 게임들을 하기 시작했다. 통상, 게임은 어떤 종류의 결과를 둔 플레이어들 간의 구조화된 경쟁인데, 상기 결과는 스테이지, 목표, 또는 태스크를 완료하는 것뿐만 아니라 승리하는 것에서 실패 또는 비기는 것에 이를 수 있다. 다양한 형태들의 게임들이 플레이용으로 이용 가능하다. 게임들은 다양한 이유들로 인해 즐겨질 수 있으며, 종종 게임들은 사람들 (즉, 플레이어들) 간에 플레이된다.
기술이 진보하여 컴퓨팅 시대로 들어감에 따라, 게임들도 여러 컴퓨팅 포맷들로 그리고 상이한 수들의 동시적 플레이어들용으로 발전하였다. 또한, 인터넷의 개화에 의해 상이한 지리적 위치들로부터의 플레이어들끼리 플레이하는 게임들이 나타나게 되었는데, 여기서는 친구들 또는 이방인들이 온라인으로 함께 플레이할 수 있게 되었다. 한 실시형태는, 연속적인 기간에 걸쳐 통상 간헐적으로 플레이하는 수천 명의 동시적 플레이어들에 의한 대규모 다중 사용자 온라인 롤-플레잉 게임 (Massive Multiplayer Online Role-Playing Game; MMORPG) 을 포함할 수 있는데, 어떤 MMORPG는 시작은 있을 수도 (또는 있었을 수도) 있지만 완전한 종료는 있을 수도 또는 없을 수도 있다. 많은 상이한 종류들의 MMORPG들이 있지만, 이들 게임들은 어떤 한 게임에서 성공적인 숙련된 플레이어가 되기 위해서는 종종 너무 많은 시간과 훈련을 필요로 한다. 어떤 한 게임에서 숙련자가 되는데 어느 정도의 시간을 필요로 하기 때문에, 플레이어들은 자신들이 더 많은 시간을 투자했거나, 더 많은 스킬을 가지고 있거나 또는 어떻게 하면 성공하는지를 학습한 게임들을 플레이하길 선호할 수도 있다.
일 구체예에서, 본 개시는 게임 플레이에서 컨버전스를 결정하고 그 후 인터넷 기반의 게임과 같은 게임을 변경하여, 복수의 컴퓨팅 디바이스들 전체에서의 게임 플레이의 컨버전스를 극복하게 하는 방법을 설명한다. 컴퓨팅 디바이스들의 수는 게임에 따라 2에서 수백, 수천 또는 수백만에 이를 수 있다. 게임은, 네트워크를 통해 게이밍 컴퓨팅 시스템에 연결된 복수의 디바이스들에 의해 네트워크를 통해 플레이되는 임의의 형태의 게임일 수 있다. 게임은, 게임 액티비티들을 호스트하는 하나 이상의 중앙 게임 컴퓨팅 센터들 (centralized game computing centers) 을 포함하는 게이밍 컴퓨팅 시스템에 의해 용이하게 될 수 있지만 다른 게임 호스팅 구성들이 사용될 수 있다. 게임 플레이에서 컨버전스를 결정하고 게임을 변경하는 방법은: 복수의 컴퓨팅 디바이스들에 게임을 동시에 제공하는 단계; 상기 컴퓨팅 디바이스들에 제공된 하나 이상의 게임 테스트들을 포함하는 게임의 게임 시나리오 형태들을 식별하는 단계; 상기 게임 시나리오 형태의 하나 이상의 게임 테스트들에 응답하여 상기 복수의 컴퓨팅 디바이스들로부터 하나 이상의 게임 액션들을 획득하는 단계; 상기 하나 이상의 게임 테스트들을 통과하는 상기 하나 이상의 게임 액션들의 상기 컴퓨팅 디바이스들 전체에서의 컨버전스를 결정하는 단계; 및 상기 컨버전스의 상기 하나 이상의 게임 액션들이 변경된 하나 이상의 게임 시나리오 형태들 또는 게임 테스트들을 통과하지 못하도록 상기 하나 이상의 게임 시나리오 형태들 또는 게임 시나리오 형태의 게임 테스트들을 변경하는 단계를 포함한다. 하나 이상의 게임 액션들은 게임 액션 패턴을 형성하는 게임 액션들의 조합일 수 있다.
일 구체예에서, 게임을 변경하는 방법은 게이밍 시스템에 의해 구현될 수 있다. 게이밍 시스템은: 복수의 컴퓨팅 디바이스들에 동작 가능하게 커플링되고 상기 복수의 컴퓨팅 디바이스들에 게임을 동시에 제공하도록 구성되며, 상기 게임의 게임 시나리오 형태를 포함하는 게이밍 서버로서, 상기 게임 시나리오 형태는 하나 이상의 게임 테스트들을 구비하는, 상기 게이밍 서버; 상기 게이밍 서버에 동작 가능하게 커플링된 게임 액션 로깅 모듈; 상기 게임 액션 로깅 모듈에 동작 가능하게 커플링되며 상기 하나 이상의 게임 테스트들에 대한 하나 이상의 게임 액션들을 구비하는 제 1의 로그 데이터베이스; 상기 게임 액션 로깅 모듈에 동작 가능하게 커플링되며 상기 복수의 컴퓨팅 디바이스들의 컴퓨팅 디바이스들과 관련된 상기 하나 이상의 게임 테스트들에 대한 하나 이상의 게임 액션들을 구비하는 제 2의 로그 데이터베이스; 상기 제 1의 로그 데이터베이스에 동작 가능하게 커플링된 게임 액션 패턴 검출 모듈; 상기 제 2의 데이터베이스와 상기 게임 액션 패턴 검출 모듈에 동작 가능하게 커플링되며, 상기 게임의 하나 이상의 게임 테스트들을 통과하는 상기 복수의 컴퓨팅 디바이스들 전체에서의 하나 이상의 게임 액션들의 컨버전스를 결정하도록 구성된 게임 액션 컨버전스 분석 모듈; 및 상기 게임 액션 컨버전스 분석 모듈과 상기 게이밍 서버에 동작 가능하게 커플링되며, 상기 컨버전스의 상기 하나 이상의 게임 액션들이 변경된 하나 이상의 게임 테스트들을 통과하지 못하도록 상기 게임 시나리오 형태의 하나 이상의 게임 테스트들을 변경하도록 구성된 게임 변경 모듈을 포함할 수 있다.
일 구체예에서, 게임을 변경하는 방법은 게이밍 시스템 상에서 구현될 수 있다. 상기 방법은: 복수의 컴퓨팅 디바이스들에 동작 가능하게 커플링되고 상기 복수의 컴퓨팅 디바이스들로 게임을 동시에 제공하는 게이밍 서버 상에서 게임을 실행하는 단계로서, 상기 게이밍 서버는 상기 게임의 게임 시나리오 형태를 포함하고, 상기 게임 시나리오 형태는 하나 이상의 게임 테스트들을 구비하는, 상기 게임을 실행하는 단계; 상기 게이밍 서버에 동작 가능하게 커플링된 게임 액션 로깅 모듈에서, 상기 게임 시나리오 형태의 하나 이상의 게임 테스트들에 응답하여 상기 복수의 컴퓨팅 디바이스들로부터 하나 이상의 게임 액션들을 획득하는 단계; 상기 하나 이상의 게임 테스트들에 대한, 상기 게임 액션 로깅 모듈로부터 수신된 게임 액션들을 제 1의 로그 데이터베이스로 기록하는 단계; 상기 복수의 컴퓨팅 디바이스들의 컴퓨팅 디바이스들과 관련된 상기 하나 이상의 게임 테스트들에 대한 게임 액션들을 제 2의 로그 데이터베이스에 기록하는 단계로서, 상기 게임 액션들은 상기 게임 액션 로깅 모듈로부터 수신되는, 상기 제 2의 로그 데이터베이스에 기록하는 단계; 상기 제 1의 로그로부터 게임 액션 패턴들의 발생 빈도를 계산하고 상기 제 1의 로그 데이터베이스에 동작 가능하게 커플링된 게임 액션 패턴 검출 모듈에서 상기 게임 액션 패턴들 중 발생 빈도 임계치를 초과하는 발생 빈도를 갖는 동시 발생 게임 액션들을 선택하는 단계; 상기 제 2의 로그 데이터베이스와 상기 게임 액션 패턴 검출 모듈에 동작 가능하게 커플링된 게임 액션 컨버전스 분석 모듈에서 상기 하나 이상의 게임 테스트들에 응답하여 하나 이상의 게임 액션들의 컨버전스를 결정하기 위해, 상기 게임 액션 패턴 검출 모듈로부터, 상기 게임 액션 패턴들 중 선택된 상기 동시 발생 패턴들 각각에 대한 상기 제 2의 로그 데이터베이스의 게임 액션들의 발생 빈도를 계산하는 단계; 게임 변경 모듈에서 컨버전스가 결정되면 상기 게임 시나리오 형태의 상기 하나 이상의 게임 테스트들을 상기 게임이 변경할 것이라고 결정하는 단계; 및 상기 컨버전스의 상기 하나 이상의 게임 액션들이 상기 게이밍 서버에 대한 변경된 하나 이상의 게임 테스트들을 통과하지 못하도록 상기 하나 이상의 게임 테스트들을 변경하는 단계를 포함할 수 있다.
상기 요약은 단지 예증적인 것이며 제한하려는 의도는 아니다. 상기 상술된 예시적인 양태들, 구체예들, 및 특징들에 부가하여, 다른 양태들, 구체예들, 및 특징들이 첨부된 도면과 연계한 하기의 상세한 설명으로부터 더욱 명확해질 것이다.
도면에서:
도 1은 게이밍 네트워크를 통해 플레이되는 게임에서 컨버전트 게임 플레이를 검출하도록 적응된 게이밍 네트워크의 개략적인 표현을 포함한다;
도 2는 컨버전트 게임 플레이를 검출하고 게임을 변경하는 방법을 설명하는 흐름도를 포함한다;
도 3은 컨버전트 게임 플레이를 검출하는 방법을 설명하는 흐름도를 포함한다;
도 4은 컨버전트 게임 플레이를 검출하는 방법을 설명하는 흐름도를 포함한다;
도 5는 컨버전트 게임 플레이를 검출하고 게임을 변경하는 방법을 설명하는 흐름도를 포함한다;
도 6은 컨버전트 게임 플레이를 검출하는 방법을 설명하는 흐름도를 포함한다;
도 7은 컨버전트 게임 플레이에 응답하여 게임을 변경하는 방법을 설명하는 흐름도를 포함한다;
도 8은 컨버전트 게임 플레이에 응답하여 게임을 변경하는 방법을 설명하는 흐름도를 포함한다;
도 9는 컨버전트 게임 플레이를 검출하는 데이터 분석 프로토콜 및 게임의 그래픽 유저 인터페이스의 개략적인 표현을 포함한다;
도 10은 컨버전트 게임 플레이 및 게임 변경을 구현하기 위해 사용될 수도 있는 예시적인 컴퓨팅 디바이스의 개략적인 표현을 포함한다;
이들 모두는 본원에서 설명되는 적어도 몇몇의 구체예들에 따라 정렬된다.
도 1은 게이밍 네트워크를 통해 플레이되는 게임에서 컨버전트 게임 플레이를 검출하도록 적응된 게이밍 네트워크의 개략적인 표현을 포함한다;
도 2는 컨버전트 게임 플레이를 검출하고 게임을 변경하는 방법을 설명하는 흐름도를 포함한다;
도 3은 컨버전트 게임 플레이를 검출하는 방법을 설명하는 흐름도를 포함한다;
도 4은 컨버전트 게임 플레이를 검출하는 방법을 설명하는 흐름도를 포함한다;
도 5는 컨버전트 게임 플레이를 검출하고 게임을 변경하는 방법을 설명하는 흐름도를 포함한다;
도 6은 컨버전트 게임 플레이를 검출하는 방법을 설명하는 흐름도를 포함한다;
도 7은 컨버전트 게임 플레이에 응답하여 게임을 변경하는 방법을 설명하는 흐름도를 포함한다;
도 8은 컨버전트 게임 플레이에 응답하여 게임을 변경하는 방법을 설명하는 흐름도를 포함한다;
도 9는 컨버전트 게임 플레이를 검출하는 데이터 분석 프로토콜 및 게임의 그래픽 유저 인터페이스의 개략적인 표현을 포함한다;
도 10은 컨버전트 게임 플레이 및 게임 변경을 구현하기 위해 사용될 수도 있는 예시적인 컴퓨팅 디바이스의 개략적인 표현을 포함한다;
이들 모두는 본원에서 설명되는 적어도 몇몇의 구체예들에 따라 정렬된다.
하기의 상세한 설명에서는, 상세한 설명의 일부를 형성하는 첨부된 도면들을 참조한다. 도면에서, 문맥상 다르게 지시하지 않는 한, 유사한 도면 부호는 통상 유사한 컴포넌트를 식별한다. 상세한 설명, 도면, 및 특허청구범위에서 설명된 예증적인 구체예들은 제한적인 것을 의미하는 것은 아니다. 본원에서 제시되는 본질의 취지 또는 범위를 벗어나지 않으면서, 다른 구체예들이 활용될 수도 있고, 다른 변경예들이 이루어질 수도 있다. 본원에서 일반적으로 설명되고, 도면에서 도해된 본 개시의 양태들이 아주 다양하고 상이한 구성들로 정렬되고, 대체되고, 조합되고, 분리되고, 설계될 수 있으며, 이들 모두는 본원에서 명시적으로 의도된 것임을 쉽게 이해할 수 있을 것이다.
일반적으로, 온라인 게임은, 게임을 플레이함에 있어서 충분한 체감 품질 (Quality of Experience; "QoE") 이 있을 때 플레이어들에 의해 즐겨질 수 있다. QoE를 유지하는 것이, 게임, 특히, 상당한 기간에 걸쳐 연속적으로 플레이되도록 구성된 또는 심지어 끝이 없이 플레이되도록 구성된 MMORPG의 장기간 성공에 중요할 수 있다. 플레이어가 (예를 들면, 낮은 QoE로부터) 게임이 지겨워 진 후 또는 게임이 예측 가능해진 후, 플레이어는 다른 게임으로 전환할 수도 있다. 이와 같이, (예를 들면, 높은 QoE로부터) 약간의 흥분 및/또는 예측불가능성을 유지하도록 게임을 변경하여 장기간에 걸쳐 동일한 게임을 계속 플레이하도록 플레이어를 장려하는 것이 유익할 수 있다.
따라서, 본 기술은 게임에서의 QoE를 유지하거나 향상시키기 위한 게이밍 시스템들, 게이밍 네트워크들, 및 게이밍 방법들을 포함한다. 게임은, 게임을 호스트하는 하나 이상의 중앙 게임 컴퓨팅 시스템들을 구비하는 게이밍 시스템과 같은 하나 이상의 게이밍 시스템들 및/또는 서로 통신하는 복수의 컴퓨팅 디바이스들에 의해 플레이되는 임의의 컴퓨터 게임일 수 있다. QoE는, 복수의 컴퓨팅 디바이스들 전체에서의 복수의 플레이어들에 의한 게임 플레이 액션들에서의 컨버전스를 검출하고, 그 후, 컨버전트하게 된 게임 플레이 액션들이 게임에서 사용하기에 더 이상 유익하지 않거나 또는 성공적이지 않도록 게임을 변경함으로써, 향상될 수 있다. 게임이 변경된 이후, 플레이어들은, 게임 시나리오들 또는 게임 테스트들을 극복하는 것에 의한 것과 같이, 게임의 장애물을 극복하거나 목표를 달성하도록 게임을 플레이하는 방식을 발견하기 위해, 그 변경들을 학습하고 그 변경들에 적응하며 새로운 게임 플레이 액션들을 개발해야 할 필요가 있을 수도 있다.
몇몇 구체예들에서, 게임을 플레이함에 있어서 QoE의 감소는 컨버전트 게임 플레이로 인해 야기될 수 있다. 컨버전트 게임 플레이는, 한 플레이어가 복수의 게임 액션들을 구비하는 성공적인 게임 플레이 액션 패턴을 결정할 때 야기되는 현상으로 설명될 수 있는데, 이 컨버전트 게임 플레이는 어떻게 해서든 다른 플레이어들에 전달되어, 플레이어들의 그룹이 동일한 게임 플레이 액션 패턴을 구현하게 된다. 여기서, "게임 플레이 액션"은 플레이어가 활발히 게임을 플레이하고 있을 때의 플레이어로부터 게임으로의 입력, 키스트로크 또는 다른 응답을 포함할 수 있으며, 그에 따라 플레이어는 "게임 플레이 액션"을 구현하게 된다. 게임 플레이 액션은 단일 응답일 수 있으며, 이것은, 배틀들을 구비하는 게임에서, 히트(hit), 킥, 주문, 무기 발사, 미사일 발사 등과 같은, 단일 게임 플레이 액션 배틀 움직임으로서 예시화될 수 있다. 종종, 단일 게임 플레이 액션은 게임 시나리오, 게임 테스트, 게임 레벨, 게임 상대, 게임 배틀, 또는 게임의 다른 특징, 챌린지, 또는 태스크를 극복하는데 불충분할 수 있다. 이와 같이, 플레이어는 성공을 위해 복수의 게임 플레이 액션들을 게임 플레이 액션 패턴으로 구현해야 할 필요가 있을 수도 있다. "게임 플레이 액션 패턴"은 패턴으로 구현되는 복수의 게임 액션들을 포함할 수 있다. 각각의 플레이어는 게임을 플레이하기 위해 게임 플레이 액션들을 구현할 수 있고, 따라서 "게임 플레이 액션들"은 일반적으로 플레이어들에 의한 "게임 액션들"로 지칭될 수 있다.
게임 액션 패턴은 게임을 작동시키고 있는 컴퓨팅 디바이스와의 상호작용에 의해 플레이어에 의해 함께 구현되는 게임 액션들의 임의의 조합일 수 있다. 예를 들면, 배틀들을 구비하는 게임은 다음의 배틀 움직임들의 임의의 조합을 구비하는 게임 액션 패턴을 구현하는 플레이어를 포함할 수 있다: 히트, 킥, 주문, 무기 발사, 미사일 발사 등. 몇몇 경우들에서, 게임 액션 패턴은, 게임 액션들의 시퀀스 또는 게임 액션 조합들의 시퀀스들을 구비하는 방식으로 구현될 수있다. 일반적으로, 게임 액션 패턴은 두 개 이상의 게임 액션들의 시퀀스를 구비할 수 있다. 몇몇 게임 액션 패턴들은 복잡할 수 있고 특정 게임 액션 패턴에 네 개, 다섯 개, 또는 더 많은 수의 게임 액션들을 포함할 수 있는데, 여기서 게임 액션들은 반복적으로 그리고 빈번하게 동일한 게임 액션 패턴으로 함께 구현될 수 있다. 예를 들면, 배틀 게임을 위한 게임 액션 패턴은 다음의 시퀀스들을 포함할 수 있다: 히트+주문 또는 히트+킥+주문. 게임 액션 패턴은, 그 게임 액션 패턴이 성공적이라고 결정된 이후, 플레이어에 의해 정확한 시퀀스로 종종 반복될 수도 있다.
게임이 작동하는 많은 컴퓨팅 디바이스들 등은 키보드들, 마우스 입력 디바이스들, 노브들 (knobs) 및 버튼들을 제공하며, 이들이 적절한 방식과 시퀀스로 작동되면 몇몇 형태의 플레이어 액티비티가 게임에서 발생하도록 게임 액션 또는 게임 액션 패턴을 야기시킬 수 있다. 많은 게임들은, 특별한 파이트 움직임 또는 파이트 움직임 시퀀스와 같은, 특정 게임 액션들 또는 게임 액션 패턴들을 생성할 수 있는 노브 및 버튼 작동들의 리스트를 구비할 수도 있다. 키보드, 마우스 입력 디바이스 노브 및 버튼 작동으로부터 게임 액션들의 조합이 발생하고, 게임 액션들의 조합이 순차적이고 복수 회 반복되면, 게임 액션들의 조합은 게임 액션 패턴인 것으로 간주될 수 있다. 게임 액션들의 조합을 생성하기 위해 여러 형태들의 입력이 게임이 작동되는 컴퓨팅 디바이스에 의해 구현될 수 있지만, 게임 액션들은 공통의 게임 액션 패턴을 위해 분석될 수 있고, 상기 게임 액션 패턴은 컨버전트 게임 플레이를 위해 분석될 수 있다. 예를 들면, 컴퓨팅 디바이스는 하이-레벨 또는 요약된 게임 플레이 액션들 (예를 들면, "스워드 어택", "활과 화살 어택", "격발식 활 어택", "불 마법의 주문", "얼리는 마법의 주문" 등) 을 기록할 수 있고 반복되는 패턴을 위한 게임 플레이 액션들을 분석할 수 있다. 게임 플레이 액션들의 패턴이 반복되면, 컨버전스가 결정될 수도 있다. 따라서, 복수의 플레이어들이 동일한 게임 액션 패턴을 채용하면 컨버전트 게임 플레이가 발생할 수 있다.
컨버전트 게임 플레이는, 두 개 이상의 특정 게임 액션들이 "동시 발생"되거나 또는 "동시 발생성"을 가질 때 그리고 이러한 동시 발생 게임 액션들이 플레이어들의 집단에 걸쳐 반복적으로 그리고 빈번하게 구현될 때 나타나는 것으로 설명될 수 있다. 본원에서 사용된 바와 같이, 특정 게임 액션들이 "동시 발생"되거나 또는 "동시 발생성"을 가지면, 플레이어에 의한 게임 플레이 동안 두 개 이상의 특정 게임 액션들은 조합으로 또는 연달아 함께 구현된다. 즉, 2개 이상의 게임 액션들이 게임 플레이에 대해 "동시 발생"하거나 또는 "동시 발생성"을 가지도록 2개 이상의 특정 게임 액션들은 게임 액션 패턴으로 함께 및/또는 연달아 구현된다. 예를 들면, 게임 액션 패턴들 ("히트+주문" 또는 "히트+킥+주문") 은 개개의 액션들 (예를 들면, 히트, 킥, 또는 주문) 에 대해 동시 발생성을 가질 수 있다. 2개 이상의 게임 액션들이 동시 발생되면, 적어도 한 명의 플레이어가 게임 플레이를 동시 발생 게임 액션들로 컨버징 (converging) 하는 표시 (indication) 가 존재한다. 동시 발생 게임 액션들의 발생 빈도가 증가하거나 임계치를 넘어서면, 동시 발생 게임 액션들은 적어도 한 명의 플레이어에 대해 컨버전트한 것으로 간주될 수도 있다. 동시 발생 게임 액션들이, 예를 들면 공통 테스트에 대해 복수의 플레이어들에 의해 사용되기 시작하면, 공통 발생 게임 액션들은 컨버전트 게임 액션들인 것으로 또는 컨버전트 게임 플레이의 일부로서 간주될 수도 있다.
도 1은, 본원에서 설명되는 적어도 몇몇 구체예에 따라 정렬된, 게이밍 네트워크 (112) 를 통해 플레이되는 게임에서 컨버전트 게임 플레이를 검출하도록 적응된 게이밍 네트워크 (112) 의 개략적인 표현을 포함한다. 게이밍 네트워크 (112) 는 복수의 플레이어들 (118) 에 의해 동작되는 복수의 컴퓨팅 디바이스들 (116) 과 동작 가능하게 커플링된 네트워크 (114) 에 동작 가능하게 커플링된 게이밍 시스템 (110) 을 포함할 수 있다. 게이밍 시스템 (110) 은 게임 모듈 (120), 게임 시나리오 모듈 (122), 게임 테스트 모듈 (124), 게이밍 서버 (126), 입력 스트림 채널 (128), 로깅 모듈 (130), 제 1의 로그 데이터베이스 (132), 제 2의 로그 데이터베이스 (134), 패턴 검출 모듈 (136), 컨버전스 분석 모듈 (138), 스케줄 모듈 (140), 게임 변경 모듈 (142), 출력 스트림 채널 (144), 및 데이터 마이닝 모듈 (146) 을 포함할 수 있다. 게이밍 시스템 (110) 의 여러 컴포넌트들이 라인들 (이 라인들은 컴포넌트들이 특정 구성에 동작 가능하게 접속되어 있는 것을 나타낸다) 에 접속된 것으로 도시되었지만, 게이밍 시스템 (110) 의 임의의 컴포넌트들이 함께 동작 가능하게 커플링될 수 있으며 그들 사이에서 데이터를 통신할 수 있다.
게이밍 시스템 (110) 은 게임을 작동시키고 게임의 게임 데이터를 컴퓨팅 디바이스들 (116) 에 전송하고, 컴퓨팅 디바이스들 (116) 로부터 게임 데이터를 수신하며, 게임 데이터를 분석하도록 단독으로 또는 함께 동작할 수 있는 하나 이상의 컴퓨터들을 구비하는 임의의 형태의 컴퓨팅 시스템일 수 있다. 게이밍 시스템 (110) 은 게임 데이터를 저장하도록 구성될 수 있는 하나 이상의 컴퓨터 판독 가능한 데이터 스토리지 디바이스들 (도시되지 않음) 을 포함할 수 있는데, 게임 데이터는 플레이어들 (118) 중 임의의 플레이어에 의해 구현되는 게임 액션들 또는 게임 액션 패턴들뿐만 아니라 게임 시나리오들 및 게임 테스트들에 관한 데이터를 포함할 수 있다. 예를 들면, 게임 데이터는 게임 모듈 (120) 에 저장될 수 있다. 또한, 게이밍 시스템 (110) 은, 게임 데이터를 처리하도록 구성되거나 또는 게이밍 시스템 (110) 에서 프로세서로서 기능하도록 구성되는 하나 이상의 프로세서들 (도시되지 않음) 을 포함할 수 있다. 게임 모듈 (120) 은 게임을 구현하는 프로세서에 의해 실행될 수 있는 컴퓨터 판독 가능한 명령들을 포함할 수 있다. 게이밍 시스템 (110) 은 임의의 데이터 분석 프로세스뿐만 아니라 임의의 표준 컴퓨팅 프로세스 또는 게이밍 프로세스를 구현하도록 구성될 수 있는 하나 이상의 컴퓨팅 모듈들 (도시되지 않음) 을 포함할 수 있다. 게이밍 시스템 (110) 은 본원에서 설명된 바와 같이 컨버전트 게임 플레이를 검출하고 컨버전트 게임 플레이에 응답하여 게임을 변경하는 방법을 구현할 수 있다.
게이밍 시스템 (110) 은 단일의 컴퓨팅 시스템 또는 게임을 용이하게 하도록 협동하는 복수의 중앙 컴퓨팅 센터들을 구비하는 분산 컴퓨팅 시스템일 수도 있다. 이 구성은, 한 지역 위치의 중앙 컴퓨팅 센터가 게임의 어떤 양태들 또는 영역들을 호스트할 수 있고 다른 지역 위치들의 다른 중앙 컴퓨팅 센터들이 게임의 다른 양태들 또는 영역들을 호스트할 수 있는 온라인 게임들에서 발견될 수 있다. 컴퓨팅 디바이스들 (116) 은 게임이 플레이되는 방식에 따라 게이밍 시스템 (110) 의 상이한 중앙 컴퓨팅 센터들 사이에서 호핑할 수 있다. 그러나, 중앙 컴퓨팅 시스템들 각각은, 게임에 끊김이 없는 것처럼 느끼게 하는 게임 플레이에서의 연속성을 플레이어들 (118) 이 경험하도록, 협동할 수 있다. 따라서, 몇몇 구체예들에서, 게임을 작동시키는 임의의 수의 중앙 컴퓨팅 시스템들은 총체적으로 게이밍 시스템 (110) 으로 칭해질 수도 있다.
네트워크 (114) 는 로컬 네트워크, 지역 네트워크, 또는 인터넷과 같은 월드-와이드 네트워크일 수 있으며, 이들은, 네트워크 (114) 에 동작 가능하게 커플링된 복수의 컴퓨팅 디바이스들 (116) 상에서의 게임 플레이를 용이하게 할 수 있는, 하나 이상의 공중 또는 사설 LANs (Local Area Networks), WANs (Wide Area Networks), 또는 다른 네트워크 구성을 포함할 수 있다.
컴퓨팅 디바이스들 (116) 은 동일한 형태의 컴퓨팅 디바이스 또는 상이한 형태들의 컴퓨팅 디바이스들 (116) 일 수 있으며, 게임을 작동시킬 때 게이밍 디바이스들로서 칭해질 수도 있다. 임의의 수의 컴퓨팅 디바이스들 (116) 은 게이밍 네트워크 (112) 에 포함될 수 있으며, 그 수는 2개 또는 3개의 컴퓨팅 디바이스들 (116) 에서 수백, 수천 또는 수백만의 컴퓨팅 디바이스들 (116) 까지의 범위에 이를 수 있다. 컴퓨팅 디바이스들 (116) 은 일반적인 가정용 컴퓨터들, 게이밍 컴퓨터들 (예를 들면, Xbox 360, Wii, Sony Playstations 등), 데스크탑 컴퓨터들, 랩탑 컴퓨터들, 노트북 컴퓨터들, 넷북 컴퓨터들, 태블릿 컴퓨터들, 핸드-헬드 디바이스들, 스마트폰들, 또는 임의의 다른 컴퓨팅 디바이스일 수 있다. 컴퓨팅 디바이스들 (116) 은 개개의 플레이어 (118) 에 의해 각각 동작될 수 있다. 상이한 플레이어들 (118) 은 상이한 컴퓨팅 디바이스들 (116) 을 동작시킬 수도 있다. 컴퓨팅 디바이스들 (116) 각각은, 컴퓨팅 디바이스들 (116) 에 따라 변할 수 있으며 출력 유저 인터페이스와 입력 유저 인터페이스를 포함할 수 있는 하나 이상의 유저 인터페이스들 (도시되지 않음) 을 포함할 수 있다. 예시적인 출력 유저 인터페이스는 디스플레이 스크린, 스피커, 진동기, 또는 이들의 조합을 포함할 수도 있지만, 이들에 제한되는 것은 아니다. 예시적인 입력 유저 인터페이스는 표준 키보드, 버튼들, 마우스, 스타일러스, 터치패드, 스크롤 노브, 터치 스크린, 또는 이들의 조합을 포함할 수 있는데, 이들에 제한되는 것은 아니다. 플레이어들 (118) 은 유저 인터페이스들을 통해 컴퓨팅 디바이스들 (116) 과 연결되어 게임 데이터를 수신할 수 있고, 게임 시나리오 또는 게임 테스트에 응답하여, 게임 액션들을 컴퓨팅 디바이스들 (116) 에 입력하여 게임 액션 데이터를 생성할 수 있다. 즉, 게임 액션 데이터는 플레이어들 (118) 에 의해 컴퓨팅 디바이스들 (116) 로 입력된 게임 액션들로부터 유도될 수 있으며, 게임 액션들의 구현들은 하나 이상의 키스트로크들 또는 컴퓨팅 디바이스들 (116) 의 입력 유저 인터페이스와의 다른 상호 작용들을 포함할 수 있다. 이와 같이, 게임 액션 데이터는 플레이어들 (118) 에 의한 컴퓨팅 디바이스들 (116) 로 입력되는 게임 액션들을 나타낼 수 있다.
플레이어들 (118) 과 함께 게임을 작동시키는 컴퓨팅 디바이스들 (116) 과의 게이밍 시스템 (110) 의 상호 연결성은, 게임 플레이 데이터가 게이밍 시스템 (110) 에 의해 수신되고 저장되는 것을 허용한다. 게임 동안, 각 플레이어 (118) 는 일련의 게임 액션들을 그들의 컴퓨팅 디바이스 (116) 로 구현하여 게임과 상호작용할 수 있다. 플레이어 (118) 에 의해 구현되는 일련의 게임 액션들은 게임에 의해 제시되는 게임 테스트들에 응답할 수 있고, 플레이어 (118) 에 의해 구현되는 게임 액션들은 게임 테스트들을 통과 (pass) 하거나 또는 극복하기 위한 시도일 수 있다. 예를 들면, 게임 테스트들은 어떤 몬스터 또는 적들에 대항하는 어떤 배틀 또는 한 배틀을 포함할 수 있고, 따라서 배틀에서 승리하거나 어떤 몬스터 또는 적들을 쳐부수기 위해 (예를 들면, 게임 테스트들을 극복하기 위해) 일련의 플레이어 게임 액션들이 구현될 수 있다. 일련의 게임 액션들은 게임 액션 패턴들에서의 컨버전스의 분석을 위해 게이밍 시스템 (110) 에 의해 수신되어 저장될 수 있다.
게이밍 서버 (126) 는 복수의 컴퓨팅 디바이스들 (116) 에 동작 가능하게 커플링되고 복수의 컴퓨팅 디바이스들 (116) 에 게임을 동시에 제공하도록 구성될 수 있다. 게이밍 서버 (126) 는, 게임이 컴퓨팅 디바이스들 (116) 상에서 플레이될 수 있도록, 게임 모듈 (120), 게임 시나리오 모듈 (122), 및/또는 게임 테스트 모듈 (124) 에 동작 가능하게 커플링되어 게임을 실행한다. 게임 시나리오 모듈 (122) 은 게임 시나리오들을 게이밍 서버 (126) 에 제공하도록 구성될 수 있다. 게임 테스트 모듈 (124) 은 게임 테스트들을 게이밍 서버 (126) 에 제공하도록 구성될 수 있다. 몇몇 구체예들에서, 게임 시나리오 모듈 (122) 및 게임 테스트 모듈 (124) 은 전체 게임 모듈 (120) 의 일부일 수 있다. 이들 및 다른 구체예들에서, 게임 시나리오 모듈 (122) 은 게임 시나리오들을 구현하도록 구성될 수 있고, 게임 테스트 모듈 (124) 은 게임 시나리오들의 게임 테스트들을 구현하도록 구성될 수 있다. 게임 모듈 (120) 은 게임을 포함할 수 있고 게이밍 서버 (126) 를 통한 게임 플레이를 용이하게 할 수 있으며, 게임을 구동하고 게이밍 서버 (126) 와 게임 데이터를 교환하도록 구성될 수 있다. 게임 모듈 (120) 은 게이밍 서버 (126) 에 게임 시나리오들을 제공하고 게임 데이터를 수신하여 게임 플레이 동안 게임 시나리오들을 변조하도록 구성된 시나리오 모듈 (122) 을 포함하거나 시나리오 모듈 (122) 에 커플링될 수 있다. 게임 모듈 (120) 은 게이밍 서버 (126) 에 게임 테스트들을 제공하고 게임 데이터를 수신하여 게임 플레이 동안 게임 테스트들을 변조하도록 구성된 테스트 모듈 (124) 을 포함하거나 테스트 모듈 (124) 에 커플링될 수 있다. 게임 테스트 모듈 (124) 은 게임 시나리오들에 따라 적절한 게임 테스트들을 제공할 수 있다. 이와 같이, 게임 시나리오 모듈 (122) 은 어떤 게임 시나리오 형태들에 대한 게임 테스트들의 형태들을 결정할 수 있고 게임 테스트 모듈 (124) 은 게임 테스트들을 처리하고 게임 테스트들을 게임 플레이를 위해 제공할 수 있다. 게임은 하나 이상의 컴퓨터 판독 가능한 데이터 스토리지 디바이스들 (도시되지 않음) 에 저장될 수 있는 컴퓨터 판독 가능한 명령들을 포함할 수 있고, 하나 이상의 프로세서들 (도시되지 않음) 상에서 또는 게이밍 시스템 (110) 의 게임 모듈 (120) 과 같은 하나 이상의 모듈들을 통해 기동될 수 있다.
일반적으로, 게임 시나리오 모듈 (122) 은 게임 내의 한 장면 또는 상황에 의해 표현될 수 있는 하나 이상의 게임 시나리오들을 포함할 수 있다. 게임 시나리오들은 게임의 형태에 따라 변할 수 있다. 게임 시나리오들은 컴퓨팅 디바이스들 (116) 에 의해 플레이어들 (118) 에 제공되는 게임 플레이 출력을 포함할 수 있다. 게임 플레이 출력은, 컴퓨팅 디바이스들 (116) 로의 게임 플레이 입력을 구현하는 것을 통해, 플레이어들 (118) 에 의해 제어되는 플레이어 오브젝트들과 상호작용하는 하나 이상의 게임 오브젝트들을 포함할 수 있다. 게임 오브젝트들은 배틀에서 적들 (opponents) 을 포함할 수 있으며, 플레이어 오브젝트들은 플레이어들 (118) 의 아바타들을 포함할 수 있다. 예를 들면, 게임 시나리오들은 배틀 게임 데이터를 플레이어들 (118) 에 제공하는 배틀 시나리오들을 포함할 수 있고, 이러한 배틀 게임 데이터는, 플레이어들 (118) 로 하여금 배틀 게임 액션들을 게임 플레이 입력으로서 제공하게 하는 게임 플레이 출력으로서, 시각적, 사운드적, 및 진동적 자극을 포함할 수 있다.
게임 테스트 모듈 (124) 은, 플레이어들 (118) 이 게임 상에서 이동하거나 또는 게임을 진행하기 이전에 극복되거나 통과될 수 있는 게임 테스트를 플레이어들 (118) 로 제공할 수 있다. 각각의 게임 시나리오는 특정 형태들의 게임 테스트들을 구비할 수 있다. 게임 테스트들은 챌린지, 퀘스트, 태스크, 퍼즐, 배틀, 적, 레벨 보스, 몬스터 등을 포함할 수 있다. 게임 테스트들은 각 플레이어 (118) 가 게임을 진행하기 위해서 게임 액션들에 의해 극복되도록 설계될 수 있다. 그러나, 게임 액션 패턴들은, 일반적인 게임 테스트들을 극복한, 특별한 형태의 게임 테스트들 (예를 들면, 몬스터들) 을 극복한, 또는 특정 게임 테스트 (예를 들면, 특정 몬스터) 를 극복한 플레이어들 (118) 에 의해 학습될 수도 있다.
게이밍 서버 (126) 는 컴퓨팅 디바이스들 (116) 로부터 게임 액션 데이터를 수신하도록 구성될 수 있고, 도 1에 도시된 바와 같이 입력 스트림 채널 (128) 에 커플링될 수도 있다. 입력 스트림 채널 (128) 은 게이밍 서버 (126) 에 의해 수신되어 게이밍 시스템 (110) 의 컴포넌트들에 의해 저장되고/되거나 처리되는 게임 액션 데이터에 대한 도관 (conduit) 으로서 기능할 수도 있다. 입력 스트림 채널 (128) 은 로깅 모듈 (130) 에 동작 가능하게 커플링될 수 있다. 일반적으로, 로깅 모듈 (130) 은 입력 스트림 채널 (128) 로부터 게임 액션 데이터를 수신하여 기록하도록 구성될 수 있는데, 게임 액션 데이터는 플레이어들 (118) 에 의해 컴퓨팅 디바이스들 (116) 로 입력되고 네트워크 (114) 를 통해 게이밍 시스템 (110) 으로 전송된다. 이와 같이, 로깅 모듈 (130) 은 게임 시나리오들의 게임 테스트들에 응답하여 컴퓨팅 디바이스들 (116) 로부터 게임 액션들의 게임 데이터를 수신하도록 구성될 수 있다. 또한, 로깅 모듈 (130) 은, 배틀 시나리오들 또는 적 테스트들 (opponent tests) 에 응답하여 배틀 게임 액션들과 같은 임의의 형태의 게임 데이터의 로그들을 기록할 수 있는데, 이들은 배틀들 및/또는 적들에 응답하여 플레이어들 (118) 에 의해 구현되는 게임 액션들 및 배틀들의 임의의 적들에 대한 임의의 데이터를 포함할 수도 있다.
로깅 모듈 (130) 은, 게임 데이터가 제 1의 로그 데이터베이스 (132) 및/또는 제 2의 로그 데이터베이스 (134) 에 로그될 수 있는지의 여부를 결정할 수 있다. 제 1의 로그 데이터베이스 (132) 는 로깅 모듈 (130) 에 동작 가능하게 커플링될 수 있고, 게임 테스트들에 대한 게임 액션들의 데이터를 구비할 수 있다. 게임 액션들은 게임 테스트들에 대한 플레이어들 (118) 에 의한 응답을 포함할 수 있고, 상기 게임 액션들은 로깅 모듈 (130) 에 로그될 수 있으며, 제 1의 로그 데이터베이스 (132) 및/또는 제 2의 로그 데이터베이스 (134) 에 기록될 수 있다. 제 2의 로그 데이터베이스 (134) 는 로깅 모듈 (130) 에 동작 가능하게 커플링될 수 있고, 개개의 컴퓨팅 디바이스들 (116) 과 관련된 게임 테스트들에 대한 게임 액션들을 구비할 수 있다. 몇몇 구체예들에서, 제 1의 로그 데이터베이스 (132) 는 전체 게임에 대한 게임 액션들을 포함할 수도 있고 제 2의 로그 데이터베이스 (134) 는 플레이어마다의 게임 액션들을 포함할 수도 있다.
제 1의 로그 데이터베이스 (132) 는 컴퓨팅 디바이스들 (116) 로부터 수신된 게임 테스트들에 대한 게임 액션들의 제 1의 로그 데이터를 포함하도록 구성될 수 있다. 제 1의 로그 데이터베이스 (132) 의 제 1의 로그 데이터는 특정 컴퓨팅 디바이스 (116) 에 독립적일 수 있다. 그러나, 제 1의 로그 데이터베이스 (132) 의 제 1의 로그 데이터는 게임 액션들을 게임 테스트들과 관련시키도록 정렬될 수 있다. 제 2의 로그 데이터베이스 (134) 는 플레이어들 (118) 로부터 게임 액션들을 수신한 특정 컴퓨팅 디바이스들 (116) 과 관련된 게임 테스트들에 대한 게임 액션들의 제 2의 로그 데이터를 포함할 수 있다. 즉, 제 2의 로그 데이터베이스 (134) 의 제 2의 로그 데이터는 특정 컴퓨팅 디바이스 (116) 또는 특정 플레이어 (118) 와 관련되어 정렬될 수 있다.
패턴 검출 모듈 (136) 은 제 1의 로그 데이터베이스 (132) 및/또는 제 2의 로그 데이터베이스 (134) 에 동작 가능하게 커플링될 수 있고, 로깅 모듈 (130) 또는 게이밍 서버 (126) 로부터 게임 데이터를 획득할 수도 있다. 패턴 검출 모듈 (136) 은 제 1의 로그 데이터베이스 (132) 로부터 게임 액션 패턴들의 발생 빈도를 계산하도록 구성될 수 있고, 미리 결정된 임계치 (예를 들면, 발생 빈도 임계치) 를 초과하는 발생 빈도들을 갖는 게임 액션 패턴들의 동시 발생 게임 액션들을 선택하도록 구성될 수 있다. 따라서, 패턴 검출 모듈 (130) 은 제 1의 로그 데이터베이스 (132) 로부터 높은 발생 빈도들을 갖는 동시 발생 게임 액션들을 추출할 수 있다. 추출된 동시 발생 액션들은 높은 동시 발생 확률을 가질 수 있다. 패턴 검출 모듈 (136) 은 제 1의 로그 데이터베이스 (132) 로부터 추출된 게임 액션들의 계산된 발생 빈도 값들을 포함하도록 구성될 수 있다. 패턴 검출 모듈 (136) 은 제 1의 로그 데이터베이스 (132) 로부터의 발생 빈도 임계치를 초과하는 게임 액션 패턴들의 추출된 동시 발생 게임 액션들을 또한 포함할 수 있다.
컨버전스 분석 모듈 (138) 은 제 2의 로그 데이터베이스 (134) 에 그리고 패턴 검출 모듈 (136) 에 동작 가능하게 커플링될 수 있다. 컨버전스 분석 모듈 (138) 은, 복수의 컴퓨팅 디바이스들 (116) 전체에서, 게임의 게임 테스트들을 통과하는 게임 액션들의 컨버전스를 결정하도록 구성될 수 있다. 컨버전스 분석 모듈 (138) 은 제 1의 로그 데이터베이스 (132) 로부터 패턴 검출 모듈 (136) 에 의해 추출된 게임 액션 패턴들의 동시 발생 게임 액션들에 대한 제 2의 로그 데이터베이스 (134) 에서의 발생 빈도를 계산하도록 구성될 수 있다. 따라서, 컨버전스 분석 모듈 (138) 은, 게임 테스트들에 응답하여 게임 액션 패턴들의 컨버전스를 결정하기 위해, 패턴 검출 모듈 (136) 로부터의 추출된 게임 액션 패턴들에 대한 제 2의 로그 데이터베이스 (134) 의 동시 발생 게임 액션들의 발생 빈도를 계산하도록 구성될 수 있다. 컨버전스 분석 모듈 (138) 은, 동일한 동시 발생 게임 액션들이 복수의 컴퓨팅 디바이스들 (116) 에 의해 사용될 때, 제 2의 로그 데이터베이스 (134) 의 컨버전트 게임 액션 패턴들에 포함된 동시 발생 게임 액션들을 결정할 수 있다. 동일한 게임 액션 패턴들을 사용하는 컴퓨팅 디바이스들 (116) 이 더 많아질수록, 발생 빈도는 더 높아지며, 따라서 제 2의 로그 데이터베이스 (134) 에서의 더 높은 발생 빈도는 컨버전트 게임 액션 패턴들을 나타낸다. 또한, 동일한 게임 액션 패턴들을 사용하는 플레이어들의 수가 많아짐에 따라, 컨버전트 게임 액션 패턴들의 가능성은 컴퓨팅 디바이스들 (116) 의 집단에 걸쳐 증가한다.
몇몇 구체예들에서, 컨버전스 분석 모듈 (138) 은 복수의 상이한 컴퓨팅 디바이스들 (116) 에 대한 게임 동안 플레이 스타일들에서 컨버전스를 자동적으로 검출하도록 구성될 수 있다. 게임 액션들을 구현하는 플레이어들 (118) 이, 게임 시나리오들 및 게임 테스트들에 응답하여 반복되는 선호하는 게임 액션들의 세트 또는 선호하는 게임 액션 패턴들을 구비할 수 있도록, 용어 "플레이 스타일"은 게임 플레이 출력 (예를 들면, 플레이어들 (118) 에 제공되는 게임) 및 게임 플레이 입력 (예를 들면, 게임 플레이 출력에 응답하는 플레이어들 (118) 에 의해 구현되는 게임 액션들) 을 포함하는 것으로 간주될 수 있다. 플레이어들 (118) 은 그들 자신의 고유의 플레이 스타일을 개발시킬 수 있지만 그러나, 성공적이고 유익한 플레이 스타일들은, 온라인으로 게재되든지, 포럼들에 게재되든지 또는 게임 동안 분배되는 것과 같이, 플레이어들 (118) 사이에서 전달될 수 있다.
컨버전스 분석 모듈 (138) 은 플레이 스타일들에서의 컨버전스를 모니터하기 위해 게임 플레이 동안 실시간으로 동작할 수 있거나, 또는 컨버전스를 모니터하기 위한 스케줄링된 규칙 (scheduled regimen) 에 따라 간헐적으로 또는 주기적으로 동작할 수 있다. 컨버전스 분석 모듈 (138) 은 실시간으로 또는 저장된 데이터로부터 게임 플레이의 지속 기간이나 임의의 기간 동안 게임 플레이 출력 데이터와 게임 플레이 입력 데이터를 사용할 수 있다. 따라서, 컨버전스 분석 모듈 (138) 은 플레이 스타일에서의 컨버전스를 자동적으로 검출할 수 있게 되어 게이밍 시스템 (110) 또는 게임 모듈 (120) 을 변경하는 적절한 전략을 (예를 들면, 스케줄 모듈 (140) 을 통해) 게이밍 시스템 (110)이 구현할 수 있게 되고, 그 결과 컨버전트 플레이 스타일의 성공을 감소시키고 플레이어들 (118) 을 장려하여 컨버전트 플레이 스타일의 사용을 줄이도록, 컨버전트 플레이 스타일에 대한 게임의 리액션을 변경할 수 있게 된다.
컨버전스 분석 모듈 (138) 은, 게임 테스트들 (예를 들면, 적에 대항하는 배틀) 에 응답하여 게임 액션들의 로그들을 가지며, 게임 시나리오 (예를 들면, 일반적인 배틀) 에서 수행된 복수의 게임 액션 로그들 (예를 들면, 제 1의 로그 데이터베이스 (132)) 의 분석, 및 플레이어들 (118) 의 게임 테스트에 대한 부가적인 게임 액션 로그들 (예를 들면, 제 2의 로그 데이터베이스 (134)) 의 분석을 결합하는 것에 의해 동작될 수 있다. 플레이어들 (118) 은 임의의 또는 정의된 수의 플레이어들 (118) 또는 전체 수의 플레이어들 (118) 의 일부인 플레이어들 (118) 의 그룹일 수 있고, 또는 모든 플레이어들 (118) 일 수 있다. 분석시, 컨버전스 분석 모듈 (138) 은, 게임 액션 패턴들이 플레이어들 (118) 의 집단에 걸쳐 빈번하게 반복되는 것을 알게 되면 컨버전스가 존재하는지의 여부를 결정할 수 있다.
스케줄 모듈 (140) 은, 컨버전트 게임 플레이의 결정에 응답하여 게임 변경들을 스케줄링하는 것과 같이, 게이밍 시스템 (110) 에 대한 어떤 액션들을 스케줄링하도록 구성될 수 있다. 따라서, 컨버전트 게임 플레이를 극복하거나 방지하도록 게임 변경을 구현함으로써 플레이어들 (118) 이 게임을 하는 것을 지겨워하는 것을 방지하기 위해 실제 플레이 동안 또는 스케줄링된 게임 다운 시간들 동안 게임 플레이를 변경하는 식으로 게임을 시스템적으로 변경하는 것이 구현될 수 있다. 이와 같이, 스케줄 모듈 (140) 은 게임 변경의 스케줄에 관한 정보를 출력 스트림 채널 (144) 로 제공하여 적절한 출력 데이터가 게이밍 서버 (126) 에 의한 스케줄에 따라 용이하게 될 수 있도록 한다.
몇몇 구현예들에서, 스케줄 모듈 (140) 은 게임 변경들의 스케줄링을 구현하는 방법에서 이용될 수 있다. 게임 변경들은 일반적으로 게임 소프트웨어, 게임 모듈 (120), 게임 시나리오 모듈 (122), 게임 테스트 모듈 (124), 게이밍 서버 (126), 또는 게이밍 시스템 (110) 에 대한 변경들을 포함할 수 있다. 게임 시나리오들 또는 게임 테스트들에 대한 변경들은 변경들이 컨버전트 게임 플레이를 극복하거나, 방해하거나 또는 방지하도록 구성될 수 있다. 게임은 QoE를 유지하거나 향상시키는 것에 따라 변경에 대해 스케줄링 될 수 있다. 예를 들면, 게임은, 컨버전트 게임 플레이를 검출하고 그 후 게임 변경을 스케줄링함으로써 유저가 현재의 게임 시나리오들 또는 게임 테스트들을 지겨워할 수도 있는 타이밍을 자동적으로 검출할 수 있는 게임 변경 프로토콜에 의해 변경되도록 스케줄링 될 수 있다.
예시적인 구체예들에서, 스케줄 모듈 (140) 은, 컨버전트 게임 플레이에 응답하는 것과 같이, QoE를 유지하거나 향상시킬 필요에 따라 게임을 변경하도록 구현될 수 있는 QoE-인식 (QoE-aware) 게임 시스템 변경 스케줄러로서 구성될 수 있다. 이와 같이, 스케줄러 모듈 (140) 은 QoE에 관련된 데이터를 수신할 수 있고, QoE의 저하를 방지하는 것뿐만 아니라 QoE를 유지 또는 향상시키도록 게임 변경들을 스케줄링할 수 있다. 스케줄 모듈 (140) 은 정의된 시간들에서 발생하도록 게임 변경들을 스케줄링할 수 있고 컴퓨팅 디바이스들 (116) 에 통지할 수 있으며, 따라서 플레이어들 (118) 은 게이밍 시스템 변경을 인식할 수 있고 스케줄링된 게임 변경과 충돌하지 않도록 그들의 게이밍 세션들을 스케줄링할 수 있다.
게임 플레이 컨버전스가 결정되면 게임 변경 모듈 (142) 은 게임을 변경하도록 구성될 수 있다. 게임 변경 모듈 (142) 은 컨버전스 분석 모듈 (138) 로부터 컨버전트 게임 플레이에 관한 데이터를 수신하도록 구성될 수 있고, 그 후 게임을 변경하도록 게이밍 시스템 (110) 또는 게임 모듈 (120) 을 변경하는 프로토콜을 구현할 수 있다. 본원에서 설명된 바와 같이, 게임에 대한 변경은 게임이 변경되는 방식으로 시나리오 모듈 (122) 및/또는 테스트 모듈 (124) 뿐만 아니라 게이밍 시스템 (110), 게이밍 서버 (126), 또는 게임 모듈 (120) 을 변경하는 것에 의해 구현될 수 있다. 게임 변경 모듈 (142) 은 컨버전트 게임 액션 패턴들을 수신하고 이들 수신된 컨버전트 게임 액션 패턴들이 더 이상 게임에서 유효하지 않도록 게임을 변경하는 것에 의해 게임을 변경할 수 있다. 게임 변경 모듈 (142) 은 게임 변경을 생성하거나 또는 외부 소스로부터 게임 변경을 수신할 수 있으며, 그 후 게임을 변경하기 위한 프로토콜을 구현할 수 있다.
게임 변경 모듈 (142) 은 게임 플레이의 컨버전스가 검출된 이후 소정의 방식으로 기능하도록 구성되거나 또는 프로그램될 수 있다. 즉, 게임 변경 모듈 (142) 은 컨버전트 게임 플레이에 응답하여 게임 변경과 함께 프로그램될 수 있다. 컨버전트 게임 플레이에 대한 응답 프로그램 기능들 (responsive programmed functions) 의 형태들은 컨버전트 게임 플레이를 금지하거나 또는 파기할 수 있는 액션들로부터 선택될 수 있다. 응답 프로그램 기능들의 몇몇 실시형태들은, 게임 자체를 변경시키거나, 게임 모듈 (120) 을 변경시키거나, 게임 시나리오 모듈 (122) 을 변경시키거나, 게임 테스트 모듈 (124) 을 변경시키거나, 게이밍 서버 (126) 에 의한 게임의 구현을 변경시키거나, 게임 테스트들에 대한 게임 액션 패턴들의 유효성을 감소시키거나, 또는 컨버전트 게임 플레이를 극복하는 다른 변경들과 같이, 컨버전스에 내포된 게임 액션 패턴들이 덜 유용하게 되도록 어떤 방식으려 변경된 게이밍 시스템 (110) 을 포함할 수 있다.
몇몇 구체예들에서, 게이밍 시스템 (110) 은 게임 데이터, 예컨데 복수의 컴퓨팅 디바이스들 (116) 에 의해 구현된 게임 액션들에 관련된 데이터를 마이닝 (mininig) 하도록 구성될 수도 있는 데이터 마이닝 모듈 (146) 을 포함할 수 있다. 데이터 마이닝 모듈 (146) 은 어떤 특성들에 대한 게임 플레이 데이터를 마이닝하도록 구성될 수 있다. 일반적인 게임 액션 데이터와 특정 게임 테스트들에 응답하는 게임 액션 데이터는, 어떤 기간에 걸쳐 반복되고 빈번하게 사용되는 컴퓨팅 디바이스들 (116) 에 의해 구현되는 동시 발생 게임 액션들 (예를 들면, 게임 액션 패턴들) 을 식별하도록 마이닝될 수 있다. 데이터 마이닝 모듈 (146) 은 게임을 동작시키고 있는 컴퓨팅 디바이스들 (116) 에 제공된 상이한 게임 테스트들을 식별하고, 그리고 컨버전트 게임 액션 패턴들에 종속되는 게임 테스트들을 식별하도록 게임 데이터를 또한 마이닝할 수 있다.
데이터 마이닝 모듈 (146) 에 의해 구현되는 데이터 마이닝의 프로세스는, 복수의 컴퓨팅 디바이스들 (116) 에 걸쳐 반복적이고 빈번한 게임 플레이 액션들을 검출하기 위해 자동 프로그램들, 치트 프로그램들, 플레이어 봇들 (bots), 또는 유사한 비인간 플레이어들을 검출하도록 구성된 프로토콜을 사용할 수 있다. 예를 들면, 데이터 마이닝 프로토콜은, 유저편에서 배틀 동작들을 수행하며 경험치들 및 아이템들을 자동적으로 축적하는 치팅 프로그램들과 같은 자동 프로그램들을 검출하기 위한 기술들을 수정할 수 있다. Mehrabi 및 Haghighat (Afshin Mehrabi and AbolfazI Toroghi Haghighat, "Discovering the Rules in a Poker Player's Mind Based on the Association Rule Mining", In Proceedings of the 2009 International Conference on Computer Technology and Development - Volume 02 (ICCTD '09), Vol.2, IEEE Computer Society, Washington, DC, USA, 189-193) 참조. 이들 및 다른 구체예들에서, 마이닝된 특정 데이터는 개개의 컴퓨팅 디바이스들 (116), 복수의 컴퓨팅 디바이스들 (116), 정의된 수 또는 그룹의 컴퓨팅 디바이스들 (116), 또는 모든 컴퓨팅 디바이스들 (116) 에 대해 반복적이며 빈번한 동시 발생 게임 액션들이 되도록 설정될 수 있다. 게임 테스트들에 응답하여 컴퓨팅 디바이스들 (116) 의 그룹 중에서 컨버전트 게임 액션들을 발견하기 위해, 데이터 마이닝은 데이터 마이닝 모듈 (146) 에 의해 대안적으로 또는 부가적으로 수행될 수 있다.
게이밍 시스템 (110) 은 컴퓨팅 디바이스들 (116) 상에서 복수의 플레이어들 (118) 에 의한 실질적 게임 플레이 기간에 걸쳐 QoE의 저하를 방지하도록 구성될 수 있다. 즉, 플레이어들 (118) 이 게임을 계속하도록 QoE는 유지될 수 있다. 게임이 재미를 유지하도록 게임을 변경하고 플레이하는 것을 즐김으로써 QoE는 유지될 수 있다. 실질적 게임 플레이 기간은 간헐적일 수도 있고 연속적일 수도 있다. "간헐적"인 것에 의해, 게임은 휴식들에 의해 분리된 기간들 동안 플레이어 (118) 에 의해 플레이될 수 있다. 그러나, 몇몇 게임들은 "연속적"일 수 있으며 플레이에서 어떠한 중지나 휴식 없이 계속적인 방식으로 플레이될 수 있다. 간헐적 및 연속적 게임 플레이들 양자에서, 게임에서 플레이된 총 시간 또는 실세계에서 경과한 전체 시간은 게임 플레이의 기간에 기초할 수 있다. 게임 플레이의 실질적 기간에 대한 길이는 며칠, 몇 주, 몇 달 또는 심지어 몇 년에 걸쳐 게임을 플레이하는 범위에 이를 수 있다. 실세계 시간의 관점에서의 게임 플레이의 실질적 기간의 실시형태는 3주간의 잠자리에 들기 전의 저녁 시간의 간헐적인 플레이를 포함할 수 있다. 다르게는, 실질적인 기간은 게임에서의 시간의 관점에 있을 수 있는데, 50 시간 또는 100 시간 또는 그 이상의 전체 게임 플레이 시간으로 예시화될 수도 있다.
몇몇 경우들에서, QoE 저하는 게임의 게임 플레이를 변경하는 것에 의해, 예컨데 게임의 응답을 컨버전트 게임 플레이로 변경하는 것에 의해 방지될 수 있다. "게임 플레이"는 게이밍 서버 (126) 에 의해 제공되고 컴퓨팅 디바이스들 (116) 을 통해 플레이어들 (118) 에 의해 수신되는 게임의 게임 플레이 출력을 포함하는 것으로 간주될 수 있고, 및/또는 "게임 플레이"는, 게임 플레이 출력에 응답하여 컴퓨팅 디바이스들 (116) 로 입력되는 게임 플레이 액션들을 포함하는 플레이어들 (118) (즉, 게임 플레이 액션들은 플레이어에 의한 게임 액션들인 것으로 간주될 수 있다) 에 의해 구현되는 게임 플레이 입력뿐만 아니라 게임의 출력과 플레이어들 (118) 에 의한 입력의 상관 및 조합과 출력 및 입력이 게임 내에서 어떻게 상호작용하는지를 포함할 수 있다. 따라서, "게임 플레이"는 컴퓨팅 디바이스들 (116) 로부터 플레이어들 (118) 에 의해 수신되는 게임 플레이 출력으로서 참조될 수 있고, 플레이어들 (118) 로부터 컴퓨팅 디바이스들 (116) 에 의해 수신되는 게임 플레이 입력, 및 게임 플레이 출력과 게임 플레이 입력의 상관과 조합을 포함할 수 있다. 게임 플레이는 게임 액션 패턴에 대한 컨버전스가 검출된 이후 변경될 수 있다. 게임 플레이에서의 변경은, 게임 변경 이후 컨버전스의 대상이었던 게임 액션들이 게임 플레이에서 덜 성공적이 되도록 또는 더 이상 성공하지 않도록 구현될 수 있다. 게임 플레이는, 성공적이었고 컨버전스에 종속되었던 특정 게임 시나리오들 또는 게임 테스트들에 대한 게임 액션 패턴들이, 게임 플레이 액션 패턴들이 활용되었고 이전에 성공했던 상기 특정 게임 시나리오들 또는 게임 테스트들에 대해 더 이상 성공적이지 않거나 또는 유익하지 않도록 변경될 수 있다.
변경된 게임 플레이는, 게임 액션들의 컨버전스에 연루된 플레이어들 (118) 과 게임 플레이의 컨버전스에 연루되지 않은 플레이어들 (118) 사이에서 공정성의 레벨을 유지하는 것과 같은, 게임 플레이 컨버전스와 관련된 여러 가지 이유들로 인해 구현될 수 있다. 예를 들면, 키스트로크들의 조합과 같은 게임 액션 패턴은 게임 테스트를 극복하는데 성공적인 것으로 간주될 수 있고, 키스트로크들의 조합의 지식은 복수의 플레이어들 (118) 을 통해 전파될 수 있다. 게임 액션 패턴의 키스트로크들의 조합을 아는 플레이어들 (118) 은 게임 액션 패턴을 모르는 플레이어들 (118) 에 비해 이점을 가질 수 있다. 이와 같이, 키스트로크들의 특정 조합의 사용에서의 컨버전스 (예를 들면, 게임 액션 패턴에서의 컨버전스) 의 검출, 및 키스트로크들의 특정 조합 또는 게임 액션 패턴이 더 이상 성공적이지 않도록 게임을 변경하는 것은 QoE 저하를 방지할 수 있다.
몇몇 구체예에서, 게임의 QoE는, 컨버전스 분석 모듈 (138) 에 의한 완전 자동 또는 반자동 컨버전스 검출 스킴을 구현하는 것에 의해 유지되거나 또는 향상될 수 있다. 컨버전스 분석 모듈 (138) 은, 컨버전트 게임 플레이를 극복하거나 또는 방지하기 위한 게임에 대한 변경을 결정하도록 구성된 게임 변경 모듈 (142) 과 동작 가능하게 커플링될 수 있다. 즉, 게임 변경 모듈 (142) 은 QoE를 유지하거나 향상시키는 게임에 대한 변경을 생성할 수 있다. 게임변경 모듈 (142) 은 게임 변경을 스케줄링할 수 있는 스케줄 모듈 (140) 과 동작 가능하게 커플링될 수 있다. 완전 자동인 것에 의해, 컨버전스 분석 모듈 (138) 에 의한 게임 플레이 컨버전스의 검출에 응답하여 게임에 대한 변경을 생성하는 게임 변경 모듈 (142) 에 의해 게임은 자동적으로 변경될 수 있다. 반자동인 것에 의해, 사람에 의해 게임 변경을 생성하고 그 후 게이밍 시스템 (110) 을 통해 게임 변경을 구현하는 것과 같이, 게임은 수동으로 변경될 수 있다. 예를 들면, 게임 변경은 게이밍 시스템 (110) 의 외부에서 생성될 수 있고 그 후 게임 변경 모듈 (142) 로 유입될 수 있다.
본원에서 설명된 구체예들은 게이밍 시스템 (110) 과 통신하는 컴퓨팅 디바이스들 (116) 상에서 플레이되는 아주 다양한 게임들에 적용될 수도 있다. 컴퓨팅 디바이스들 (116) 에 게임 테스트들을 제공하고 그 게임 테스트들에 응답하여 컴퓨팅 디바이스들 (116) 로부터 게임 액션들을 수신하는 임의의 게임은 본원에서 설명된 바와 같이 컨버전트 게임 플레이에 대해 분석될 수 있고 변경될 수 있다. 게임은, 게임 테스트들의 게임 데이터 (예를 들면, 게임 플레이 출력 데이터) 및 응답 게임 액션 데이터 (예를 들면, 게임 플레이 입력 데이터) 를 획득하도록 구성될 수 있는 게임들을 포함하는, 임의의 장르 또는 테마의 것일 수 있다. 예를 들면, 키스트로크들, 조이스틱 작동, 버튼 활성화, 또는 이들의 조합, 이들의 패턴들, 또는 게임 테스트에 응답하여 응답 게임 액션을 구현하는 다른 수동 액션들이 컨버전스를 위해 게이밍 시스템 (110) 에 의해 기록되어 분석될 수 있다.
도 2는, 본원에서 설명된 적어도 몇몇의 구체예들에 따른, 컨버전트 게임 플레이를 검출하고 게임을 변경하는 방법 (200) 을 설명하는 흐름도를 포함한다. 상기 방법 (200) 은 다음의 동작들을 포함할 수 있다: "게임 제공" (블록 210); "게임 시나리오 및 게임 테스트 식별" (블록 212); "응답 게임 액션들 획득" (블록 214); "게임 플레이 컨버전스 결정" (블록 216); 및 "게임 변경" (블록 218).
도 1 및 도 2를 함께 참조하면, 상기 방법 (200) 은 복수의 컴퓨팅 디바이스들 (116) 에 게임을 동시에 제공하는 단계를 포함할 수 있다 ("게임 제공" 블록 210). 게임을 제공하고 컴퓨팅 디바이스 (116) 들로부터 게임 액션들을 수신하는 네트워크 (114) 로서 인터넷이 사용될 수 있다.
상기 방법 (200) 은 컴퓨팅 디바이스들 (116) 에 제공된 적어도 하나의 게임 테스트를 포함하는 게임의 적어도 하나의 게임 시나리오 형태를 식별하는 단계를 포함할 수 있다 ("게임 시나리오 및 게임 테스트 식별" 블록 212). 일반적인 게임 테스트들 또는 특정 게임 테스트들에 대해 컨버전트 게임 플레이가 분석될 수 있도록 게이밍 시스템 (110) 이 상이한 게임 테스트들을 로깅 (logging) 하는 것이 유익할 수도 있다.
상기 방법 (200) 은 게임 시나리오들의 게임 테스트들에 응답하여 컴퓨팅 디바이스들 (116) 로부터 게임 액션들을 획득하는 단계를 포함할 수 있다 ("응답 게임 액션들 획득" 블록 214). 이와 같이, 플레이어들 (118) 은, 컴퓨팅 디바이스들 (116) 에 입력된 게임 액션들이 게이밍 시스템 (110) 으로 전송되도록 컴퓨팅 디바이스들 (116) 을 통해 게임과 상호작용할 수 있다.
상기 방법 (200) 은 게임 테스트들을 통과하는 게임 액션들의 컴퓨팅 디바이스들 (116) 전체에서의 컨버전스를 결정하는 단계를 포함할 수 있다 ("게임 플레이 컨버전스 결정" 블록 216). 여기서, 게임 액션들은 복수의 컴퓨팅 디바이스들 (116) 에 의해 반복되며, 게임 테스트들을 극복하는데 성공적일 수 있는 동시 발생 게임 액션들에 대해 분석될 수 있다.
컨버전스가 결정되면, 게임은 변경될 수 있다. 이와 같이, 상기 방법 (200) 은 컨버전스의 게임 액션들이 변경된 게임 테스트들에서 통과하지 못하도록 (실패하도록) 게임 시나리오들의 게임 테스트들을 변경하는 단계를 포함할 수 있다.
당업자라면, 본원에서 개시된 방법들 및 상기 및 다른 프로세스들에 대해, 상기 프로세스들과 방법들에 의해 수행된 기능들이 상이한 순서로 구현될 수도 있음을 알 수 있을 것이다. 또한, 강조된 단계들 및 동작들은 실시형태들로서만 제공되며, 상기 단계들 및 동작들의 몇몇은 임의 선택적일 수도 있으며, 개시된 구체예들의 본질을 손상시키지 않으면서 더 적은 수의 단계들 및 동작들로 결합하거나, 또는 부가적인 단계들 및 동작들로 확대될 수도 있다.
도 3은, 본원에서 설명된 적어도 몇몇의 구체예들에 따른, 컨버전트 게임 플레이를 검출하는 방법 (300) 을 설명하는 흐름도를 포함한다. 상기 방법 (300) 은 다음의 동작들을 포함할 수 있다: "제 1의 로그 데이터 기록" (블록 310); "제 2의 로그 데이터 기록" (블록 312); "제 1의 로그 데이터로부터 게임 액션들 추출" (블록 314); "제 2의 로그 데이터에서 게임 액션들의 발생 빈도 계산" (블록 316); 및 "게임 액션들의 발생 빈도를 임계치와 비교" (블록 318). 본원에서 설명된 모든 방법들과 마찬가지로, 도 3의 방법들 (300) 은 단독으로 또는 본원에서 설명된 임의의 다른 방법과 연계하여 사용될 수 있다.
도 1 및 도 3을 함께 참조하면, 상기 방법 (300) 은 게이밍 시스템 (110) 에 제 1의 로그 데이터를 기록하는 단계를 포함할 수 있는데 ("제 1의 로그 데이터 기록" 블록 310), 여기서 제 1의 로그 데이터는 컴퓨팅 디바이스들 (116) 로부터 수신된 게임 테스트들에 대한 게임 액션들을 포함할 수 있다. 컴퓨팅 시스템 (110) 은 특정 컴퓨팅 디바이스 (116) 와 무관하며, 게임 액션들과 관련된 게임에 대해 정렬된 제 1의 로그 데이터베이스 (132) 에 제 1의 로그 데이터를 기록할 수 있다. 제 1의 로그 데이터는 하기의 표 1에 의해 표현될 수 있는데, 이것은 배틀들을 구비하는 예시적인 게임에 대한 것이다.
상기 방법 (300) 은 제 2의 로그 데이터를 게이밍 시스템 (110) 에 기록하는 단계를 포함할 수 있는데 ("제 2의 로그 데이터 기록" 블록 312), 여기서 상기 제 2의 로그 데이터는 개개의 컴퓨팅 디바이스들 (116) 로부터 게임 테스트들에 대한 게임 액션들을 포함할 수 있다. 즉, 게이밍 시스템 (110) 은 특정 컴퓨팅 디바이스 (116) 에 의존하는 제 2의 로그 데이터베이스 (134) 에 제 2의 로그 데이터를 기록할 수 있다. 제 2의 로그 데이터는 하기의 표 2에 의해 표현될 수 있으며, 이것도 또한 배틀들을 구비하는 예시적인 게임에 대한 것일 수도 있다. 제 2의 로그 데이터는, 컴퓨터 판독 가능한 데이터 스토리지 디바이스들과 마찬가지로, 게이밍 시스템 (110) 이 데이터를 기록하고 저장할 수 있는 임의의 방식에 의해 기록될 수 있다.
상기 방법 (300) 은 제 1의 로그 데이터베이스 (132) 의 제 1의 로그 데이터로부터 높은 동시 발생성을 갖는 하나 이상의 게임 액션들을 추출하는 단계를 포함할 수 있다 ("제 1의 로그 데이터로부터 게임 액션들을 추출" 블록 314). 따라서, 일반 또는 특정 게임 테스트들에 응답하여 또는 일반 또는 특정 게임 시나리오들에 응답하여 또는 게임 동안 빈번하게 반복되거나 발생하는 게임 액션 패턴들에 대한 게임 액션들의 게임 데이터를 마이닝하기 위해 데이터 마이닝 프로토콜들이 사용될 수 있다. 마이닝된 게임 액션들은 동시 발생 게임 액션들, 특히 복수의 컴퓨팅 디바이스들 (116) 에 의해 반복되는 동시 발생 게임 액션들일 수 있다.
상기 방법 (300) 은 제 2의 로그 데이터베이스 (134) 의 제 2의 로그 데이터에서 추출된 게임 액션들의 발생 빈도를 계산하는 단계를 포함할 수 있다 ("제 2의 로그 데이터에서 게임 액션들의 발생 빈도 계산" 블록 316). 이와 같이, 제 2의 로그 데이터베이스 (134) 의 제 2의 로그 데이터에 의해 표현되는 게임 액션들은 제 1의 로그 데이터베이스 (132) 의 제 1의 로그 데이터베이스로부터 추출되었던 어떤 게임 액션들 또는 게임 액션 패턴들의 발생 빈도를 계산하도록 처리될 수 있다.
상기 방법 (300) 은 계산된 발생 빈도를 발생 빈도 임계치와 비교하는 단계를 포함할 수 있다 ("게임 액션들의 발생 빈도를 임계치와 비교" 블록 318). 계산된 발생 빈도가 발생 빈도 임계치 이상이면, 추출된 하나 이상의 게임 액션들의 컨버전스, 따라서, 게임 플레이의 컨버전스가 결정될 수도 있다.
본원에서 설명된 발생 빈도 임계치 또는 다른 임계치는 게임 플레이에 적합한 임의의 적절한 레벨로 설정될 수 있다. 상기 임계치는, 5개의 동시 발생 게임 액션들을 구비하는 동시 발생 게임 액션 패턴들보다 2개의 동시 발생 게임 액션들을 구비하는 동시 발생 게임 액션 패턴들에 대해서 더 높게 설정될 수 있다. 즉, 더 많은 동시 발생 게임 액션들을 구비하는 게임 액션 패턴들이 더 적은 동시 발생 게임 액션들을 구비하는 게임 액션 패턴들보다 더 낮은 임계치를 가질 수 있다. 예를 들면, 3개의 동시 발생 게임 액션들을 구비하는 게임 액션 패턴은 50%의 임계치를 가질 수 있지만 5개의 동시 발생 게임 액션들을 구비하는 게임 액션 패턴은 25%의 임계치를 가질 수 있다. 동시 발생 게임 액션들은 예를 들면 게임 테스트들의 20% 또는 특정 게임 테스트의 20%에 응답하여 제공될 수도 있다. 따라서, 동시 발생 게임의 발생 빈도와 관련된 임계치는 모든 게임 테스트들 또는 특정 게임 테스트에 대해 20%에서 설정될 수도 있지만, 다른 실시형태들은 특정 게임 테스트 또는 게임 테스트들 중 25%, 40%, 50%, 60%, 또는 70%초과분을 포함할 수 있다. 대안으로 또는 부가적으로, 임계치는, 동시 발생 게임 액션 패턴을 구현하는 플레이어들의 백분율, 즉 동일한 동시 발생 게임 액션 패턴을 구현하는 플레이어들 중 10%, 20%, 25%, 40%, 50%, 60%, 또는 70%초과분에 대해 설정될 수 있다.
표 1은 제 1의 로그 데이터베이스 (132) 의 예시적인 데이터 구조를 도시한다 (예를 들면, 로그 1). 플레이어들 (118) 에 구현될 수 있는 "n" 형태들의 게임 액션들이 존재하는 경우, 로그 1은 게임 액션들의 수 ("액션-1" 내지 "액션-n") 를 각각의 배틀 (예를 들면, 배틀-1 내지 배틀-x) 에 대해 0 이상의 정수들로서 저장하는 매트릭스로서 정의될 수 있다. 표 1에서, 시간은 배틀의 시간을 나타내며, 배틀-ID는 배틀에 할당된 고유 식별자를 나타낸다. 액션-1 내지 액션-n의 각각에 할당된 0 이상의 정수들은, 배틀동안 각각의 액션들이 수행된 횟수를 나타낼 수도 있다. 게이밍 시스템 (110) 은 매트릭스로부터 높은 동시 발생 확률을 갖는 게임 액션 패턴들을 추출할 수 있다. 예를 들면, 액션-1 및 액션-2의 동시 발생 확률을 계산하는 경우, 게이밍 시스템은 액션-1 및 액션-2에 대한 값들이 1 이상인 행의 수를 계수할 수 있고, 그 계수된 값을 전체 행의 수로 나누어 동시 발생 확률을 계산하게 된다.
시간 | 배틀-ID | 액션-1 | 액션-2 | … | 액션-n |
시간 1 | 배틀-1 | 1 | 1 | … | 0 |
시간 2 | 배틀-2 | 0 | 2 | … | 1 |
… | … | … | … | … | … |
시간 x | 배틀-x | 1 | 0 | … | 1 |
표 2는 제 2의 로그 데이터베이스 (134) 의 예시적인 데이터 구조를 도시한다 (예를 들면, 로그 2). 로그 2는 각각의 플레이어 (118)(예를 들면, 플레이어-1에서 플레이어-n) 에 대한 배틀 게임 액션 로그들을 기록하는데, 배틀의 최소 참가 단위를 포함할 수도 있다. 게이밍 시스템에 "n" 형태들의 게임 액션들이 존재하면, 플레이어-ID 및 배틀-ID의 조합을 키들 (keys) 로 하여, 로그 2는 각 플레이어에 대한 각 배틀 (예를 들면 "배틀-1 내지 배틀-x") 에 대해 "액션 1 내지 액션 n"의 개수를 0 이상의 정수로서 저장하는 매트릭스로서 정의될 수 있다. 표 2에서, 플레이어-ID는 배틀에 포함된 소정의 플레이어에 할당된 고유 식별자를 나타낼 수도 있고, 배틀-ID는 배틀의 시작에 할당된 고유 식별자를 나타낼 수도 있다. "액션-1 내지 액션-n과 관련된 0 이상의 정수들은 배틀의 시작에서 이들 게임 액션들이 수행된 횟수를 나타낼 수도 있다. 로그 2의 매트릭스부에 저장된 정보는 로그 1의 것과 동일할 수도 있다. 그러나, 로그 1은 특정 시간 범위 또는 특정 배틀을 분석하기 위해 일시적으로 저장될 수도 있지만, 로그 2는 플레이어마다의 분석을 위해 플레이어마다 저장될 수도 있으며, 따라서 분석적 방법들은 로그 1 및 로그 2 사이에서 상이할 수도 있다. 로그가 엘리먼트들에 대한 아주 많은 수의 순서화된 목록들을 포함할 수 있기 때문에, 개별적인 스토리지 디바이스들에, 및/또는 선택적으로는 디스크 용량을 희생하고 중복적으로 로그 1 및 로그 2를 저장함으로써 분석을 더 빨리 수행할 수도 있다.
플레이어-ID | 배틀-ID | 액션-1 | … | 액션-n |
플레이어-1 | 배틀-1 | 1 | 0 | |
… | … | … | … | … |
플레이어-1 | 배틀-x | 3 | 1 | |
… | … | |||
플레이어-m | 배틀-1 | 2 | ||
… | … | … | … | … |
플레이어-m | 배틀-x | 3 | 1 |
도 4는, 본원에서 설명된 적어도 몇몇의 구체예들에 따른, 컨버전트 게임 플레이를 검출하는 방법 (400) 을 설명하는 흐름도를 포함한다. 상기 방법 (400) 은 다음을 포함할 수 있다: "게임 테스트들에 대한 게임 액션들의 제 1의 로그 데이터를 기록" (블록 410); "플레이어들에 대한 게임 액션들의 제 2의 로그 데이터를 기록" (블록 412); "제 1의 로그 데이터의 게임 액션 패턴들의 빈도 계산" (블록 414); "임계치를 초과하는 게임 액션 패턴들을 선택" (블록 416); 및 "제 1의 로그 데이터로부터 선택된 게임 액션 패턴들의 제 2의 로그 데이터에서의 빈도 계산" (블록 418). 상기 방법 (400) 은 본원에서 설명된 임의의 다른 방법들과 조합하여 사용될 수 있다.
도 1 및 도 4를 함께 참조하면, 상기 방법 (400) 은 제 1의 로그 데이터베이스 (132) 에 제 1의 로그 데이터를 기록하는 단계를 포함할 수 있고, 제 1의 로그 데이터는 플레이어들 (118) 로부터의 게임 테스트들에 대한 게임 액션들을 나타낸다 ("게임 테스트들에 대한 게임 액션들의 제 1의 로그 데이터 기록" 블록 410). 게임 액션들은 특정 게임 테스트들 또는 일반적인 게임 테스트들에 응답하여 로깅될 수 있다. 따라서, 제 1의 로그 데이터베이스 (132) 에서의 동시 발생 게임 액션들의 발생 빈도는, 일반적인 게임 테스트들 (예를 들면, 상이한 레벨 보스들) 또는 특정 게임 테스트들 (예를 들면, 특정 레벨 보스) 과 같이, 분석되고 있는 게임 테스트들에 따라 변할 수 있다.
상기 방법 (400) 은 제 2의 로그 데이터베이스 (134) 에 제 2의 로그 데이터를 기록하는 단계를 포함할 수 있고, 제 2의 로그 데이터는 플레이어들 (118) 로부터의 게임 테스트들에 응답하는 게임 액션들을 나타낸다 ("플레이어들에 대한 게임 액션들의 제 2의 로그 데이터를 기록" 블록 412). 제 2의 로그 데이터베이스 (134) 는 게임 테스트들에 응답하여 개개의 플레이어들 (118) 에 의해 구현되는 게임 액션들을 포함할 수 있는데, 여기서 제 2의 로그 데이터베이스 (134) 는 플레이어 (118) 마다의 기준으로 조직화된 게임 액션들에 대한 데이터를 구비할 수 있다.
상기 방법 (400) 은 제 1의 로그 데이터베이스 (132) 의 제 1의 로그 데이터로부터 게임 액션 패턴들의 동시 발생 게임 액션들의 발생 빈도를 계산하는 단계를 포함할 수 있는데, 여기서 동시 발생 게임 액션들의 몇몇 조합들은 게임 액션 패턴들로서 구성될 수 있다 ("제 1의 로그 데이터의 게임 액션 패턴들의 빈도 계산" 블록 414). 발생 빈도는 플레이어들 (118) 에 의해 구현되는 게임 액션 패턴들의 동시 발생 게임 액션들의 발생률 또는 양을 나타내는 임의의 방식으로 계산될 수 있다. 더 빈번하게 사용되는 게임 액션 패턴들의 동시 발생 게임 액션들은 거의 사용되지 않는 게임 액션 패턴들보다 더 높은 발생 빈도를 가질 수 있다.
상기 방법 (400) 은 발생 빈도 임계치를 넘는 빈도로 발생하는 고유의 게임 액션 패턴들로서 존재하는 동시 발생 게임 액션들을 갖는 게임 액션 패턴들을 제 1의 로그 데이터베이스 (132) 에서 선택하는 단계를 포함할 수 있다 ("임계치를 넘는 게임 액션 패턴들 선택" 블록 416). 즉, 복수의 플레이어들 (118) 에 의해 사용되는 고유의 게임 액션 패턴들로서 명명되기에 충분한 빈도로 발생하는 게임 액션 패턴들의 동시 발생 게임 액션들은 게임 플레이의 컨버전스를 결정하기 위해 선택될 수 있다. 선택된 게임 액션 패턴들은 제 1의 로그 데이터베이스 (132) 로부터 추출되는 추출된 게임 액션 패턴들일 수 있다.
상기 방법 (400) 은, 표 1의 로그 1로부터의 게임 액션 패턴들과 같이, 제 1의 로그 데이터베이스 (132) 의 제 1의 로그 데이터로부터 선택된 게임 액션 패턴들의 제 2의 로그 데이터베이스 (134) 의 제 2의 로그 데이터에서의 발생 빈도를 계산하는 단계를 포함할 수 있다 ("제 1의 로그 데이터로부터 선택된 게임 액션 패턴들의 제 2의 로그 데이터에서의 빈도 계산" 블록 418). 이와 같이, 제 1의 로그 데이터베이스 (132) 에서 빈번하게 사용되는 게임 액션 패턴들의 동시 발생 게임 액션들은, 그 게임 액션 패턴들이 컨버전트한지의 여부를 결정하기 위해 제 2의 로그 데이터베이스 (134) 와 비교될 수 있다. 제 1의 로그 데이터베이스 (132) 로부터 추출되고 제 2의 로그 데이터베이스 (134) 에서 빈번하게 사용되는 게임 액션 패턴들은 컨버전트 게임 액션 패턴들인 것으로 간주될 수 있다. 따라서, 제 2의 로그 데이터베이스 (134) 에서 추출된 게임 액션 패턴들이 발생 빈도 임계치를 넘는 발생 빈도를 가지면 컨버전트 게임 액션 패턴들은 결정될 수 있다.
도 5는, 본원에서 설명된 적어도 몇몇의 구체예들에 따라 정렬된, 컨버전트 게임 플레이를 검출하고 게임을 변경하는 방법 (500) 을 설명하는 흐름도를 포함한다. 상기 방법 (500) 은 다음을 포함할 수 있다: "동시 발생 게임 액션들을 구비하는 테스트들의 비율 계산" (블록 510); "비율이 임계치를 넘는가?" (블록 512); 비율이 임계치를 넘을 때 (예를 들면, "Yes"), "컨버전스 결정" (블록 514); 및 "게임 변경" (블록 516); 비율이 임계치 아래일 때 (예를 들면, "No"), "컨버전스 없음, 게임 변경되지 않음" (블록 518). 상기 방법 (500) 은 본원에서 설명된 임의의 다른 방법들과 조합하여 사용될 수 있다.
도 1 및 도 5를 참조하면, 상기 방법 (500) 은 제 1의 로그 데이터베이스 (132) 의 로깅된 게임 테스트들로부터 동시 발생 게임 액션들을 구비하는 추출된 게임 액션 패턴들로 귀결되는 제 2의 로그 데이터베이스 (134) 로부터의 게임 테스트들의 비율을 계산하는 단계를 포함할 수 있다. 동시 발생 게임 액션들을 구비하는 게임 테스트들의 비율은 제 2의 로그 데이터베이스 (134) 의 몇몇 게임 테스트들의 일부 또는 전체에 기초하여 계산될 수 있다. 이와 같이, 동시 발생 게임 액션들을 구비하는 게임 테스트들의 비율은 개개의 플레이어들 (118) 의 액션 로그들에 기초하여 계산될 수 있다. 추출된 게임 액션 패턴들은 제 1의 로그 데이터베이스 (132) 및 제 2의 로그 데이터베이스 (134) 에 걸쳐 동일할 수 있고 그 결과 비율이 높을 때 동시 발생 게임 액션들을 구비하는 추출된 게임 액션 패턴들에 컨버전스가 존재할 수도 있다. 따라서, 게임 액션 패턴들에서 동시 발생 게임 액션들을 구비하는 제 2의 로그 데이터베이스 (134) 의 게임 테스트들의 비율은 컨버전스에 대한 통찰력을 제공할 수 있다. 상대적으로 높은 비율은 게임 액션 패턴들이 플레이어들 (118) 의 집단에 걸쳐 컨버징된 것을 암시할 수도 있다.
제 1의 로그 데이터베이스 (132) 로부터 추출된 동시 발생 게임 액션들을 구비하는 제 2의 로그 데이터베이스 (134) 의 게임 테스트들의 비율이 미리 결정된 비율 임계치를 넘으면 ("비율이 임계치를 넘는가?" 블록 512), 게임 플레이의 컨버전스가 결정될 수 있다 ("컨버전스 결정" 블록 514). 비율 임계치는 QoE의 레벨 및 게임의 필요들에 따라 임의적으로 설정될 수 있다.
상기 방법 (500) 은 컨버전트 게임 패턴들이 결정되는 경우 컨버전트 게임 플레이를 극복하기 위해 게임을 변경하는 단계를 포함할 수 있다 ("게임 변경" 블록 516). 이와 같이, 게임 시나리오 형태의 게임 테스트들이 변경될 수도 있다.
동시 발생 게임 액션들을 구비하는 게임 테스트들의 비율이 미리 결정된 비율 임계치 아래에 있으면, 상기 방법 (300) 은 컨버전스가 존재하지 않는다고 결정할 수 있고, 게임은 변경되지 않는다 ("컨버전스 없음, 게임 변경되지 않음" 블록 518). 비율 임계치는 몇몇 구체예들에서 20%로 설정될 수 있다. 다르게는, 비율 임계치는 25%, 40%, 50%, 60%, 또는 70% 초과로 설정될 수도 있으며, 또는 다른 미리 결정된 비율 임계치로 설정될 수도 있다.
도 6은, 본원에서 설명된 적어도 몇몇의 구체예들에 따라 정렬된, 컨버전트 게임 플레이를 검출하는 방법 (600) 을 설명하는 흐름도를 포함한다. 상기 방법 (600) 은 다음을 포함할 수 있다: "게임 액션들의 형태들의 개수를 결정" (블록 610); "게임 액션들의 평균 개수를 결정" (블록 612); "게임 액션들의 동시 발생성 계산" (블록 614); 및 "게임 액션들의 재발생 빈도 계산" (블록 616). 상기 방법 (600) 은 동시 발생 게임 액션들의 발생 빈도를 계산하기 위해 사용될 수 있고, 게임 플레이에서 컨버전스가 존재하는지의 여부를 결정하는데 유용하고, 본원에서 설명된 임의의 다른 방법들과 함께 또는 단독으로 사용될 수 있다. 이러한 방법 (600) 은 동시 발생 게임 액션들의 발생 빈도를 결정하는데 사용될 수 있는 하나 이상의 식들을 처리할 수 있다. 이러한 발생 빈도의 결정을 위한 여러 프로토콜 및 식들이 있을 수도 있으며, 한 실시형태가 본원에서 제공되지만, 다른 적절한 프로토콜 및 식들이 사용될 수 있다.
보다 상세하게는, 상기 방법 (600) 은 게임 테스트들에 대해 "n" 형태들의 게임 액션들이 존재하는 것을 결정할 수 있다 ("게임 액션들의 형태들의 개수를 결정" 블록 610). "n" 형태들의 게임 액션들의 이러한 결정은 게임 테스트들 및 응답 게임 액션들을 사용하여 데이터 마이닝에 의해 구현될 수 있다.
상기 방법 (600) 은 게임 액션들의 평균 개수를 결정하는 단계를 또한 포함할 수 있고, "r"로 표현될 수 있다 ("게임 액션들의 평균 개수를 결정" 블록 612).
그 후, 상기 방법은 "n" 형태들의 게임 액션들과 게임 액션들의 평균 개수 "r"을 사용하여 하기의 식 1로부터 "nHr"인 동시 발생성을 갖는 복수의 가능한 게임 액션들을 계산하는 단계를 포함할 수 있다 ("게임 액션들의 동시 발생성 계산" 블록 614).
상기 방법 (600) 은 "nHr"로부터 동시 발생 게임 액션들의 조합을 재발생시키는 발생 빈도를 계산하는 단계를 포함할 수 있다 ("게임 액션들의 재발생의 빈도 계산" 블록 616). 재발생하는 동시 발생 게임 액션들의 계산된 빈도는, 그 빈도가 임계치보다 높거나 초과할 때 컨버전트 게임 플레이의 표시 (indication) 를 제공할 수 있다.
도 7은 본원에서 설명된 적어도 몇몇 구체예들에 따라 정렬된, 컨버전트 게임 플레이에 응답하여 게임을 변경하는 방법 (700) 을 설명하는 흐름도를 포함한다. 상기 방법 (700) 은 다음을 포함할 수 있다: "게임에 대한 변경 생성" (블록 710); "게임 변경됨?" (블록 712); 게임이 변경되면 (예를 들면, "Yes"), "게임 변경" (블록 714) 또는 "게임 변경의 구현 스케줄" (블록 716); 또는 게임이 변경되지 않았으면 (예를 들면, "No"), "그 게임에 대한 변경 생성" (블록 710). 이와 같이, 상기 방법 (700) 은 게임이 적절히 변경될 때까지 복수의 반복들을 통해 처리되는 반복 방법일 수 있다. 상기 방법 (700) 은 본원에서 설명된 임의의 다른 방법들과 조합하여 또는 단독으로 사용될 수 있다.
도 1 및 도 7을 참조하면, 상기 방법 (700) 은 하나 이상의 테스트들로의 변경을 생성할 수 있다 ("게임에 대한 변경 생성" 블록 710). 게임 테스트들로의 변경은 게임 테스트들 중 소정의 하나의 파라미터들에 대해 이전에 성공한 게임 액션 패턴들의 유효성에 대한 변경을 포함할 수 있다. 게임에서의 변경은, 변경되고 있는 게임 액션 패턴들에 응답하는 또는 시간에 걸쳐 반복적으로 그리고 빈번하게 사용되고 있는 상기 동일한 게이밍 액션 패턴들에 저항하는 게이밍에 대해 설명될 수도 있다.
또한, 상기 방법 (700) 은, 게임 테스트들에 대한 변경에 의해, 컨버전스의 게임 액션 패턴들이 게임 테스트들을 통과하지 못하는지를 결정하기 위해 게임을 점검하는 단계를 포함할 수 있다 ("게임 변경" 블록 712). 즉, 컨버전트 게임 액션 패턴들에 응답하는 게임은, 이전에 성공한 게임 액션 패턴들이 게임 테스트들을 극복하는데 유용하게 되지 못하게 하도록 구성될 수 있다. 게임이 실제 변경되었는지의 여부를 결정하기 위한 점검 프로세스는, 게임에 대한 변경이 가동 준비되어 컴퓨팅 디바이스들 (116) 로 푸시되기 이전에 수행될 수 있다. 예를 들면, 적의 헬쓰나 활력 (viability) 을 상당히 감소시켰던 동시 발생 게임 액션들의 이전의 키스트로크 조합은, 감소되고 있는 유효성 또는 동시 발생 게임 액션들에 대한 저항성이 적에 의해 증가되는 것에 의해 무효하거나 또는 쓸모없게 될 수도 있다. 예를 들면, 어떤 키스트로크 조합은 상대의 헬쓰 점수를 50포인트 감소시킬 수도 있는데, 그러면 이러한 어떤 키스트로크 조합의 유효성을 감소시켜, 이러한 어떤 키스트로크 조합에 의해, 적 또는 모든 적들의 헬쓰 포인트들이 저하되지 않거나 또는 5 헬쓰 포인트들과 같이 작은 헬쓰 포인트들만이 저하되도록 게임은 변경될 수 있다. 동시 발생 게임 액션들의 유효성이 감소되면, 컨버전트 게임 액션 패턴들의 어떤 키스트로크 조합을 플레이어들 (118) 이 수행하는 것을 억제할 수 있다.
컨버전스를 방해하도록 게임 액션 패턴들의 동시 발생 게임 액션들에 충분히 응답하여 게임이 변경되었음을 게임 변경의 점검이 나타내면, 게임에 대한 변경은 실제 게임에서 구현될 수 있고 컴퓨팅 디바이스들 (116) 로 푸시된다 ("게임 변경" 블록 714). 즉, 게임 변경의 점검이 컨버전트 게임 플레이의 방해를 나타내면, 게임 변경은 실제 구현될 수 있고 복수의 컴퓨팅 디바이스들 (116) 상에서 작동하는 게임에 적용될 수 있다.
한편, 컨버전트 게임 플레이를 극복하거나 또는 방해하도록 게임이 충분히 변경되지 않았음을 게임의 점검이 나타내면, 컨버전트 게임 플레이를 극복하거나 또는 방해하도록 게임을 변경시키는 변경이 발견될 때까지, 반복적인 프로세스가 증분적 변경을 통해 수행될 수 있다.
몇몇 지점에서, 게임은 컨버전스를 극복하기에 충분한 방식으로 변경될 수도 있지만, 게임이 변경되는 방식은 변경될 수 있다. 게임 변경이 생성된 이후 즉시 구현될 수 있지만, 게임 변경의 구현은 다운된 또는 업그레이드된 그리고 너무 오래 또는 통상적으로 너무 많은 수의 플레이어들 (118) 을 갖는 기간 동안 플레이 불가능한 게임으로 나타날 수 있다. 이와 같이, 상기 방법 (700) 은 게임 시나리오 형태의 게임 테스트들에 대한 게임 변경을 구현하기 위해 게임에 대한 업그레이드를 스케줄링하는 단계를 포함할 수 있다 ("게임 변경의 구현 스케줄" 블록 716). 스케줄링은 게임 변경의 구현의 악영향을 최소화하기 위해 타이밍을 최적화하도록 여러 게임 파라미터들을 고려할 수 있다. 따라서, 스케줄링은 QoE를 유지할 수 있다. 고려될 수도 있는 게임 파라미터들의 몇몇 실시형태들은, 피크 사용량 시간들 및 기간들, 사용량이 낮은 시간들 및 기간들, 인구학적 사용량 프로파일들, 송수신된 데이터, 등 또는 이들의 임의의 조합을 포함할 수도 있다. 이들 파라미터들은, 게임 변경 구현의 시간 및 지속 기간의 선택이 게이밍 시스템 (110) 및/또는 플레이어들 (118) 에 대해 최소의 악영향을 가질 수 있도록 사용될 수 있다.
몇몇 구체예들에서, 게이밍 시스템 (110) 에 의해 조장되는 게임은 복수의 컴퓨팅 디바이스들 (116) 상에서 플레이되며 게이밍 네트워크 (112) 를 통해 게이밍 시스템 (110) 에 의해 호스트되는 MMORPG일 수 있다. 게임 시나리오는, 플레이어들 (118) 이 단독으로 또는 다른 플레이어들 (118) 과 상호작용하는 배틀 환경일 수 있는데, 여기서 게임 시나리오는 게임 시나리오 모듈 (122) 에 의해 생성되고 제어될 수 있다. 게임 테스트들은 배틀 내의 적들일 수 있는데, 이 적들은 게임 테스트 모듈 (124) 에 의해 생성되고 제어될 수 있는 통상의 게임에 의해 생성된 적들이다. 게임 액션들은 배틀 게임에서 통상 발견되는 게임 액션들을 포함하는 배틀 게임 액션들일 수 있다.
예시적인 구체예들에서, 게임은 다수 (예를 들면, 수천, 수만, 수십만 내지 수백만) 의 컴퓨팅 디바이스들 (116) 상에서 플레이되며 게이밍 서버 (126) 에 동작 가능하게 커플링된 게이밍 네트워크 (112) 에 의해 호스트되는 MMORPG를 포함할 수 있다. 게임 시나리오들은 배틀을 포함할 수 있고, 게임 테스트들은 배틀 내에 적들을 포함할 수 있다. 게임 액션들은 배틀 시나리오들 및 적 테스트들에 응답하는 배틀 액션들을 포함할 수 있다. 게임 플레이의 컨버전스는, 배틀들 내의 적들을 쳐부수기 위해 복수의 플레이어들 (118) 에 의해 사용되어 온 추출된, 선택된 또는 다르게는 식별된 게임 액션 패턴들에 의해 결정될 수 있다.
몇몇 구체예들에서, 게임은 배틀 게임을 포함할 수 있다. 이와 같이, 제 1의 로그 데이터베이스 (132) 는 복수의 컴퓨팅 디바이스들 (116) 에 대한 게임에서의 배틀들의 배틀 액션들의 제 1의 로그 데이터 (예를 들면, 로그 1) 를 구비할 수 있다. 제 1의 로그 데이터베이스 (132) 에서, 배틀 액션들 (예를 들면, 게임 액션들) 은 개개의 배틀들에 대해 정렬될 수도 있고, 따라서 개개의 시나리오들 또는 개개의 테스트들의 기초하여 정렬될 수도 있다. 제 2의 로그 데이터베이스 (134) 는 개개의 컴퓨팅 디바이스들 (116) 에 대한 배틀 액션들의 제 2의 로그 데이터 (예를 들면, 로그 2) 를 구비할 수 있다. 제 2의 로그 데이터베이스 (134) 에서, 배틀 액션들 (예를 들면, 게임 액션들) 은 개개의 컴퓨팅 디바이스들 (116) 에 대해 정렬될 수도 있다.
도 8은, 본원에서 설명된 적어도 몇몇 구체예들에 따라 정렬된, 컨버전트 게임 플레이에 응답하여 게임을 변경하는 방법 (800) 을 설명하는 흐름도를 포함한다. 상기 방법 (800) 은 다음을 포함한다: "배틀 액션 제 1의 로그 데이터 기록" (블록 810); "플레이어 배틀 액션 제 2의 로그 데이터 기록" (블록 812); "배틀 액션 패턴들 추출" (블록 814); "추출된 배틀들을 구비하는 플레이어 배틀들의 비율 계산" (블록 816); "비율을 임계치와 비교" (블록 818); 및 "게임 변경" (블록 820). 상기 방법 (800) 은 본원에서 설명된 임의의 다른 방법들과 조합하여 사용될 수 있다. 여기서, 게임은 배틀 게임 시나리오를 포함할 수 있다.
도 1 및 도 8을 참조하면, 상기 방법 (800) 은 제 1의 로그 데이터베이스 (132) 에 제 1의 로그 데이터를 기록하는 단계를 포함할 수 있는데, 제 1의 로그 데이터는 플레이어들 (118) 에 대한 게임에서의 배틀들의 배틀 액션들을 나타낸다 ("배틀 액션 제 1의 로그 데이터 기록" 블록 810). 배틀 액션들은, 일반적인 적들 또는 레벨 보스 또는 스페셜 몬스터와 같은, 선택된 형태의 적과 싸울 때 플레이어 (118) 에 의해 구현되는 키스트로크들의 조합을 포함할 수 있다. 게임에서의 배틀의 일부 또는 전체에 대한 배틀 액션들을 기록하는 것이 유용할 수 있지만, 배틀의 대표적인 부분이면 충분할 수 있다.
상기 방법 (800) 은 제 2의 로그 데이터베이스 (134) 에 제 2의 로그 데이터를 기록하는 단계를 또한 포함할 수 있는데, 제 2의 로그 데이터는 개개의 플레이어들에 대한 게임에서의 배틀들의 배틀 액션을 나타낸다 ("플레이어 배틀 액션 제 2의 로그 데이터 기록" 블록 812). 제 2의 로그 데이터베이스 (134) 는 플레이어 (118) 마다에 기초하여 정렬된 데이터를 포함할 수 있다. 여기서, 제 2의 로그 데이터베이스 (134) 는 플레이어들 (118) 또는 각각의 플레이어 (118) 에 대한 배틀 액션들을 포함할 수 있는데, 이들은 배틀 액션들이 구현되는 배틀 또는 적에 링크되거나 링크되지 않을 수도 있다.
게이밍 방법 (800) 은 제 1의 로그 데이터베이스 (132) 로부터 동시 발생 확률 임계치를 넘는 동시 발생 확률을 갖는 게임 액션들을 갖는 배틀 액션 패턴들을 추출하는 단계를 포함할 수 있다 ("배틀 액션 패턴들 추출" 블록 814). 동시 발생 확률은 제 1의 로그 데이터베이스 (132) 에서의 배틀 액션 패턴들에서의 게임 액션들의 동시 발생에 기초할 수 있다.
상기 방법 (800) 은 제 1의 로그 데이터베이스 (132) 로부터 추출된 배틀들을 갖는 제 2의 로그 데이터베이스 (134) 에서의 배틀들의 비율을 계산하는 단계를 포함할 수 있다 ("추출된 배틀들을 갖는 비율 계산" 블록 816). 추출된 배틀 액션 패턴들을 갖는 배틀들의 계산된 비율은, 그 비율이 하이 레벨에 있거나 또는 그 비율이 시간 경과에 따라 증가하는 경우 컨버전트 게임 액션 패턴들의 표시 (indication) 를 제공할 수 있다.
상기 비율은 다시 비율 임계치와 비교될 수 있다 ("비율을 임계치와 비교" 블록 818). 임계치는 임의적일 수도 있고 상기 상술된 바와 같이 요구에 따라 설정될 수도 있다.
게이밍 방법 (800) 은, 상기 비율이 비율 임계치를 초과할 때 배틀들 (예를 들면, 게임 시나리오들) 또는 적들 (예를 들면, 게임 테스트들) 을 변경함으로써 게임을 변경하는 단계를 포함할 수 있다 ("게임 변경" 블록 820). 그러나, 몇몇 구체예들에서, 비율이 임계치 미만일 때 게임은 변경되지 않을 수도 있다.
컨버전트 게임 플레이를 극복하거나 또는 방해하도록 게임을 변경하는 프로토콜은 임의의 MMORPG 또는 다른 온라인 게임에 적용될 수 있다. 게임은, 임의의 챌린지, 퀘스트, 태스크, 퍼즐, 배틀, 적, 레벨 보스, 몬스터 등의 범위에 이르는 MMORPG에서 발견될 수 있는 게임 테스트들 및 게임 시나리오들을 구비할 수 있다. 예를 들면, 게임 시나리오들 및 게임 테스트들은, 월드 오브 워크래프트 게임들, 파이널 판타지 게임들, 세컨드 라이프 게임들 등과 같은, MMORPGs 또는 다른 온라인 게임들에서 발견되는 것들과 유사할 수 있다.
MMORPGs가 인기가 있고 성공적인 이유 중 한 예는 게임의 몬스터들과의 배틀에서 승리함으로써 얻어질 수 있는 욕구충족이다. 이와 같이, 욕구충족은 몬스터 형태의 게임 테스트를 극복하거나 또는 통과함으로써 또는 배틀에서 승리하거나 또는 배틀 스테이지를 극복하는 것에 의해 게임 시나리오를 통과함으로써 얻어질 수 있다. 몬스터가 있는 배틀들에서, 플레이어들은 게임에서 "어택" 또는 "마법"과 같은 게임 액션으로 구현되는 키스트로크들 또는 커맨드들을 입력할 수 있는데, 여기서 게임 액션들은 실시간 또는 각각의 차례 또는 규칙적인 간격들에서의 몬스터를 제압하기 위한 것일 수 있다. 성공적인 게임 액션 패턴들은 복제되어 플레이어들 (118) 사이에서 전달될 수 있다.
몇몇 구체예들에서, 플레이어 (118) 는, 복잡하고 빠른 입력 (예를 들면, 복잡하고 빠른 입력들이 액션 게임들에서 종종 요구된다) 을 필요로 하지 않는 동작을 선택하는 간단한 커맨드를 물리적인 입력이 포함할 수도 있도록, MMORPGs에서 게임 액션들 또는 다른 게임 액션들을 구현하기 위한 키보드 및 마우스를 구비하는 컴퓨팅 디바이스 (116) 를 사용할 수도 있다. 간단한 게임 액션 구현은 젊은 층에서 노인층에 이르기까지 그리고 남녀에 걸친 아주 다양한 플레이어들 사이에서 인기가 있는 게임들의 장르를 제공할 수 있다. 그러나, 게임 플레이 컨버전스를 검출하고 게임을 변경하는 특징들은, 예컨데 임의의 1인용 배틀 게임들과 같이 복잡하고 시간이 걸리는 입력들을 갖는 액션 게임들에 적용될 수 있다.
MMORPG의 장시간 동작에서의 한 장애물은, 성공적인 특정 게임 액션 패턴들을 반복적으로 그리고 빈번하게 갖는 게임 액션들을 구현하는 복수의 플레이어들에 의한 컨버전트 게임 플레이로 인해 그 게임이 지겨워진 플레이어들 (118) 을 포함할 수도 있다. 예를 들면, 플레이어 (118) 가 마법 트릭들의 조합 또는 적들에 대한 공격으로서 아주 유효한 다른 게임 액션들을 발견하면, 그 플레이어 (118) 는 게임 액션들의 상기 조합을 자주 반복적으로 사용하여 게임을 플레이할 수도 있고 그 결과 동일한 패턴의 게임 액션들이 어떤 게임 액션들에 관한 높은 동시 발생성을 가지고 빈번하게 구현된다. 동시 발생 게임 액션들의 반복은, 컨버전트 게임 플레이에 의해 야기되는 게임 플레이의 반복적 성질로 인해 플레이어 (118) 는 결국 게임을 지겨워하게 될 수 있다. 게임 액션 패턴들은, 복수의 플레이어들 (118) 이 동일한 게임 액션 패턴들을 구현할 때 컨버전트하게 된다.
또한, MMORPGs의 장시간 동작에서의 한 장애물은 성공적인 게임 액션 패턴들의 정보의 교환을 포함할 수도 있다. 부분적으로, 정보 교환은, 플레이어 (118) 들이 서로 정보를 교환하는 것을 가능하게 하는 온라인에 이미 연결된 플레이어들 (118) 에 의해 조장된다. 이와 같이, 게임 액션들의 편리한 "승리 패턴들"은 플레이어들 (118) 을 통해 또는 플레이어들 (118) 의 부차집단 (subpopulation) 을 통해 급속히 확산될 수 있다.
몇몇 구체예들에서, 게임 액션들의 "승리 패턴들"이 계속 변경되어 플레이어들 (118) 이 게임 액션들의 새로운 "승리 패턴들"을 채택하고 학습하거나 개발하게 하도록, 게임은 변경되도록 구성될 수 있다. "승리 패턴들"은, 게임 액션 패턴들이 컨버전트하게 될 때 게임 액션 패턴들이 무효하게 되도록 변경될 수 있다. 그 후 게임 액션들의 새로운 "승리 패턴들"이 플레이어들 (118) 에 의해 생성될 수 있다. 게임 액션들의 새로운 "승리 패턴들"은, 플레이어 (118) 가 다른 플레이어들 (118) 에게 그것을 말할 수 있을 때 MMORPGs의 플레이어들에게 즐거움을 줄 수 있다. 따라서, 게임을 변경하는 것은, 게임이 변경된 후 이전의 "승리 패턴"이 더 이상 작동하지 않게 된 이후 게임 액션들의 새로운 "승리 패턴"을 주기적으로 생성할 수 있는 플레이어 (118) 에 의해 플레이어들 (118) 에 주기적으로 즐거움을 주는 이점을 제공할 수 있다. 따라서, 게임 액션들의 과도한 "승리 패턴들"을 극복하거나 방해하기 위해 게임 액션들에 응답하여 새로운 게임 테스트들 (예를 들면, 몬스터들) 의 출현을 적절히 조정하는 게임 플레이 조정 동작들 (예를 들면, 게이밍 시스템 및 게임 업데이트들) 을 수행하는 것이 유익할 수 있다. 따라서, 게임 플레이 조정 동작들은 게임을 변경할 수 있다.
도 9는, 본원에서 설명된 적어도 몇몇 구체예들에 따라 정렬된, 컨버전트 게임 플레이를 검출하기 위한 데이터 분석 프로토콜 및 게임의 그래픽 유저 인터페이스의 개략적인 표현을 포함한다. 도 9는: 그래픽 유저 인터페이스 (900); 게임 이미지 (910); 게임 통계 (912); 배틀 액션들 (914); 플레이어 액션들 (916); 플레이어 아바타들 (918a, 918b, 918c, 918d); 로그 1; 로그 2; "패턴-1" 내지 "패턴-n"; "플레이어1의 액션 로그" 내지 "플레이어m의 액션 로그"를 포함한다. 도 1 및 도 9를 함께 참조하면, 개략적인 표현은 게임 플레이의 게임 이미지 (910) 를 도시하는 GUI (900) 를 포함하며, 예를 들면, 이것은 플레이어들 (118) 중 특정한 플레이어에 대해 일반적으로 또는 특정하게 구성될 수도 있다. GUI (900) 는 게임, 게임 시나리오, 게임 테스트들, 우호적 게임 플레이어들, 및 적대적 게임 플레이어들, 또는 다른 게임의 양태들에 관한 여러 형태들의 정보를 포함할 수 있다. GUI (900) 는 게임 통계 (912), 적들의 배틀 액션들 (914), 현재 플레이어들 (118) 의 플레이어 액션들 (916) 을 포함할 수 있고, 플레이어 아바타들 (918a, 918b, 918c, 918d) 을 가상 캐릭터들로서 나타낼 수도 있다. 게임 테스트들은 배틀 게임 시나리오들에서 플레이어 아바타들 (918a, 918b, 918c, 918d) 과 싸우는 몬스터들로서 도시될 수 있다. 게임 통계 (912), 배틀 액션들 (914) 및 플레이어 액션들 (916) 은 게임 데이터의 예시들이다. GUI (900) 상에 도시된 게임 데이터 또는 다른 게임 데이터는 처리되어 컨버전트 게임 플레이를 결정할 수 있다.
게임 데이터는, 게임에서의 배틀들의 몇몇, 일부, 또는 모두에 대해 기록될 수 있고, 예를 들면, 두 형태들의 로그들: 게임에서의 배틀들의 몇몇, 일부, 또는 모두의 게임 액션 로그들을 포함하는 로그 1 (예를 들면 제 1의 로그 데이터베이스 (132)); 및 모든 개개의 플레이어들 (118) 의 몇몇, 일부 또는 모두에 대한 배틀들에 응답한 게임 액션 로그들을 포함하는 로그 2 (예를 들면, 제 2의 로그 데이터베이스 (134)) 에 저장될 수도 있다. 로그 1은 배틀들에 대한 게임 액션들 포함할 수도 있는데 (예를 들면, 표 1 참조), 여기서 게임에서의 배틀들의 게임 액션 로그들은 분석될 수 있다. 로그 1의 분석은 높은 게임 액션 동시 발생 확률들을 갖는 게임 액션 패턴들의 추출을 포함할 수 있다. 예를 들면, "패턴 1"은 다음의 게임 액션 패턴을 포함할 수 있다: (마법 공격의 파워를 강화시키기 위한 보조 마법) + (파이어 기반의 전체 공격 마법); "패턴 2"는 다음의 게임 액션 패턴을 포함할 수 있다: (민첩과 절충한 직접 공격) + (민첩성을 강화하기 위한 보조 마법) + (적의 회피 능력을 감소시키기 위한 보조 마법); … "패턴 n", 이것은 다음의 게임 액션 패턴을 포함할 수 있다: (액션 1) + (액션 2) + …(액션 x). 게임 액션 패턴들 ("패턴 1" 내지 "패턴 n") 은 컨버전트 게임 플레이 분석을 위해 저장되어 처리될 수 있다. 게이밍 시스템 (110) 은 플레이어들: 플레이어1, 플레이어2, 플레이어3…플레이어m의 게임 액션 로그들을 기록할 수 있고, 게임 액션 로그들을 "패턴 1" 내지 "패턴 n"의 패턴들과 비교할 수 있다. 상기 비교는 도시된 바와 같이 배틀 액션 패턴들의 각각을 개개의 플레이어들 (118) 의 액션 로그들과 교차 상관시키도록 수행될 수 있다.
로그 2에 대해서, 개개의 플레이어들 (118) 의 배틀들의 게임 액션 로그들이 분석될 수 있다. 로그 2는 플레이어 (118) 마다에 기초한 배틀들에 응답하여 게임 액션들을 도시하도록 정렬된 플레이어들 (118) 의 액션 로그 (예를 들면, 플레이어1 내지 플레이어m의 액션 로그들) 를 포함할 수도 있다 (예를 들면, 표 2 참조). 로그 2의 분석은 추출된 게임 액션 패턴들을 포함하는 배틀들의 비율을 계산하는 것을 포함할 수 있다. 반복된 게임 액션 패턴들에서 동시 발생 게임 액션들을 포함하는 배틀들의 비율이 임계치를 초과하면 (예를 들면, 60%), 게임 플레이 컨버전스가 발생했음이 결정될 수도 있고, 게임 변경을 위한 프로세스가 수행될 수 있다. 따라서, 빈번하게 또는 반복적으로 사용된 것으로 식별된 게임 플레이 패턴들 각각은, 게임 액션 패턴이 복수의 또는 정의된 부차집단의 플레이어들 (118) 에 걸쳐 사용되는지를 조사하기 위해 플레이어들 (118) 의 게임 액션들의 몇몇, 일부 또는 모두에 비교될 수 있다. 게임 액션 패턴들이 플레이어들 (118) 의 부차집단에 걸쳐 사용되면, 반복되는 동일한 게임 액션 패턴들을 구비하는 컨버전트 게임 플레이가 있을 수도 있다.
몇몇 구체예들에서, 게이밍 시스템 (110) 은 제 1의 로그 데이터베이스 (132) 로부터 높은 동시 발생 확률들을 갖는 게임 액션 패턴들을 추출할 수 있다. 게이밍 시스템 (110) 은, 게임 시스템에 "n" 형태들의 게임 액션들이 있다고 가정하고, 그리고 게임 시나리오 또는 게임 테스트 동안 게임 액션들의 평균 개수가 "r"이라고 가정함으로써 추출된 게임 액션 패턴들을 처리할 수 있다. 배틀 액션의 가능한 동시 발생 패턴들의 개수는 "nHr"로서 표현될 수 있는데, 이것은 "n" 형태들의 액션으로부터 "r" 액션들의 반복된 조합을, 반복을 허용하여, 나타낸다. "nHr"은 다음의 식 1에 따라 계산될 수 있다:
게이밍 시스템 (110) 은 제 1의 로그 데이터베이스 (132) 로부터 게임 액션 패턴들 또는 동시 발생 게임 액션들의 일부 또는 모든 조합들의 발생 빈도들을 계산할 수 있고, 높은 게임 액션 동시 발생 확률들을 갖는 게임 액션 패턴들로서 미리 결정된 임계치 (예를 들면, 20%) 를 초과하는 발생 빈도들을 갖는 어떤 동시 발생 게임 액션들 또는 게임 액션 패터들을 선택할 수 있다.
일 구체예에서, 게임의 게임 플레이 액션들에서 컨버전스를 결정하기 위한 방법은: 복수의 컴퓨팅 디바이스들에 게임을 동시에 제공하는 단계; 상기 컴퓨팅 디바이스들에 제공된 하나 이상의 게임 테스트들을 포함하는 게임의 게임 시나리오 형태들을 식별하는 단계; 상기 게임 시나리오 형태의 하나 이상의 게임 테스트들에 응답하여 상기 컴퓨팅 디바이스들로부터 하나 이상의 게임 액션들을 획득하는 단계; 및 상기 하나 이상의 게임 테스트들을 통과하는 상기 하나 이상의 게임 액션들의 상기 컴퓨팅 디바이스들 전체에서의 컨버전스를 결정하는 단계를 포함할 수 있다. 게임 플레이 액션들에서 컨버전스의 결정은 게임이 게임 변경에 대해 스케줄링되도록 트리거할 수 있다.
게임 플레이 액션들에서 컨버전스를 결정하기 위한 방법은 또한: 상기 컴퓨팅 디바이스들로부터 수신된 상기 하나 이상의 게임 테스트들에 대한 상기 하나 이상의 게임 액션들의 제 1의 로그 데이터를 기록하는 단계로서, 상기 제 1의 로그 데이터는 상기 컴퓨팅 디바이스들의 특정 컴퓨팅 디바이스에 무관한, 상기 제 1의 로그 데이터를 기록하는 단계; 상기 컴퓨팅 디바이스들로부터 상기 하나 이상의 게임 테스트들에 대한 상기 하나 이상의 게임 액션들의 제 2의 로그 데이터를 기록하는 단계로서, 상기 제 2의 로그 데이터는 특정 컴퓨팅 디바이스에 의존할 수 있는, 상기 제 2의 로그 데이터를 기록하는 단계; 상기 제 1의 로그 데이터로부터 높은 동시 발생성을 갖는 하나 이상의 게임 액션들을 추출하는 단계; 상기 제 2의 로그 데이터에서 상기 추출된 하나 이상의 동시 발생 게임 액션들의 발생 빈도를 계산하는 단계; 및 상기 계산된 발생 빈도를 발생 빈도 임계치과 비교하는 단계를 포함할 수 있고, 상기 계산된 발생 빈도가 상기 발생 빈도 임계치 이하이면, 상기 추출된 하나 이상의 게임 액션들의 컨버전스가 존재할 수도 있다.
일 구체예에서, 게임 플레이 액션들에서 컨버전스를 검출하기 위한 방법은: 상기 복수의 컴퓨팅 디바이스들로부터 하나 이상의 특정 게임 테스트들에 대한 게임 액션들을 포함하도록 제 1의 로그를 기록하는 단계; 상기 하나 이상의 특정 게임 테스트들에 응답하여 특정 컴퓨팅 디바이스들로부터 게임 테스트들에 대한 게임 액션들을 포함하도록 상기 제 2의 로그를 기록하는 단계; 상기 제 1의 로그로부터 동시 발생 게임 액션들의 조합들의 발생 빈도를 계산하는 단계; 발생 빈도 임계치를 초과하는 반복된 게임 액션 패턴들에서 동시 발생 게임 액션들을 갖는 하나 이상의 게임 액션들을 선택하는 단계로서, 이들 선택된 하나 이상의 게임 액션들은 상기 제 1의 로그로부터의 상기 추출된 하나 이상의 게임 액션들인, 상기 하나 이상의 게임 액션들을 선택하는 단계; 및 상기 제 1의 로그로부터 상기 추출된 하나 이상의 게임 액션들의 상기 제 2의 로그에서의 발생 빈도를 계산하는 단계를 포함할 수 있다.
일 구체예에서, 게임 플레이에서 컨버전스를 검출하기 위한 방법은, 상기 제 2의 로그의 각 컴퓨팅 시스템의 상기 하나 이상의 게임 테스트들에 대한, 상기 제 1의 로그로부터의 상기 추출된 하나 이상의 게임 액션들을 포함하는 상기 제 2의 로그에서의 상기 하나 이상의 게임 테스트들의 비율을 계산하는 단계를 포함할 수 있다. 상기 비율이 미리 결정된 비율 임계치를 초과하면, 컨버전스가 결정된다. 한편, 상기 비율이 미리 결정된 임계치 아래이면, 컨버전스는 검출되지 않는다.
게임 액션들의 컨버전스가 검출된 후, 게이밍 시스템은, 게임 업데이트를 제공하는 것과 같은, 게임을 변경하기 위한 프로토콜을 구현하여, 컨버전스가 극복되거나 방지될 수 있다. 즉, 컨버전트 게임 액션들이 게임에서 덜 유용하게 되거나 또는 쓸모 없게 되는 식으로 게임이 변경될 수 있다. 따라서, 컨버전스에 내포된 게임 액션들은 사용하기에 덜 매력적으로 되어, 동일한 게임 액션들이 사용되지 않을 수도 있다.
일 구체예에서, 게임을 변경하는 것은 게이밍 시스템 또는 게임에서 구현될 수 있는 게임 변경 또는 게임 업데이트를 생성하는 것을 포함한다. 컨버전트 게임 액션 패턴들은 이들이 덜 유효하거나 무효하게 되도록 컴퓨팅 시스템 또는 게임에 수정될 수 있다. 한편, 어떤 게임 시나리오들 또는 게임 테스트들은, 컨버전트 게임 액션들이 어떤 게임 시나리오들 또는 게임 테스트들에 대해 더 이상 유효하지 않도록 게이밍 시스템 또는 게임에 의해 수정될 수 있다.
일 구체예에서, 게임을 변경하는 것은 게임 변경을 획득하고 그후 컨버전스를 극복하거나 또는 방지하는 식으로 게임을 변경하는지를 조사하기 위해 게임에 대해 그것을 게이밍 시스템에서 테스트하는 것을 포함할 수 있다. 즉, 게임 변경은, 게임 변경이 일반적인 플레이어들 집단에 푸시되기 이전에 컨버전스가 극복되거나 방지되는지를 보증하기 위해 시뮬레이션 또는 플레이어들의 테스트 집단을 통해 처리될 수 있다. 이와 같이, 게임을 변경하기 위한 프로토콜은 하나 이상의 게임 시나리오들 또는 게임 테스트들로의 변경에 의해 컨버전스의 하나 이상의 액션들이 하나 이상의 게임 시나리오들 또는 게임 테스트들을 통과하지 못하는지를 점검하는 것을 포함할 수 있다.
본 개시는 여러 양태들을 설명하는 것으로 의도된 본 출원에서 설명된 특정 구체예들에 제한되지 않는다. 많은 수정예들 및 변형예들이 본 개시의 취지와 범위를 벗어나지 않으면서 이루어질 수 있으며, 당업자에게는 명백할 것이다. 본 개시의 범위 내에 있는 기능적으로 등가의 방법들 및 장치들은, 본원에서 열거된 것들에 부가하여, 상기 설명들로부터 당업자에게는 명백할 것이다. 이러한 수정예와 변형예들은 첨부된 특허청구범위의 범위 내에 있는 것으로 의도된다. 본 개시는 첨부된 특허청구범위와, 이러한 특허청구범위와 등가의 모든 범위에 의해서만 제한될 것이다. 본 개시는 특정 방법들 또는 컴퓨팅 시스템들로 제한되지 않으며, 당연히 변경될 수 있음이 이해되어야만 한다. 또한, 본원에서 사용된 전문 용어는 특정 구체예를 설명하려는 목적이며, 제한하려는 의도는 아님을 이해해야 할 것이다.
일 구체예에서, 본 발명은 컴퓨팅 시스템 상에서 수행되는 양태들을 포함할 수 있다. 이와 같이, 컴퓨팅 시스템은 상기 방법을 수행하기 위한 컴퓨터 실행 가능한 명령들을 구비하는 메모리 디바이스를 포함할 수 있다. 컴퓨터 실행 가능한 명령들은 특허청구범위 중 임의의 청구항의 임의의 방법들을 수행하기 위한 하나 이상의 알고리즘을 포함하는 컴퓨터 프로그램 제품의 일부일 수 있다.
일 구체예에서, 본원에서 설명된 임의의 동작들, 프로세스들, 방법들, 또는 단계들은 컴퓨터 판독 가능한 매체 상에 저장된 컴퓨터 판독 가능한 명령들로서 구현될 수 있다. 컴퓨터 판독 가능한 명령들은, 데스크탑 컴퓨팅 시스템들, 휴대형 컴퓨팅 시스템들, 태블릿 컴퓨팅 시스템들, 핸들헬드형 컴퓨팅 시스템뿐만 아니라 네트워크 엘리먼트들, 및/또는 임의의 다른 컴퓨팅 디바이스들에 이르는 광범위한 컴퓨팅 시스템들의 프로세서에 의해 실행될 수 있다.
시스템의 하드웨어 및 소프트웨어 구현들 사이에 거의 차이가 존재하지 않는다: 하드웨어 또는 소프트웨어의 사용은 일반적으로 (그러나 항상은 아니다) 비용 대 효율의 절충관계를 나타내는 설계 선택이다 (어떤 의미에서 하드웨어와 소프트웨어 사이의 선택은 중요할 수 있다). 본원에서 설명된 프로세스들 및/또는 시스템들 및/또는 다른 기술들을 유효하게 하는 여러 수단들 (예를 들면, 하드웨어, 소프트웨어, 및/또는 펌웨어) 이 존재하며, 프로세스들 및/또는 시스템들 및/또는 다른 기술들이 채용되는 상황에 따라 선호되는 수단들은 변할 것이다. 예를 들면, 속도 및 정확도가 최고라고 결정되면, 주로 하드웨어 및/또는 펌웨어 수단을 선택할 수 있고, 유연성이 최고이면, 소프트웨어 구현을 선택할 수도 있거나: 또는, 대안으로, 하드웨어, 소프트웨어, 및/또는 펌웨어의 몇몇 조합을 선택할 수도 있다.
상기 설명이 블록 다이어그램들, 흐름도들, 및/또는 실시형태들 통해 프로세스들의 여러 구체예들을 설명하였다. 이러한 블록 다이어그램들, 흐름도들, 및/또는 실시형태들이 하나 이상의 기능들 및/또는 동작들을 포함하는 한, 이러한 블록 다이어그램들, 흐름도들, 또는 실시형태들 내의 각각의 기능 및/또는 동작은, 광범위한 하드웨어, 소프트웨어, 펌웨어, 또는 이들의 실질적인 임의의 조합에 의해, 개별적으로 및/또는 집합적으로 구현될 수 있다. 일 구체예에서, 본원에서 설명된 본질의 몇몇 부분들은 ASICs (Application Specific Integrated Circuits), FPGAs (Field Programmable Gate Arrays), DSPs (digital signal processors), 또는 다른 집적 포맷들을 통해 구현될 수도 있다. 그러나, 당업자라면 본원에서 설명된 구체예들의 몇몇 양태들이, 전체적으로 또는 부분적으로, 집적 회로들에서, 하나 이상의 컴퓨터들 상에서 작동되는 하나 이상의 컴퓨터 프로그램들 (예를 들면, 하나 이상의 컴퓨터 시스템들 상에서 작동하는 하나 이상의 프로그램들) 로서, 하나 이상의 프로세스들 상에서 작동되는 하나 이상의 프로그램들 (예를 들면, 하나 이상의 마이크로프로세서들 상에서 작동되는 하나 이상의 프로그램들) 로서, 펌웨어로서, 또는 실질적으로 이들의 임의의 조합으로서, 등가적으로 구현될 수 있으며, 소프트웨어 및/또는 펌웨어에 대한 코드를 기록하고/하거나 회로부를 설계하는 것은 본 개시의 견지에서 당업자의 스킬 내에 있을 것임을 알 수 있을 것이다. 또한, 본원에서 설명된 본질의 메커니즘들이 다양한 형태들의 프로그램 제품으로서 배포될 수 있으며, 본원에서 설명된 본질의 예시적인 구체예들은 상기 배포를 실제 실행하기 위해 사용되는 신호 포함 매체(signal bearing medium)의 특정 형태에 관계없이 적용됨을 알 수 있을 것이다. 신호 포함 매체의 실시형태들은 다음을 포함하지만 이들에 제한되는 것은 아니다: 플로피 디스크, 하드 디스크 드라이브, CD, DVD, 디지털 테이프, 컴퓨터 메모리, 등과 같은 기록 가능형 매체 및 디지털 및/또는 아날로그 통신 매체 (예를 들면, 광섬유 케이블, 도파관, 유선 통신 링크, 무선 통신 링크 등) 와 같은 전송형 매체.
당업자라면, 본원에서 설명된 형태로 디바이스들 및/또는 프로세스들을 설명하고, 그 후 이렇게 설명된 디바이스들 및/또는 프로세스들을 데이터 프로세싱 시스템들에 통합시키도록 엔지니어링 실무를 사용하는 것이 종래 기술에서 일반적임을 알 수 있을 것이다. 즉, 본원에서 설명된 디바이스들 및/또는 프로세스들의 적어도 일부는 적절한 분량의 실험을 통해 데이터 프로세싱 시스템에 통합될 수 있다. 당업자라면, 통상의 데이터 프로세싱 시스템이 하나 이상의 시스템 유닛 하우징, 비디오 디스플레이 디바이스, 휘발성 및 불휘발성 메모리와 같은 메모리, 마이크로프로세서들 및 디지털 신호 프로세서들과 같은 프로세서들, 운영 시스템들, 드라이버들, 그래픽 유저 인터페이스들, 및 어플리케이션 프로그램들과 같은 계산 엔티티들, 터치 패드 또는 스크린과 같은 하나 이상의 상호작용 디바이스들, 및/또는 피드백 루프들 및 제어 모터들 (예를 들면, 포지션 및/또는 속도를 검출하기 위한 피드백 컴포넌트들 및/또는 분량을 이동시키고/시키거나 조정하기 위한 제어 모터들) 을 일반적으로 포함함을 알 수 있을 것이다. 통상의 데이터 프로세싱 시스템은, 데이터 컴퓨팅/통신 및/또는 네트워크 컴퓨팅/통신 시스템들에서 일반적으로 발견되는 것들과 같은 임의의 적절한 상업적으로 이용 가능한 컴포넌트들을 활용하여 구현될 수도 있다.
본원에서 설명된 본질은 가끔 상이한 다른 컴포넌트들 내에 포함된, 또는 상이한 다른 컴포넌트들과 연결된 상이한 컴포넌트들을 설명한다. 이와 같이 묘사된 아키텍쳐들은 단순히 예증적인 것이며, 동일한 기능을 달성하는 많은 다른 아키텍쳐들이 구현될 수 있음을 이해해야 할 것이다. 개념적인 면에서, 동일한 기능을 달성하는 컴포넌트들의 임의의 배치는, 소망의 기능이 달성되도록 유효하게 "관련"된다. 그러므로, 특정 기능을 달성하기 위해 본원에서 결합된 임의의 두 컴포넌트들은, 아키텍쳐들 또는 중간 컴포넌트들에 관계없이, 소망의 기능을 달성하도록 서로 "관련된" 것으로 보여질 수 있다. 마찬가지로, 이렇게 관련된 임의의 두 컴포넌트들은 소망의 기능을 달성하도록 서로 "동작 가능하게 연결된" 것으로, 또는 "동작 가능하게 커플링된" 것으로도 보여질 수 있으며, 이렇게 결합될 수 있는 임의의 두 컴포넌트들은 소망의 기능을 달성하도록 서로 "동작 가능하게 커플링될 수 있는" 것으로도 보여질 수 있다. 동작 가능하게 커플링될 수 있는 것의 구체적인 실시형태는, 물리적으로 결합될 수 있고/있는 물리적으로 상호작용하는 컴포넌트들 및/또는 무선으로 연결 가능하고/하거나 무선으로 상호작용하는 컴포넌트들 및/또는 논리적으로 상호작용하고/하거나 논리적으로 상호작용 가능한 컴포넌트들을 포함하지만, 이들에 제한되는 것은 아니다.
도 10은, 본원에서 설명된 적어도 몇몇의 구체예에 따라 정렬된, 컨버전트 게임 플레이 검출 및 게임 변경을 구현하도록 사용될 수도 있는 예시적인 컴퓨팅 디바이스 (1000) 의 개략적인 표현을 포함한다. 컴퓨팅 디바이스는 컴퓨팅 디바이스, 컴퓨팅 시스템, 게이밍 시스템, 게이밍 시스템 모듈, 게이밍 디바이스, 게이밍 서버, 로깅 모듈, 로그 데이터베이스, 패턴 검출 모듈, 컨버전스 분석 모듈, 게임 변경 모듈, 스케줄러 모듈, 게임 변경 스케줄 모듈, 및 게임 플레이를 용이하게 하도록 게이밍 네트워크와 함께 동작될 수 있는 것으로서 구현될 수 있다. 컴퓨팅 디바이스 (1000) 는 본원에서 설명된 임의의 컴퓨팅 방법들을 수행하도록 정렬될 수 있다. 아주 기본적인 구성 (1002) 에서, 컴퓨팅 디바이스 (1000) 는 일반적으로 하나 이상의 프로세서들 (1004) 및 시스템 메모리 (1006) 를 포함한다. 메모리 버스 (1008) 는 프로세서 (1004) 와 시스템 메모리 (1006) 사이에서 통신하기 위해 사용될 수도 있다.
소망하는 구성에 따라, 프로세서 (1004) 는, 마이크로프로세서 (μP), 마이크로컨트롤러 (μC), 디지털 신호 프로세서 (DSP), 또는 이들의 임의의 조합을 포함하는 임의의 형태를 취할 수도 있지만, 이들에 제한되는 것은 아니다. 프로세서 (1004) 는 레벨 1 캐시 (1010) 및 레벨 2 캐시 (1012) 와 같은 하나 이상의 레벨들의 캐시, 프로세서 코어 (1014), 및 레지스터 (1016) 를 포함할 수도 있다. 예시적인 프로세서 코어 (1014) 는 산술 로직 유닛 (ALU), 부동소수점 유닛 (FPU), 디지털 신호 프로세싱 코어 (DSP Core), 또는 이들의 임의의 조합을 포함할 수도 있다. 예시적인 메모리 컨트롤러 (1018) 는 프로세서 (1004) 와 함께 사용될 수도 있고, 또는 몇몇 구현예들에서 메모리 컨트롤러 (1018) 는 프로세서 (1004) 의 내부 부분일 수도 있다.
소망하는 구성에 따라, 시스템 메모리 (1006) 는 휘발성 메모리 (예컨데, RAM), 불휘발성 메모리 (예컨데, ROM, 플래시 메모리 등) 또는 이들의 임의의 조합을 포함하는 임의의 형태를 취할 수도 있는데, 이들에 제한되는 것은 아니다. 시스템 메모리(1006) 는 운영 시스템 (1020), 하나 이상의 어플리케이션들 (1022), 및 프로그램 데이터 (1024) 를 포함할 수도 있다. 어플리케이션 (1022) 은 본원에서 설명된 방법과 관련하여 설명된 것들을 포함하여 본원에서 설명된 기능들을 수행하도록 정렬된 결정 어플리케이션 (1026) 을 포함할 수도 있다. 프로그램 데이터 (1024) 는 본원에서 설명된 방법들 및 기능들을 수행하는데 유용할 수도 있는 게임 데이터 (1028) 를 포함할 수도 있다. 몇몇 구체예들에서, 어플리케이션 (1022) 은 본원에서 설명된 방법들 및 동작들을 수행하기 위해 운영 시스템(1020) 상에서 프로그램 데이터 (1024) 와 함께 동작하도록 정렬될 수도 있다.
컴퓨팅 디바이스 (1000) 는 부가적인 특징 또는 기능, 및 기본 구성 (1002) 및 임의의 필요한 디바이스들 및 인터페이스들 사이의 통신들을 용이하게 하기 위한 부가적인 인터페이스들을 구비할 수도 있다. 예를 들면, 버스/인터페이스 컨트롤러 (1030) 는 기본 구성 (1002) 및 하나 이상의 데이터 스토리지 디바이스들 (1032) 사이의 스토리지 인터페이스 버스 (1034) 를 통한 통신들을 용이하게 하기 위해 사용될 수도 있다. 데이터 스토리지 디바이스들 (1032) 은 리무버블 스토리지 디바이스들 (1036), 비(非) 리무버블 스토리지 디바이스들 (1038), 또는 이들의 조합일 수도 있다. 리무버블 스토리지 및 비(非) 리무버블 스토리지 디바이스들의 실시형태들은, 몇몇을 거론하자면, 플렉시블 디스크 드라이브들 및 하드 디스크 드라이블 (HDD) 와 같은 자기 디스크 디바이스들, 컴팩트 디스크 (CD) 드라이브들 또는 디지털 다기능 디스크 (DVD) 드라이브들과 같은 광학 디스크 드라이브들, 솔리드 스테이트 드라이브들 (SSD), 및 테이프 드라이브들을 포함한다. 예시적인 컴퓨터 스토리지 매체는, 컴퓨터 판독 가능 명령들, 데이터 구조들, 프로그램 모듈들 또는 다른 데이터와 같이, 정보 저장을 위한 임의의 방법 또는 기술에 의해 구현되는 휘발성 및 불휘발성, 리무버블 및 비 리무버블 매체를 포함할 수도 있다.
시스템 메모리 (1006), 리무버블 스토리지 디바이스들 (1036) 및 비 리무버블 스토리지 디바이스들 (1038) 은 컴퓨터 스토리지 매체의 실시형태들이다. 컴퓨터 스토리지 매체는, RAM, ROM, EEPROM, 플래시 메모리 또는 다른 메모리 기술, CD-ROM, 디지털 다기능 디스크들 (DVD) 또는 다른 광학 스토리지, 자기 카세트들, 자기 테이프, 자기 디스크 스토리 또는 다른 자기 스토리지 디바이스들, 또는 소망의 정보를 저장하기 위해 사용될 수도있고 컴퓨팅 디바이스 (1000) 에 의해 액세스될 수도 있는 임의의 다른 매체를 포함하지만, 이들에 제한되는 것은 아니다. 임의의 이러한 컴퓨터 스토리지 매체는 컴퓨팅 디바이스 (1000) 의 일부일 수도 있다.
컴퓨팅 디바이스 (1000) 는 또한 여러 인터페이스 디바이스들 (예를 들면, 출력 디바이스들 (1042), 주변 인터페이스들 (1044), 및 통신 디바이스들 (1046)) 로부터 기본 구성 (1002) 으로의 버스/인터페이스 컨트롤러 (1030) 를 통한 통신을 용이하게 하기 위한 인터페이스 버스 (1040) 를 포함할 수도 있다. 예시적인 출력 디바이스들 (1042) 은 그래픽 프로세싱 유닛 (1048), 및 오디오 프로세싱 유닛 (1050) 을 포함하며, 이들은 하나 이상의 A/V 포트들 (1052) 를 통해 디스플레이 또는 스피커들과 같은 여러 외부 디바이스들과 통신하도록 구성될 수도 있다. 예시적인 주변 인터페이스 (1044) 는 시리얼 인터페이스 컨트롤러 (1054) 또는 패럴렐 인터페이스 컨트롤러 (1056) 를 포함하며, 이들은 입력 디바이스들 (예를 들면, 키보드, 마우스, 펜, 음성 입력 디바이스, 터치 입력 디바이스 등) 과 같은 외부 디바이스들과 하나 이상의 I/O 포트들 (1058) 을 통해 통신하도록 구성될 수도 있다. 예시적인 통신 디바이스 (1046) 는 네트워크 컨트롤러 (1060) 를 포함하며, 이것은 하나 이상의 통신 포트들 (1064) 를 통한 네트워크 통신 링크를 통해 하나 이상의 다른 컴퓨팅 디바이스들 (1062) 과의 통신을 용이하게 하도록 정렬될 수도 있다.
네트워크 통신 링크는 통신 매체의 일 실시형태일 수도 있다. 통신 매체는 일반적으로 컴퓨터 판독 가능 명령들, 데이터 구조들, 프로그램 모듈들, 또는 반송파 또는 다른 전송 메커니즘과 같은 변조된 데이터 신호의 다른 데이터에 의해 구체화될 수도 있고, 임의의 정보 전송 매체를 포함할 수도 있다. "변조된 데이터 신호"는 하나 이상의 특성들 세트를 구비하거나 또는 신호에 정보를 인코딩하도록 변경된 신호일 수도 있다. 예로서, 통신 매체는 유선 네트워크 또는직결 접속과 같은 유선 매체, 및 음향, 라디오 주파수 (RF), 마이크로파, 적외선 (IR) 와 같은 무선 매체 및 다른 무선 매체를 포함할 수도 있으며, 이들에 제한되는 것은 아니다. 본원에서 사용된 컴퓨터 판독 가능 매체는 스토리지 매체 및 통신 매체 양자를 포함할 수도 있다.
컴퓨팅 디바이스 (1000) 는, 셀폰, PDA, 퍼스널 미디어 플레이어 디바이스, 무선 웹-워치 디바이스, 퍼스널 헤드셋 디바이스, 어플리케이션 전용 디바이스, 또는 임의의 상기 기능들을 포함하는 하이브리드 디바이스와 같은 작은 폼팩터의 휴대형 (또는 모바일) 전자 디바이스의 일부로서 구현될 수도 있다. 컴퓨팅 디바이스 (1000) 는 또한 랩탑 컴퓨터 및 비랩탑 컴퓨터 구성들 양자를 포함하는 퍼스널 컴퓨터로서 구현될 수도 있다. 컴퓨팅 디바이스 (1000) 는 또한 임의의 형태의 네트워크 컴퓨팅 디바이스일 수도 있다. 컴퓨팅 디바이스 (1000) 는 또한 본원에서 설명된 바와 같이 자동화된 시스템일 수도 있다.
본원에서의 실질적인 임의의 단복수 용어들의 사용과 관련하여, 당업자라면, 상황 및/또는 어플리케이션에 적절하게 복수에서 단수로 및/또는 단수에서 복수로 변경할 수 있을 것이다. 본원에서의 여러 단/복수 치환들은 명확화를 위해 명백히 설명될 수도 있다.
당업자라면, 일반적으로, 본원, 특히 하기의 특허청구범위 (예를 들면, 하기의 특허청구범위의 특징부) 에서 사용된 용어들은 일반적으로, "비한정적인(open)" 용어들로서 의도되며 (예를 들면, 용어 "포함하는"은 "포함하지만 제한되지 않는"으로 해석되어야 하고, 용어 "구비하는"은 "적어도 구비하는"으로 해석되어야 하며, 용어 "포함한다"는 "포함하며 그러나 제한되지 않는"으로 해석되는 등등) 로서 의도된다. 도입된 청구항 기재(introduced claim recitations)의 특정 수가 의도되면, 그러한 의도는 청구항에서 명시적으로 기재될 것이며, 이러한 기재가 없으면 그러한 의도가 없는 것으로 당업자는 더 이해할 수 있을 것이다. 예를 들면, 이해를 돕기 위해, 하기의 특허청구범위에서는, 청구항의 기재들(recitations)을 도입하기 위해, 도입 어구에 "적어도 하나" 및 "하나 이상의"의 사용을 포함할 수도 있다. 그러나, 이러한 어구들의 사용은, 부정 관사 "a" 또는 "an" 에 의한 청구항 기재의 도입이, 이렇게 도입된 청구항 기재를 포함하는 임의의 특정 청구항을, 그 동일한 청구항이 도입 어구 "하나 이상의" 또는 "적어도 하나" 및 "a" 또는 "an" (예를 들면, "a" 및/또는 "an"은 "적어도 하나" 또는 "하나 이상"으로 해석되어야 한다) 과 같은 부정 관사들을 포함하는 경우에도, 단지 하나의 이러한 기재만을 포함하는 구체예들로 제한한다는 것을 의미하는 것으로 이해되어선 안되며, 청구항 기재를 도입하기 위해 정관사를 사용하는 경우에도 마찬가지이다. 또한, 도입된 청구항 기재의 특정 수가 명시적으로 기재되어도, 당업자라면, 이러한 기재는 적어도 기재된 수를 의미하는 것으로 이해되어야 함을 알 수 있을 것이다 (예를 들면, 다른 수식 어구들이 없는 단순한 "두 기재 사항"의 기재는 적어도 두 개의 기재들들 또는 두 개 이상의 기재들을 의미한다). 또한, "A, B 및 C 중 적어도 하나 등"과 유사한 방식이 사용되는 경우들에서, 일반적으로 이러한 구성을 당업자가 그 방식을 이해할 것이라는 관점에서 의도된다 (예를 들면, "A, B, 및 C 중 적어도 하나를 구비하는 시스템"은, A 단독, B 단독, C 단독, A와 B를 같이, A와 C를 같이, B와 C를 같이, 및/또는 A, B, 및 C를 같이 구비하는 시스템 등을 포함할 것이지만 이에 제한되는 것은 아니다). 또한, "A, B 또는 C 중 적어도 하나 등"과 유사한 방식이 사용되는 경우들에서, 일반적으로 이러한 구성을 당업자가 그 방식을 이해할 것이라는 관점에서 의도된다 (예를 들면, "A, B, 또는 C 중 적어도 하나를 구비하는 시스템"은, A 단독, B 단독, C 단독, A와 B를 같이, A와 C를 같이, B와 C를 같이, 및/또는 A, B, 및 C를 같이 구비하는 시스템 등을 포함할 것이지만 이에 제한되는 것은 아니다). 또한, 당업자라면, 두 개 이상의 대안적인 용어들을 나타내는 선언적 단어 및/또는 구는, 상기 용어들 중 하나, 상기 용어들 중 어느 하나, 또는 상기 용어들 둘 다를 포함할 가능성들을 꾀하는 것으로 이해되어야 함을 알 수 있을 것이다. 예를 들면, 구 "A 또는 B"는 "A" 또는 "B" 또는 "A 및 B" 의 가능성들을 포함하는 것으로 이해될 것이다.
또한, 본 개시의 특징들 또는 양태들이 마쿠쉬 그룹들의 관점으로 설명되었지만, 당업자라면, 개개의 부재 또는 마쿠쉬 그룹의 부재들의 서브그룹의 관점으로도 설명된다는 것을 이해할 수 있을 것이다.
당업자에 의해 이해될 수 있는 바와 같이, 임의의 그리고 모든 목적들을 위해, 발명 기재(written description)를 제공하는 관점에서와 같이, 본원에서 개시된 모든 범위들은 임의의 그리고 모든 가능한 부범위들 및 그들 부범위들의 조합들을 또한 포괄한다. 임의의 열거된 범위는 그 동일한 범위를 충분히 설명하고 적어도 2등분, 3등분, 4등분, 5등분, 10등분 등으로 분류될 수 있게 할 때 쉽게 인식될 수 있다. 비제한적인 실시형태로서, 본원에서 논의된 각각의 범위는 상중하 등으로 쉽게 분류될 수 있다. 당업자에 의해 또한 이해될 수 있는 바와 같이, "까지", "적어도" 등과 같은 모든 말은 언급된 수를 포함하고 상술한 바와 같이 부범위들로 후속적으로 분류될 수 있는 범위들을 가리킨다. 마지막으로, 당업자에 의해 이해될 수 있는 바와 같이, 범위는 각각 개개의 수를 포함할 수 있다. 따라서, 예를 들면, 1~3 셀들을 구비하는 그룹은 1, 2, 또는 3 셀을 구비하는 그룹들을 기리킨다. 마찬가지로, 1~5 셀들을 구비하는 그룹은 1, 2, 3, 4, 또는 5 셀을 구비하는 그룹들을 가리키는, 등등이다.
상기의 설명에서, 본 개시의 여러 구체예들이 예증의 목적으로 설명되었으며, 여러 수정예들이 본 개시의 취지와 범위를 벗어나지 않으면서 이루어질 수 있음을 알 수 있을 것이다. 따라서, 본원에서 설명된 여러 구체예들은 제한적인 것으로 의도된 것은 아니며, 진정한 범위와 취지는 하기의 특허청구범위에 의해 나타내어진다.
본원에서 열거된 모든 참조들은 특정 참조에 의해 그들 전체로 본원에 통합된다.
Claims (20)
- 게임 변경 방법으로서,
복수의 컴퓨팅 디바이스들에 게임을 동시에 제공하는 단계;
상기 복수의 컴퓨팅 디바이스들에 제공된 하나 이상의 게임 테스트들을 포함하는 상기 게임의 게임 시나리오 형태를 식별하는 단계;
상기 게임 시나리오 형태의 상기 하나 이상의 게임 테스트들에 응답하여 상기 복수의 컴퓨팅 디바이스들로부터 하나 이상의 게임 액션들을 획득하는 단계;
상기 하나 이상의 게임 테스트들을 통과하는 상기 하나 이상의 게임 액션들의 상기 복수의 컴퓨팅 디바이스들 전체에서의 컨버전스 (convergence) 를 결정하는 단계; 및
상기 컨버전스의 상기 하나 이상의 게임 액션들이 변경된 하나 이상의 게임 테스트들을 통과하지 못하도록 상기 게임 시나리오 형태의 상기 하나 이상의 게임 테스트들을 변경하는 단계를 포함하는, 게임 변경 방법. - 제 1항에 있어서,
상기 복수의 컴퓨팅 디바이스들의 상기 하나 이상의 게임 테스트들에 대한 상기 하나 이상의 게임 액션들의 제 1의 로그를 기록하는 단계로서, 상기 제 1의 로그의 제 1의 로그 데이터는 상기 복수의 컴퓨팅 디바이스들 중 임의의 특정한 컴퓨팅 디바이스와 무관한, 상기 제 1의 로그를 기록하는 단계;
상기 복수의 컴퓨팅 디바이스들의 상기 하나 이상의 게임 테스트들에 대한 상기 하나 이상의 게임 액션들의 제 2의 로그를 기록하는 단계로서, 상기 제 2의 로그의 제 2의 로그 데이터는 상기 복수의 컴퓨팅 디바이스들 중 특정한 컴퓨팅 디바이스에 의존하는, 상기 제 2의 로그를 기록하는 단계;
높은 동시 발생성을 갖는 하나 이상의 게임 액션들을 상기 제 1의 로그로부터 추출하는 단계;
추출된 상기 하나 이상의 게임 액션들의 상기 제 2의 로그에서의 발생 빈도를 계산하는 단계; 및
계산된 상기 발생 빈도를 발생 빈도 임계치와 비교하는 단계를 더 포함하고,
상기 계산된 발생 빈도가 상기 발생 빈도 임계치 이하일 때, 상기 추출된 하나 이상의 게임 액션들의 컨버전스가 존재하는, 게임 변경 방법. - 제 2항에 있어서,
상기 복수의 컴퓨팅 디바이스들로부터의 하나 이상의 특정 게임 테스트들에 대한 상기 게임 액션들을 포함하도록 상기 제 1의 로그를 기록하는 단계;
상기 하나 이상의 특정 게임 테스트들에 응답하여 상기 복수의 컴퓨팅 디바이스들의 상기 하나 이상의 게임 테스트들에 대한 상기 게임 액션들을 포함하도록 상기 제 2의 로그를 기록하는 단계;
상기 제 1의 로그로부터의 게임 액션들의 조합의 발생 빈도를 계산하는 단계;
상기 발생 빈도 임계치를 초과하는 동시 발생 게임 액션 패턴들을 갖는 하나 이상의 게임 액션들을 선택하는 단계로서, 선택된 상기 하나 이상의 게임 액션들은 상기 제 1의 로그로부터의 상기 추출된 하나 이상의 게임 액션들인, 상기 선택하는 단계; 및
상기 제 1의 로그로부터의 상기 추출된 하나 이상의 게임 액션들의 상기 제 2의 로그에서의 발생 빈도를 계산하는 단계를 더 포함하는, 게임 변경 방법. - 제 2항에 있어서,
상기 제 1의 로그의 상기 추출된 하나 이상의 게임 액션들을 포함하는 상기 제 2의 로그의 상기 하나 이상의 게임 테스트들의 비율을 계산하는 단계를 더 포함하고,
상기 비율이 미리 결정된 비율 임계치를 초과하면, 상기 컨버전스가 결정되고,
상기 컨버전스가 결정되면, 상기 게임 시나리오 형태의 하나 이상의 게임 테스트들이 변경되는, 게임 변경 방법. - 제 1항에 있어서,
상기 하나 이상의 게임 테스트들에 대한 변경을 생성하는 단계; 및
상기 하나 이상의 게임 테스트들에 대한 변경에 의해, 상기 컨버전스의 상기 하나 이상의 게임 액션들이 상기 하나 이상의 게임 테스트들을 통과하지 못하는지를 점검하는 단계를 더 포함하는, 게임 변경 방법. - 제 1항에 있어서,
상기 게임 시나리오 형태의 상기 하나 이상의 게임 테스트들에 대한 변경을 구현하기 위해 상기 게임에 대한 업데이트를 스케줄링하는 단계를 더 포함하는, 게임 변경 방법. - 제 1항에 있어서,
상기 게임은 상기 복수의 컴퓨팅 디바이스들 상에서 플레이되며 컴퓨팅 네트워크에 의해 호스트되는 대규모 다중 사용자 온라인 롤-플레잉 게임 (MMORPG) 이고;
상기 게임 시나리오는 배틀이고;
상기 하나 이상의 게임 테스트들은 배틀 내의 적들이고;
상기 하나 이상의 게임 액션들은 배틀 액션들이며; 그리고
하나 이상의 배틀들에서 하나 이상의 적들을 물리치는 식별된 게임 액션 패턴들에 의해 컨버전스가 결정되는, 게임 변경 방법. - 제 8항에 있어서,
상기 복수의 컴퓨팅 디바이스들에 대한 상기 게임에서의 상기 배틀들의 배틀 액션들의 제 1의 로그를 기록하는 단계;
개개의 컴퓨팅 디바이스들에 대한 배틀들의 배틀 액션들의 제 2의 로그를 기록하는 단계;
동시 발생 확률 임계치를 초과하는 동시 발생 확률을 갖는 배틀 액션 패턴들을 추출하는 단계;
상기 제 1의 로그로부터 상기 동시 발생 확률을 갖는 추출된 상기 배틀 액션 패턴들을 구비하는 상기 제 2의 로그의 상기 배틀들의 비율을 계산하는 단계; 및
상기 비율이 비율 임계치를 초과하면 상기 하나 이상의 게임 테스트들을 변경하는 단계를 더 포함하는, 게임 변경 방법. - 게임 변경 시스템으로서,
복수의 컴퓨팅 디바이스들에 동작 가능하게 커플링되고 상기 복수의 컴퓨팅 디바이스들에 게임을 동시에 제공하도록 구성되며, 상기 게임의 게임 시나리오 형태를 포함하는 게이밍 서버로서, 상기 게임 시나리오 형태는 하나 이상의 게임 테스트들을 구비하는, 상기 게이밍 서버;
상기 게이밍 서버에 동작 가능하게 커플링된 게임 액션 로깅 모듈;
상기 게임 액션 로깅 모듈에 동작 가능하게 커플링되며 상기 하나 이상의 게임 테스트들에 대한 하나 이상의 게임 액션들을 구비하는 제 1의 로그 데이터베이스;
상기 게임 액션 로깅 모듈에 동작 가능하게 커플링되며 상기 복수의 컴퓨팅 디바이스들의 컴퓨팅 디바이스들과 관련된 상기 하나 이상의 게임 테스트들에 대한 하나 이상의 게임 액션들을 구비하는 제 2의 로그 데이터베이스;
상기 제 1의 로그 데이터베이스에 동작 가능하게 커플링된 게임 액션 패턴 검출 모듈;
상기 제 2의 로그 데이터베이스와 상기 게임 액션 패턴 검출 모듈에 동작 가능하게 커플링되며, 상기 게임의 하나 이상의 게임 테스트들을 통과하는 하나 이상의 게임 액션들의 상기 복수의 컴퓨팅 디바이스들 전체에서의 컨버전스를 결정하도록 구성된 게임 액션 컨버전스 분석 모듈; 및
상기 게임 액션 컨버전스 분석 모듈과 상기 게이밍 서버에 동작 가능하게 커플링되며, 상기 컨버전스의 상기 하나 이상의 게임 액션들이 변경된 하나 이상의 게임 테스트들을 통과하지 못하도록 상기 게임 시나리오 형태의 하나 이상의 게임 테스트들을 변경하도록 구성된 게임 변경 모듈을 포함하는, 게임 변경 시스템. - 제 10항에 있어서,
상기 게임 액션 로깅 모듈은 상기 게임 시나리오 형태의 상기 하나 이상의 게임 테스트들에 응답하여 상기 복수의 컴퓨팅 디바이스들로부터 하나 이상의 게임 액션들을 수신하도록 구성되고,
상기 게임 액션 패턴 검출 모듈은 상기 제 1의 로그 데이터베이스로부터 게임 액션 패턴들의 발생 빈도를 계산하도록 구성되고 그리고 발생 빈도 임계치를 초과하는 발생 빈도들을 갖는 게임 액션 패턴들의 동시 발생 게임 액션들을 선택하도록 구성되고,
상기 게임 액션 컨버전스 분석 모듈은, 상기 하나 이상의 게임 테스트들에 응답하여 하나 이상의 게임 액션의 컨버전스를 결정하기 위해, 상기 게임 액션 패턴 검출 모듈로부터, 선택된 상기 동시 발생 게임 액션들의 각각에 대한 상기 제 2의 로그 데이터베이스의 하나 이상의 게임 액션들의 발생 빈도를 계산하도록 구성되며; 그리고
상기 게임 변경 모듈은, 상기 컨버전스가 결정되면, 상기 컨버전스의 상기 하나 이상의 게임 액션들이 변경된 하나 이상의 게임 테스트들을 통과하지 못하도록, 상기 게임 시나리오 형태의 상기 하나 이상의 게임 테스트들을 변경하도록 구성되는, 게임 변경 시스템. - 제 11항에 있어서,
상기 제 1의 로그 데이터베이스는 상기 복수의 컴퓨팅 디바이스들의 상기 하나 이상의 게임 테스트들에 대한 상기 하나 이상의 게임 액션들의 제 1의 로그를 구비하고, 상기 제 1의 로그의 제 1의 로그 데이터는 상기 복수의 컴퓨팅 디바이스들의 임의의 특정한 컴퓨팅 디바이스와 무관하며;
상기 제 2의 로그 데이터베이스는 상기 복수의 컴퓨팅 디바이스들의 상기 하나 이상의 게임 테스트들에 대한 상기 하나 이상의 게임 액션들의 제 2의 로그를 구비하고, 상기 제 2의 로그의 제 2의 로그 데이터는 상기 복수의 컴퓨팅 디바이스들 중 특정한 컴퓨팅 디바이스에 의존하며;
상기 게임 액션 패턴 검출 모듈은 상기 제 1의 로그로부터 추출된 높은 동시 발생성을 갖는 하나 이상의 게임 액션들을 구비하고;
상기 게임 액션 컨버전스 분석 모듈은 상기 제 2의 로그에서의 상기 추출된 하나 이상의 게임 액션들의 발생 빈도값들을 가지며, 상기 발생 빈도값들은 발생 빈도 임계치와 관련하여 계산되는, 게임 변경 시스템. - 제 12항에 있어서,
상기 제 1의 로그는 상기 복수의 컴퓨팅 디바이스들의 하나 이상의 특정 게임 테스트들에 대한 게임 액션들을 포함하고,
상기 제 2의 로그는 상기 복수의 컴퓨팅 디바이스들의 상기 게임 테스트들에 대한 상기 게임 액션들을 포함하고, 상기 게임 액션들은 상기 하나 이상의 특정 게임 테스트들에 응답하여 상기 제 2의 로그에 저장되어 있고,
상기 게임 액션 패턴 검출 모듈은 게임 액션들의 조합의 발생 빈도값들을 가지며, 상기 발생 빈도 임계치를 초과하는 동시 발생 게임 액션 패턴들을 갖는 선택된 하나 이상의 게임 액션들을 구비하고, 상기 발생 빈도값들은 상기 제 1의 로그로부터 계산되고, 상기 선택된 하나 이상의 게임 액션들은 상기 제 1의 로그로부터의 상기 추출된 하나 이상의 게임 액션들이고,
상기 게임 액션 컨버전스 분석 모듈은 상기 제 1의 로그로부터의 상기 추출된 하나 이상의 게임 액션들의 상기 제 2의 로그에서의 계산된 발생 빈도값들을 갖는, 게임 변경 시스템. - 제 12항에 있어서,
상기 게임 액션 컨버전스 분석 모듈은 상기 제 1의 로그로부터의 상기 추출된 하나 이상의 게임 액션들로 나타나게 되는 상기 제 2의 로그에서의 상기 하나 이상의 게임 테스트들의 계산된 비율을 가지며,
상기 비율이 미리 결정된 비율 임계치를 초과하면, 상기 컨버전스가 결정되고,
컨버전스가 결정되면, 상기 게임 변경 모듈은 상기 게임 시나리오 형태에 대한 하나 이상의 변경된 게임 테스트들을 구비하는, 게임 변경 시스템. - 제 14항에 있어서,
상기 게임 변경 모듈은 상기 게임 시나리오 형태의 상기 하나 이상의 변경된 게임 테스트들을 구현하기 위해 상기 게임에 대한 업데이트를 스케줄링하는 명령들을 포함하는, 게임 변경 시스템. - 제 11항에 있어서,
상기 게임은 상기 복수의 컴퓨팅 디바이스들 상에서 플레이되며 상기 게이밍 서버를 구비하는 컴퓨팅 네트워크에 의해 호스트되는 대규모 다중 사용자 온라인 롤-플레잉 게임 (MMORPG) 이고;
상기 게임 시나리오는 배틀이고;
상기 하나 이상의 게임 테스트들은 배틀 내의 적들이고;
상기 하나 이상의 게임 액션들은 배틀 액션들이며; 그리고
하나 이상의 배틀들에서 하나 이상의 적들을 물리치는 식별된 게임 액션 패턴들에 의해 컨버전스가 결정되는, 게임 변경 시스템. - 제 16항에 있어서,
상기 제 1의 로그 데이터베이스는 상기 복수의 컴퓨팅 디바이스들에 대한 상기 게임에서의 상기 배틀들의 배틀 액션들의 제 1의 로그를 구비하고;
상기 제 2의 로그 데이터베이스는 상기 복수의 컴퓨팅 디바이스들의 개개의 컴퓨팅 디바이스들에 대한 배틀들의 배틀 액션들의 제 2의 로그를 구비하고;
상기 게임 액션 패턴 검출 모듈은 동시 발생 확률 임계치를 초과하는 동시 발생 확률을 갖는 추출된 배틀 액션 패턴들을 구비하고,
상기 게임 액션 컨버전스 분석 모듈은 상기 제 1의 로그 데이터베이스로부터의 동시 발생 확률을 갖는 상기 추출된 배틀 액션 패턴들을 구비하는 상기 제 2의 로그 데이터베이스에서의 상기 배틀들의 계산된 비율을 구비하며; 그리고
상기 게임 변경 모듈은 상기 비율이 비율 임계치를 초과할 때 하나 이상의 게임 테스트들을 변경하기 위한 명령들을 구비하는, 게임 변경 시스템. - 게이밍 시스템 상에서의 게임 변경 방법으로서,
복수의 컴퓨팅 디바이스들에 동작 가능하게 커플링되고 상기 복수의 컴퓨팅 디바이스들로 게임을 동시에 제공하는 게이밍 서버 상에서 게임을 실행하는 단계로서, 상기 게이밍 서버는 상기 게임의 게임 시나리오 형태를 포함하고, 상기 게임 시나리오 형태는 하나 이상의 게임 테스트들을 구비하는, 상기 게임을 실행하는 단계;
상기 게이밍 서버에 동작 가능하게 커플링된 게임 액션 로깅 모듈에서, 상기 게임 시나리오 형태의 상기 하나 이상의 게임 테스트들에 응답하여 상기 복수의 컴퓨팅 디바이스들로부터 하나 이상의 게임 액션들을 획득하는 단계;
상기 하나 이상의 게임 테스트들에 대한, 상기 게임 액션 로깅 모듈로부터 수신된 게임 액션들을 제 1의 로그 데이터베이스에 기록하는 단계;
상기 복수의 컴퓨팅 디바이스들의 컴퓨팅 디바이스들과 관련된 상기 하나 이상의 게임 테스트들에 대한 게임 액션들을 제 2의 로그 데이터베이스에 기록하는 단계로서, 상기 게임 액션들은 상기 게임 액션 로깅 모듈로부터 수신되는, 상기 제 2의 로그 데이터베이스에 기록하는 단계;
상기 제 1의 로그로부터 게임 액션 패턴들의 발생 빈도를 계산하고 상기 제 1의 로그 데이터베이스에 동작 가능하게 커플링된 게임 액션 패턴 검출 모듈에서 상기 게임 액션 패턴들 중 발생 빈도 임계치를 초과하는 발생 빈도를 갖는 동시 발생 게임 액션들을 선택하는 단계;
상기 제 2의 로그 데이터베이스와 상기 게임 액션 패턴 검출 모듈에 동작 가능하게 커플링된 게임 액션 컨버전스 분석 모듈에서 상기 하나 이상의 게임 테스트들에 응답하여 하나 이상의 게임 액션들의 컨버전스를 결정하기 위해, 상기 게임 액션 패턴 검출 모듈로부터, 선택된 상기 동시 발생 패턴들 각각에 대한 상기 제 2의 로그 데이터베이스의 게임 액션들의 발생 빈도를 계산하는 단계;
게임 변경 모듈에서 컨버전스가 결정되면 상기 게임 시나리오 형태의 상기 하나 이상의 게임 테스트들을 상기 게임이 변경할 것이라고 결정하는 단계; 및
상기 컨버전스의 상기 하나 이상의 게임 액션들이 상기 게이밍 서버에 대한 변경된 하나 이상의 게임 테스트들을 통과하지 못하도록 상기 하나 이상의 게임 테스트들을 변경하는 단계를 포함하는, 게임 변경 방법. - 제 18항에 있어서,
상기 게임은 상기 복수의 컴퓨팅 디바이스들 상에서 플레이되며 상기 게이밍 서버를 구비하는 컴퓨팅 네트워크에 의해 호스트되는 대규모 다중 사용자 온라인 롤-플레잉 게임 (MMORPG) 이고;
상기 게임 시나리오는 배틀이고;
상기 하나 이상의 게임 테스트들은 배틀 내의 적들이고;
상기 하나 이상의 게임 액션들은 배틀 액션들이며; 그리고
하나 이상의 배틀들에서 하나 이상의 적들을 물리치는 식별된 게임 액션 패턴들에 의해 컨버전스가 결정되는, 게임 변경 방법. - 제 19항에 있어서,
상기 복수의 컴퓨팅 디바이스들에 대한 상기 게임에서의 상기 배틀들의 배틀 액션들의 제 1의 로그를 기록하는 단계;
상기 복수의 컴퓨팅 디바이스들 중 개개의 컴퓨팅 디바이스들에 대한 배틀들의 배틀 액션들의 제 2의 로그를 기록하는 단계;
동시 발생 확률 임계치를 초과하는 동시 발생 확률을 갖는 배틀 액션 패턴들을 추출하는 단계;
상기 제 1의 로그의 동시 발생 확률을 갖는 추출된 상기 배틀 액션 패턴들을 구비하는 상기 제 2의 로그의 상기 배틀들의 비율을 계산하는 단계; 및
상기 비율이 비율 임계치를 초과하면 하나 이상의 게임 테스트들을 변경하는 단계를 더 포함하는, 게임 변경 방법.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/533,774 | 2012-06-26 | ||
US13/533,774 US8905838B2 (en) | 2012-06-26 | 2012-06-26 | Detecting game play-style convergence and changing games |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20140001101A true KR20140001101A (ko) | 2014-01-06 |
KR101547725B1 KR101547725B1 (ko) | 2015-08-27 |
Family
ID=49774871
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020130044311A KR101547725B1 (ko) | 2012-06-26 | 2013-04-22 | 게임 플레이-스타일 컨버전스 검출 및 게임 변경 |
Country Status (3)
Country | Link |
---|---|
US (1) | US8905838B2 (ko) |
JP (1) | JP5616999B2 (ko) |
KR (1) | KR101547725B1 (ko) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180036189A (ko) * | 2016-09-30 | 2018-04-09 | 한국전자통신연구원 | 게임 운영 시나리오 생성 장치 및 그 방법 |
KR20210029826A (ko) * | 2019-01-17 | 2021-03-16 | 어드밴스드 뉴 테크놀로지스 씨오., 엘티디. | 당사자들 사이의 전략적 상호작용에서의 전략 검색을 위한 샘플링 방식들 |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103530490B (zh) * | 2012-07-06 | 2015-08-19 | 腾讯科技(深圳)有限公司 | 一种模拟器类联网游戏的外挂识别方法和系统 |
US10266926B2 (en) * | 2013-04-23 | 2019-04-23 | General Electric Company | Cast nickel-base alloys including iron |
SG2014000889A (en) | 2014-01-03 | 2015-08-28 | Creative Tech Ltd | A system suitable for one or both of audio processing and graphics processing and a method of processing in association therewith |
JP5793592B2 (ja) | 2014-02-25 | 2015-10-14 | グリー株式会社 | ゲーム制御方法、サーバ装置及びプログラム |
CN105871640B (zh) * | 2016-06-07 | 2019-07-05 | 腾讯科技(深圳)有限公司 | 关卡配置数据配置方法、游戏服务器及系统 |
KR20180063912A (ko) * | 2016-11-29 | 2018-06-14 | 한국전자통신연구원 | 온라인 게임 서비스의 운영 결과를 예측하는 방법 및 그 장치 |
US10279266B2 (en) * | 2017-06-19 | 2019-05-07 | International Business Machines Corporation | Monitoring game activity to detect a surrogate computer program |
US11065545B2 (en) * | 2019-07-25 | 2021-07-20 | Sony Interactive Entertainment LLC | Use of machine learning to increase or decrease level of difficulty in beating video game opponent |
WO2022044842A1 (ja) * | 2020-08-28 | 2022-03-03 | ソニーグループ株式会社 | 情報処理装置、無線通信端末、および情報処理方法 |
CN112529431A (zh) * | 2020-12-17 | 2021-03-19 | 韦福瑞 | 一种基于游戏交互技术检测个体综合能力的方法和系统 |
US11771993B2 (en) * | 2021-03-12 | 2023-10-03 | Sony Interactive Entertainment Inc. | Changing response window for interactive content using user's reaction time |
US11918916B2 (en) * | 2022-05-31 | 2024-03-05 | Microsoft Technology Licensing, Llc | Systems and methods for rich personalization of computer game experiences |
US20240139629A1 (en) * | 2022-10-31 | 2024-05-02 | Samsung Electronics Co., Ltd. | Effective multi-scale multi-granular targeting for game users |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3839501B2 (ja) * | 1994-10-13 | 2006-11-01 | 株式会社スクウェア・エニックス | ビデオ・ゲーム装置,その制御方法および制御装置,ならびにビデオ・ゲームのためのメモリ・カートリッジ |
US7483867B2 (en) * | 2001-06-26 | 2009-01-27 | Intuition Intelligence, Inc. | Processing device with intuitive learning capability |
US8029360B2 (en) | 2003-05-13 | 2011-10-04 | Multimedia Games, Inc. | Dynamically configurable gaming system |
US8696464B2 (en) * | 2005-08-19 | 2014-04-15 | Nintendo Co., Ltd. | Enhanced method and apparatus for selecting and rendering performance data |
KR100766545B1 (ko) | 2005-09-08 | 2007-10-11 | 엔에이치엔(주) | 게이머의 입력 패턴을 복사하여 게임을 수행하는 게임 ai제어 방법 및 게임 ai 제어 시스템 |
US20070066403A1 (en) * | 2005-09-20 | 2007-03-22 | Conkwright George C | Method for dynamically adjusting an interactive application such as a videogame based on continuing assessments of user capability |
US20080268943A1 (en) * | 2007-04-26 | 2008-10-30 | Sony Computer Entertainment America Inc. | Method and apparatus for adjustment of game parameters based on measurement of user performance |
KR101231798B1 (ko) * | 2009-04-30 | 2013-02-08 | 한국전자통신연구원 | 게임 난이도 조절 장치 및 방법 |
US8210925B2 (en) * | 2009-05-26 | 2012-07-03 | Microsoft Corporation | Adjusting difficulty level of a multiplayer game |
US8465366B2 (en) * | 2009-05-29 | 2013-06-18 | Harmonix Music Systems, Inc. | Biasing a musical performance input to a part |
US8348733B2 (en) * | 2009-12-21 | 2013-01-08 | Electronics And Telecommunications Research Institute | Apparatus and method for analyzing characteristic of game player in real time |
JP5713742B2 (ja) * | 2011-03-18 | 2015-05-07 | 株式会社コナミデジタルエンタテインメント | ゲーム装置、ゲーム装置の制御方法、及びプログラム |
-
2012
- 2012-06-26 US US13/533,774 patent/US8905838B2/en not_active Expired - Fee Related
-
2013
- 2013-04-03 JP JP2013078020A patent/JP5616999B2/ja not_active Expired - Fee Related
- 2013-04-22 KR KR1020130044311A patent/KR101547725B1/ko active IP Right Grant
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180036189A (ko) * | 2016-09-30 | 2018-04-09 | 한국전자통신연구원 | 게임 운영 시나리오 생성 장치 및 그 방법 |
KR20210029826A (ko) * | 2019-01-17 | 2021-03-16 | 어드밴스드 뉴 테크놀로지스 씨오., 엘티디. | 당사자들 사이의 전략적 상호작용에서의 전략 검색을 위한 샘플링 방식들 |
Also Published As
Publication number | Publication date |
---|---|
JP2014004331A (ja) | 2014-01-16 |
US20130344940A1 (en) | 2013-12-26 |
JP5616999B2 (ja) | 2014-10-29 |
KR101547725B1 (ko) | 2015-08-27 |
US8905838B2 (en) | 2014-12-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101547725B1 (ko) | 게임 플레이-스타일 컨버전스 검출 및 게임 변경 | |
KR102170560B1 (ko) | 멀티 플레이어 비디오 게임 매치 메이킹 최적화 | |
Silva et al. | Dynamic difficulty adjustment on MOBA games | |
US11679330B2 (en) | Systems and methods for generating improved non-player characters | |
Medler | Generations of game analytics, achievements and high scores | |
Font et al. | Dota 2 bot competition | |
US11857871B2 (en) | Game control method, server device, game system, and computer-readable recording medium | |
EP4134144A1 (en) | Intelligent recommendations for gameplay session adjustment | |
US20120115605A1 (en) | Systems and methods for inverse franchising of virtual characters | |
JP2023018859A (ja) | プログラム、および情報処理装置 | |
US20150190719A1 (en) | Systems and Methods of Crowd Sourced Virtual Character Evolution | |
Hoang et al. | Lag of legends: The effects of latency on league of legends champion abilities | |
US20120088586A1 (en) | Linkable and extensible virtual characters | |
TW202027825A (zh) | 程式、終端、遊戲系統及遊戲管理裝置 | |
KR20130143163A (ko) | 온라인 게임에서의 스킬 판정방법 및 시스템 | |
Stanley et al. | Gemini redux: Understanding player perception of accumulated context | |
US11305196B1 (en) | Promoting fair online game play through disadvantaged interactions with online gaming | |
Burliai | Development and optimization of client-server game with the help of Unreal Engine technologies | |
Hong | Detonicon-A Networked Game Utilizing AI to Study the Effects of Latency Compensation | |
Zhu et al. | AFIRST-PERSON SHOOTER GAME DESIGNED TO EDUCATE AND AID THE PLAYER MOVEMENT IMPLEMENTATION | |
Wendel | Cheating in online games: a case study of bots and bot-detection in browser-based multiplayer games | |
Wei et al. | Gamers and the Games They Play | |
Chiu et al. | Game engine design using data mining | |
Stephens et al. | BALANCING INTRANSITIVE RELATIONSHIPS IN MOBA GAMES USING DEEP REINFORCEMENT LEARNING | |
Tavassolian | Time Balancing of Computer Games Using Adaptive Time-variant Minigames |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20180718 Year of fee payment: 4 |