建立游戏上下文外的在线游戏会话的制作方法

文档序号:6567549阅读:196来源:国知局

专利名称::建立游戏上下文外的在线游戏会话的制作方法
技术领域
:本发明通常涉及游戏和多媒体设备领域。更具体地说,本发明针对在线游戏会话。
背景技术
:在线游戏中,游戏托管服务和游戏开发商已经创建了多种方法来跟踪和个性化在线游戏经历。现有系统的一个缺点是许多特征彼此无关地逐渐形成。游戏与中央服务来回地发送有关游戏者的大块数据,但服务无法理解和聚集游戏上下文外的数据。游戏能托管它们自己的网站,但所显示的数据不能由其他游戏通用访问。因此,在某种意义上,服务和游戏提供两种并行社区一一为游戏者提供大但分开的资源。首先,在游戏社区中,在玩游戏同时,游戏者能看到玩特定游戏的其他人的社区、该游戏的名人排行以及他在该游戏中的个人成绩。游戏能由服务数据告知游戏者一好友是否在线,但不能告知游戏者该好友正在该服务上做什么或他何时有空。其次,在服务社区中,服务知道游戏者的玩家历史、他玩过的所有游戏、他在线花费的时间量、他的好友列表的大小以及好友已经玩过或正在玩的所有游戏、发送和接收的好友邀请、发送和接收的消息以及游戏者已经发出和接收的所有反馈。系统已经尝试利用这些在线社区来匹配各个玩家以便允许他们玩多玩家游戏。不必说,在通常强调单个游戏或游戏小型系列中的技能或经验的一般的这种系统中,不允许基于各种个人考虑乐意共享交互的玩家群形成游戏上下文外的社区,然后共同加入多玩家游戏。通常,基于控制台的配对和竞赛系统受每一单个游戏开发小组的创造力和资源的限制。每一小组必须编写其自己的匹配和竞赛界面。对游戏者来说,这意味着他或她每次必须重新学习配对或竞赛UI。由于每一游戏创建其自己的配对和竞赛系统,游戏者无法在服务上观看比赛和竞赛选项。游戏者不了解最大玩家社区在哪儿或哪些社区正托管最多竞赛。另外,因为配对界面通常是每一单个游戏的代码的一部分,游戏者不具有在一个游戏中与其他玩家建立匹配,然后同该玩家分组漫游到另一游戏的能力。尽管一些游戏已经使用Web来创建、管理和査看控制台竞赛的状态,但这种经历涉及游戏者和游戏开发商使其工作的一系列复杂的步骤。另外,Web竞赛管理系统已经紧紧地依赖于所开发的特定游戏系列。标题系列外的游戏不能从该Web系统中受益。
发明内容本发明包括用于玩基于计算机的多玩家游戏的系统和方法。该系统和方法从多个不同的游戏接收配置设置。配置设置提供有关游戏的参数的信息,以便所述服务具有根据游戏的容许参数将多个玩家进行匹配的能力或能根据那些参数让玩家创建群会话,然后邀请其他人加入。提供这样一种服务,它拥有具有有关多个玩家的信息和有关在计算设备上操作的多个不同游戏的信息的数据库。耦合到该服务的有一输入设备,用于从玩家接收对多个不同游戏中的一个的选择和该玩家对所述游戏的配置设置中的特定选择。服务在功能上与游戏分开并允许玩家选择来自不同游戏开发商的多个不同游戏中的任何一个。耦合到该服务还有一输出设备,用于将开始消息输出到多个计算设备,其中,根据多个玩家和多个不同游戏中的一个来选择所述计算设备。该消息包含指7丁;配置设定的信息以便所有计算设备能用相同的方式开始游戏。该系统还包括用于在游戏和控制台之间维护描述玩家的分组的唯一标识符的群和会话管理API。耦合到该服务还有一输入设备,用于接受来自游戏的游戏完成消息。该消息包含有关回到控制台来选择玩不同游戏的玩家群的信息。数据库中有关多个玩家的信息包括指示所述玩家玩游戏的技能和社交属性的信息。该系统和方法能根据所述玩家玩游戏的技能和社交属性来匹配玩家子集。另外,可为结构化竞赛扩展该系统和方法。在这些情况下,在每一轮竞赛后,该系统和方法根据竞赛中剩余玩家向玩家提供多个开始消息。当结合附图阅读时,将更好理解本发明的上述概述以及下述详细描述。为说明本发明的目的,在图中示出了本发明的示例性构造,然而,本发明不限于所公开的具体的方法和仪器。在图中图1是可以实现本发明的各方面的示例性计算机网络环境的框图2是示出了能集成到网络计算环境,诸如图1的网络计算环境中的示例性控制台的框图3是示出了控制台与远程服务的交互的框图4示出了构建用户概况文件(profile)而收集的信息;图5是显示用户概况文件信息的用户界面的示例图示;图6是显示用户概况文件信息的用户界面的另一示例图示;图7是显示用户概况文件信息的用户界面的另一示例图示;图8示出了游戏玩家能由此提供有关其他游戏玩家的反馈的反馈机制;图9示出了玩家能由此过滤用于配对会话的选择,然后根据它们的描述信息在会话列表中选择的用户界面;图IO也示出了玩家能由此过滤用于配对会话的选择,然后根据它们的描述信息在会话列表中选择的用户界面;图11是示出设置配对会话时的用户界面流的流程图;以及图12是竞赛设置过程的流程图。具体实施例方式图1是用来示例说明本发明的各方面的示例性计算机网络的图。其中,计算机100a-100e可以托管各种计算对象,诸如游戏和其他应用程序。尽管物理环境将所连的设备示为计算机,但这种例示仅是示例性的,且可以包括各种数字设备,诸如PDAs、游戏控制台等等。此外,通信网络160本身可以包括多个计算机、服务器和诸如路由器的网络设备等等。存在支持分布式计算环境的各种系统、组件和网络配置。例如,计算系统可以通过有线或无线系统、通过本地网络或广泛分布的网络连接在一起。目前,许多网络耦合到提供用于广泛分布的计算的基础架构且包括许多不同的网络的互联网。本发明的各方面能用来将计算机可读指令、代码段、应用程序等等分发到各个分布式计算设备。网络体系结构启用网络拓扑的主机,诸如客户机/服务器、对等或混合体系结构。"客户机"是使用不与其相关的另一类或组的服务的类或组的成员。因此,在计算中,客户机是请求由另一程序提供的服务的进程(即粗略地为指令集或任务集)。客户机进程利用所请求的服务,而不必"知道"有关另一程序或服务本身的任何工作细节。在客户机/服务器体系结构中,特别是连网系统中,客户机通常是访问由另一计算机(即服务器)提供的共享网络资源的计算机。服务器通常是可在远程网络,诸如互联网上访问的远程计算机系统。客户机进程可以在第一计算机系统中活动,而服务器进程可以在第二计算机系统中活动,彼此在通信介质上通信,从而提供分布式功能并允许多个客户机利用服务器的信息收集能力。客户机和服务器利用由协议层提供的功能彼此通信。例如,超文本传输协议(HTTP)是结合万维网(WWW)或简称为"Web"使用的常见协议。一般地,计算机网络地址,诸如统一资源定位器(URL)或网际协议(IP)地址被用来向服务器或客户计算机彼此标识。在通信介质上提供计算设备间的通信。特别地,可以经用于高容量通信的TCP/IP连接,使客户机和服务器彼此耦合。通常,计算机网络可以包括在网络环境中部署的服务器设备和客户机设备(在对等环境中,设备可以既是客户机又是服务器)。通信网络160可以是LAN、WAN、内联网或互联网,或这些的任何一个的组合,便于多个计算设备10a-10e间的通信。此外,通信网络160可以包括无线、有线或无线和有线连接的组合。另外,计算机网络可以包括分布式计算环境。在该环境中,计算任务可以分布在作为计算机网络中可寻址元素的多个计算设备上。根据本发明的一方面,通信网络160可以托管可从多个计算机100a-100e访问的服务150。服务150收集信息并跟踪计算机100a-100e的用户以便为服务的所有用户提供计算服务。图2示例说明可以用作图1的网络中的计算机100a-100e的多媒体/游戏控制台100的功能组件。多媒体控制台IOO具有包括一级高速缓存102、二级高速缓存104和闪速ROM(只读存储器)106的中央处理单元(CPU)101。一组高速缓存102和二级高速缓存104临时存储数据,从而减少存储器存取周期的数目,由此改善处理速度和吞吐量。可以将CPU101设为具有一个以上的内核,由此具有额外的一级和二级高速缓存102和104。闪速ROM106可以存储当多媒体控制台100通电时在引导过程的初始阶段期间加载的可执行代码。图形处理单元(GPU)108和视频编码器/视频编解码器(编码器/解码器)114形成用于高速和高分辩率图形处理的视频处理流水线。经总线将数据从图形处理单元108传送到视频编码器/视频编解码器114。视频处理流水线将数据输出到A/V(音频/视频)端口140,用于传送到电视或其它显示器。存储器控制器110连接到GPU108以便处理器访问各种类型的存储器112,诸如但不限于RAM(随机存取存储器)。多媒体控制台110包括I/O控制器120、系统管理控制器122、音频处理单元123、网络接口控制器124、第一USB主机控制器126、第二USB控制器128和面板I/0部件130,它们优选地在模块U8上实现。USB控制器126和128用作用于外围控制器142(1)-142(2)、无线适配器148和外部存储器设备146(例如闪存、外部CD/DVDROM驱动、可移动介质等等)的主机。网络接口124和/或无线适配器148提供对网络(例如互联网、家用网络等等)的访问,且可以是各种有线或无线适配器组件中的任何一个,包括以太网卡、调制解调器、蓝牙模块、电缆调制解调器等等。提供系统存储器143来存储在引导过程期间加载的应用程序数据。提供媒体驱动器144,它可以包括DVD/CD驱动器、硬盘驱动器或其他可移动媒体驱动器等等。媒体驱动器144可以在多媒体控制台100内部或外部。可以经媒体驱动器144访问应用程序数据,以便由多媒体控制台100执行、回放等等。媒体驱动器144经总线,诸如串行ATA总线或其他高速连接(例如IEEE1394)连接到I/O控制器120。系统管理控制器122提供与确保多媒体控制台100的可用性的各种服务功能。音频处理单元123和音频编解码器132形成具有高保真度和立体声处理的相应的音频处理流水线。经通信链路在音频处理单元123和音频编解码器132间传送音频数据。音频处理流水线将数据输出到A/V端口140,用于由外部音频播放器或具有音频能力的设备再现。面板I/O组件130支持电源按钮150和弹出按钮152、以及暴露在多媒体控制台100的外表面上的任何LED(发光二极管)或其他指示器的功能。系统电源模块136为多媒体控制台100的各组件供电。风扇138冷却多媒体控制器100内的电路。经一个或多个总线,包括串行和并行总线、存储器总线、外围总线和使用各种总线体系结构的任何一个的处理器或本地总线,使多媒体控制台100内的CPU101、GPU108、存储控制器110和各种其他组件互连。例如,这些体系结构可包括外围部件互连(PCI)总线、PCI-Express总线等等。当多媒体控制台100通电时,可以将应用程序数据从系统存储器143加载到存储器112和/或高速缓存102、104中并在CPU101上执行。当导航到多媒体控制台100上可用的不同的媒体类型时,应用程序可以呈现提供一致的用户体验的图形用户界面。操作中,可以从媒体驱动器144运行或播放包含在媒体驱动器144内的应用程序和/或其他媒体以便向多媒体控制台100提供另外的功能。通过简单地将系统连接到电视或其他显示器,多媒体控制台ioo可以净皮f喿作为单机的系统。在该单机模式中,多媒体控制台100允许一个或多个用户与^乡充交互、观看电影或收听音乐。然而,通过网络接口124或无线适配器148使宽,连接集成可用,多媒休控制台100还可以操作为如图1所示的更大网络社区中的^与人。根据本发明的一方面,当在控制台100上执行游戏时,该游戏向在通^f言网络160上操作的服务提供信息。该服务跟踪用于连接到该服务的所有用户的f言^^^以便提供丰富的用户体验。服务跨游戏、控制台、计算设备等等跟踪用户信息。^m过跟踪用于该服务的所有用户的信息,服务能聚集用于所有用户的统计数据并坝Ui57U游戏的能力,通过提供有关好友的信息(例如,他们正在玩什么游戏以及他仆]已会5达到的技能水平(skilllevel))来提供更丰富的用户体验,跟踪用户成绩,以I一般测量用于在大型用户社区上聚集的游戏的统计数据。为提供跨游戏上一致数据集,系统构想了图示的配置驱动过程,其中,每一游戏生成定义用于特定游戏的游戏数据的配置文件(根据由该服务定义的;^案)。通过游戏配置过程,游戏描述该游戏关于每一游戏玩家、生成的数据。通过4史用配置过程,服务将能理解从游戏流出的数据,且能以有意义的方式将其与该月艮《理解的其他数据集成以便创建该服务的每一用户的丰富的概况文件。当用户继乡卖十亥月艮务时,该概况文件将追随用户,即它与游戏和位置无关。对每一用户(或被称为玩家或游戏者),服务将收集多个数据(被禾尔力祁义况文件数据)以便在每一游戏会话中一一甚至在游戏会话结束后,构建用户扭无W文件。通常,输送概况文件的服务体验包括1.用户关于他自己或她自己所说的内容(包括帐户设置和精心制作的〃卜人概况文件的构造,包括优选的社交游戏玩"区")2.其他人关于该用户所说的内容(反馈得分和公众可见的声誉)。3.游戏关于该用户所说的内容(游戏配置文件和来自玩游戏的数据的員成以便计算玩家的技能等)。4.系统关于该用户所说的内容(在线时间、所玩的游戏的聚集、》子:^:歹!j表、控制台行为等等)。系统创建"用户概况文件",用作用于旨在创建游戏者社区并发展^^间的关系的服务和应用程序的构件块。用户概况文件是与特定用户(即游戏5i^的数字身份)有关的全部信息(例如元数据)。从以有意义的方式收集该信息并将其向社区展示的服务集形成用户概况文件。用户概况文件还提供个性化,以便用户能定制和增进他们的游戏体验。如在下文更详细地描述,用户概况文件由各个组件,包括但不限于玩家卡片、游戏成绩和游戏者偏好组成。参考图3,示出了可以用来实现用户概况文件交互以及用户与在此更全面描述的游戏会话的交互的示例性体系结构的概观。控制台100与向游戏者提供服务158,诸如语音/聊天、好友列表、配对、内容下载、漫游、反馈、竞赛、语音消息传递和更新的远程服务150交互。服务150还在由服务158和游戏154使用的概况文件数据库162和配置数据164中维护用户概况文件。服务150收集用户概况文件、聚集和并理由其他服务158提供的信息,以及履行用于检索用户概况文件相关的服务的实时客户机请求。数据库162中的用户概况文件也由游戏154使用来启用个性化和定制等等。使用控制台100,用户可以与向导156交互。向导156提供一种界面,其中,用户能导航并进入由服务158提供的不同的在线区和选项。由服务150存储的配置数据164可以用来确定由向导156提供的特征和选项。当游戏154正在运行时,使用所定义的API集(包括SetContext、SetPraperty、SetAchievement和用于写入有关玩家的数据的会话API,以及用于查看状态、成绩和其他用广概况文件的多个专用阅读API)来调用服务158并与之交互。当经API请求用户概况文件信息时,游戏154可以传递用户的唯一标识符。服务150可以返回玩家卡片(如下所述)、游戏统计数据、游戏成绩、会员关系、游戏设定等等。在下文提供示例性体系结构的各个方面的另外的细节。服务158帮助跟踪和显示各种游戏中的状态,诸如杀死敌人的数目、一圈最快的时间和(重要的是,用于计算配对中所需的技能值)的赢/输率。由用户所玩的各个游戏提供所有统计数据,并将其提供给服务,用于包括在玩家的用户概况文件中。例如,第一人称射击标题可能希望定义独立于每一"地图"上下文跟踪的"杀死敌人"属性(例如,在BloodCreek上杀死5个对比在BattleRange上杀死10个)。那一信息能显示为-<table>tableseeoriginaldocumentpage11</column></row><table><formula>formulaseeoriginaldocumentpage12</formula>每一游戏应当支持与游戏的特征匹配并能对服务158的每一用户跟踪的最小用户概况文件166的拥有者能直接编辑他/她的用户概况文件166并控制谁能査看用户概况文件的每一部分。用户概况文件166可以经一般字段(例如贴片(tile)、国家、语言(language)、性别、问候等等)和/或系统设定(例如语音输出、控制器振动、角色名、游戏格式、游戏模式等等)编辑。能对用户概况文件166能调整隐私/选择退出设定,以便例如限制仅向好友显示信息,允许所有人能看到游戏成用户概况文件与称为"好友"的其他玩家列表关联。好友是处于好友列表上、玩家已经邀请(且已经接受该邀请)的其他游戏者。用户概况文件还与称为"最近玩家(RecentPlayer)"的玩家列表关联。最近玩家是所有游戏上,用户概况文件所有者已经与其玩过游戏的最近N个玩家的列表。用户概况文件166可以包括由其他玩家170提供的反馈。反馈有助于其他人了解特定游戏者。例如,如果游戏者在游戏会话中使用秽语或具有攻击性,那么其他玩家可以向服务150提供反馈。反馈机制通过构建声誉来改善用户体验。因此,玩家是匿名的,但由于积累的反馈而并不是未知的。在该系统的另一方面中,服务150和游戏154跟踪用户的在线和离线活动以便提供游戏者概况文件166中的使用统计数据。当游戏者在线玩时,将特定的游戏标题添加到他人可见的所玩的游戏的列表上。当离线时,游戏控制台100和游戏154经用于指示游戏收集有关特定玩家游戏中的统计数据和成绩的详细信息的机制来跟踪用户的活动。在下次连接到服务150期间,更新游戏者概况文件166,以便反映离线玩游戏。可以由游戏经用户概况文件数据机制向服务154报告游戏成绩。参考图5-8,能经各种方法和形式查看游戏者概况文件,该文件通常在玩家卡片172中显示。玩家卡片172是可用于控制台100以及例如Web上的游戏的游戏者概况文件166的可视表示。玩家卡片172用作玩家的游戏者概况文件166的概述或快照。游戏者可以使用玩家卡片来设置将游戏者添加到优选玩家列表以便在将来再次玩游戏的配对列表。如图5所示,玩家卡片172可以划分成两个区域,基本区174和上下文专用的(或扩展)区域176。基本区174在多个上下文中以标准和一致的方式提供游戏者配置信息集,而可以扩展区可被定制以便适合特定的上下文。尽管在向导156的上下文中示出了图5-8的玩家卡片172,但玩家卡片172可以与其余屏幕视觉上分开并采用显示它的屏幕的背景色。可以以对应于不同上下文的不同变型来提供基本区174,而在每一上下文内是一致的视图。例如在线会话期间,当一个玩家正查看另一玩家的玩家卡片172时,示出了在线玩家卡片172。在线基本区174包括诸如玩家的游戏者标记、玩家贴片、整个社区的等级、游戏者信用点(基于点数的奖赏点系统)、游戏者区、国家、会员层次、奖励等等的细节。当玩家正查看他/她自己的玩家卡片172时,示出了离线玩家卡片172。离线基本区174可以包括在线基本区的子集还可以包括关于所玩的标题和所玩的时间的信息。玩家卡片172的基本区174最好是固定大小的,具有一致、静态的布局且具有所有信息要素,诸如贴片或游戏者信用点的固定位置。扩展区176可以包括玩家卡片动作集,诸如"查看概况文件"、"发送好友邀请"和"发送反馈"等等。玩家卡片的扩展区最好是不固定大小的,因为可以基于上下文改变。如图5-7所示,用户可以经向导156和好友列表176巻动其他用户的列表。当用户在他/她的好友中巻屏时,可以显示用于其他用户的玩家卡片或可以为用户提供查看玩家概况文件的全部视图的选项。全视图模式由扩展区176的不同视图组成且可以包括几个部分,诸如概况文件概述、社区反馈、游戏成绩、活动性和社交网络。向导156可以进入好友列表、最近玩家(以及用于每一玩家的概述部分)、用户主页以便于导航到各个选项和设定等等。概况文件概述包括有关所玩的游戏的数量、所玩的时间、贴片、祝贺等等的信息。社区反馈包括有关风格、运动员精神、语言、协作等等的等级。游戏成绩部包括最近标题、经验点(玩家信用点)、所玩的时间、游戏专用统计数据和成绩等等。活动部包括所挣得的玩家信用点、所玩的会话、所玩的总时间、在服务上的活动曰等等。社交网络包括好友、分组、肯定/否定反馈计数等等。配对:对在线、多玩家游戏,配对将游戏玩家连接到会话。配对会话是玩游戏的实例,包括玩游戏的两个(2)或更多玩家或游戏者直到他们或者决定终止会话为止或者直到会话满足其资"^"准,y(如由游戏定义)为止。创建会话的人是J^A。一些游戏是^:_^乂的,意指该游戏不向发起该游戏的人分配任何特定的功能。在这样的情况下,发起人实际上可以是正搜索具有特定准则的会话的人,当未找到时,游戏创建用于该人的会话并向其他人宣传它,以便与其配对。配对涉及加入至少具有已经就位的一个玩家的会话。如果存在为寻找空位的个人可用的开放的空位且还该游戏没有开始(即,该游戏处于"大厅"状态),会话被称为^》/7A。^》//A会话的一些游戏将通告会话是可加入的,直到填满每一开放空位为止。游戏者通过在游戏中或游戏外配对系统中选择"配对"来进行配对。配对UI可以允许游戏者将一些过滤器添加到其对会话的搜索(例如,象指定地图或难度级),或可以将游戏者直接推至搜索查询。在大多数情况下,在具有或不具有过滤器的情况下,为游戏者提供由会话列表组成的会话^#^"菜。每一会话由会话i^遂/邻艮定,包括有关那一会话的最突出信息的简短概述。然后,游戏者选择一会话并加入它。一般,玩家然后进入大厅并在游戏开始前等待其他玩家加入游戏。在一些情况下,无搜索结果显示,玩家被丢弃而非直接进入最满足他们的搜索准则的游戏的大厅。包括在该系统中的一种配对——"社交配对"利用用户概况文件数据和"会员列表"以便改进配对会话的社会动力。当游戏玩家选择在此处称为"社交配对"的系统中在会话中配对时,在第一会话中,他所设置的描述自己的概况文件数据用来"釆取措施"并找出新玩家一起玩的最佳伙伴。仅通过游戏,游戏玩家即与成为"会员列表"(如下所述)上的最近玩家的一组伙伴玩家关联。在未来会话中,服务优选地使与最近玩家玩的优先级高于陌生人,但只要游戏玩家给出肯定反馈,那么这些"肯定反馈"的人将被系统记住并给予甚至更高的优先级。随时间流逝,当玩家变得与一组玩家非常熟悉时,他邀请他们成为好友。这些好友玩家被给予最高优先级。该社交配对系统将具有类似意图和共享类似概况文件的人们连在一起以便确保他们均在游戏内外过得快活(但主要是游戏内)。配对与其使用反馈和概况文件的便于人们随时间以日益精确的配对来扩充或刷新他们的在线社区。最后,配对将人们绑到该服务,作为会见新人的安全、可靠的地方并创建肯定体验的历史。出现在玩家卡片中的用户概况文件的几个方面能用来将游戏玩家与会话匹配。在高层上,根据本发明的方面,当游戏玩家在服务150中签约时,要求他选择最佳描述他偏好加入游戏的社交环境的种类的游戏者区。在服务具有其他的概况文件数据可用时,该游戏者区用来将游戏玩家与已经选择同一区的其他玩家匹配。通过査找包含具有该同一区的多个玩家的社交会话的简单数据库査询来进行该匹配。随着时间继续以及该服务具有有关每一玩家的附加的数据,可通过平均用于会话中的每一参与者的用户概况文件的多个关键方面来改进该匹配查询(仍然是该区,但随时间继续,也包括反馈声誉,经统计数据计算的技能以及由所实现的成绩限定的经验)。然后,该系统能提供能与寻求匹配的玩家的用户概况文件比较的会话"概况文件"。然后,匹配系统能通过将其与希望加入会话的个人的用户扭义7兄文件中的值进行比较来查询该会话概况文件。如果用户概况文件的匹配非常接近会话概况文件值(共享同一区且处于声誉、技能和经验的数值的每一个的预定范围内),那么,将该会话向用户显示为匹配。如果该匹配比较不在预定范围内,那么用户的查询将继续,以便将其与其他会话概况文件比较直到获得肯定结果为止。当执纟亍匹配搜索时,在后端折叠NAT类型、其他玩家的物理邻近程度、在该系统上玩的时间、所玩的游戏等等。除基于对用户概况文件的查询的配对外,该社交配对系统,结合对好友、最近玩家的跟踪和对最近玩家的反馈构建优先匹配的会员网络。会员列表是玩家的优先人列表,包括(1)好友(即玩家已经邀请,且已经接受该邀请到允许交换消息和状态信息的优选社交网的人),(2)肯定反馈人(即玩家已经对其给予肯定反馈的人),以及(3)最近玩家。社交配对服务总是首先査看(在实施上述查询前)该服务上会员会话是否存在。如果玩家的会员列表上的任何一个人在线并处于可加入会话中,则服务将返回那一会话。如果存在多个会员会话,则好友的那个将被给予比肯定反馈的人或最近玩家的那些会话更高的优先级。向肯定反馈人给予高于最近玩家的优先级。根据上文,图6示例说明向导156中的最近玩家的列表。当玩家已经与某一人玩过在线游戏会话时,将该人添加到玩家的最近玩家列表。在浏览最近i元家时显示的玩家卡片示出提供有关最近玩家的最近游戏、反馈和存在与否的信息的基本区和扩展区。图7示例说明可以获得有关最近玩家的其它的详细信息,诸如一般成绩。重要的是,图8示例说明玩家能由此提供有关其他游戏玩家的反馈的反馈机制。仅当查看玩家以前已经与其玩过的玩家时,该反馈选项在玩家卡片上可用。然后,使用该反馈信息来改进配对结果,即指示在将来的游戏中,你是否想与i亥游戏玩家玩游戏。通过对某一人给予肯定反馈,那人在该玩家的会员列表的优先级提升。此外,反馈影响游戏玩家的声誉并改变未来游戏中该玩家被分到的玩家的分组。然后,为配对的目的,反馈用于创建"单向"好友列表,S卩,构建4尔反复会见的人群列表的低阈值机制。该机制通常是不可见的,除作为改进的配对^f本验外。例如,当游戏玩家表示他想再次与特定人玩时,系统在单向好友列表中跟足宗男(3—信息,以便其他玩家不必被邀请或接受邀请处于好友列表上。如果玩家对某一人给予否定反馈,那一人移动到"回避"列表,且为社交配对的目的,为该玩家避开包含那一人的未来会话。除如上所述的社交配对外(使用用户概况文件和与会员匹配),该系统还提供"分级匹配"选项,仅基于他们在特定游戏中的技能来匹配玩家。该技能,统称为游戏统计数据也被存储在用户概况文件中。基于技能的配对为竞赛玩家所偏好。游戏外配对是用于创建会话(如上所定义)的多方系统,包括使用匹配配置工具设立游戏、生成游戏外用户界面(即在控制台系统应用程序UI)中,该界面允许游戏者根据服务已知的游戏参数和社会属性(用户概况文件、会员列表)来搜索会话。还包括控制台系统应用程序UI(向导的一部分),允许玩家浏览玩家卡片并邀请他们的会员(好友、最近玩家和肯定反馈人)以便集合玩家群。然后,该系统提供从控制台系统向游戏传递游戏设定的图示列表和与每一游戏卡片关联的唯一玩家ID的"开始会话"消息。它还包括API集,允许控制台和游戏通过将每一分组与能从控制台到游戏来回传递的唯一ID关联来管理在控制台应用程序中集合的玩家的分组。最后,它包括当玩家结束该游戏但希望作为群呆在一起并漫游到另一游戏时允许游戏将玩家列表传回控制台应用程序的"游戏完成"消息。匹配配置工具允许游戏开发人员来根据一方案输入游戏的配对会话描述。使用该工具,游戏向服务告知游戏者创建多玩家在线游戏会话将需要经历的步骤。该定义确保服务理解所有关键的游戏排列(从地图名到车辆类型)以便该服务能捕捉游戏会话的起始点。匹配配置工具包括允许游戏创建一个分级自定义设定集和一个社交自定义设定集的节点。两个编辑屏应当相同,除每-屏幕顶部的"分级"对"社交"标签外。这些编辑屏将用来创建允许玩家在向导中创建自定义匹配查询(ala优化匹配)的游戏外匹配UI。每一编辑屏允许游戏开发人员插入来自他已经创建或在工具中预定的上下文和/或属性的简单列表(例如"玩家数量",因对所有游戏所必需而预定的)。上下文是串的枚举列表,而属性是数值(整数或浮点值)。上下文的例子是"地图"以及其枚举将包括游戏中可用的所有可能地图。游戏开发人员也能创建和插入新的上下文和属性。对添加的每一上下文和属性,游戏开发人员还必须提供局部串标记,提供在游戏外匹配UI中将紧接多选择项出现的文字。缺省局部串标签应当是用于上下文或属性本身的串标签。用于UI中的上下文值的缺省值将基于当创建上下文值时选择的缺省值。然而,对于属性,开发人员必须指定值的范围、步长大小(用于数值属性)和缺省值。对指定的每一上下文,游戏必须指示每一上下文值设定所容许的玩家的最小和最大数目。例如,对"地图"上下文,游戏可以指定最少2个玩家以及最大16个玩家能在"Waterloo"上下文值上玩。"开始游戏"消息:该系统还提供当根据配置工具中定义的方案游戏者在游戏外应用程序中创建了游戏外会话时,游戏将需要接受的开始游戏消息的格式。该消息包括游戏者基于游戏开发人员在配置过程中指示的选项选择的会话选择(地图、难度级等等)。通过该消息,然后,游戏能将该游戏者置入大厅中以便等待其他人经配对加入该会话。开始游戏消息包含下述信息*用于会话中的所有游戏者的PUID*主人PUID(用于标准游戏)*分级/标准标志*唯一群ID游戏设定(通过会话主机或代理主机,在系统应用程序UI中的"自定义"屏中设置)——被发送为上下文/属性列表。当游戏接收开始游戏消息时,必须将所有玩家接受到预游戏大厅中。在那一大厅中,对分级游戏,游戏应当开始倒数报时,然后将玩家置入游戏中。没有游戏者应具有调整游戏设定的选项。对社交游戏,如果需要,主人可以选择来调整游戏设定,一些详细的游戏设定(例如选择汽车颜色等等)可以为所有游戏者所用。然后,主人可以开始该游戏,或当创建足够大的群时,该游戏如正常的那样启动该游戏。游戏完成消息。当完成游戏且主人选择将其群从游戏后大厅返回到游戏外大厅时,游戏必须返回游戏完成消息。游戏完成消息包含下述信息*用于会话中所有游戏者的PUID(与来自开始游戏消息的列表相同,减去退出群或断开其控制台的任何成员)*主人PUID(用于标准游戏;如果游戏允许主人移走以及原始主人退出该游戏,则该主人可以改变)*群ID*游戏标题ID*最后游戏设定(发回这些以便控制台应用程序能为主人高速缓存它们,以便下次主人在系统应用程序UI中选择该游戏时它们被预设)。会话和群API。会话和群管理API支持群创建并应通过对用于玩游戏的玩家的每一集合创建2个会话风格,便于"重玩"情形。第一会话ID(在下文的例子中为A)是与游戏主人相关联的一种"元会话"(群)(在无主人游戏或在主人移走的情况下,IDA与以主人为幌子的人——游戏代码中标识为主机但未向玩家明确地标识为主人的人相关联)。当游戏者在游戏外控制台系统中,在预游戏大厅中加入该群时(或当他们接受邀请并与主人集合时),他们加入该群ID(A)。当群通过游戏时,会话开始(XessionCreate),由游戏将新的、第二会话ID(B)分配给该分组并使用直到删除仅在该游戏中跟踪的会话为止(XSessionDelete)。群ID(A)对该主人和加入该群的所有游戏者持久。当游戏开始时,以当调用XSessionStart时创建的第三IDC来跟踪游戏会话。该ID用来跟踪与在该轮中实际玩的每一玩家相关联的所有统计数据。在具有开放空位但不容许进行中加入的游戏中,一旦游戏开始,新游戏者能继续加入该群IDA(和B,如果游戏允许)且可当会话IDC保持关闭时(因为游戏正在进行中),仍然在控制台中的游戏外匹配大厅UI中等待。加入A的这些新游戏者还能在游戏大厅(与B关联)中等待其他游戏者完成。有关实际玩游戏的所有数据与IDC相关联。在进行中加入游戏中,新的游戏者需要同时加入第二ID(B)和第三ID(C),然后来加入玩游戏。如果主人允许,该人能也能加入到群ID(A)。当该轮游戏结束时(XEndSession),游戏者可以选择重玩(仅在无等级游戏中)。如果他们这样做,群ID仍然不变(允许他们重玩,并将他们保持在一起)以及整个游戏会话ID(B)保留,但一旦调用XEndSession,游戏会话ID(C)即被放弃。当新一轮游戏开始时(XStartSession),为该群生成新的游戏会话ID(IDD)。游戏必须保留群ID以及这是游戏外匹配创建的游戏的信息。在游戏的每一会话结束时(分级游戏仅允许一轮游戏,因此这不相关,但游戏能提供"转换到标准"游戏,允许一个游戏者将自身指定为主人以及自动地向其他游戏者发送邀请来在游戏外匹配大厅中加入他),游戏必须提议主人使该群返回到游戏外大厅或重玩。如果他选择返回到游戏外大厅,则游戏必须向控制台发送游戏完成消息并必须以XsessionDelete来结束该游戏会话。仅当主人从游戏外大厅解散玩家群,或在主人移走的情况下,当无新主人接管该游戏时,群IDA被删除。流程如此:<table>tableseeoriginaldocumentpage19</column></row><table><table>tableseeoriginaldocumentpage20</column></row><table><table>tableseeoriginaldocumentpage21</column></row><table>一旦配置过程完成且游戏已经指示其代码以便能从该服务接受开始游戏消息、以会话和群API来管理玩家的分组并当该分组希望离开该游戏时将游戏完成消息传回该服务,该服务即能在控制台系统应用程序中呈现游戏外配对用户界面(UI)。UI由三个主要部分组成查找会话、创建会话(允许其他人搜索和加入)以及浏览/查找人来组成群。参考图11能更好地理解该UI。首先在步骤1102,玩家已经与匹配好友和/或会员的准则的其他玩家完成配对过程。然后,该系统指示满足由玩家选择的配对准则的玩家数。UI向玩家呈现三个选择选择A主要为游戏玩家提供查找已经由另一玩家启动的游戏并加入那一会话的能力。在那种情况下,在步骤1104,UI向玩家提供游戏列表和允许玩家选择游戏屏。该屏显示多个游戏(例如Halo、PGR等等)以及每一游戏中游戏者数量和会员/好友的数量。有关玩家的会员(好友、最近玩家和肯定反馈人)目前正在何处玩的附加信息有助于进行游戏选择。在选择特定游戏后,选择会话屏1106在屏幕的顶部列出会话总数(每一过滤器减少会话数)以及允许游戏者进行以下三个选项中的一个第--选项是选择会话(由包括有关人的关键属性和会话的设定的会话描述符所列出的每一会话)。会话选择将玩家放在游戏大厅1114中。在那里,5i家将等待直到有一开始游戏消息被发送到玩家的控制台100以便开始游戏会话为止。如果玩家选择该选项,他通常将进入无主人游戏(即,没有一个玩家控制这些i殳定的游戏)。可以随机地选择游戏设定。"无主人"游戏不能一起返回到游戏外大厅。当游戏结束时,玩家能选择以相同设定在同一游戏中继续,该游戏能选择随丰几:地轮换游戏设定,或玩家能离开。第二选项是对人设定进行过滤(包括声誉、技能、游戏者类型,例々tH禹尔、中坚分子等等)。图11在框1108中描述该活动。该步骤利用用户概况文{牛,但允许玩家选择在过滤可用会话的长列表中强调其概况文件的哪一方面。对游戏设定的过滤提供在上述配置过程中描述的会话定义选项的子集。例如,玩家可以希望过滤特定游戏级以便仅那一等级的会话才出现在屏幕选择中。7寸游戏设定的过滤由框1110描述。游戏设定中有选择"无主人"对"有主人(群)"的能力。图9描述了游戏设定和人设定可以在一个简单屏幕中过滤的特定游X戈的UI。当在会话中选择时,玩家能查看用于每一会话的会话描述符。该系乡充;应用程序UI显示包含用于该会话的关键用户概况文件平均的概述、主要游戏设定的概述以及标识会话中所玩游戏的类型的"会话标签"(由游戏中玩家的"区"定义)的预游戏模式会话描述符。该数据有助于玩家对每一会话能有一个"乍看之下"的观点,以便能挑选最佳的一个加入。会话描述符中的数据包括游戏名主人名游戏中的玩家的社区声誉等级游戏的氛围或规则(例如使用成人语言、竞赛程度)游戏设定(例如游戏类型、级别或所播放的音轨)连接速度(即,ping)游戏中的玩家的技能水平游戏中是否存在你的好友游戏中是否存在你好友的好友争游戏中是否存在你先前已经享受与其游戏的人游戏中所说的语言參游戏托管的国家图IO描述UI,其中,玩家正选择会话列表中的特定会话(黄框选择)并正查看一些会话描述符细节。如果玩家宁愿创建游戏会话而不是加入现有会话,那么玩家能选择创建匹配,如由选择"X"并转到步骤1112所示。在那种情况下,玩家进入允许玩家挑选他想创建会话的游戏标题的屏幕。此时,玩家能基于游戏配置选项来定义游戏。例如,玩家能选择游戏级别、玩家数量等等。在玩家定义游戏会话后(如在配置过程中由游戏下定义),玩家进入游戏大厅直到参与者加入为止。然后,那一游戏会话将显示在正搜索游戏来加入的其他玩家的屏幕上(即,如步骤1104和1106所示)。用这种方式设置的游戏是"有主人"的游戏(创建该游戏的玩家为主人),这产生游戏"群",以及当完成时,所有玩家必须具有继续同一游戏、允许主人改变用于该游戏的游戏设定、或返回到游戏外大厅的选项。通过标识由聚集玩游戏的特定会话的玩家单独地形成的群中的玩家集合来管理私人群。除等待游戏者加入游戏会话外,玩家能积极地寻找参与者以及通过选择"创建群"来构建群。如步骤1124所示,玩家能浏览好友列表上的玩家卡片、最近玩家列表或其它来查找其用户概况文件满足某一搜索准则,例如具有某一技能水平、场所和/或声誉的游戏者,或为好友或会员的的游戏者。在査找各个匹配游戏者后,玩家能通过直接向该游戏者发送群会话邀请来邀请他们加入群会话。如果玩家接受邀请,即将其加入到OOG匹配群大厅中。或者,能开通语音通道,玩家由此能例如关于游戏会话进行通信。最后,当浏览游戏者时,将所选游戏者添加到玩家的会员列表以便将他们标记为未来游戏选择的会员。群大厅(1112,当从"创建群流"访问时,允许指定主人在他所玩的游戏列表上可用的所有游戏和群大厅中当前玩家的所有所玩的游戏列表中选择。将调走主人列表上大厅中的一个或多个玩家不可用的那些游戏。如果主人选择玩一个或多个玩家不可用的一个游戏,那么那些玩家能在大厅中等待该群返回或能离开。主人不能启动丢掉所有玩家的游戏。当玩家已经完成群游戏中的游戏时,游戏必须向该玩家提供返回到OOG匹配群大厅的选项。该游戏必须向系统发回"游戏完成"消息。游戏外群大厅允许该玩家分组仍然在一起并彼此通信,主人玩家被指定来选择接下来要玩哪一游戏,一旦选择该游戏,即选择用于该游戏的设定(地图等等)。因为游戏的限制(如在会话描述符中所指定的),一些游戏类型可能对该群不可用(例如,如果该群中存在6个人,一些游戏类型不可选,因为仅允许4个玩家)。游戏外完成:根据该系统的另一方面,利用上述游戏外匹配,该系统能创建游戏外竞赛。步骤包括首先,在配置工具中设立游戏;其次,在配置工具中设立竞赛;第三,生成游戏外UI(在Web和向导两者中),允许游戏者创建和搜索竞赛;第四,当己经在Web或向导上创建竞赛时向游戏传递具有游戏者ID以及唯一会话标识符的"开始会话"消息;以及第五,允许游戏向Web和/或向导传回"会话完成"消息以及唯一会话标识符和会话结果。如上所述,配置工具允许游戏开发人员根据流派专用的配置数据来输入游戏的配对会话描述。另外,根据流派专用配置,该工具允许游戏开发人员选择竞赛上下文来与配对会话描述结合。除上述配置参数外,竞赛使用至少两个另外的参数竞赛定义和唯一会话标识符。竞赛定义结合会话定义,定义了该游戏如何向该服务传送游戏者能选择的适当的竞赛上下文。唯一会话标识符提供游戏必须接受、维护并在唯一会话完成时退还Web和/或向导的唯一会话标识符的格式。标识符将基于用户在Web上或向导中创建竞赛结构包括竞赛、轮次和配合中的单个游戏者的位置。这当游戏开发人员在配置过程中定义竞赛上下文时启用。当配置过程完成时,该服务能在Web上或控制台向导中呈现游戏外竞赛UI。图12进一步示例说明竞赛流的操作。首先在步骤1202,玩家具有查找现有的竞赛(选择A(OptionA))、创建快速竞赛(选择X(OptionX))、或创建自定义竞赛(选择Y(OptionY))的选项。如果玩家选择查找竞赛的选项,呈现UI屏(步骤1204),允许玩家选择他或她想竞赛的游戏,例如MechAssault、ProjectGothamRacing(PGR)等等。选择游戏屏显示所启用的竞赛例如一些人已经创建竞赛的可用的游戏。在从该界面选择游戏后,显示屏幕(步骤1206),呈现当前开放的所有竞赛以及进行中的那些竞赛的列表。也基于这些竞赛的参与者的游戏者概况文件,存在有关参与他们的经验级别和类型而呈现的信息。此时,玩家能选择进入竞赛或进一步细化竞赛搜索。如果玩家选择细化竞赛搜索(步骤1208),则玩家能对竞赛上下文和参与竞赛的游戏者,例如玩家声誉、地点等等进行过滤。如果另一方面,玩家选择进入竞赛,玩家进入步骤1212来开始竞赛。与选择加入现有竞赛相反,玩家能经参考步骤1204、1206和1208的上述过程创建新的竞赛并邀请其他人加入。玩家具有创建游戏外竞赛的两个选项。第一,快速地进入经配置过程先前以其整体定义的Web上或向导中定的游戏外竞赛。即,游戏开发人员经配置数据提供向服务提供的游戏的预定竞赛设定。在那种情况下,玩家选择游戏,然后选择用于那一游戏的可用预定竞赛中的一个(步骤1210)。类似地,玩家能通过选择已经启用竞赛的游戏并定义之前由那一游戏的配置数据为竞赛定义的各个参数,例如轮数、单个排除等等来创建自定义竞赛(步骤1220)。玩家在Web或向导中选择这些选项并创建竞赛结构。无论玩家使用哪一个机制来参与竞赛,在进入该竞赛后,服务维护竞赛结构且在Web连接上,或直接从控制台上的向导,可在服务上查看。竞赛结构例如包括竞赛的拓扑,例如单个排除树结构、各个竞赛新人的配合等等。由所有参与者设置竞赛大本营,其中在Web或向导中均可查看拓扑和配合(步骤1212)。此后,将信息发送到主人控制台100,例如大厅唯一ID、唯一竞赛ID、唯一轮次ID和唯一匹配ID,并启动玩游戏仲裁(步骤1214)。然后,每一轮开始并完成。在每一轮结束时,每一控制台将结果以及竞赛ID、唯一轮次ID和唯一轮次匹配ID发回主人(步骤1216)。此后,由该服务设置竞赛的下一轮,该过程重复,直到在步骤1218该竞赛完成。尽管结合各个图的优选实施例描述了本发明,但应理解到可以使用其他类似的实施例或对所述的实施例进行修改和添加,用于执行本发明的相同功能,而不背离本发明。权利要求1.一种用于玩基于计算机的多玩家游戏的系统,包括服务,含有具有有关多个玩家的信息和有关在计算设备上操作的多个不同游戏的信息的数据库;输入设备,耦合到所述服务,用于从玩家接收对多个不同游戏之一的选择和用于所述游戏的配置设定;输入设备,耦合到所述服务,用于从多个计算设备接受游戏完成消息,其中,所述消息包含指示所述配置设定的信息;以及输出设备,耦合到所述服务,用于将开始消息输出到多个计算设备,其中,根据所述多个玩家和所述多个不同游戏之一来选择所述计算设备,其中,所述消息包含指示所述配置设定的信息。2.如权利要求l所述的系统,其中,有关所述多个玩家的所述信息包括指示所述玩家玩游戏的技能的信息。3.如权利要求2所述的系统,其中,所述服务能根据所述玩家玩游戏的技能来匹配玩家子集。4.如权利要求l所述的系统,其中,所述多个计算设备包括所述多个不同游戏的所述之一的至少一部分的本地副本。5.如权利要求4所述的系统,其中,所述多个计算设备的至少一个将指示玩家在所述多个计算设备的至少一个上的动作的至少一个参数报告给所述服务,用于存储在所述数据库中。6.如权利要求3所述的系统,其中,所述服务从所述多个不同游戏的至少一个接收配置信息,所述配置信息提供有关所述游戏的参数的信息,使得所述服务能具有匹配多个玩家的能力。7.如权利要求l所述的系统,其中,所述服务根据竞赛中剩余的玩家将多个开始或结束消息提供给所述多个玩家。8.—种用于玩基于计算机的多玩家游戏的方法,包括维护数据库,所述数据库具有有关多个玩家的信息和有关在计算设备上操作的多个不同游戏的信息;从玩家接收对所述多个不同游戏之一的选择和用于所述游戏的配置设定;将开始消息输出到多个计算设备,其中,根据所述多个玩家和所述多个不同游戏之一来选择所述计算设备,其中,所述消息包含指示所述配置设定的信息。9.如权利要求8所述的方法,其中,有关所述多个玩家的所述信息包括指示所述玩家玩游戏的技能的信息。10.如权利要求9所述的方法,包括根据所述玩家玩游戏的技能的来匹配玩家子集。11.如权利要求8所述的方法,其中,所述多个计算设备的至少一个子集包括所述多个不同游戏的所述之一的至少一部分的本地副本。12.如权利要求ll所述的方法,从多个计算设备的子集的至少一个接收指示玩家在所述多个计算设备的至少一个上的动作的至少一个参数,用于存储在所述数据库中。13.如权利要求IO所述的方法,包括从所述多个不同游戏的至少一个接收配置信息,所述配置信息提供有关所述游戏的参数的信息,使得所述服务能具有匹配多个玩家的能力。14.如权利要求8所述的方法,包括根据竞赛中剩余的玩家来将多个开始消息提供给所述多个玩家。15.—种用于基于计算机的玩游戏的系统,包括-服务,多个游戏玩家可经网络连接与其连接;由所述服务维护的第一计算机可执行指令集,将来自所述多个游戏玩家的第一游戏玩家与一分组关联;第二计算机可执行指令集,将来自所述多个游戏玩家的至少一个其他游戏玩家与所述分组关联;第三计算机可执行指令集,用于将消息发送给所述第一游戏玩家和所述至少一个其他游戏玩家以便开始玩第一所选游戏;以及第四计算机可执行指令集,用于将消息发送给所述第一游戏玩家和所述至少一个其他游戏玩家以便开始玩第二所选游戏,其中,所述服务独立于所述第一和第二所选游戏来维护所述分组关联。16.如权利要求15所述的系统,其中,所述服务向与所述分组相关联的每一游戏玩家发送指示第一所选游戏开始的消息。17.如权利要求15所述的系统,其中,所述第一计算机可执行指令集包括从所述第一游戏玩家接收形成所述分组的消息的计算机可执行指令。18.如权利要求15所述的系统,其中,所述第二计算机可执行指令集包括从从至少一个其他游戏玩家接收加入所述分组的消息的计算机可执行指令。19.如权利要求18所述的系统,还包括第五计算机可读可执行指令集,用于从至少所述第一游戏玩家和所述至少一个其他游戏玩家接收指示游戏完成的消息。20.如权利要求15所述的系统,还包括第六计算机可读指令集,用于从所述第一游戏玩家接收指示所述分组解散的消息。全文摘要提供允许设置用于多个游戏玩家的游戏会话的服务。各自具有能玩计算机游戏的计算设备的多个游戏玩家通过该服务连接在一起。该服务允许玩家设置公共游戏会话,以便玩家的子集能以相同的级别同时开始玩该游戏。另外,该服务允许在游戏玩家的子集中构建和玩游戏竞赛。文档编号G06F17/00GK101180621SQ200680018097公开日2008年5月14日申请日期2006年5月5日优先权日2005年6月20日发明者C·P·J·弗勒,J·A·约翰逊,J·P·汉森,P·W·欧凯利二世,W·B·弗尔顿申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1