KR20080017327A - 게임 컨텍스트 밖에서의 온라인 게임 세션 셋업 - Google Patents

게임 컨텍스트 밖에서의 온라인 게임 세션 셋업 Download PDF

Info

Publication number
KR20080017327A
KR20080017327A KR1020077027476A KR20077027476A KR20080017327A KR 20080017327 A KR20080017327 A KR 20080017327A KR 1020077027476 A KR1020077027476 A KR 1020077027476A KR 20077027476 A KR20077027476 A KR 20077027476A KR 20080017327 A KR20080017327 A KR 20080017327A
Authority
KR
South Korea
Prior art keywords
game
players
player
service
session
Prior art date
Application number
KR1020077027476A
Other languages
English (en)
Other versions
KR101292432B1 (ko
Inventor
패트릭 더블유 2세 오'켈리
클린턴 폴 제이. 포울러
요한 피터 한센
윌리암 비. 풀턴
제리 알랜 존슨
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 마이크로소프트 코포레이션
Publication of KR20080017327A publication Critical patent/KR20080017327A/ko
Application granted granted Critical
Publication of KR101292432B1 publication Critical patent/KR101292432B1/ko

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/45Controlling the progress of the video game
    • A63F13/48Starting a game, e.g. activating a game device or waiting for other players to join a multiplayer session
    • A63F13/12
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • 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/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • 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/795Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories for finding other players; for building a team; for providing a buddy list
    • G06Q50/40
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F17/00Coin-freed apparatus for hiring articles; Coin-freed facilities or services
    • G07F17/32Coin-freed apparatus for hiring articles; Coin-freed facilities or services for games, toys, sports, or amusements
    • G07F17/326Game play aspects of gaming systems
    • G07F17/3272Games involving multiple players
    • G07F17/3276Games involving multiple players wherein the players compete, e.g. tournament
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/131Protocols for games, networked simulations or virtual reality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features 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/50Features 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/55Details of game data or player data management
    • A63F2300/5546Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history
    • A63F2300/5566Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history by matching opponents or finding partners to build a team, e.g. by skill level, geographical area, background, play style
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features 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/60Methods for processing data by generating or executing the game program
    • A63F2300/63Methods for processing data by generating or executing the game program for controlling the execution of the game in time
    • A63F2300/636Methods for processing data by generating or executing the game program for controlling the execution of the game in time involving process of starting or resuming a game
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/54Presence management, e.g. monitoring or registration for receipt of user log-on information, or the connection status of the users

Abstract

복수의 게임 플레이어들에 대한 게임 세션들을 셋업하는 것을 가능케 하는 서비스. 각각이 컴퓨터 게임을 플레이할 수 있는 컴퓨팅 장치들을 갖고 있는 다수의 게임 플레이어들이 상기 서비스에 의해 함께 연결(link)된다. 상기 서비스는 상기 플레이어들의 서브세트(subset)가 동일한 레벨에서 상기 게임의 플레이를 동시에 시작할 수 있도록 플레이어가 공통 게임 세션을 셋업할 수 있게 한다. 또한, 상기 서비스는 게임 경기(game competition)들이 구성되어 상기 게임 플레이어들의 서브세트 사이에서 플레이될 수 있게 한다.
온라인 게임, 컴퓨팅 장치, 매치메이킹(matchmaking), 경기(competition)

Description

게임 컨텍스트 밖에서의 온라인 게임 세션 셋업{SETTING UP ON-LINE GAME SESSI0NS OUT OF A GAME CONTEXT}
본 발명은 일반적으로 게이밍 및 멀티미디어 장치의 분야에 관한 것이다. 특히, 본 발명은 온라인 게임 세션들에 관한 것이다.
온라인 게이밍에서, 게임 호스팅 서비스 및 게임 개발자들은 온라인 게이밍 경험을 추적하고 개인화(personalize)하는 다수의 방법들을 만들어냈다. 기존 시스템들의 하나의 단점은 다수의 특징들이 서로 관계없이 성장하였다는 것이다. 게임들은 게이머들에 관한 데이터 블롭들(blobs of data)을 중앙 서비스에 대해 전후로 송신하지만, 서비스는 게임 컨텍스트 밖에서 그 데이터를 이해하고 수집할 방법을 갖고 있지 않다. 게임들은 그들 자신의 웹사이트를 호스팅할 수 있지만, 거기에 표시된 데이터는 다른 게임들에게는 보편적으로 액세스 가능하지 않다.
어떤 점에서, 서비스 및 게임들은 거대하지만 분리된 자원들을 게이머들에게 제공하는 2개의 평행 커뮤니티(parallel communities)를 제공한다. 우선, 게임 커뮤니티에서는, 게임을 플레이하는 동안, 게이머는 특정 게임을 플레이하는 다른 사람들의 커뮤니티, 그 게임의 리더보드(leaderboards), 및 그 게임에서의 그의 개인적 업적(personal achievements)을 볼 수 있다. 게임은 서비스 데이터로부터 친구 가 온라인인지를 게이머에게 알릴 수 있지만, 그 친구가 서비스에서 정확히 무엇을 하고 있는지 또는 그가 언제 이용 가능하게 될지는 게이머에게 알리지 못한다.
두 번째로, 서비스 커뮤니티에서는, 서비스는 게이머 플레이어의 이력, 그가 플레이한 모든 게임들, 그가 온라인에서 소비하는 시간의 양, 그의 친구 목록의 사이즈 및 친구들이 플레이하였거나 플레이하고 있는 모든 게임들, 송신 및 수신된 친구 초청들, 송신 및 수신된 메시지들, 및 그 게이머가 제공하고 수신한 모든 피드백을 알고 있다.
시스템들은 이들 온라인 커뮤니티들을 이용하여 여러 플레이어들을 매치시켜 그들이 멀티-플레이어 게임들을 플레이할 수 있도록 하였다. 그럼에도, 일반적으로, 전형적으로 단일 게임 또는 작은 패밀리의 게임들에서의 기량 또는 경험을 강조하는 그러한 시스템들은, 각종의 개인적 동기(personal considerations)에 기초하여 공유 상호작용(shared interaction)을 즐길 것 같은 플레이어들의 그룹들이 게임 컨텍스트의 밖에서 그룹을 형성한 다음 공동으로 멀티플레이어 게임에 참가하는 것을 허용하지 않는다.
일반적으로, 콘솔-기반 매치메이킹 및 경기 시스템들(console-based matchmaking and competitions systems)은 각 개개의 게임 개발 팀의 창조성 및 자원들에 의해 제한되었다. 각 팀은 그 자신의 매치 및 경기 인터페이스를 작성해야 한다. 게이머들에게, 이것은 그가 매번 매치메이킹 또는 경기 UI를 다시 배워야 한다는 것을 의미한다. 각 게임은 그 자신의 매치메이킹 및 경기 시스템을 만들어내므로, 게이머들은 서비스의 전역에서 매치 및 경기 옵션들을 볼 방법이 없었다. 게이머들은 가장 큰 플레이어들의 커뮤니티가 어디에 있는지 또는 어느 것들이 가장 많은 경기들을 호스팅하고 있는지에 대하여 거의 알지 못한다.
또한, 매치메이킹 인터페이스들은 전형적으로 각 개개의 게임의 코드의 일부였기 때문에, 게이머들은 한 게임에서 다른 플레이어들과의 매치를 만들고 그 후 그 플레이어들의 그룹과 다른 게임으로 옮겨갈(roam) 능력이 없었다.
일부 게임들은 콘솔 경기들의 상태를 작성하고, 관리하고, 보기 위해 웹을 이용하였지만, 그 경험은 그것이 작동하게 하기 위해 게이머들 및 게임 개발자들에게 복잡한 일련의 단계들을 수반하였다. 또한, 웹 경기 관리 시스템들은 개발된 게임들의 특정 패밀리에 밀접하게 묶여 있었다. 타이틀들의 패밀리 밖의 게임들은 웹 시스템으로부터 이익을 얻을 수 없다.
<발명의 개요>
본 발명은 멀티-플레이어 컴퓨터-기반 게임을 플레이하기 위한 시스템들 및 방법들을 포함한다.
이 시스템들 및 방법들은 복수의 상이한 게임들로부터 구성 설정들을 수신한다. 이 구성 설정들은 게임의 파라미터들에 관한 정보를 제공하여, 상기 서비스가 게임의 허용된 파라미터들에 따라서 복수의 플레이어들을 매치시키는 능력을 갖게 되거나 또는 플레이어들이 그 파라미터들에 따라서 파티 세션(party session)들을 만들고 그 후 그것들에서 다른 플레이어를 초청하게 한다.
복수의 플레이어들에 관한 정보 및 컴퓨팅 장치 상에서 동작하는 복수의 상이한 게임들에 관한 정보를 갖는 데이터베이스를 갖는 서비스가 제공된다. 상기 서비스에는 플레이어로부터 상기 복수의 상이한 게임들 중 하나의 게임의 선택 및 상기 게임에 대한 구성 설정들 중에서 상기 플레이어의 특정 선택을 수신하는 입력 장치가 연결된다. 상기 서비스는 게임과는 기능적으로 별개이고 플레이어가 상이한 게임 개발자들로부터의 다수의 상이한 게임들 중 어느 하나를 선택할 수 있게 한다. 또한 상기 서비스에는 복수의 컴퓨팅 장치에 시작 메시지를 출력하기 위한 출력 장치가 연결되고 상기 컴퓨팅 장치들은 상기 복수의 상이한 게임들 중 상기 하나의 게임과 상기 복수의 플레이어들의 함수로서 선택된다. 상기 메시지는 상기 컴퓨팅 장치들 모두가 동일한 방식으로 게임을 시작할 수 있도록 구성 설정들을 나타내는 정보를 포함한다. 상기 시스템은 또한 게임과 콘솔 간에 플레이어들의 그룹핑(groupings)을 기술하는 고유 식별자를 유지하기 위한 파티 및 세션 관리 API를 포함한다. 또한 상기 서비스에는 게임으로부터 게임 완료 메시지를 수신하기 위한 입력 장치가 연결된다. 이 메시지는 다른 게임을 플레이하기로 결정하는 상기 콘솔에 반환되는 플레이어들의 파티에 관한 정보를 포함한다.
상기 복수의 플레이어들에 관한 데이터베이스 내의 정보는 상기 플레이어들의 게임 플레잉 기량 및 사회 속성(social attributes)을 나타내는 정보를 포함한다. 이 시스템들 및 방법들은 상기 플레이어들의 게임 플레잉 기량 및 사회 속성의 함수로서 플레이어들의 서브세트(subset)를 매칭시킬 수 있다.
또한, 이 시스템들 및 방법들은 구조화된 경기(structured competitions)를 위하여 확장될 수 있다. 그러한 경우, 경기의 각 라운드 후에, 이 시스템들 및 방법들은 경기에 남아 있는 플레이어들의 함수로서 플레이어들에 복수의 시작 메시지 를 제공한다.
전술한 개요는 물론 이하의 발명의 상세한 설명은 첨부된 도면들과 함께 읽힐 때 더 잘 이해된다. 본 발명의 설명을 위하여, 도면들에는 본 발명의 예시적 구성이 도시되어 있지만, 본 발명은 개시된 특정 방법들 및 수단들에 제한되지 않는다.
도 1은 본 발명의 양태들이 구현될 수 있는 예시적 컴퓨터 네트워크 환경의 블록도이다.
도 2는 도 1의 네트워크 컴퓨팅 환경과 같은 네트워크 컴퓨팅 환경에 통합될 수 있는 예시적 콘솔을 도시하는 블록도이다.
도 3은 콘솔의 원격 서비스와의 상호작용을 도시하는 블록도이다.
도 4는 사용자 프로파일(User Profile)을 작성하기 위해 수집된 정보를 도시한다.
도 5는 사용자 프로파일을 표시하는 사용자 인터페이스의 예를 도시한다.
도 6은 사용자 프로파일을 표시하는 사용자 인터페이스의 다른 예를 도시한다.
도 7은 사용자 프로파일을 표시하는 사용자 인터페이스의 또 다른 예를 도시한다.
도 8은 게임 플레이어가 다른 게임 플레이어들에 대한 피드백을 제공할 수 있게 하는 피드백 메커니즘을 도시한다.
도 9는 플레이어들이 매치메이킹 세션에 대한 선택들을 필터링할 수 있고 그 후 그들의 설명자에 따라서 세션들의 목록 중에서 선택할 수 있게 하는 사용자 인터페이스를 도시한다.
도 10 역시 플레이어들이 매치메이킹 세션에 대한 선택들을 필터링할 수 있고 그 후 그들의 설명자에 따라서 세션들의 목록 중에서 선택할 수 있게 하는 사용자 인터페이스를 도시한다.
도 11은 매치메이킹 세션을 셋업할 때의 사용자 인터페이스 흐름을 도시하는 흐름도이다.
도 12는 경기 셋업 프로세스의 흐름도이다.
도 1은 본 발명의 양태들을 설명하는 데 도움이 되는 예시적 컴퓨터 네트워크의 다이어그램이다. 여기서 컴퓨터들(100a-lOOe)은 게임들 및 다른 애플리케이션들과 같은 컴퓨팅 개체(computing object)들 중 여러 가지 것들을 호스팅할 수 있다. 물리적 환경은 접속된 장치들을 컴퓨터들로서 도시하고 있지만, 그러한 도시는 단지 예시일 뿐이고 PDA, 게임 콘솔 등과 같은 다양한 디지털 장치들을 포함할 수 있다. 또한, 컴퓨터 네트워크(160)는 그 자신이 다수의 컴퓨터, 서버 및 라우터 등과 같은 네트워크 장치들을 포함할 수 있다.
분산 컴퓨팅 환경을 지원하는 각종의 시스템, 컴포넌트, 및 네트워크 구성들이 있다. 예를 들면, 컴퓨팅 시스템들은 유선 또는 무선 시스템들에 의해, 로컬 네트워크들 또는 널리 분산된 네트워크들에 의해 함께 접속될 수 있다. 현재, 네트워크들의 다수가 인터넷에 연결되는데 인터넷은 널리 분산된 컴퓨팅을 위한 인프라(infrastructure)를 제공하고 다수의 상이한 네트워크들을 망라한다. 본 발명의 양태들은 컴퓨터 판독가능 명령어, 코드 프래그먼트(code fragments), 애플리케이션 등을 다양한 분산된 컴퓨팅 장치들에 분배하는 데 이용될 수 있을 것이다.
네트워크 인프라는 클라이언트/서버, 피어-투-피어, 또는 하이브리드 아키텍처들과 같은 다수의 네트워크 토폴로지들을 가능케 한다. "클라이언트(client)"는 그것이 관련되어 있지 않은 다른 클래스 또는 그룹의 서비스들을 이용하는 클래스 또는 그룹의 멤버이다. 따라서, 컴퓨팅에서, 클라이언트는 다른 프로그램에 의해 제공되는 서비스를 요구하는 프로세스(즉, 개략적으로 명령어들 또는 태스크들의 세트)이다. 클라이언트는 다른 프로그램 또는 서비스 자체에 관한 어떤 작업 상세(working details)도 "알" 필요 없이 요구된 서비스를 이용한다. 클라이언트/서버 아키텍처, 특히 네트워크화된 시스템에서, 클라이언트는 통상적으로 다른 컴퓨터(즉, 서버)에 의해 제공되는 공유 네트워크 자원들에 액세스하는 컴퓨터이다. 서버는 전형적으로 인터넷과 같은 원격 네트워크 상에서 액세스 가능한 원격 컴퓨터 시스템이다. 클라이언트 프로세스는 제1 컴퓨터 시스템에서 활성 상태일 수 있고, 서버 프로세스는 제2 컴퓨터 시스템에서 활성 상태일 수 있고, 통신 매체를 통하여 서로 통신함으로써, 분산된 기능(distributed functionality)을 제공하고 복수의 클라이언트들이 서버의 정보-수집 성능을 이용하게 한다.
클라이언트들 및 서버들은 프로토콜 계층에 의해 제공된 기능을 이용하여 서로 통신한다. 예를 들면, 하이퍼텍스트 전송 프로토콜(HTTP: Hypertext-Transfer Protocol)은 월드 와이드 웹(WWW) 또는, 간단히, "웹(Web)"과 관련하여 이용되는 공통의 프로토콜이다. 전형적으로, URL(Uniform Resource Locator) 또는 인터넷 프로토콜(IP) 주소와 같은 컴퓨터 네트워크 주소가 서버 또는 클라이언트 컴퓨터들을 서로에 대하여 식별하기 위해 사용된다. 컴퓨팅 장치들 간의 통신은 통신 매체를 통하여 제공된다. 특히, 클라이언트 및 서버는 고용량 통신을 위한 TCP/IP 접속을 통하여 서로 연결될 수 있다.
일반적으로, 컴퓨터 네트워크는 네트워크 환경에서 전개(deploy)된 서버 장치들 및 클라이언트 장치들 양쪽 모두를 포함할 수 있다(피어-투-피어 환경에서는 장치들이 클라이언트 및 서버 양쪽 모두일 수 있다). 통신 네트워크(160)는 다수의 컴퓨팅 장치들(100a-lO0e) 사이에서 통신을 용이하게 하는 LAN, WAN, 인트라넷 또는 인터넷, 또는 이들 중 임의의 것의 조합일 수 있다. 또한, 통신 네트워크(160)는 무선, 유선, 또는 유선 및 무선 접속들의 조합을 포함할 수 있다. 또한, 컴퓨터 네트워크는 분산 컴퓨팅 환경을 포함할 수 있다. 그러한 환경에서 컴퓨팅 작업은 컴퓨터 네트워크 내의 어드레싱 가능한 요소들(addressable elements)인 다수의 컴퓨팅 장치들에 걸쳐서 분산될 수 있다.
본 발명의 일 양태에 따르면, 통신 네트워크(160)는 복수의 컴퓨터들(100a-100e)로부터 액세스 가능한 서비스(150)를 호스팅할 수 있다. 서비스(150)는 정보를 수집하고 컴퓨터들(100a-lOOe)의 사용자들을 추적하여 서비스의 모든 사용자들에 대하여 컴퓨팅 서비스를 제공한다.
도 2는 도 1의 네트워크 내의 컴퓨터들(100a-lOOe)로서 이용될 수 있는 멀티미디어/게이밍 콘솔(100)의 컴포넌트들을 예시한다. 멀티미디어 콘솔(100)은 레벨 1 캐시(102), 레벨 2 캐시(104), 및 플래시 ROM(Read Only Memory)(106)을 갖는 중앙 처리 장치(CPU)(101)를 갖고 있다. 레벨 1 캐시(102) 및 레벨 2 캐시(104)는 임시로 데이터를 저장하므로 메모리 액세스 사이클의 수를 감소시키고, 그에 의해 처리 속도 및 처리량을 향상시킨다. CPU(101)는 2 이상의 코어를 가질 수 있고, 따라서, 추가 레벨 1 및 레벨 2 캐시들(102 및 104)을 가질 수 있다. 플래시 ROM(106)은 멀티미디어 콘솔(100)의 전원이 켜질 때 부트 프로세스의 초기 단계 동안에 로딩되는 실행가능 코드를 저장할 수 있다.
그래픽 처리 장치(GPU)(108) 및 비디오 인코더/비디오 코덱(코더/디코더)(114)은 고속 및 고해상 그래픽 처리를 위한 비디오 처리 파이프라인을 형성한다. 데이터는 그래픽 처리 장치(108)로부터 버스를 통하여 비디오 인코더/비디오 코덱(114)으로 운반된다. 비디오 처리 파이프라인은 데이터를 텔레비전 또는 다른 디스플레이에 송신하기 위해 A/V(오디오/비디오) 포트(140)에 출력한다. 메모리 컨트롤러(110)가 GPU(108)에 접속되어, RAM(Random Access Memory)과 같은, 그러나 그것에 제한되지 않는, 각종의 메모리(112)에의 프로세스 액세스를 용이하게 한다.
멀티미디어 콘솔(100)은 1/0 컨트롤러(120), 시스템 관리 컨트롤러(122), 오디오 처리 장치(123), 네트워크 인터페이스 컨트롤러(124), 제1 USB 호스트 컨트롤러(126), 제2 USB 컨트롤러(128) 및 프런트 패널 I/O 서브어셈블리(130)를 포함하고 이들은 바람직하게는 모듈(118) 상에 구현된다. USB 컨트롤러들(126 및 128)은 주변 컨트롤러들(142(1)-142(2)), 무선 어댑터(148), 및 외부 메모리 장치(146)(예컨대, 플래시 메모리, 외부 CD/DVD ROM 드라이브, 이동식 매체 등)에 대한 호스트들로서 기능한다. 네트워크 인터페이스(124) 및/또는 무선 어댑터(148)는 네트워크(예컨대, 인터넷, 홈 네트워크 등)에의 액세스를 제공하고 이더넷 카드, 모뎀, 블루투스 모듈, 케이블 모뎀 등을 포함하는 매우 다양한 각종 유선 또는 무선 어댑터 컴포넌트들 중 어느 것이라도 될 수 있다.
시스템 메모리(143)는 부트 프로세스 동안에 로딩되는 애플리케이션 데이터를 저장하기 위해 제공된다. 매체 드라이브(media drive)(144)는 DVD/CD 드라이브, 하드 드라이브, 또는 다른 이동식 매체 드라이브 등을 포함할 수 있다. 매체 드라이브(144)는 멀티미디어 콘솔(100)에 대해 내장형 또는 외장형일 수 있다. 애플리케이션 데이터는, 예컨대, 멀티미디어 콘솔(100)에 의한 실행, 재생(playback)을 위해 매체 드라이브(144)를 통하여 액세스될 수 있다. 매체 드라이브(144)는 시리얼 ATA 버스 또는 다른 고속 접속(예컨대, IEEE 1394)과 같은 버스를 통하여 I/O 컨트롤러 (120)에 접속된다.
시스템 관리 컨트롤러(122)는 멀티미디어 콘솔(100)의 사용 가능성(availability)을 보증하는 것에 관련된 각종의 서비스 기능들을 제공한다. 오디오 처리 장치(123) 및 오디오 코덱(132)은 고충실도(high fidelity) 및 스테레오 처리를 갖는 대응하는 오디오 처리 파이프라인을 형성한다. 오디오 데이터는 오디오 처리 장치(123)와 오디오 코덱(132) 간에 통신 링크를 통하여 운반된다. 오디오 처리 파이프라인은 데이터를 오디오 성능을 갖는 외부 오디오 플레이어 또는 장치에 의한 재생을 위해 A/V 포트(140)에 출력한다.
프런트 패널 I/O 서브어셈블리(130)는 전원 버튼(150) 및 꺼냄 버튼(eject button)(152)의 기능은 물론, 멀티미디어 콘솔(100)의 외부 표면에 노출된 임의의 LED들(발광 다이오드들) 또는 다른 지시자들(indicators)을 지원한다. 시스템 전원 모듈(136)은 멀티미디어 콘솔(100)의 컴포넌트들에 전력을 제공한다. 팬(138)은 멀티미디어 콘솔(100) 내의 회로의 열을 식힌다.
CPU(101), GPU(108), 메모리 컨트롤러(110), 및 멀티미디어 콘솔(100) 내의 여러 다른 컴포넌트들은 각종의 버스 아키텍처들 중 임의의 것을 이용한 직렬 및 병렬 버스, 메모리 버스, 주변 버스, 및 프로세서 또는 로컬 버스를 포함하는 하나 이상의 버스를 통하여 상호접속된다. 예로서, 그러한 아키텍처는 PCI(Peripheral Component Interconnects) 버스, PCI-익스프레스 버스 등을 포함할 수 있다.
멀티미디어 콘솔(100)의 전원이 켜지면, 시스템 메모리(143)로부터 메모리(112) 및/또는 캐시들(102, 104)로 애플리케이션 데이터가 로딩되어 CPU(101) 상에서 실행될 수 있다. 애플리케이션은 멀티미디어 콘솔(100) 상에서 이용 가능한 서로 다른 멀티미디어 유형들에 탐색(navigate)할 때 일관된 사용자 경험을 제공하는 그래픽 사용자 인터페이스를 제공할 수 있다. 동작 시에, 매체 드라이브(144) 내에 포함된 애플리케이션들 및/또는 다른 매체는 매체 드라이브(144)로부터 시작(launch)되거나 플레이(play)되어 멀티미디어 콘솔(100)에 추가 기능들을 제공한다.
멀티미디어 콘솔(100)은 단순히 시스템을 텔레비전 또는 다른 디스플레이에 접속시킴으로써 독립형(standalone) 시스템으로서 운영될 수 있다. 이 독립형 모드에서, 멀티미디어 콘솔(100)은 1명 이상의 사용자가 시스템과 상호작용하거나, 영화를 보거나, 음악을 들을 수 있게 한다. 그러나, 네트워크 인터페이스(124) 또는 무선 어댑터(148)을 통하여 이용 가능하게 된 광대역 접속의 통합으로, 멀티미디어 콘솔(100)은 또한 도 1에 도시된 보다 큰 네트워크 커뮤니티에의 참가자로서 운영될 수 있다.
본 발명의 일 양태에 따르면, 콘솔(100) 상에서 게임이 실행될 때, 그것은 통신 네트워크(160) 상에서 동작하는 서비스에 정보를 제공한다. 서비스는 서비스에 접속된 사용자들 모두에 대한 정보를 추적하여 풍부한 사용자 경험을 제공한다. 서비스는 게임들, 콘솔들, 컴퓨팅 장치들 등의 전역에서 사용자 정보를 추적한다. 서비스의 모든 사용자들에 대한 정보를 추적함으로써, 서비스는 모든 사용자들에 대한 통계를 수집하고 게임 플레잉 능력을 측정하고, 친구들에 관한 정보(예컨대, 그들이 무슨 게임을 플레이하고 있는지 및 그들이 어떤 기량 레벨에 도달했는지)를 제공함으로써, 보다 풍부한 사용자 경험을 제공하고, 사용자 업적들을 추적하고, 일반적으로 큰 사용자 커뮤니티에 걸쳐서 수집된 게임에 대한 통계들을 측정할 수 있다.
게임들에 걸쳐서 일관된 데이터를 제공하기 위하여, 이 시스템은 각 게임이 특정 게임에 대한 게임 데이터를 정의하는 (서비스에 의해 정의된 스키마에 따른) 구성 파일을 발생시키는 도식화된 구성 구동 프로세스(schematized, configuration driven process)를 구상(contemplate)한다. 게임 구성 프로세스를 통하여, 게임들은 각 게임 플레이어에 관하여 그 게임이 발생시키는 데이터를 기술한다. 구성 프로세스를 이용함으로써, 서비스는 게임으로부터 데이터가 흐를 때 그 데이터를 이해할 수 있을 것이고, 그것을 서비스가 그 서비스의 각 사용자의 풍부한 프로파일을 생성하는 것으로 이해하는 다른 데이터와 의미 있는 방식으로 통합할 수 있을 것이다. 프로파일은 사용자가 서비스에서 진행할 때마다 그를 따를 것이다. 즉, 그것은 게임 및 위치에 관계없다.
각 사용자(다르게는 플레이어 또는 게이머로 불림)에 대하여, 서비스는 각 게임 세션마다 및 게임 세션이 종결된 후에도 사용자 프로파일을 작성하기 위해 다수의 데이터(프로파일 데이터라 불림)를 수집할 것이다. 일반적으로, 프로파일을 공급하는 서비스 경험들은 다음의 것들을 포함한다:
1. 사용자가 그 자신에 관하여 말하는 것(선호되는 사회 게임플레이(social gameplay) "존(zone)"을 포함하는, 정교한 개인 프로파일의 구성 및 계정 셋업을 포함함).
2. 다른 사람들이 사용자에 관하여 말하는 것(피드백 스코어 및 공공연히 보이는 평판).
3. 게임들이 사용자에 관하여 말하는 것(그 중에서도 특히, 플레이어의 기량을 평가하기 위해 게임 플레이로부터 나오는 데이터의 통합 및 게임 구성).
4. 시스템이 사용자에 관하여 말하는 것(온라인 시간(time online), 플레이된 게임들의 집합, 친구 목록, 콘솔 거동(console behavior) 등)
시스템은 게이머들의 사회 커뮤니티를 생성하고 게이머들 간의 관계를 성장시키려고 하는 서비스들 및 애플리케이션들에 대한 빌딩 블록(building block)으로서 기능하는 "사용자 프로파일(User Profile)"을 생성한다. 이 사용자 프로파일은 특정 사용자(즉, 게임 플레이어의 디지털 아이덴티티)에 관한 전체 정보(예컨대, 메타데이터)이다. 사용자 프로파일은 이 정보를 수집하고 커뮤니티에 의미 있는 방식으로 공개(expose)하는 서비스들의 세트로부터 개발된다. 사용자 프로파일은 또한 사용자들이 그들의 게이밍 경험을 사용자 지정(customize)하고 향상시킬 수 있도록 개인화(personalization)를 가능케 한다. 아래에서 더 상세히 논의되겠지만, 사용자 프로파일은 게이머카드(Gamercard), 게임 업적(game achievements), 및 게이머 선호(gamer preferences)를 포함하는, 그러나 이들에 제한되지 않는, 각종 컴포넌트들로 이루어진다.
도 3을 참조하면, 본 명세서에서 보다 충분히 설명되는 게임 세션 서비스와의 사용자 상호작용뿐만 아니라 프로파일 상호작용을 구현하는 데 이용될 수 있는 예시적 아키텍처의 개관(overview)이 도시되어 있다. 콘솔(100)은 음성/채트(chat), 친구 목록, 매치메이킹, 콘텐츠 다운로드, 로밍(roaming), 피드백, 토너먼트, 음성 메시징, 및 업데이트와 같은 서비스들(158)을 게이머들에게 제공하는 원격 서비스(150)와 상호작용한다. 서비스(150)는 또한 서비스들(158) 및 게임들(154)에 의해 사용되는 구성 데이터(164) 및 프로파일 데이터서비스(162) 내에 사용자 프로파일들을 유지한다. 서비스(150)는 사용자 프로파일들을 수집하고, 다른 서비스들(158)에 의해 공급된 정보를 모으고, 처리하고, 사용자 프로파일 관련 서비스들을 검색하기 위한 실시간 클라이언트 요구들을 이행한다. 데이터베이스(162) 내의 사용자 프로파일들도, 게임에 의해, 많은 가운데서도 특히, 개인화 및 사용자 지정 등을 가능하게 하는 데 이용된다.
콘솔(100)을 이용하여, 사용자는 가이드(156)와 상호작용할 수 있다. 가이드(156)는 인터페이스를 제공하고 거기에서 사용자는 서비스(158)에 의해 제공된 각종 온라인 영역들 및 옵션들에 탐색하고 들어갈 수 있다. 서비스(150)에 의해 저장된 구성 데이터(164)는 가이드(156)에 의해 제공된 특징들 및 옵션들을 결정하는 데 이용될 수 있다. 게임(154)이 실행중일 때, API들의 정의된 세트(플레이어들에 관한 데이터를 기입하기 위한 SetContext, SetProperty, SetAchievement, 및 Session API들, 및 통계(stats), 업적, 및 다른 사용자 프로파일 데이터를 보기 위한 다수의 전문화된 판독 API들을 포함함)가 서비스들(158)을 호출하고 그것과 상호작용하는 데 이용된다. API들을 통하여 사용자 프로파일 정보를 요구할 때, 게임(154)은 사용자의 고유 식별자를 전달할 수 있다. 서비스(150)는 게이머카드(아래에서 논의됨), 게임 통계, 게임 업적, 제휴(affiliations), 게임 설정 등을 반환할 수 있다. 예시적 아키텍처의 다양한 양태들에 대한 추가 상세가 아래에서 제공된다.
서비스(158)는 킬(kill)의 수, 최적 랩 시간(best lap times), 및(중요하게는, 매치메이킹에 필요한 기량 값들을 계산하기 위한) 승/패(win/loss)와 같은 매우 다양한 게임 내 통계(in-game stats)를 추적하고 표시하는 데 도움이 된다. 모든 통계는 사용자가 플레이하는 각종 게임들에 의해 제공되고 플레이어의 사용자 프로파일에 포함시키기 위해 서비스에 제공된다. 예를 들면, 1인칭 슈팅 게임 타이틀(a first-person shooter title)은 각 'Map' 컨텍스트에 대하여 독립적으로 추적될 'Kills' 속성을 정의하기를 원할 수 있다(예컨대, 블러드 크릭의 5 킬 대 배틀 레인지의 10 킬(5 Kills on Blood Creek vs. 10 Kills on Battle Range)). 그 정보는 다음과 같이 표시될 수 있다:
" PER - MAP KILLS "
Map Kills
Blood Creek 5
Battle Range 10
각 게임은 게임의 캐릭터에 매칭되고 서비스(158)의 각 사용자에 대하여 추적될 수 있는 최소 한도의 정보 세트를 지원한다.
사용자 프로파일(166)의 소유자는 직접 그의 사용자 프로파일(166)을 편집하고 사용자 프로파일의 각 부분을 누가 볼 수 있는지를 제어할 수 있다. 사용자 프로파일(166)은 일반 필드들(예컨대, 타일(tile), 국가(country), 언어, 장르, 인사(greeting) 등) 및/또는 시스템 설정들(예컨대, 음성 출력, 컨트롤러 진동, 캐릭터 이름, 게임 포맷, 게임 모드 등)을 통하여 편집될 수 있다. 예컨대, 존재 정보(presence information)는 친구들에게만 제한하고, 게임 업적은 모두에게 보이도록 하는 등을 위하여 사용자 프로파일(166)에 대하여 프라이버시/옵트-아웃 설정들(Privacy/Opt-out Settings)이 조정될 수 있다.
사용자 프로파일은 "친구들(Friends)"이라고 알려진 다른 플레이어들의 목록과 관련될 수 있다. 친구들은 그 플레이어가 친구 목록(Friends List)에 있도록 초청한(및 그 초청을 수락한) 다른 게임들이다.
사용자 프로파일은 또한 "최근 플레이어들(Recent Players)"이라고 알려진 플레이어들의 목록과 관련될 수 있다. 최근 플레이어들은 사용자 프로파일 소유자가 모든 게임들에 걸쳐서 함께 플레이한 가장 최근의 N명의 플레이어들의 목록이다.
사용자 프로파일(166)은 다른 플레이어들(170)에 의해 제공되는 피드백을 포함할 수 있다. 피드백은 다른 사람들이 특정 게이머에 관하여 아는 것을 돕는다. 예를 들면, 그 게이머가 게임 세션에서 욕(foul language) 또는 공격적인 플레이를 사용하면, 다른 게이머들은 서비스(150)에 피드백을 제출(submit)할 수 있다. 피드백 메커니즘은 평판(reputations)을 구축함으로써 사용자 경험을 개선한다. 그러므로 플레이어들은 익명이지만, 축적된 피드백 때문에 알 수 없는 것은 아니다.
시스템의 다른 양태에서, 서비스(150) 및 게임들(154)은 사용자들의 온라인 및 오프라인 활동을 추적하여 게이머 프로파일(166) 내의 사용 통계(usage statistics)를 제공한다. 게이머가 온라인으로 플레이할 때, 플레이되는 게임들의 목록에 다른 사람들에게 보이게 되는 특정 게임 타이틀이 추가된다. 오프라인인 동안, 게임 콘솔(100) 및 게임(154)은 특정 플레이어의 게임 내 통계 및 업적들에 관한 상세 정보를 수집하도록 게임들을 인스트루먼트(instrument)하기 위한 메커니즘을 통하여 사용자의 활동을 추적한다. 게이머 프로파일(166)은 오프라인 플레이를 반영하기 위해 다음에 서비스(150)에 접속 중에 업데이트된다. 게임 업적은 사용자 프로파일 데이터 메커니즘을 통하여 게임들에 의해 서비스(154)에 보고될 수 있다.
도 5-8을 참조하면, 게이머 프로파일은 다수의 방식 및 양식(form)으로 보여질 수 있고, 전형적으로 게이머카드(172)에 표시된다. 게이머카드(172)는 콘솔(100) 및, 예컨대, 웹 상의 게임들에게 이용 가능한 게이머 프로파일(166)의 시각적 표현이다. 게이머카드(172)는 플레이어의 게이머 프로파일(166)의 요약 또는 스냅숏(snapshot)으로 기능한다. 게이머들은 게이머카드를 이용하여 매치메이킹 목록을 셋업할 수 있고 거기서 장래에 다시 플레이하기 위한 선호 플레이어들의 목록에 게이머들이 추가된다.
도 5에 도시된 바와 같이, 게이머카드(172)는 2개의 영역, 기본 영역(base area) 및 컨텍스트-특정(context-specific)(또는 확장) 영역(176)으로 나누어질 수 있다. 기본 영역(174)은 다수의 컨텍스트들에 걸쳐서 표준 및 일관된 방식으로 게이머 프로파일 정보의 세트를 제공하는 반면, 확장 영역(176)은 특정 컨텍스트에 맞도록 사용자 지정될 수 있다. 도 5-8의 게이머카드(172)는 가이드(156)의 컨텍스트에서 도시되어 있지만, 게이머카드(172)는 화면의 나머지와 시각적으로 분리되고 그것이 표시되는 화면의 배경색을 채용할 수 있다.
기본 영역(174)은 각 컨텍스트 내에서는 일관된 뷰(consistent view)이면서, 상이한 컨텍스트들에 대응하여 상이한 변형으로 제공될 수 있다. 예를 들면, 온라인 게이머카드(172)는 온라인 세션 동안에 한 플레이어가 다른 플레이어의 게이머카드(172)를 볼 때 보여진다. 온라인 기본 영역(174)은 플레이어의 게이머태그(Gamertag), 게임 타일, 전체 커뮤니티 레이팅, 게이머 Cred(포인트-기반 리워드 포인트 시스템), 게이머 존(gamer zone), 국가, 멤버십 티어(membershlp tier), 상(awards)과 같은 상세들을 포함한다. 오프라인 게이머카드(172)는 플레이어가 그 자신의 게이머카드(172)를 보고 있을 때 보여진다. 오프라인 기본 영역(174)은 온라인 기본 영역의 서브세트(subset)를 포함할 수 있고 플레이되는 타이틀 및 플레이되는 시간에 관한 정보를 더 포함할 수 있다. 게이머카드(172)의 기본 영역(17)은 바람직하게는 사이즈가 고정되고, 일관된 정적인 레이아웃을 갖고 타일 또는 게이머 Cred와 같은 모든 정보 요소들의 고정된 배치를 갖는다.
확장 영역(176)은 "프로파일 보기(View Profile)", "친구 초청 보내기(Send Friend Invite)", 및 "피드백 보내기(Send Feedback)" 등과 같은 게이머카드 액션들의 세트를 포함할 수 있다. 게이머카드들의 확장 영역은 바람직하게는 사이즈가 고정되지 않는다. 그것은 컨텍스트에 기초하여 변할 수 있기 때문이다. 도 5-7에 도시된 바와 같이, 사용자는 가이드(156) 및 친구 목록(178)을 통하여 다른 사용자들의 목록을 통하여 스크롤할 수 있다. 다른 사용자들에 대한 게이머카드는 사용자가 그의 친구들 사이에서 스크롤할 때 표시될 수 있고 또는 사용자에게 게이머 프로파일의 전체 보기(full view)를 보는 옵션이 제공될 수 있다. 전체 보기 모드는 확장 영역(176)의 상이한 뷰들로 이루어지고 프로파일 요약(Profile Summary), 커뮤니티 피드백(Community Feedback), 게임 업적(Game Achievements), 활동(Activity), 및 사회 네트워크(Social Network)와 같은 몇 개의 부분들을 포함할 수 있다. 가이드(156)는 각종 옵션 및 설정 등에 탐색하기 위해 친구들의 목록, 최근 플레이어들(및 각 플레이어에 대한 요약 부분들), 사용자 홈 페이지를 통하여 진행할 수 있다.
프로파일 요약은 플레이된 게임들의 수, 플레이된 시간, 타일, 인사 등에 관한 정보를 포함한다. 커뮤티티 피드백은 스타일, 스포츠맨십, 언어, 협력 등에 관한 레이팅(rating)들을 포함한다. 게임 업적 부분은 최근 타이틀, 경험 포인트(게이머 Cred), 플레이된 시간, 게임 특정 통계 및 업적 등을 포함한다. 활동 부분은 획득된 게이머 Cred, 플레이된 세션들, 플레이된 총 시간, 서비스 상의 활성인 날들(active days on the service) 등을 포함한다. 사회 네트워크는 친구, 그룹, 긍정/부정 피드백 카운트(positive/negative feedback count) 등을 포함한다.
매치메이킹 ( Matchmaking ): 온라인, 멀티플레이어 게임들의 경우에, 매치메이킹은 게임 플레이어를 세션(session)에 접속한다. 매치가 만들어진 세션(Match made session)은 2명 이상의 플레이어 또는 게이머들이 세션을 종료하기로 결정할 때까지 또는 세션이 그것의 종료 기준(end creteria)(게임에 의해 정해짐)을 만족시킬 때까지 게임을 플레이하는 것을 포함하는 게임 플레이의 인스턴스이다. 세션을 생성하는 사람은 호스트(host)이다. 일부 게임들은 호스트가 없고(hostless), 이는 그 게임이 그 게임을 창시(originate)한 사람에게 어떤 특별한 기능을 할당하지 않는다는 것을 의미한다. 그러한 경우에, 창시자는, 사실상, 특정 기준을 갖는 세션을 검색하고 있던 사람일 수 있고, 그것이 발견되지 않았을 때, 게임은 그 사람에 대한 세션을 생성하여 다른 사람들이 그것에 매치하도록(match into it) 그것을 광고하였다. 매치메이킹은, 최소한으로, 이미 1명의 플레이어가 그 자리에 있는 세션에 조인(join)하는 것을 포함한다. 슬롯(slot)을 찾고 있는 사람에게 이용 가능한 개방된 슬롯들(open slots)이 있고 게임 플레이가 아직 시작하지 않았다면(게임이 "로비(lobby)" 상태에 있다면), 세션은 조인 가능(joinable)하다고 말한다. 진행 중 조인(join in progress) 세션들을 갖고 있는 일부 게임들은 모든 공개 슬롯(public slot)이 채워질 때까지 세션이 조인 가능하다는 것을 광고할 것이다. 게이머는 게임 내에서 또는 게임 밖(out-of-game) 매치 메이킹 시스템에서 "매치메이킹(Matchmaking)"을 선택함으로써 매치를 만든다. 매치메이킹 UI는 게이머가 그의 세션 검색에 일부 필터들을 추가하게 할 수 있고 (예컨대, 맵(map) 또는 난이도(difficulty level)를 지정하는 것 같이), 또는 그것은 게이머를 직접 검색 쿼리(search query)에 밀어넣을(push) 수 있다. 대부분의 경우에, 필터가 있거나 필터가 없거나, 게이머에게 세션들의 목록으로 이루어진 세션 검색 결과(session search result)가 주어진다. 각 세션은 그 세션에 관한 가장 두드러진 정보의 간단한 요약을 포함하는 세션 설명자(session descriptor)에 의해 정의된다. 그 후 게이머는 세션을 선택하고 그것에 조인한다. 전형적으로, 플레이어는 그 후 로비에 들어가서 게임 플레이가 시작되기 전에 그 게임에 매치하는(match into the game) 다른 플레이어들을 기다린다. 어떤 경우에는, 어떤 검색 결과도 보여지지 않고, 플레이어들은 대신에 그들의 검색 기준을 가장 만족시키는 게임의 로비에 직접 드롭(drop)된다.
이 시스템에 포함된 일종의 매치메이킹, "사회 매치메이킹(Social Matchmaking)"은 사용자 프로파일 데이터 및 "제휴 목록(Affiliates List)"을 이용하여 매치 세션들(match sessions)의 사회 역학(social dynamics)을 개선한다. 게임 플레이어가 여기서 "사회 매치(Social Match)"로 기술되는 시스템 내의 세션에 매치메이크(matchmake)하기로 결정할 경우, 제1 세션에서, 그가 그 자신을 기술하여 설정한 프로파일 데이터는 함께 플레이할 가장 좋은 동료 새로운 게이머들(best fellow new gamers)의 "자극을 도모하고(prime the pump)" 그들을 찾는 데 이용된다. 단지 플레이하는 것만으로, 게임 플레이어는 "제휴 목록"(후술됨) 상의 최근 플레이어들이 되는 동료 게이머들의 그룹과 제휴한다. 서비스는 바람직하게는 장래의 세션에서 모르는 사람들보다 최근 플레이어들과 플레이하는 것을 우선순위화하지만, 일단 게임 플레이어가 긍정 피드백을 제공하면, 이들 "긍정 피드백(positive feedback)" 사람들은 시스템에 의해 기억되어 한층 더 높은 우선순위가 주어진다. 시간이 지나서, 게이머가 일단의 플레이어들과 매우 친해질 때, 그는 그들에게 친구가 되도록 청한다. 이들 친구 게이머들에게는 가장 높은 우선순위가 주어진다.
이 사회 매치메이킹 시스템은 유사한 목적을 갖고 유사한 프로파일을 공유하는 사람들을 연결하여 그들 모두가 게임 플레이의 안과 밖에서(그러나 주로 게임 플레이에서) 좋은 시간을 갖는다는 것을 보증할 것이다. 매치메이킹은 -- 피드백 및 프로파일을 이용하여 -- 사람들이 그들의 온라인 커뮤니티를 확장하고 시간이 지남에 따라서 점점 더 정밀화된 매치로 새롭게 하는 것을 용이하게 한다. 궁극적으로, 매치메이킹은 새로운 사람들을 만나고 긍정적인 경험의 이력을 만드는 안전하고 안정된 장소로서 사람들을 서비스에 묶을 것이다.
게이머카드에서 표면화하는 사용자 프로파일의 양태들 중 몇몇은 게임 플레이어를 세션에 매치시키는 데 이용될 수 있다. 하이 레벨에서, 게임 플레이어가 서비스(150)에 가입(sign in)하는 경우의 본 발명의 일 양태에 따르면, 그가 플레이하기를 선호하는 사회 환경의 종류를 가장 잘 설명하는 게이머 존(Gamer Zone)을 선택하도록 그에게 요구된다. 서비스가 사용할 다른 프로파일 데이터를 갖기 전에, 이 게이머 존은 그 게임 플레이어를 동일한 존을 선택한 다른 플레이어들과 매치시키는 데 이용된다. 이 매치는 이 동일 존을 갖는 대다수의 플레이어들을 포함하는 사회 세션들을 찾는 단순한 데이터베이스 쿼리에 의해 행해진다.
시간이 지나고 서비스가 각 플레이어에 관한 추가 데이터를 가질 때, 이 매치 쿼리는 세션에의 각 참가자에 대한 사용자 프로파일의 다수의 중요한 양태들을 평균함으로써 개선될 수 있다(그러나 시간이 지남에 따라서, 존은 또한 평판, 통계를 통하여 계산된 기량, 및 성취된 업적들에 의해 정의된 그의 경험을 피드백한다). 그 후 시스템은 매치를 찾고 있는 플레이어들의 사용자 프로파일과 비교될 수 있는 세션 "프로파일"을 제공할 수 있다. 그 후 매치 시스템은 이 세션 프로파일을 세션에 조인하기를 원하는 개인의 사용자 프로파일 내의 값들에 비교함으로써 이 세션 프로파일을 쿼리할 수 있다. 만일 사용자 프로파일의 매치가 (동일 존을 공유하고 평판, 기량, 및 경험에 대한 수치 값들의 각각에 대한 미리 지정된 범위 내에 있는) 세션 프로파일 값들에 충분히 가까우면, 사용자에게 그 세션이 매치(Match)로서 보여질 것이다. 만일 매치 비교가 미리 지정된 범위 내에 있지 않다면, 긍정 결과가 달성될 때까지 사용자의 쿼리는 계속되어 다른 세션의 세션 프로파일들에 비교할 것이다. NAT 유형, 다른 플레이어들에의 물리적 근접, 시스템 상에서 플레이된 시간, 플레이된 게임들 등의 모두가, 매치 검색이 수행될 때 백 엔드(back end)에서 폴드 인(fold in)된다.
사용자 프로파일에 의한 쿼리에 기초한 매치메이킹에 더하여, 사회 매치메이킹 시스템은, 친구들, 최근 플레이어들, 및 최근 플레이어들에 대한 피드백의 추적과 관련하여, 매치에 대하여 우선순위화되는 제휴들의 네트워크를 구성한다.
제휴 목록(Affiliates list)은 (1) 친구들(즉, 플레이어가 메시지 및 상태 정보의 교환을 허용하는 바람직한 사회 네트워크에 초청하였고, 그 초청을 수락한 사람들), (2) 긍정 피드백 사람들(즉, 플레이어가 그들에 관하여 긍정 피드백을 제공한 사람들), 및 (3) 최근 플레이어들을 포함하는 플레이어에 대한 사람들의 우선순위화된 목록이다. 사회 매치메이킹 서비스는 항상 먼저(상기 쿼리를 수행하기 전에) 서비스 상의 제휴 세션들의 존재를 찾는다. 만일 플레이어의 제휴 목록 상의 어느 한 사람이 온라인이고 조인 가능한 세션에 있다면, 서비스는 그 세션을 반환할 것이다. 만일 복수의 제휴 세션들이 있다면, 긍정 피드백 사람들을 갖는 것들 또는 최근 플레이어들을 갖는 것들에 비하여 친구들을 갖는 것들에 우선순위가 주어질 것이다.
상기에 따라서, 도 6은 가이드(156) 내의 최근 플레이어들의 목록을 예시한다. 플레이어가 어떤 사람과 온라인 게임 세션을 플레이한 경우 그 플레이어의 최근 플레이어 목록에 그 사람이 추가된다. 최근 플레이어들을 찾아보기(browsing)할 때 표시된 게이머카드는 기본 영역 및 최근 게임들, 피드백, 및 최근 플레이어들의 존재에 관한 정보를 제공하는 확장 영역을 보여준다. 도 7은 일반 업적과 같은, 최근 플레이어들에 관하여 얻어질 수 있는 추가 상세를 예시한다.
특히, 도 8은 게임 플레이어가 다른 게임 플레이어들에 대하여 피드백을 제공할 수 있게 하는 피드백 메커니즘을 예시한다. 이 피드백 옵션들은 단지 보고 있는 플레이어가 전에 그 사람과 플레이한 적이 있는 경우 게이머카드 상에서 이용 가능하다. 이 피드백 정보는 그 후 매치메이킹 결과를 개선하는 데 이용된다. 즉, 당신이 장래의 게임들에서 이 게임 플레이어와 플레이하기를 원하는지 여부를 나타낸다. 사람에 대하여 긍정 피드백을 제공함으로써, 그 사람은 그 플레이어의 제휴 목록에서 우선순위가 올라간다. 또한, 피드백은 그 게임 플레이어의 평판에 영향을 미치고 그 플레이어가 장래의 게임들에서 함께 그룹화되는 플레이어들의 그룹을 변경할 수 있다.
그 후, 매치메이킹을 위하여, "일방(one-way)" 친구 목록의 작성, 즉, 당신이 몇 번이고 만나는 사람들의 목록을 작성하는 저임계치(low threshold) 메커니즘이 피드백된다. 이 메커니즘은 일반적으로 개선된 매치메이킹 경험으로서 외에는 눈에 보이지 않는다. 예를 들면, 게임 플레이어가 특정 사람과 다시 플레이하고 싶다는 것을 나타낼 때, 시스템은 일방 친구 목록에서 그 정보를 추적하여 다른 플레이어가 친구 목록에 있도록 초청되거나 초청을 수락할 필요가 없도록 한다.
만일 플레이어가 어떤 사람에 대하여 부정 피드백을 제공하면, 그 사람은 "회피(Avoid)" 목록으로 이동하고, 사회 매치메이킹을 위하여, 그 사람을 포함하는 장래의 세션들은 그 플레이어에 대하여 회피될 것이다.
(사용자 프로파일 데이터 및 제휴와의 매칭을 이용한) 상술한 것과 같은 사회 매치메이킹에 더하여, 시스템은 또한 특정 게임에서의 플레이어들의 기량에 기초해서만 플레이어들을 매치시키는 "랭킹 매치(Ranlted Match)" 옵션을 제공한다. 게임 통계로서 수집된 이 기량도 사용자 프로파일에 저장된다. 기량 기반 매치(skill-based match)는 경쟁적인 플레이어들에 의해 선호된다.
게임 밖 매치메이킹(Out-of-game Matchmaking)은 매치 구성 도구에서 게임을 셋업하는 것, 게이머들이 서비스에 의해 알려진 게임 파라미터들 및 사회 속성들(사용자 프로파일, 제휴 목록)에 따라서 세션을 검색할 수 있게 하는 사용자 인터페이스를 게임 밖에서(즉, 콘솔 시스템 애플리케이션 UI에서) 생성하는 것을 포함하는 (위에서 정의된 것과 같은) 세션들을 생성하기 위한 멀티-파트 시스템이다. 그것은 또한 플레이어들이 게이머카드들을 찾아보고(browse) 플레이어들의 파티(Party of players)를 소집하기 위해 그들의 제휴들(친구들, 최근 플레이어들, 및 긍정 피드백 사람들)을 초청할 수 있게 하는 콘솔 시스템 애플리케이션 UI(가이드의 일부)를 포함한다. 그 후 시스템은 콘솔 시스템으로부터 게임으로 각 게이머카드와 관련된 고유 플레이어 ID들 및 게임 설정들의 도식화된 목록을 전달하는 "StartSession" 메시지를 제공한다. 그것은 또한 콘솔 및 게임이 콘솔 애플리케이션에서 소집되는 플레이어들의 그룹들을, 각 그룹을 콘솔로부터 게임으로 전후로 전달될 수 있는 고유 ID와 관련시킴으로써, 관리할 수 있게 하는 API들의 세트를 포함한다. 그리고 마지막으로, 그것은 플레이어들이 게임을 끝내지만 파티로서 함께 머무르고 다른 게임으로 옮겨가기를 원하는 경우 게임이 그 플레이어들의 목록을 콘솔 애플리케이션에 전달할 수 있게 하는 "GameCompleted" 메시지를 포함한다.
매치 구성 도구( Match Configuration Tool )는 게임 개발자들이 스키마에 따라서 게임의 매치메이킹 세션 설명을 입력할 수 있게 한다. 이 도구를 이용하여, 게임은 게이머가 멀티-플레이어 온라인 게임 세션을 생성하기 위해 거쳐야 할 단계들을 서비스에 알려준다. 이 정의는 서비스가 게임 세션의 시작점을 캡처할 수 있도록 서비스가 모든 중요한 게임 순열들(key game permutations)(맵 이름으로부터 차량 유형(vehicle types)까지)을 확실히 이해하게 한다. 매치 구성 도구는 게임들이 랭킹 사용자 지정 설정(Ranked customized settings)의 한 세트 및 사회 사용자 지정 설정(Social customized settings)의 한 세트를 생성할 수 있게 하는 노드를 포함한다. 2개의 편집 화면들은 각 화면의 상단에 있는 "랭크" 대 "사회"("Ranked" v. "Social") 라벨을 제외하고 동일해야 한다. 이들 편집 화면들은 게이머들이 가이드에서 사용자 지정된 매치 쿼리들(ala Optimatch)을 생성할 수 있게 하는 게임 밖 매치 UI를 생성하는 데 이용될 것이다.
각 편집 화면은 게임 개발자들이 그가 이미 생성하였거나 또는 도구 내에 미리 정의되어 있는 것들(예를 들어, "플레이어의 수"는 모든 게임에 대하여 요구되므로 미리 정의된다)로부터 컨텍스트들 또는 속성들의 간단한 목록을 삽입할 수 있게 한다. 컨텍스트들은 열거된 문자열들의 목록들인 반면 속성들은 수치 값들(정수 또는 부동 소수점 값들)이다. 컨텍스트의 예는 "맵(Map)"이고 그것의 열거들은 게임에서 이용 가능한 모든 가능한 맵들을 포함할 것이다. 게임 개발자는 또한 새로운 컨텍스트들 또는 속성들을 생성 및 삽입할 수 있다.
추가된 각 컨텍스트 및 속성에 대하여, 게임 개발자는 또한 게임 밖 UI 내의 다중선택(multi-select) 옵션들 다음에 나타날 텍스트를 제공하는 지역화된 문자열 라벨(localized string fable)을 제공해야 한다. 기본(default) 지역화된 문자열 라벨은 컨텍스트 또는 속성 자체에 대한 문자열 라벨이어야 한다.
UI 내의 컨텍스트 값들에 대한 기본 값은 컨텍스트 값들이 생성된 때에 선택된 기본값(default)에 기초할 것이다. 그러나, 속성들의 경우, 개발자는 값들의 범위, (수치 속성들에 대한) 스텝 사이즈, 및 기본값을 지정해야 한다.
지정된 각 컨텍스트에 대하여, 게임은 각 컨텍스트 값 설정에 대하여 허용된 플레이어들의 최소 및 최대 수를 지시해야 한다. 예를 들면, "맵" 컨텍스트의 경우, 게임은 최소 2명의 플레이어 및 최대 16명의 플레이어가 "Waterloo" 컨텍스트 값에서 플레이할 수 있다고 지정할 수 있다.
" StartGame " 메시지: 시스템은 또한 게이머가 구성 도구에서 정의된 스키마에 따라서 게임 밖 애플리케이션에서 세션을 생성하였을 때 게임이 수신해야 할 StartGame 메시지의 포맷을 제공한다. 이 메시지는 게임 개발자들이 구성 프로세스에서 지시한 옵션들에 기초하여 게이머가 선택하는 세션 선택들(맵, 난이도 등)을 포함한다. 이 메시지에 의하여, 게임은 그 후 게이머를 로비에 주입하여 매치메이킹을 통하여 세션에 조인하는 다른 사람들을 기다리게 할 수 있다.
StartGame 메시지는 다음 정보를 포함한다:
Figure 112007084748541-PCT00001
세션 내의 모든 게이머들에 대한 PUID들
Figure 112007084748541-PCT00002
호스트 PUID(표준 게임용)
Figure 112007084748541-PCT00003
랭크/표준(Ranked/Standard) 플래그
Figure 112007084748541-PCT00004
고유 파티 ID
Figure 112007084748541-PCT00005
게임 설정들(세션 호스트 또는 액팅 호스트에 의한 시스템 애플리케이션 UI 내의 "사용자 지정(Customize)" 화면에서 설정됨) - 컨텍스트/속성 목록으로서 보내짐.
게임이 StartGame 메시지를 수신하면, 그것은 모든 플레이어들을 게임 전 로비(pre-game lobby) 내에 수용해야 한다. 그 로비에서, 랭크 게임들의 경우 게임은 카운트다운을 시작한 다음 플레이어들을 게임 플레이에 주입해야 한다. 어떤 게이머도 게임 설정들을 조정하는 옵션은 갖고 있지 않다. 사회 게임의 경우, 호스트는 필요하면 게임 설정들을 조정하기로 결정할 수 있고, 일부 상세 게임 설정들(예컨대, 자동차 컬러 선택 등)은 모든 게이머들에게 이용 가능할 수 있다. 그 후 호스트는 게임을 시작할 수 있고, 또는 게임은 충분한 파티가 생성될 때 통상적으로 그런 것처럼 게임을 시작할 수 있다.
GameCompleted 메시지. 게임이 종료되고 호스트가 그의 파티를 게임 후 로비(post-game lobby)로부터 게임 밖 로비(out-of-game lobby)로 되돌리기로 결정할 때, 게임은 GameCompleted 메시지를 반환해야 한다.
GameCompleted 메시지는 다음 정보를 포함한다:
Figure 112007084748541-PCT00006
세션 내의 모든 게이머들에 대한 PUID들(StartGame 메시지로부터의 목록과 동일, 파티에서 탈퇴하거나 그들의 콘솔을 접속분리한 멤버들은 제외)
Figure 112007084748541-PCT00007
호스트 PUID(표준 게임용, 호스트는 게임이 호스트 이동(host migration)을 허용하거나 최초의 호스트가 게임에서 탈퇴하면 변했을 수 있다)
Figure 112007084748541-PCT00008
파티 ID
Figure 112007084748541-PCT00009
게임 타이틀 ID
Figure 112007084748541-PCT00010
최종 게임 설정들(이것들은 다음번에 호스트가 시스템 애플리케이션 UI에서 그 게임을 선택할 때 미리 설정되도록 콘솔 애플리케이션이 그것들을 호스트를 위하여 캐시(cache)할 수 있도록 반환된다).
세션 및 파티 API . 세션 및 파티 관리 API는 파티 생성을 지원하고 게임 플레이를 위한 플레이어들의 각 모임에 대하여 2가지 취향의 세션 ID(2 flavors of session ID)를 생성함으로써 "다시 플레이(play again)" 시나리오들을 용이하게 할 것이다. 제1 세션 ID(아래 예에서는 A)는 게임의 호스트와 관련된 "메타-세션(meta-session)(파티)의 일종이다(호스트가 없는 게임에서 또는 호스트 이동의 경우, ID A는, 게임 코드에서는 호스트로서 식별되지만 플레이어들에게는 명시적으로 호스트로서 식별되지 않는 언더-더-커버(under-the-cover) 호스트인 사람과 관련된다). 게이머들이 게임 밖 콘솔 시스템에서 게임 전 로비 내의 파티에 조인할 때(또는 그들이 초청을 수락하고 호스트와 모일 때), 그들은 이 파티 ID(A)에 조인한다.
파티가 게임이 전달될 때, 세션은 시작되고(XSessionCreate), 새로운, 제2 세션 ID(B)가 또한 게임에 의해 그룹에 할당되어 게임 내에서만 추적된 세션이 삭제될 때(XSessionDelete)까지 사용된다. 파티 ID(A)는 호스트 및 파티에 조인한 모든 게이머들과 함께 존속한다.
게임 플레이가 시작될 때, 게임 플레이 세션은 XSessionStart가 호출될 때 생성된 제3 ID, C를 이용하여 추적된다. 이 ID는 라운드에서 실제로 플레이하는 각 플레이어와 관련된 모든 통계를 추적하는 데 이용된다.
개방된 슬롯들을 갖고 있지만 진행 중 조인이 허용되지 않는 게임에서는, 일단 게임 플레이가 시작되면, 새로운 게이머들은 계속해서 이 파티 ID A에(및 게임이 허용할 경우, B에도) 조인할 수 있고 (게임이 진행중이기 때문에) 세션 ID C가 여전히 폐쇄된 동안에도 콘솔 내의 게임 밖 매치 로비 UI에서 대기할 수 있다. A에 조인한 이들 새로운 게이머들은 다른 게이머들이 끝내도록 (B와 관련된) 게임 로비에서 더 대기할 수 있다.
실제 게임 플레이에 관한 모든 데이터는 ID C와 관련된다. 진행 중 조인 게임(join-in-progress game)에서, 새로운 게이머는 제2 ID(B)와 제3 ID(C) 양쪽 모두에 조인한 다음, 게임 플레이에 참가해야 할 것이다. 만일 호스트가 허용하면, 그 사람은 또한 파티 ID(A)에도 조인될 수 있을 것이다.
게임 플레이의 라운드가 종료할 경우(XEndSession), 게이머들은 다시 플레이하기로 결정할 수 있다(비랭킹(unranked) 게임에서만). 만일 그들이 그러면, 전체 게임 세션 ID(B)뿐만 아니라 파티 ID는 유지되지만(그리고 그들이 다시 플레이하도록 허용하고, 그들을 함께 유지한다), 게임 플레이 세션 ID(C)는 XEndSession이 호출되자마자 포기된다. 플레이의 새로운 라운드가 시작될 경우(XStartSession), 그 파티에 대하여 새로운 게임 플레이 세션 ID(ID D)가 생성된다.
게임은 파티 ID 및 이것은 게임 밖 매치 생성된 게임이었다는 정보를 유지해야 한다. 게임 플레이의 각 세션의 말미에(랭킹 게임들은 단지 게임플레이의 한 라운드만 허용하므로 이것은 관계없지만, 게임은 한 게이머가 그 자신을 호스트로서 지정하고 다른 게이머들에게 게임 밖 매치 로비에서 그에게 조인하도록 초청을 자동으로 송신할 수 있게 하는 "표준으로 변환(Convert to Standard)" 게임을 제공할 수 있다), 게임은 호스트에게 파티를 게임 밖 로비로 되돌리거나 게임을 다시 시작하도록 제안해야 한다. 만일 그가 게임 밖 로비로 되돌아가기로 선택하면, 게임은 콘솔에 GameCompleted 메시지를 송신해야 하고 XSessionDelete API를 이용하여 게임 플레이 세션을 종료해야 한다.
파티 ID A는 호스트가 게임 밖 매치 로비로부터 플레이어들의 그룹을 해산하는 경우, 또는 호스트 이동의 경우에, 게임을 인계받는 호스트가 없는 경우에만 삭제된다. 흐름은 이와 같다:
호스트 API 호출/활동 플레이어2 API 호출/활동 플레이어3 API 호출/활동 그룹에 대한 ID 추적
XcreateParty 콘솔 코드에서 A가 생성됨.
게임 밖 로비 A
쿼리
XJoinParty A
쿼리
XJoinParty A
게임 밖 로비
StartGame 메시지가 콘솔로부터 게임으로 전달됨. 호스트는 게임 밖 매치로부터 게임을 선택하고, 게임 디스크를 삽입하고, 게임 설정들을 입력함. 플레이어에게 게임 디스크를 삽입하도록 촉구(prompt). 플레이어에게 게임 디스크를 삽입하도록 촉구 콘솔이 StartGame 메시지를 -- 모든 게임 설정들 및 플레이어들의 목록과 함께 -- 게임 코드에 전달
XCreateSession XCreateSession XCreateSession 게임 내의 플레이어들의 모임을 추적하기 위해 게임에 의해 B가 생성됨(A는 배경에서 존속)
게임 내 로비 게임 내 로비 게임 내 로비 B
XCreateSession XCreateSession XCreateSession A와 B가 배경에서 존속하는 동안 게임에 의해 C(게임-플레이 세션 ID)가 생성됨.
게임 플레이 게임 플레이 게임 플레이 C와 관련된 모든 플레이어들에 대하여 통계가 추적됨.
XEndSession XEndSession XEndSession C가 폐쇄됨(A, B는 배경에서 존속)
게임 내 로비 게임 내 로비 XDeleteSession 플레이어가 이 시점에서 게임을 중지하고 게임 밖 로비로 되돌아가서 플레이어1 및 플레이어2를 기다리기로 결정. GameCompleted 메시지 송신 B와 관련된 모든 플레이어들이 다음 세션을 플레이하기 위해 함께 남아 있음. 게임을 중지하고 GameCompleted를 호출하는 플레이어가 게임 밖 로비에서 기다릴 수 있도록 A는 배경에서 존속함.
XStartSession XStartSession 게임 밖 로비 D가 생성됨(A, B는 배경에서 존속)
게임 플레이 게임 플레이 게임 밖 로비 D(A, B는 배경에서 존속)
XEndSession XEndSession 게임 밖 로비 D가 폐쇄됨(A, B는 배경에서 존속)
게임 내 로비 게임 내 로비 게임 밖 로비 플레이어1 및 플레이어2는 여전히 A, B에 의해 관련됨. 플레이어3은 A와만 관련되어, 게임 밖 로비에서 여전히 대기중.
XDeleteSession XDeleteSession 게임 밖 로비 B가 게임에서 폐쇄됨.
GameCompleted 메시지 GameCompleted 메시지 게임 밖 로비 게임이 GameCompleted 메시지를 콘솔에 전달.
게임 밖 로비 호스트가 파티를 해산하기로 결정 게임 밖 로비 게임 밖 로비 모든 플레이어들이 게임 밖 로비에서 다시 함께 모임.
XDeleteParty XDeleteParty XDeleteParty A가 폐쇄되고 모든 플레이어들이 각기 다른 길을 감.
일단 구성 프로세스가 완료되고 게임이 서비스로부터 StartGame 메시지를 수신하고, 세션 및 파티 API를 이용하여 플레이어들의 그룹을 관리하고, 그룹이 게임을 떠나기를 원할 때 서비스에 GameCompleted 메시지를 전달할 수 있도록 그 게임의 코드를 인스트루먼트(instrument)했다면, 서비스는 콘솔 시스템 애플리케이션에서 게임 밖 매치메이킹 사용자 인터페이스(UI)를 렌더링할 수 있다. 이 UI는 3개의 주요 부분들로 이루어진다: 세션 찾기, 세션 생성(다른 사람들이 검색 및 조인할 수 있도록), 및 파티에 모일 사람들을 찾아보기/찾아내기(browse/find). 그 UI는 도 11을 참조하여 더 잘 이해된다. 처음에 단계(1102)에서, 플레이어들은 친구들 및/또는 제휴들의 기준에 매치하는 다른 플레이어들과의 매치메이킹 프로세스를 완료하였다. 그 후 시스템은 한 플레이어에 의해 선택된 매치메이킹 기준을 만족시키는 플레이어들의 수를 지시한다. UI는 3개의 선택을 갖는 플레이어를 제시한다: 선택 A는 본질적으로 게임 플레이어에게 다른 플레이어에 의해 시작된 게임을 찾아내고 그 세션에 조인하는 능력을 제공한다. 그 경우, UI는 그 플레이어에게 게임들의 목록을 제시하고 플레이어가 단계(1104)에서 게임 화면을 선택할 수 있게 한다. 화면은 다수의 게임들(예컨대, Halo, PGR 등)을 각 게임 내의 게이머들의 수 및 제휴/친구의 수와 함께 표시한다. 플레이어의 제휴들(친구들, 최근 플레이어들, 및 긍정 피드백 사람들)이 현재 어디에서 플레이하고 있는지에 관한 이 추가 정보는 게임 선택을 하는 데 도움이 된다. 특정 게임을 선택한 후, 세션 선택 화면(Select a Session Screen)(1106)은 화면의 상부에 세션들의 총 수를 리스트하고(각 필터는 세션들의 수를 감소시킨다) 게이머들이 다음 3개의 옵션들 중 하나로 진행할 수 있게 한다:
제1 옵션은 세션 선택(Select a Session)(사람에 관한 중요한 속성들 및 세션의 설정들을 포함하는 세션 설명자(Session Descriptor)에 의해 리스트된 각 세션)이다. 세션 선택은 플레이어를 게임 로비의 밖에 놓는다(단계(1114)). 거기서, 플레이어는 게임 세션을 시작하기 위해 플레이어의 콘솔(100)에 게임 시작 메시지가 송신될 때까지 대기할 것이다. 만일 플레이어가 이 옵션을 선택하면, 그는 통상적으로 호스트 없는 게임(hostless game)(즉, 설정들을 제어하는 플레이어가 없는 게임)으로 드롭될 것이다. 게임 설정들은 임의로 선택될 수 있다. "호스트 없는" 게임들은 게임 밖 로비로 함께 되돌아갈 수 없다. 게임이 끝나면, 플레이어들은 동일한 설정으로 동일한 게임을 계속하기로 결정할 수 있고, 게임 설정들을 임의로 로테이트(rotate)하기로 결정할 수 있고, 또는 플레이어들은 떠날 수 있다.
제2 옵션은 (평판, 기량, 게이머의 유형, 예컨대, 캐주얼 또는 하드코어 등을 포함하는) 사람 설정들에 대한 필터(Filter on People Settings)이다. 도 11은 상자(1108)에서 이 활동을 도시한다. 이 단계는 사용자 프로파일을 이용하지만 플레이어가 이용 가능한 세션들의 긴 목록을 필터링할 때 그의 프로파일의 어느 양태들을 강조할지를 선택할 수 있게 한다.
게임 설정들에 대한 필터(Filter on Game Settings)는 상기 구성 프로세스에서 설명된 세션 정의(Session Definition) 옵션들의 서브세트(subset)를 제공한다. 예를 들면, 플레이어는 특정 게임 레벨의 세션들만 화면 선택들에서 나타나도록 그 특정 게임 레벨에 대하여 필터링하기를 원할 수 있다. 게임 설정들에 대한 필터는 상자(1110)에 의해 도시되어 있다. 게임 설정들 중에 "호스트 없는(Hostless)" 대 "호스트된(Hosted)(파티)" 게임들이 있다.
도 9는 하나의 단순한 화면에서 게임 설정들 및 사람 설정들 모두가 필터링될 수 있는 특정 게임에 대한 UI를 도시한다.
세션 중에서 선택할 때, 플레이어는 각 세션에 대한 세션 설명자를 볼 수 있다. 시스템 애플리케이션 UI는 세션에 대한 중요한 사용자 프로파일 평균들의 요약, 주요 게임 설정들의 요약, 및 (게임 내의 플레이어들의 "존(Zone)"에 의해 정의되는) 세션 내의 게임 플레이의 유형을 식별하는 "세션 라벨(Session Label)"을 포함하는 게임 모드별 세션 설명자(a per-game-mode session descriptor)를 보여준다. 이 데이터는 플레이어가 조인할 가장 좋은 것을 선택할 수 있도록 각 세션의 "일견" 보기("at-a-glance" view)를 얻는 데 도움을 준다. 세션 설명자 내의 데이터는 다음을 포함한다:
Figure 112007084748541-PCT00011
게임 이름
Figure 112007084748541-PCT00012
호스트의 이름
Figure 112007084748541-PCT00013
게임 내의 플레이어들의 커뮤니티 평판 레이팅
Figure 112007084748541-PCT00014
게임의 분위기 또는 규칙(예컨대, 성숙한 언어의 사용, 경기의 레벨)
Figure 112007084748541-PCT00015
게임 설정들(예컨대, 게임의 유형, 레벨 또는 플레이되는 트랙)
Figure 112007084748541-PCT00016
접속 속도(즉, ping)
Figure 112007084748541-PCT00017
게임 내의 플레이어들의 기량 레벨
Figure 112007084748541-PCT00018
게임 내에 당신의 친구들이 있는지 여부
Figure 112007084748541-PCT00019
게임 내에 당신의 친구들의 친구들이 있는지 여부
Figure 112007084748541-PCT00020
게임에서 이전에 함께 플레이를 즐긴 사람들이 있는지 여부
Figure 112007084748541-PCT00021
게임에서 말해지는 언어
Figure 112007084748541-PCT00022
국가 게임이 호스팅되고 있음
도 10은 플레이어가 세션들의 목록 중에서 특정 세션(노란색 상자 선택)을 선택하고 있고 세션 설명자 상세 중 일부를 보고 있는 UI를 도시한다.
만일 플레이어가 기존의 세션에 조인하기보다는 게임 세션을 생성하려면, 플레이어는 "X"를 선택하고 단계(1112)로 이동하는 것으로 예시된 바와 같이 매치 생성을 선택할 수 있다. 그 경우, 플레이어는 그 플레이어가 그가 세션을 생성하고 싶은 게임 타이틀을 선택할 수 있게 하는 화면으로 진행한다. 그 시점에서, 플레이어는 게임 구성 옵션들에 기초하여 게임을 정의할 수 있다. 예를 들면, 플레이어는 플레이의 레벨, 플레이어들의 수 등을 선택할 수 있다. 플레이어가 (구성 프로세스에서 게임에 의해 정의되는) 게임 세션을 정의한 후, 플레이어는 참가자들이 조인할 때까지 게임 로비에 들어간다. 그 후 그 게임 세션은 조인할 게임을 검색하고 있던 다른 게이머들의 화면에 나타날 것이다(즉, 단계들(1104 및 1106)에 예시된 바와 같이). 이런 식으로 셋업된 게임들은 결국 게임 "파티(Party)"를 초래하는 "호스트된(hosted)" 게임들(세션을 생성한 플레이어에 의해 호스트됨)이고, 완료될 때, 모든 플레이어들은 동일 게임에서 계속하거나, 호스트가 그 게임에 대한 게임 설정들을 변경하게 하거나, 또는 게임 밖 로비로 되돌아가는 옵션을 가져야 한다.
개인 파티들(Private Parties)은 게임 플레이의 특정 세션에 대한 플레이어들의 모임과 별도로 해당 파티 내의 플레이어들의 집합을 식별함으로써 관리된다.
게이머들이 게임 세션에 조인하는 것을 기다리는 것에 더하여, 플레이어는 적극적으로 참가자들을 찾고 "파티 생성(Creat a Party)"을 선택함으로써 파티를 구성할 수 있다. 단계(1124)에 도시된 바와 같이, 플레이어는 친구 목록, 최근 플레이어 목록에 대한 게이머카드들을 찾아보거나 또는 다르게는 특정 검색 기준을 만족시키는 사용자 프로파일들을 갖는, 예컨대, 특정 기량 레벨, 장소(locale), 및/또는 평판을 갖는, 또는 다르게는 친구들 또는 제휴들인 게이머들을 찾아낼 수 있다. 다양한 매칭 게이머들을 찾아낸 후에, 플레이어는 해당 게이머에게 파티 세션에의 초청을 송신함으로써 직접 파티 세션에 조인하도록 그들을 초청할 수 있다. 만일 그 플레이어가 초청을 수락하면 그는 00G 매치 파티 로비에 조인된다. 대안적으로, 음성 채널이 개방될 수 있고 그에 의해 게이머들은 예컨대 게임 세션에 관하여 통신할 수 있다. 마지막으로, 게이머들을 찾아보는 동안, 선택된 게이머들은 플레이어의 제휴 목록에 추가될 수 있고 그에 따라서 그들은 장래의 게임 선택에서 제휴들로서 주목될 것이다.
파티 로비(Party Lobby)(1112)는, "파티 흐름 생성(Create a Party Flow)"으로부터 액세스될 때, 지정된 호스트가 그의 플레이된 게임 목록 및 현재 파티 로비 내에 있는 플레이어들의 모든 플레이된 게임 목록 상에서 이용 가능한 모든 게임들 중에서 선택할 수 있게 한다. 그것은 호스트의 목록 상에서 로비 내의 하나 이상의 플레이어들에게 이용 가능하지 않은 게임들을 불러낼 것이다. 만일 호스트가 하나 이상의 플레이어들에게 이용 불가한 게임들 중 하나를 플레이하기로 결정하면, 그 플레이어들은 되돌아가기 위해 그 파티에 대한 로비에서 대기할 수 있고 또는 떠날 수 있다. 호스트는 모든 플레이어들을 드롭시키는 게임을 시작할 수 없을 것이다.
플레이어들이 파티 게임 내의 게임 플레이를 완료하면, 게임은 플레이어들에게 00G 매치 파티 로비에 되돌아가는 옵션을 제공해야 한다. 게임은 시스템에 "게임 종료(Game Completed)" 메시지를 반환해야 한다. 게임 밖 파티 로비(out-of-lobby party lobby)는 플레이어들의 그룹이 함께 남아 있고 서로 통신할 수 있게 하고 호스트 플레이어는 다음에 어느 게임을 플레이할지를 선택하고, 일단 게임이 선택되면, 그 게임에 대한 어느 설정들을 선택할지(맵 등)를 선택하도록 지정된다.
(세션 설명에서 지정된) 게임의 한계 때문에, 일부 게임 유형들은 파티에게 이용 가능하지 않을 수 있다(예컨대, 파티에 6명의 사람이 있다면, 일부 게임 유형들은 4명의 플레이어만 허용되기 때문에 선택 가능하지 않을 수 있다).
게임 밖 경기( Out - of - game Competitions ): 시스템의 다른 양태에 따르면, 상술한 게임 밖 매치메이킹을 이용하여, 시스템은 게임 밖 경기(out-of competitions)를 생성할 수 있다. 그 단계들은: 우선, 구성 도구에서 게임을 셋업하는 단계와; 두 번째로, 구성 도구에서 경기를 셋업하는 단계와; 세 번째로, 게이머들이 경기를 생성할 수도 있고 검색할 수도 있게 하는 UI를 게임 밖에서(웹 상에서 및 가이드에서) 생성하는 단계와; 네 번째로, 웹 상에서 또는 가이드에서 경기가 생성되었을 때 고유 세션 식별자들과 함께 게임의 ID를 갖는 "게임 시작(start session)" 메시지를 전달하는 단계와; 다섯 번째로, 게임이 고유 세션 식별자 및 세션의 결과와 함께 웹 및/또는 가이드에 "세션 완료(session completed)" 메시지를 전달할 수 있게 하는 단계를 포함한다.
위에서 언급한 바와 같이, 구성 도구는 게임 개발자들이 장르-특정 구성 데이터에 따라서 게임의 매치메이킹 세션 설명을 입력할 수 있게 한다. 또한, 그 도구는 게임 개발자들이 장르-특정 구성에 따라서 매치메이킹 세션 설명과 조합할 경기 컨텍스트들을 선택할 수 있게 한다. 위에서 논한 구성 파라미터들에 더하여, 경기는 적어도 2개의 추가 파라미터: 경기 정의 및 고유 세션 식별자를 사용한다. 경기 정의 또는 정의들은 게임이 게이머가 세션 정의와 조합하여 선택할 수 있는 적절한 경기 컨텍스트들을 서비스에 어떻게 통신하는지를 정의한다. 고유 세션 식별자들은 게임이 수신하고, 유지하고, 고유 세션의 완료 시에 웹 및/또는 가이드에 되돌려 주어야 할 고유 세션 식별자들의 포맷을 제공한다. 이 식별자(들)는 웹 상에서 또는 가이드에서 경기 구조를 생성한 플레이어에 기초한 경기, 라운드, 매치업(match-up) 내의 개개의 게이머의 위치를 포함할 것이다. 이것은 게임 개발자가 구성 프로세스 동안에 경기 컨텍스트들을 정의하였을 때 사용 가능하게 되었다.
구성 프로세스가 완료되면, 서비스는 웹 상에서 또는 콘솔 가이드에서 게임 밖 경기 UI를 렌더링할 수 있다. 도 12는 경기 흐름의 동작을 더 예시한다. 처음에 단계(1202)에서, 플레이어는 기존의 경기를 찾아내거나(선택 A), 퀵 경기(quick competition)를 생성하거나(선택 X), 사용자 지정 경기(custom competition)를 생성하는(선택 Y) 옵션을 갖는다. 만일 플레이어가 경기를 찾아내는 옵션을 선택하면, 플레이어가 그가 경기하고 싶은 게임, 예컨대, Mech Assault, Project Gotham Racing(PGR) 등을 선택할 수 있게 하는 UI 화면이 제시된다(단계(1204)). 게임 선택 화면은, 예컨대, 누군가가 이미 경기를 셋업한, 사용 가능(enable)하게 된 경기들로 이용 가능한 게임들을 표시한다. 인터페이스로부터 게임을 선택한 후에, 진행중인 경기들과 함께 현재 개방되어 있는 모든 경기들의 목록을 제시하는 화면(단계(1206))이 표시된다. 또한 이들 경기들에의 참가자들의 게이머 프로파일에 기초하여 그 참가자들의 경험 레벨 및 유형에 관하여 제시된 정보도 있다. 그 시점에서, 플레이어는 참가할 경기를 선택하거나 경기 검색을 더 정밀화(refine)할 수 있다. 만일 플레이어가 경기 검색을 정밀화하기로 선택하면(단계(1208)), 플레이어는 경기 컨텍스트들 및 경기에 참가하는 게이머들에 대하여 필터링할 수 있다. 예컨대, 플레이어 평판, 장소 등. 한편, 만일 플레이어가 경기에 참가하기로 선택하면, 플레이어는 단계(1212)로 진행하여 경기를 시작한다.
기존의 경기에 조인하기로 선택하기보다는, 플레이어는 새로운 경기를 생성하고 단계들(1204, 1206 및 1208)에 관하여 위에서 설명된 프로세스를 통하여 다른 사람들에게 조인하도록 초청할 수 있다. 플레이어는 게임 밖 경기를 생성하는 2개의 옵션을 갖는다. 첫째는 구성 프로세스를 통하여 이전에 그 전체가 정의된 가이드에서 또는 웹 상에서 게임 밖에서 경기에 신속히 참가한다. 즉, 게임 개발자는 구성 데이터를 통하여 서비스에 제공되는 게임에 대한 사전 정의된 경기 설정을 제공한다. 그 경우, 플레이어는 게임을 선택한 다음 그 게임에 대한 이용 가능한 사전 정의된 경기들 중 하나를 선택한다(단계(1210)). 유사하게, 플레이어는 사용 가능하게 된 경기를 갖는 게임을 선택하고 그 게임에 대한 구성 데이터에 의해 정의된 경기에 대한 각종 파라미터들, 예컨대, 라운드의 수, 승자 진출(single elimination) 등을 정의함으로써 사용자 지정 경기(custom competitions)를 생성할 수 있다(단계(1220)). 플레이어는 웹 상에서 또는 가이드에서 이들 옵션을 선택하고 경기 구조를 생성한다.
플레이어가 그 경기에 참가하기 위해 어느 메커니즘을 이용하든지, 경기에 참가한 후, 서비스는 그 경기 구조를 유지하고 웹 접속을 통한 서비스 상에서 또는 콘솔 상의 가이드로부터 직접 볼 수 있다. 예를 들어 경기 구조는 경기의 토폴로지, 예컨대, 승자 진출 트리 구조, 다양한 경기 참가자들의 매치업 등을 포함한다. 모든 참가자들이 웹 상에서 및 가이드에서 토폴로지 및 매치업들을 볼 수 있는 경기 홈(competition home)이 셋업된다(단계(1212)). 그 후, 예컨대, 로비 고유 ID, 고유 경기 ID, 고유 라운드 ID 및 고유 매치 ID 등의 정보가 호스트 콘솔(100)에 송신되고 게임 플레이 중재가 시작된다(단계(1214)). 그 후 각 라운드가 시작되고 완료된다. 각 라인드의 끝에, 각 콘솔은 결과들을 경기 ID, 고유 라운드 ID 및 고유 라운드 매치 ID와 함께 호스트에 송신한다(단계(1216)). 그 후 서비스에 의해 경기의 다음 라운드가 셋업되고 단계(1218)에서 경기가 완료될 때까지 프로세스가 반복된다.
다양한 도면들의 바람직한 실시예들과 함께 본 발명을 설명하였지만, 본 발명에서 벗어나지 않고 본 발명의 동일한 기능을 수행하기 위해 다른 유사한 실시예들이 이용될 수도 있고 또는 설명된 실시예에 대해 변형 및 추가가 이루어질 수도 있다.

Claims (20)

  1. 멀티-플레이어 컴퓨터-기반 게임(multi-player computer-based game)을 플레이하기 위한 시스템으로서,
    복수의 플레이어들에 관한 정보 및 컴퓨팅 장치 상에서 동작하는 복수의 상이한 게임들에 관한 정보를 갖는 데이터베이스를 구비한 서비스와;
    상기 서비스에 연결되어, 플레이어로부터 상기 복수의 상이한 게임들 중 하나의 게임의 선택 및 상기 게임에 대한 구성 설정들을 수신하기 위한 입력 장치와;
    상기 서비스에 연결되어, 복수의 컴퓨팅 장치들로부터 게임 완료 메시지를 수신하기 위한 입력 장치 - 상기 메시지는 상기 구성 설정들을 나타내는 정보를 포함함 - 와;
    상기 서비스에 연결되어, 복수의 컴퓨팅 장치들에 시작 메시지를 출력하기 위한 출력 장치 - 상기 컴퓨팅 장치들은 상기 복수의 상이한 게임들 중 상기 하나의 게임 및 상기 복수의 플레이어들의 함수로서 선택되고, 상기 메시지는 상기 구성 설정들을 나타내는 정보를 포함함 -
    를 포함하는 시스템.
  2. 제1항에 있어서, 상기 복수의 플레이어들에 관한 상기 정보는 상기 플레이어들의 게임 플레잉 기량(game playing skill)을 나타내는 정보를 포함하는 것인 시스템.
  3. 제2항에 있어서, 상기 서비스는 상기 플레이어들의 게임 플레잉 기량의 함수로서 플레이어들의 서브세트(subset of players)를 매칭시킬 수 있는 것인 시스템.
  4. 제1항에 있어서, 상기 복수의 컴퓨팅 장치들은 상기 복수의 상이한 게임들 중 상기 하나의 게임의 적어도 일부의 로컬 카피(local copy)를 포함하는 것인 시스템.
  5. 제4항에 있어서, 상기 복수의 컴퓨팅 장치들 중 적어도 하나의 컴퓨팅 장치는 상기 복수의 컴퓨팅 장치들 중 상기 적어도 하나의 컴퓨팅 장치에서의 플레이어의 액션들을 나타내는 적어도 하나의 파라미터를 상기 데이터베이스에 저장하기 위해 상기 서비스에 보고하는 것인 시스템.
  6. 제3항에 있어서, 상기 서비스는 상기 복수의 상이한 게임들 중 적어도 하나의 게임으로부터 구성 정보를 수신하고, 상기 구성 정보는 상기 서비스가 복수의 플레이어들을 매칭시키는 능력을 갖도록 상기 게임의 파라미터들에 관한 정보를 제공하는 것인 시스템.
  7. 제1항에 있어서, 상기 서비스는 경기(competition)에 남아 있는 플레이어들의 함수로서 상기 복수의 상기 플레이어들에게 복수의 시작 또는 종료 메시지들을 제공하는 것인 시스템.
  8. 멀티-플레이어 컴퓨터-기반 게임을 플레이하기 위한 방법으로서,
    복수의 플레이어들에 관한 정보 및 컴퓨팅 장치 상에서 동작하는 복수의 상이한 게임들에 관한 정보를 갖는 데이터베이스를 유지하는 단계와;
    플레이어로부터 상기 복수의 상이한 게임들 중 하나의 게임의 선택 및 상기 게임에 대한 구성 설정들을 수신하는 단계와;
    복수의 컴퓨팅 장치들에 시작 메시지를 출력하는 단계 - 상기 컴퓨팅 장치들은 상기 복수의 상이한 게임들 중 상기 하나의 게임 및 상기 복수의 플레이어들의 함수로서 선택되고, 상기 메시지는 상기 구성 설정들을 나타내는 정보를 포함함 -
    를 포함하는 방법.
  9. 제8항에 있어서, 상기 복수의 플레이어들에 관한 상기 정보는 상기 플레이어들의 게임 플레잉 기량을 나타내는 정보를 포함하는 것인 방법.
  10. 제9항에 있어서, 상기 플레이어들의 게임 플레잉 기량의 함수로서 플레이어들의 서브세트를 매칭시키는 단계를 포함하는 방법.
  11. 제8항에 있어서, 상기 복수의 컴퓨팅 장치들의 적어도 일부(at least a subset)는 상기 복수의 상이한 게임들 중 상기 하나의 게임의 로컬 카피를 포함하 는 것인 방법.
  12. 제11항에 있어서, 상기 복수의 컴퓨팅 장치들 중 적어도 하나의 컴퓨팅 장치로부터, 상기 복수의 컴퓨팅 장치들 중 상기 적어도 하나의 컴퓨팅 장치에서의 플레이어의 액션들을 나타내는 적어도 하나의 파라미터를 상기 데이터베이스에 저장하기 위해 수신하는 단계를 포함하는 방법.
  13. 제10항에 있어서, 상기 복수의 상이한 게임들 중 적어도 하나의 게임으로부터 구성 정보를 수신하는 단계를 포함하고, 상기 구성 정보는 상기 서비스가 복수의 플레이어들을 매칭시키는 능력을 갖도록 상기 게임의 파라미터들에 관한 정보를 제공하는 것인 방법.
  14. 제8항에 있어서, 경기에 남아 있는 플레이어들의 함수로서 상기 복수의 상기 플레이어들에게 복수의 시작 메시지들을 제공하는 단계를 포함하는 방법.
  15. 컴퓨터-기반 게임 플레잉을 위한 시스템으로서,
    복수의 게임 플레이어들이 네트워크 접속을 통하여 접속할 수 있는 서비스와;
    상기 복수의 게임 플레이어들로부터의 제1 게임 플레이어를 그룹과 연결(associate)시키는 상기 서비스에 의해 유지되는 제1 세트의 컴퓨터 실행가능 명 령들과;
    상기 복수의 게임 플레이어들로부터의 적어도 하나의 다른 게임 플레이어를 상기 그룹과 연결시키는 제2 세트의 컴퓨터 실행가능 명령들과;
    상기 제1 게임 플레이어 및 상기 적어도 하나의 다른 게임 플레이어에게 제1 선택된 게임의 게임 플레이를 시작하는 메시지를 송신하기 위한 제3 세트의 컴퓨터 실행가능 명령들과;
    상기 제1 게임 플레이어 및 상기 적어도 하나의 다른 게임 플레이어에게 제2 선택된 게임의 게임 플레이를 시작하는 메시지를 송신하기 위한 제4 세트의 컴퓨터 실행가능 명령들 - 상기 서비스는 상기 제1 및 제2 선택된 게임들과 관계없이 상기 그룹 연결(group association)을 유지함 -
    을 포함하는 시스템.
  16. 제15항에 있어서, 상기 서비스는 상기 그룹과 연결된 각 게임 플레이어에게 상기 제1 선택된 게임의 시작을 지시하는 메시지를 송신하는 것인 시스템.
  17. 제15항에 있어서, 상기 제1 세트의 컴퓨터 실행가능 명령들은 상기 제1 게임 플레이어로부터 상기 그룹을 형성하는 메시지를 수신하는 컴퓨터 실행가능 명령들을 포함하는 것인 시스템.
  18. 제15항에 있어서, 상기 제2 세트의 컴퓨터 실행가능 명령들은 상기 적어도 하나의 다른 게임 플레이어로부터 상기 그룹에 조인(join)하는 메시지를 수신하는 컴퓨터 실행가능 명령들을 포함하는 것인 시스템.
  19. 제18항에 있어서, 적어도 상기 제1 게임 플레이어 및 상기 적어도 하나의 다른 게임 플레이어로부터 게임 완료를 나타내는 메시지를 수신하기 위한 제5 세트의 컴퓨터 실행가능 명령들을 더 포함하는 시스템.
  20. 제15항에 있어서, 상기 제1 게임 플레이어로부터 상기 그룹의 해산을 나타내는 메시지를 수신하기 위한 제6 세트의 컴퓨터 실행가능 명령들을 더 포함하는 시스템.
KR1020077027476A 2005-06-20 2006-05-05 게임 컨텍스트 밖에서의 온라인 게임 세션 셋업 KR101292432B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/156,877 2005-06-20
US11/156,877 US8241129B2 (en) 2005-06-20 2005-06-20 Setting up on-line game sessions out of a game context
PCT/US2006/017307 WO2007001628A2 (en) 2005-06-20 2006-05-05 Setting up on-line game sessions out of a game context

Publications (2)

Publication Number Publication Date
KR20080017327A true KR20080017327A (ko) 2008-02-26
KR101292432B1 KR101292432B1 (ko) 2013-07-31

Family

ID=37574107

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077027476A KR101292432B1 (ko) 2005-06-20 2006-05-05 게임 컨텍스트 밖에서의 온라인 게임 세션 셋업

Country Status (8)

Country Link
US (3) US8241129B2 (ko)
EP (1) EP1894123A4 (ko)
JP (1) JP5376945B2 (ko)
KR (1) KR101292432B1 (ko)
CN (1) CN101180621B (ko)
BR (1) BRPI0611981A2 (ko)
RU (1) RU2419844C2 (ko)
WO (1) WO2007001628A2 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009158197A2 (en) * 2008-06-26 2009-12-30 Microsoft Corporation Game clan matchmaking
KR101363034B1 (ko) * 2011-03-09 2014-02-17 소니 컴퓨터 엔터테인먼트 인코포레이티드 정보처리장치

Families Citing this family (213)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8678902B2 (en) 2005-09-07 2014-03-25 Bally Gaming, Inc. System gaming
US7243842B1 (en) * 2004-07-27 2007-07-17 Stamps.Com Inc. Computer-based value-bearing item customization security
US7933845B1 (en) 2004-07-27 2011-04-26 Stamps.Com Inc. Image-customization of computer-based value-bearing items
US8805745B1 (en) 2004-07-27 2014-08-12 Stamps.Com Inc. Printing of computer-based value-bearing items
US8065239B1 (en) 2004-07-27 2011-11-22 Stamps.Com Inc. Customized computer-based value-bearing item quality assurance
US7979358B1 (en) 2004-07-27 2011-07-12 Stamps.Com Inc. Quality assurance of image-customization of computer-based value-bearing items
US7677970B2 (en) * 2004-12-08 2010-03-16 Microsoft Corporation System and method for social matching of game players on-line
CN1798049A (zh) * 2004-12-29 2006-07-05 华为技术有限公司 一种移动在线游戏系统和方法
US7792693B2 (en) * 2005-02-25 2010-09-07 Novell, Inc. Distributed workflow techniques
US8221238B1 (en) 2005-04-19 2012-07-17 Microsoft Corporation Determination of a reputation of an on-line game player
US8066568B2 (en) * 2005-04-19 2011-11-29 Microsoft Corporation System and method for providing feedback on game players and enhancing social matchmaking
US8038535B2 (en) 2005-05-17 2011-10-18 Electronic Arts Inc. Collaborative online gaming system and method
JP4086862B2 (ja) * 2005-06-28 2008-05-14 株式会社コナミデジタルエンタテインメント ゲームシステム及びその制御方法、ゲーム装置、並びにプログラム
JP3946735B2 (ja) 2005-09-05 2007-07-18 株式会社コナミデジタルエンタテインメント サーバ装置およびゲームシステム
JP3946736B2 (ja) * 2005-09-05 2007-07-18 株式会社コナミデジタルエンタテインメント ゲームシステム、サーバ装置、端末装置及びプログラム
US20070118804A1 (en) * 2005-11-16 2007-05-24 Microsoft Corporation Interaction model assessment, storage and distribution
US8285651B1 (en) 2005-12-30 2012-10-09 Stamps.Com Inc. High speed printing
US20070218446A1 (en) * 2006-03-03 2007-09-20 Burck Smith Student interaction management system
US8172685B2 (en) * 2006-03-07 2012-05-08 Wms Gaming Inc. Wagering game with persistent state of game assets affecting other players
US8965978B2 (en) * 2006-03-31 2015-02-24 Alcatel Lucent Methods and devices for maintaining sessions based on presence status information
CN101444078B (zh) * 2006-04-13 2012-10-31 京瓷株式会社 群组通信方法和通信终端
JP5275225B2 (ja) * 2006-04-27 2013-08-28 ビージーシー パートナーズ,インコーポレイテッド ゲームまたはその他の環境内で匿名性を維持するためのシステムおよび方法
US7874593B1 (en) 2006-05-16 2011-01-25 Stamps.Com Inc. Rolls of image-customized value-bearing items and systems and methods for providing rolls of image-customized value-bearing items
US10839332B1 (en) 2006-06-26 2020-11-17 Stamps.Com Image-customized labels adapted for bearing computer-based, generic, value-bearing items, and systems and methods for providing image-customized labels
US8619623B2 (en) 2006-08-08 2013-12-31 Marvell World Trade Ltd. Ad-hoc simple configuration
US8233456B1 (en) 2006-10-16 2012-07-31 Marvell International Ltd. Power save mechanisms for dynamic ad-hoc networks
US8732315B2 (en) * 2006-10-16 2014-05-20 Marvell International Ltd. Automatic ad-hoc network creation and coalescing using WiFi protected setup
US9308455B1 (en) * 2006-10-25 2016-04-12 Marvell International Ltd. System and method for gaming in an ad-hoc network
US20080119277A1 (en) * 2006-11-21 2008-05-22 Big Fish Games, Inc. Common Interests Affiliation Network Architecture
US8505978B1 (en) 2006-12-20 2013-08-13 Stamps.Com Inc. Systems and methods for creating and providing shape-customized, computer-based, value-bearing items
US8775331B1 (en) 2006-12-27 2014-07-08 Stamps.Com Inc Postage metering with accumulated postage
US8898325B2 (en) * 2007-03-06 2014-11-25 Trion Worlds, Inc. Apparatus, method, and computer readable media to perform transactions in association with participants interacting in a synthetic environment
US9104962B2 (en) * 2007-03-06 2015-08-11 Trion Worlds, Inc. Distributed network architecture for introducing dynamic content into a synthetic environment
US8672764B2 (en) * 2007-03-29 2014-03-18 Microsoft Corporation Adaptive matchmaking for games
US20080248845A1 (en) * 2007-04-06 2008-10-09 Henry Paul Morgan Contextual Gamer Options Menu
JP2008279049A (ja) * 2007-05-10 2008-11-20 Namco Bandai Games Inc 情報提供システム、プログラムおよび情報記憶媒体
US8083591B2 (en) * 2007-05-15 2011-12-27 Microsoft Corporation Game hosting service
CN101068194B (zh) * 2007-06-15 2010-12-01 腾讯科技(深圳)有限公司 一种实现在线游戏邀请的方法及系统
CN100539599C (zh) * 2007-06-29 2009-09-09 腾讯科技(深圳)有限公司 一种实现在线游戏邀请的方法及系统
US9076303B1 (en) * 2007-08-08 2015-07-07 Amazon Technologies, Inc. Implementing contests in social networks
AU2008205413A1 (en) * 2007-08-15 2009-03-05 Aristocrat Technologies Australia Pty Limited A Gaming System and a Method of Gaming
US8221221B2 (en) 2008-09-15 2012-07-17 Sony Computer Entertainment America Llc Metrics-based gaming operations
US8825802B2 (en) 2007-09-04 2014-09-02 Sony Computer Entertainment America Llc System and method for identifying compatible users
KR101106846B1 (ko) * 2007-09-19 2012-01-19 소니 컴퓨터 엔터테인먼트 아메리카 엘엘씨 복수-사용자 온라인 세션들에 대한 트래킹, 코릴레이팅 및 프로세싱
US8262472B2 (en) 2007-09-21 2012-09-11 Microsoft Corporation Comprehensive single page view of user's gaming achievements
US8979647B2 (en) * 2007-10-26 2015-03-17 Microsoft Technology Licensing, Llc Method of providing player status and ability to join games
US8197313B2 (en) * 2007-10-29 2012-06-12 Microsoft Corporation User to user game referrals
WO2009086522A2 (en) * 2007-12-26 2009-07-09 Gamelogic Inc. System and method for collecting and using player information
US20090204671A1 (en) * 2008-02-08 2009-08-13 Microsoft Corporation In-meeting presence
US10373398B1 (en) 2008-02-13 2019-08-06 Stamps.Com Inc. Systems and methods for distributed activation of postage
KR20090100628A (ko) * 2008-03-20 2009-09-24 삼성전자주식회사 게임 매치 방법 및 그 방법을 이용하는 전자 장치
US9978185B1 (en) 2008-04-15 2018-05-22 Stamps.Com Inc. Systems and methods for activation of postage indicia at point of sale
US20090325712A1 (en) * 2008-06-28 2009-12-31 Microsoft Corporation Player character matchmaking with distributed peer-to-peer functionality
US9700791B2 (en) * 2008-08-14 2017-07-11 Valve Corporation Overlaying interactive video game play with real-time chat sessions with game switching
US8229796B2 (en) 2008-08-28 2012-07-24 Microsoft Corporation Automated direct bids to purchase entertainment content upon a predetermined event
US9861896B2 (en) * 2008-09-04 2018-01-09 Microsoft Technology Licensing, Llc Method and system for an integrated platform wide party system within a multiplayer gaming environment
US20100082354A1 (en) * 2008-09-29 2010-04-01 Neelakantan Sundaresan User definition and identification
JP4694608B2 (ja) * 2008-10-01 2011-06-08 株式会社スクウェア・エニックス ゲームシステム、ゲーム装置及びプログラム
US8277320B1 (en) * 2008-10-08 2012-10-02 Intuit Inc. Facilitating a game that operates within a social-networking application
JP4950978B2 (ja) 2008-10-08 2012-06-13 株式会社ソニー・コンピュータエンタテインメント 情報処理装置および情報処理方法
US8626863B2 (en) * 2008-10-28 2014-01-07 Trion Worlds, Inc. Persistent synthetic environment message notification
US8176124B2 (en) * 2008-12-04 2012-05-08 Disney Enterprises, Inc. Communication hub for video game development systems having a video game development tool and video game platforms with communication libraries
US8317606B2 (en) * 2008-12-04 2012-11-27 Disney Enterprises, Inc. Live authoring method for real time development of video games
EP2193828B1 (en) * 2008-12-04 2012-06-13 Disney Enterprises, Inc. Communication hub for video game development systems
US20100144444A1 (en) * 2008-12-04 2010-06-10 Disney Enterprises, Inc. Real-time, video game playtesting
US9911246B1 (en) 2008-12-24 2018-03-06 Stamps.Com Inc. Systems and methods utilizing gravity feed for postage metering
US8157653B2 (en) 2009-01-08 2012-04-17 Sony Computer Entertainment America Inc. Automatic player information generation for interactive entertainment
US8137201B2 (en) * 2009-01-09 2012-03-20 Microsoft Corporation Arrangement for building and operating human-computation and other games
US8108468B2 (en) * 2009-01-20 2012-01-31 Disney Enterprises, Inc. System and method for customized experiences in a shared online environment
JP4960980B2 (ja) * 2009-02-27 2012-06-27 株式会社コナミデジタルエンタテインメント ゲーム装置、ゲーム装置の制御方法及びプログラム
US8195809B2 (en) * 2009-03-02 2012-06-05 Microsoft Corporation Multigame multiplayer party session
US8661073B2 (en) * 2009-03-06 2014-02-25 Trion Worlds, Inc. Synthetic environment character data sharing
US8694585B2 (en) * 2009-03-06 2014-04-08 Trion Worlds, Inc. Cross-interface communication
US8657686B2 (en) * 2009-03-06 2014-02-25 Trion Worlds, Inc. Synthetic environment character data sharing
US10277683B2 (en) * 2009-03-16 2019-04-30 Apple Inc. Multifunctional devices as virtual accessories
US8214515B2 (en) * 2009-06-01 2012-07-03 Trion Worlds, Inc. Web client data conversion for synthetic environment interaction
US20100306672A1 (en) * 2009-06-01 2010-12-02 Sony Computer Entertainment America Inc. Method and apparatus for matching users in multi-user computer simulations
GB2485506A (en) 2009-07-21 2012-05-16 Wms Gaming Inc Integrating social communities and wagering games
US20110055315A1 (en) * 2009-09-03 2011-03-03 Flipside5, Inc. System and Method for Providing Connections Between Devices on a Network
US8388446B1 (en) * 2009-09-30 2013-03-05 Zynga Inc. Finding friends for multiuser online games
JP5215277B2 (ja) * 2009-10-21 2013-06-19 株式会社コナミデジタルエンタテインメント ゲームシステム及びそのコンピュータプログラム
US20110106885A1 (en) * 2009-10-29 2011-05-05 Cisco Technology, Inc. Methods and apparatus for supporting multiple party login into a single session
US8622793B2 (en) * 2010-02-16 2014-01-07 BAM Software and Services, LLC Player made tournament application and method
US9511285B2 (en) * 2010-03-26 2016-12-06 Kabam, Inc. Networked computer game systems and methods with social network functions
US20110250971A1 (en) * 2010-04-07 2011-10-13 Van Os Marcel Methods and systems for providing a game center having customized notifications
JP5677811B2 (ja) * 2010-06-11 2015-02-25 任天堂株式会社 携帯型情報端末、携帯情報システム、携帯型情報端末制御プログラム
TWI421118B (zh) * 2010-10-01 2014-01-01 Xpec Entertainment Inc Online gaming system and method of resources to handle online games
US9764240B2 (en) * 2010-10-13 2017-09-19 Sony Interactive Entertainment America Llc Online process for recommending friends based on game playing habits
WO2012050618A1 (en) 2010-10-16 2012-04-19 James Charles Vago Multimedia methods, devices and systems
US8788243B2 (en) 2011-02-14 2014-07-22 Disney Enterprises, Inc. Performance metrics gathering from multiple video game platforms
US20120225724A1 (en) * 2011-03-03 2012-09-06 Adam Barber System and method for facilitating gambling tournaments having updates in real time
JP5857423B2 (ja) * 2011-03-23 2016-02-10 ソニー株式会社 情報処理装置および方法、プログラム、記録媒体、並びに情報処理システム
JP5503587B2 (ja) * 2011-03-31 2014-05-28 アイオー インタラクティブ エーエス ランキングを作成するためのゲームスコアの計算方法を実行するコンピュータ及びゲームシステム
US10449457B2 (en) * 2011-04-20 2019-10-22 Disney Enterprises, Inc. System and method for dynamic matchmaking population herding
US9914320B1 (en) 2011-04-21 2018-03-13 Stamps.Com Inc. Secure value bearing indicia using clear media
US10713634B1 (en) 2011-05-18 2020-07-14 Stamps.Com Inc. Systems and methods using mobile communication handsets for providing postage
KR20120139091A (ko) * 2011-06-16 2012-12-27 엔에이치엔(주) 친구 등록을 통한 게임 제공 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체
US20130007013A1 (en) * 2011-06-30 2013-01-03 Microsoft Corporation Matching users over a network
JP5433639B2 (ja) * 2011-06-30 2014-03-05 株式会社コナミデジタルエンタテインメント ゲーム装置およびプログラム
US9289686B2 (en) 2011-07-28 2016-03-22 Zynga Inc. Method and system for matchmaking connections within a gaming social network
US10373216B1 (en) 2011-10-12 2019-08-06 Stamps.Com Inc. Parasitic postage indicia
JP6046889B2 (ja) * 2011-10-20 2016-12-21 任天堂株式会社 マッチングシステム、情報処理装置、サーバ、マッチング方法、及びマッチングプログラム
JP5089801B1 (ja) * 2011-10-31 2012-12-05 株式会社ソニー・コンピュータエンタテインメント ユーザ編成装置、ユーザ編成方法、およびクラウドコンピューティングシステム
US10846650B1 (en) 2011-11-01 2020-11-24 Stamps.Com Inc. Perpetual value bearing shipping labels
CN102497373B (zh) * 2011-12-13 2015-06-24 北京像素软件科技股份有限公司 多用户多服务器下互动行为的用户匹配方法和装置
US9578094B1 (en) 2011-12-19 2017-02-21 Kabam, Inc. Platform and game agnostic social graph
KR101280924B1 (ko) * 2011-12-21 2013-07-22 엔에이치엔(주) 도전 상대 연결을 통한 게임 제공 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체
US10922641B1 (en) 2012-01-24 2021-02-16 Stamps.Com Inc. Systems and methods providing known shipper information for shipping indicia
US10552446B2 (en) * 2012-03-01 2020-02-04 Zynga Inc. Leveraging social graphs with game play auto-neighboring
US9083728B1 (en) 2012-03-06 2015-07-14 Tal Lavian Systems and methods to support sharing and exchanging in a network
JP5296896B2 (ja) * 2012-03-09 2013-09-25 株式会社ソニー・コンピュータエンタテインメント 情報処理装置および情報処理方法
US10130872B2 (en) 2012-03-21 2018-11-20 Sony Interactive Entertainment LLC Apparatus and method for matching groups to users for online communities and computer simulations
US10186002B2 (en) 2012-03-21 2019-01-22 Sony Interactive Entertainment LLC Apparatus and method for matching users to groups for online communities and computer simulations
US20130288801A1 (en) * 2012-03-27 2013-10-31 Ami Entertainment Network, Inc. Method for conducting a venue-wide multiplayer game
WO2013152042A1 (en) * 2012-04-02 2013-10-10 38 Studios, Llc Videogame management system
US8881181B1 (en) 2012-05-04 2014-11-04 Kabam, Inc. Establishing a social application layer
US8870644B2 (en) 2012-05-16 2014-10-28 Wargaming.Net Llp Dynamic battle session matchmaking
US8425330B1 (en) 2012-05-16 2013-04-23 Wargaming.net, LLC Dynamic battle session matchmaking in a multiplayer game
US9017170B2 (en) * 2012-05-23 2015-04-28 King.Com Limited Method and apparatus for interactive gameplay across multiple computing platforms
JP6162929B2 (ja) 2012-06-01 2017-07-12 任天堂株式会社 投稿情報共有システム
JP6224591B2 (ja) 2012-08-06 2017-11-01 グリー株式会社 表示システム、同システムにおける表示方法及び表示プログラム
JP6035997B2 (ja) * 2012-08-17 2016-11-30 辰巳電子工業株式会社 情報提供装置、情報提供方法、及び情報提供プログラム
US8663004B1 (en) 2012-09-05 2014-03-04 Kabam, Inc. System and method for determining and acting on a user's value across different platforms
US9569801B1 (en) * 2012-09-05 2017-02-14 Kabam, Inc. System and method for uniting user accounts across different platforms
US10115084B2 (en) 2012-10-10 2018-10-30 Artashes Valeryevich Ikonomov Electronic payment system
US9155965B2 (en) * 2012-11-06 2015-10-13 Zynga Inc. Poker communities
WO2014074018A1 (ru) * 2012-11-12 2014-05-15 Ikonomov Artashes Valeryevich Система медиа-взаимодействия в онлайн играх
CN105050674A (zh) * 2013-02-19 2015-11-11 亚马逊技术股份有限公司 经由共享服务委派视频游戏任务
US8992325B2 (en) 2013-02-27 2015-03-31 Steelseries Aps Method and apparatus for processing stimulus signals generated by accessory devices
US9478100B2 (en) 2013-03-12 2016-10-25 Igt Localized remote gaming
US9120020B2 (en) 2013-03-13 2015-09-01 Microsoft Technology Licensing, Llc Matchmaking in multiplayer gaming
US9446310B2 (en) * 2013-03-13 2016-09-20 Facebook, Inc. Suggesting friends for playing a game
US20140274258A1 (en) * 2013-03-15 2014-09-18 Partygaming Ia Limited Game allocation system for protecting players in skill-based online and mobile networked games
GB201306037D0 (en) * 2013-04-03 2013-05-22 King Com Ltd Meta data constant
US10169711B1 (en) * 2013-06-27 2019-01-01 Google Llc Generalized engine for predicting actions
CN103442051A (zh) * 2013-08-22 2013-12-11 苏州辉游网络有限公司 基于语音通信的游戏系统
US20150072791A1 (en) * 2013-09-11 2015-03-12 Dionicio MELCHOR BATISTA JEREZ Systems and methods for an internet competition network
US20150087370A1 (en) * 2013-09-23 2015-03-26 Bally Gaming, Inc. Video baccarat game with a virtual table, outcome history and player selection
JP5581434B1 (ja) * 2013-10-31 2014-08-27 株式会社 ディー・エヌ・エー ゲームプログラム、及び、情報処理装置
US20150151205A1 (en) * 2013-12-02 2015-06-04 DeNA Co., Ltd. Multiple character pvp game
RU2666664C1 (ru) * 2013-12-19 2018-09-11 Йор Колл Текнолоджи, ЭлЭлСи Компьютеризированные способы и системы, дающие возможность участия болельщиков в определении вариантов розыгрышей на спортивных и других событиях
US9821211B2 (en) 2013-12-19 2017-11-21 Your Call, Inc. Computer-implemented methods and systems enabling fan participation in calling plays at sporting and other events
CN103684998B (zh) * 2013-12-31 2017-05-17 广州华多网络科技有限公司 一种群组会话方法及装置
US20150200785A1 (en) * 2014-01-10 2015-07-16 Adobe Systems Incorporated Method and apparatus for managing activities in a web conference
JP5706983B2 (ja) * 2014-03-06 2015-04-22 グリー株式会社 ゲームプログラム、ゲーム処理方法および情報処理装置
US9776091B1 (en) 2014-05-16 2017-10-03 Electronic Arts Inc. Systems and methods for hardware-based matchmaking
US9914054B2 (en) * 2014-06-07 2018-03-13 Microsoft Technology Licensing, Llc Display of system-level achievements with real-time updating
US10176535B2 (en) * 2014-09-05 2019-01-08 Verizon Patent And Licensing Inc. Method and system for providing social category indicators in a user profile header of an on-line posting
EP3213224A1 (en) * 2014-10-27 2017-09-06 Identifor Inc. Identifying an individual's abilities, skills and interests through gaming data analytics
US9753622B2 (en) 2015-05-06 2017-09-05 James L. Moran Customized interactive computing environment
US10286314B2 (en) * 2015-05-14 2019-05-14 Activision Publishing, Inc. System and method for providing continuous gameplay in a multiplayer video game through an unbounded gameplay session
US20160339347A1 (en) * 2015-05-19 2016-11-24 Tonatium Adrian Gimate Welsh Proximity Activated Game Based on Motion
CN105024919B (zh) * 2015-07-06 2016-11-16 腾讯科技(深圳)有限公司 一种用户群组建立方法及装置
CN105391795B (zh) * 2015-11-30 2018-10-02 厦门市光娱投资管理有限公司 网络游戏中跨服务器用户匹配方法及装置
KR102541580B1 (ko) * 2015-12-28 2023-06-08 슈퍼셀 오와이 멀티플레이어 게임 세션들을 관리하기 위한 방법 및 시스템
EP3190550A1 (en) * 2016-01-11 2017-07-12 Nintendo Co., Ltd. Method and device for refining selection of items as a function of a multicomponent score criterion
US10076702B2 (en) * 2016-02-23 2018-09-18 Sony Interactive Entertainment America Llc Setting up gaming sessions to reduce waiting time
US20170239563A1 (en) * 2016-02-23 2017-08-24 Sony Interactive Entertainment America Llc Game selection and invitation process
US9993735B2 (en) 2016-03-08 2018-06-12 Electronic Arts Inc. Multiplayer video game matchmaking optimization
US10729975B1 (en) 2016-03-30 2020-08-04 Electronic Arts Inc. Network connection selection processing system
US9919220B2 (en) * 2016-05-03 2018-03-20 Roblox Corporation Tracking and player-to-game matching system for online gaming
US10456672B2 (en) 2016-05-19 2019-10-29 Google Llc Methods and systems for facilitating participation in a game session
JP6126277B1 (ja) * 2016-07-08 2017-05-10 株式会社 ディー・エヌ・エー ゲーム提供システム及びゲームプログラム
US10506268B2 (en) * 2016-10-14 2019-12-10 Spotify Ab Identifying media content for simultaneous playback
US10286327B2 (en) 2016-10-21 2019-05-14 Electronic Arts Inc. Multiplayer video game matchmaking system and methods
US10478732B2 (en) * 2016-11-07 2019-11-19 Microsoft Technology Licensing, Llc Arbitrating an outcome of a multiplayer game session
US10821358B2 (en) 2016-11-18 2020-11-03 Sony Interactive Entertainment Network America Llc Gaming server and method to generate context-aware gaming information
US10091281B1 (en) 2016-12-01 2018-10-02 Electronics Arts Inc. Multi-user application host-system selection system
US10449458B2 (en) * 2016-12-30 2019-10-22 Microsoft Technology Licensing, Llc Skill matching for a multiplayer session
US10471360B2 (en) 2017-03-06 2019-11-12 Sony Interactive Entertainment LLC User-driven spectator channel for live game play in multi-player games
JP6281082B1 (ja) * 2017-03-15 2018-02-21 株式会社コナミデジタルエンタテインメント サーバ装置、及びそれに用いられるコンピュータプログラム
US10423638B2 (en) 2017-04-27 2019-09-24 Google Llc Cloud inference system
KR102395526B1 (ko) * 2017-05-12 2022-05-10 엔에이치엔 주식회사 게임 시스템 및 이를 이용한 게임 진행 방법
US10835826B1 (en) * 2017-07-11 2020-11-17 Amazon Technologies, Inc. Social player selection for multiplayer electronic games
US11213754B2 (en) * 2017-08-10 2022-01-04 Global Tel*Link Corporation Video game center for a controlled environment facility
EP4336800A2 (en) * 2017-10-10 2024-03-13 Google LLC Distributed sample-based game profiling with game metadata and metrics and gaming api platform supporting third-party content
US11140207B2 (en) 2017-12-21 2021-10-05 Google Llc Network impairment simulation framework for verification of real time interactive media streaming systems
US11465056B2 (en) 2018-01-12 2022-10-11 Bunch Live, Inc. Game mediation component for enriching multiplayer gaming sessions
US11103772B2 (en) 2018-01-12 2021-08-31 Bunch Live, Inc. Mediating multiplayer electronic game sessions
US10953322B2 (en) 2018-02-28 2021-03-23 Sony Interactive Entertainment LLC Scaled VR engagement and views in an e-sports event
US10765938B2 (en) 2018-02-28 2020-09-08 Sony Interactive Entertainment LLC De-interleaving gameplay data
US11065548B2 (en) 2018-02-28 2021-07-20 Sony Interactive Entertainment LLC Statistical driven tournaments
US10953335B2 (en) 2018-02-28 2021-03-23 Sony Interactive Entertainment Inc. Online tournament integration
US10792576B2 (en) 2018-02-28 2020-10-06 Sony Interactive Entertainment LLC Player to spectator handoff and other spectator controls
US10814228B2 (en) 2018-02-28 2020-10-27 Sony Interactive Entertainment LLC Statistically defined game channels
US10818142B2 (en) 2018-02-28 2020-10-27 Sony Interactive Entertainment LLC Creation of winner tournaments with fandom influence
US10765957B2 (en) 2018-02-28 2020-09-08 Sony Interactive Entertainment LLC Integrating commentary content and gameplay content over a multi-user platform
US10792577B2 (en) 2018-02-28 2020-10-06 Sony Interactive Entertainment LLC Discovery and detection of events in interactive content
GB2571548A (en) * 2018-03-01 2019-09-04 Sony Interactive Entertainment Inc User interaction monitoring
US10549200B2 (en) * 2018-03-08 2020-02-04 Electronic Arts, Inc. Matchmaking for online gaming with streaming players
US20190287041A1 (en) * 2018-03-15 2019-09-19 International Business Machines Corporation Collaboration platform with skills gap analysis
CN111417441A (zh) 2018-03-22 2020-07-14 谷歌有限责任公司 用于渲染和编码在线交互式游戏会话的内容的方法和系统
US10874947B2 (en) * 2018-03-23 2020-12-29 Sony Interactive Entertainment LLC Connecting a player to expert help in real-time during game play of a gaming application
JP7073526B2 (ja) 2018-04-02 2022-05-23 グーグル エルエルシー インタラクティブなクラウドゲームのための方法、デバイス、およびシステム
CN111886057A (zh) 2018-04-02 2020-11-03 谷歌有限责任公司 用于电子系统的输入装置
US11077364B2 (en) 2018-04-02 2021-08-03 Google Llc Resolution-based scaling of real-time interactive graphics
CN110339565A (zh) * 2018-04-03 2019-10-18 天下数位科技股份有限公司 游戏信息画面切换系统
EP3701489B1 (en) 2018-04-10 2022-10-26 Google LLC Memory management in gaming rendering
US11216786B2 (en) * 2018-07-17 2022-01-04 Kavita Ramchandani Snyder System and method for dispatching intelligent invitations to users within a network
US11052311B2 (en) 2018-09-07 2021-07-06 Valve Corporation Machine-learned trust scoring based on sensor data
US10905962B2 (en) 2018-09-07 2021-02-02 Valve Corporation Machine-learned trust scoring for player matchmaking
US10987593B2 (en) 2018-09-19 2021-04-27 Sony Interactive Entertainment LLC Dynamic interfaces for launching direct gameplay
US10695671B2 (en) * 2018-09-28 2020-06-30 Sony Interactive Entertainment LLC Establishing and managing multiplayer sessions
US11662051B2 (en) 2018-11-16 2023-05-30 Google Llc Shadow tracking of real-time interactive simulations for complex system analysis
US11642596B2 (en) * 2019-04-29 2023-05-09 Bunch Live, Inc. Game mediation infrastructure for establishment of multiplayer gaming sessions
TWI708487B (zh) * 2019-05-10 2020-10-21 擴思科技股份有限公司 社群聊天資訊的處理系統
US11405347B1 (en) * 2019-05-31 2022-08-02 Meta Platforms, Inc. Systems and methods for providing game-related content
US10918937B2 (en) * 2019-07-16 2021-02-16 Electronic Arts Inc. Dynamic gameplay session management system
US10918951B1 (en) * 2019-09-13 2021-02-16 Disney Enterprises, Inc. Systems and methods to provide a game based on common media consumption
US11260305B2 (en) * 2020-03-16 2022-03-01 International Business Machines Corporation User matching based on active game time
US11806629B2 (en) * 2020-03-24 2023-11-07 Virtuous AI, Inc. Artificial intelligence models for moral insight prediction and methods for use therewith
US11247125B2 (en) * 2020-06-02 2022-02-15 Supercell Oy Apparatus for managing online game, method and system therefor
US11638872B1 (en) * 2021-10-18 2023-05-02 Electronic Arts Inc. Videographer mode in online games

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2286257A (en) * 1940-03-01 1942-06-16 Chester Mcphee Wax applicator
US5586257A (en) 1994-05-05 1996-12-17 Perlman; Stephen G. Network architecture to support multiple site real-time video games
RU2102790C1 (ru) 1995-07-27 1998-01-20 Денис Эрнестович Львов Электронная игровая система
US20030064807A1 (en) * 2001-09-25 2003-04-03 Walker Jay S. Method and apparatus for linked play gaming
US6106399A (en) * 1997-06-16 2000-08-22 Vr-1, Inc. Internet audio multi-user roleplaying game
US6352479B1 (en) * 1999-08-31 2002-03-05 Nvidia U.S. Investment Company Interactive gaming server and online community forum
US6579184B1 (en) * 1999-12-10 2003-06-17 Nokia Corporation Multi-player game system
CA2400587A1 (en) 2000-02-17 2001-09-07 Acclaim Entertainment, Inc. Multi-player computer game system and method
US7056217B1 (en) * 2000-05-31 2006-06-06 Nintendo Co., Ltd. Messaging service for video game systems with buddy list that displays game being played
US6641481B1 (en) * 2000-11-17 2003-11-04 Microsoft Corporation Simplified matchmaking
CA2437348A1 (en) 2001-02-02 2002-08-15 Opentv, Inc. A method and apparatus for reformatting of content for display on interactive television
JP3429287B2 (ja) * 2001-05-29 2003-07-22 株式会社コナミコンピュータエンタテインメント大阪 ネットゲームシステム及びネットゲーム管理方法
JP2003088677A (ja) 2001-07-09 2003-03-25 Square Co Ltd オンラインゲームシステム、サーバシステム、クライアントシステム、オンラインゲーム処理方法、プログラム及び記録媒体
US7029394B2 (en) * 2001-07-13 2006-04-18 Gameaccount Limited System and method for generating statistics for a user of a gaming application
KR20030037466A (ko) 2001-11-05 2003-05-14 주식회사 소프트닉스 인터넷 게임 접속 장치 및 방법
JP3764090B2 (ja) * 2001-11-08 2006-04-05 株式会社ナムコ サーバ、サーバの制御プログラムおよびそのプログラムを記録した記録媒体
JP3561511B2 (ja) * 2002-05-14 2004-09-02 株式会社スクウェア・エニックス ネットワークゲームシステム、ゲームサーバ装置、ネットワークゲームの進行方法、プログラム及び記録媒体
JP2004141525A (ja) 2002-10-28 2004-05-20 Namco Ltd ゲームシステム、プログラム及び情報記憶媒体
US20040097287A1 (en) 2002-11-14 2004-05-20 Richard Postrel Method and system for gaming over a computer network
US20040143852A1 (en) * 2003-01-08 2004-07-22 Meyers Philip G. Systems and methods for massively multi-player online role playing games
US20050277472A1 (en) 2003-03-26 2005-12-15 William Gillan Game server system and method for generating revenue therewith
JP3772328B2 (ja) 2003-03-31 2006-05-10 株式会社光栄 ネットワークゲームサーバ、制御方法、プログラム及び記憶媒体
US7537520B2 (en) * 2003-04-09 2009-05-26 Arrow International, Inc. Modular bingo console system with multi-port communications and manual play mode
US7069308B2 (en) 2003-06-16 2006-06-27 Friendster, Inc. System, method and apparatus for connecting users in an online computer system based on their relationships within social networks
US7311608B1 (en) * 2003-10-31 2007-12-25 Microsoft Corporation Online game invitations using friends list
JP4064355B2 (ja) * 2004-01-20 2008-03-19 任天堂株式会社 ゲームシステムおよびゲーム装置
US20050200077A1 (en) * 2004-02-03 2005-09-15 Conceptuary, Inc. System and method for a relationship logic game
US7614955B2 (en) * 2004-03-01 2009-11-10 Microsoft Corporation Method for online game matchmaking using play style information
US7677970B2 (en) * 2004-12-08 2010-03-16 Microsoft Corporation System and method for social matching of game players on-line
US8066568B2 (en) * 2005-04-19 2011-11-29 Microsoft Corporation System and method for providing feedback on game players and enhancing social matchmaking

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009158197A2 (en) * 2008-06-26 2009-12-30 Microsoft Corporation Game clan matchmaking
WO2009158197A3 (en) * 2008-06-26 2010-03-11 Microsoft Corporation Game clan matchmaking
KR101363034B1 (ko) * 2011-03-09 2014-02-17 소니 컴퓨터 엔터테인먼트 인코포레이티드 정보처리장치
US9669314B2 (en) 2011-03-09 2017-06-06 Sony Corporation Information processing apparatus

Also Published As

Publication number Publication date
CN101180621B (zh) 2012-06-20
JP5376945B2 (ja) 2013-12-25
US20060287099A1 (en) 2006-12-21
US20120283023A1 (en) 2012-11-08
KR101292432B1 (ko) 2013-07-31
RU2419844C2 (ru) 2011-05-27
EP1894123A2 (en) 2008-03-05
US8535165B2 (en) 2013-09-17
BRPI0611981A2 (pt) 2010-10-13
RU2007147424A (ru) 2009-06-27
WO2007001628A2 (en) 2007-01-04
US20060287096A1 (en) 2006-12-21
US8241129B2 (en) 2012-08-14
US8585501B2 (en) 2013-11-19
CN101180621A (zh) 2008-05-14
WO2007001628A3 (en) 2007-10-04
JP2008546469A (ja) 2008-12-25
EP1894123A4 (en) 2012-03-07

Similar Documents

Publication Publication Date Title
KR101292432B1 (ko) 게임 컨텍스트 밖에서의 온라인 게임 세션 셋업
US7677970B2 (en) System and method for social matching of game players on-line
AU2006336517B2 (en) Join in-progress on-line game session
US8066568B2 (en) System and method for providing feedback on game players and enhancing social matchmaking
AU2006336232B2 (en) Computer-based gaming groups
US8221238B1 (en) Determination of a reputation of an on-line game player
US7997987B2 (en) Computer-based gaming teams

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
J201 Request for trial against refusal decision
AMND Amendment
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160630

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170704

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180628

Year of fee payment: 6