CN108499108B - 视频游戏应用程序内玩游戏参数的实时动态修改和优化 - Google Patents
视频游戏应用程序内玩游戏参数的实时动态修改和优化 Download PDFInfo
- Publication number
- CN108499108B CN108499108B CN201810167242.8A CN201810167242A CN108499108B CN 108499108 B CN108499108 B CN 108499108B CN 201810167242 A CN201810167242 A CN 201810167242A CN 108499108 B CN108499108 B CN 108499108B
- Authority
- CN
- China
- Prior art keywords
- user
- game
- level
- difficulty
- game play
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/45—Controlling the progress of the video game
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
- A63F13/67—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor adaptively or by learning from player actions, e.g. skill level adjustment or by storing successful combat sequences for re-use
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/70—Game security or game management aspects
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/70—Game security or game management aspects
- A63F13/79—Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/31—Communication aspects specific to video games, e.g. between several handheld game devices at close range
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/35—Details of game servers
- A63F13/352—Details of game servers involving special game server arrangements, e.g. regional servers connected to a national server or a plurality of servers managing partitions of the game world
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F11/00—Game accessories of general use, e.g. score counters, boxes
- A63F11/0074—Game concepts, rules or strategies
- A63F2011/0076—Game concepts, rules or strategies with means for changing the level of difficulty
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- General Business, Economics & Management (AREA)
- User Interface Of Digital Computer (AREA)
- Information Transfer Between Computers (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本文呈现的实施方案包括用于执行动态难度调整的系统和方法。此外,本文公开的实施方案使用可以不是可察觉的或与静态和/或现有难度调整过程相比更难被用户察觉的过程执行动态难度调整。在一些实施方案中,历史用户信息由机器学习系统用来生成预测模型,其预测玩游戏的预期持续时间,诸如例如预期流失率、保留率、用户期望玩游戏的时长或相对于先前玩过游戏的历史用户集的用户的预期玩游戏时间的指示。在玩游戏前或期间,可将预测模型应用于关于用户的信息以预测用户玩游戏的预期持续时间。基于预期持续时间,在一些实施方案中然后系统可利用映射数据储存库确定如何动态调整游戏难度,诸如例如改变一个或多个玩游戏参数的值以使游戏的部分较不难。
Description
背景技术
软件开发者通常期望他们的软件尽可能长时间地吸引住用户。用户参与软件的时间越长,软件越有可能成功。对于视频游戏,用户参与的时长与软件的成功之间的关系尤其如此。用户玩特定视频游戏的时间越长,用户喜欢该游戏的可能性越大,因此用户继续玩该游戏的可能性越大。
通常,太难或太容易的游戏将导致用户的兴致减少。随之,用户可能较少地玩该游戏。因此,游戏开发的挑战之一是设计具有最可能使用户保持参与较长时间段的难度水平的游戏。
发明内容
本公开内容的系统、方法和设备各自具有多个创新方面,这些方面没有一个单独诠释本文公开的所有期望属性。附图和下文的描述中给出了本说明书中描述的主题的一种或多种实施方式的细节。
在某些实施方案中,提供了一种用于动态调整视频游戏应用程序的玩游戏(gameplay)参数的计算机实施的方法。该方法可以在配置有具体计算机可执行指令的一个或多个硬件计算设备的控制下执行,所述具体计算机可执行指令存储在电子硬件存储器中。该方法可以包括:通过网络从用户计算系统接收包括在用户计算系统上启动视频游戏应用程序的当前玩游戏会话(session)的指示的玩游戏会话数据包。该方法还可以包括:从玩游戏会话数据包识别与用户计算设备上的视频游戏应用程序的当前玩游戏会话相关联的用户标识符,该用户标识符与用户账号相关联。所述方法还可以包括:至少部分地基于用户标识符来访问物理数据存储器中的用户账号数据,其中所述物理数据存储器被配置为存储用户账号数据结构,所述用户账号数据结构存储与视频游戏应用程序的一个或多个玩游戏会话相关联的用户交互数据。该方法还可以包括:使用难度分析模型至少部分地基于对用户账号数据的至少一部分的分析来确定与用户相关联的难度轨迹,所述难度轨迹指示与用户账号相关联的预测挑战等级。该方法还可以包括:至少部分地基于预测挑战等级和与当前玩游戏会话相关联的玩游戏会话数据来确定视频游戏应用程序的当前玩游戏会话的难度水平。该方法还可以包括:至少部分地基于所确定的难度水平选择与视频游戏应用程序相关联的至少一个玩游戏参数的值,其中所述玩游戏参数包括在被调整时引起对视频游戏的状态的修改的变量。该方法还可以包括:通过将玩游戏参数调整至针对当前玩游戏会话所选择的值来修改视频游戏应用程序的执行。
在某些实施方案中,提供了一种用于动态调整视频游戏应用程序的玩游戏参数的系统。该系统可以包括电子数据存储器,该电子数据存储器被配置为存储用户账号数据结构,所述用户账号数据结构存储与视频游戏应用程序的一个或多个玩游戏会话相关联的用户交互数据。该系统还可以包括与电子数据存储器通信的硬件处理器,该硬件处理器被配置为执行具体的计算机可执行指令。所述指令可以被配置成引起处理器通过网络从用户计算系统接收包括在用户计算系统上启动视频游戏应用程序的当前玩游戏会话的指示的玩游戏会话数据包。所述指令还可以被配置为引起所述处理器从玩游戏会话数据包识别与用户计算设备上的视频游戏应用程序的当前玩游戏会话相关联的用户标识符,该用户标识符与用户账号相关联。所述指令还可以被配置为引起处理器至少部分地基于用户标识符来访问物理数据存储器中的用户账号数据,其中所述物理数据存储器被配置为存储用户账号数据结构,所述用户账号数据结构存储与视频游戏应用程序的一个或多个玩游戏会话相关联的用户交互数据。所述指令还可以被配置为引起处理器使用难度分析模型至少部分地基于对用户账号数据的至少一部分的分析来确定与用户相关联的难度轨迹,所述难度轨迹指示与用户账号相关联的预测挑战等级。所述指令还可以被配置为引起处理器至少部分地基于预测挑战等级和与当前玩游戏会话相关联的玩游戏会话数据来确定视频游戏应用程序的当前玩游戏会话的难度水平。所述指令还可以被配置成引起处理器至少部分地基于所确定的难度水平选择与视频游戏应用程序相关联的至少一个玩游戏参数的值,其中所述玩游戏参数包括在被调整时引起对视频游戏的状态的修改的变量。所述指令还可以被配置为引起处理器通过将玩游戏参数调整至针对当前玩游戏会话所选择的值来修改视频游戏应用程序的执行。
在某些实施方案中,提供了一种存储用于动态调整视频游戏应用程序的玩游戏参数的计算机可执行指令的非暂时性计算机可读存储介质。所述指令可以处于配置有具体计算机可执行指令的一个或多个硬件计算设备的控制下,所述具体计算机可执行指令存储在电子硬件存储器中。所述指令可以包括通过网络从用户计算系统接收包括在用户计算系统上启动视频游戏应用程序的当前玩游戏会话的指示的玩游戏会话数据包。所述指令还可以包括:从玩游戏会话数据包识别与用户计算设备上的视频游戏应用程序的当前玩游戏会话相关联的用户标识符,该用户标识符与用户账号相关联。所述指令还可以包括:至少部分地基于用户标识符来访问物理数据存储器中的用户账号数据,其中所述物理数据存储器被配置为存储用户账号数据结构,所述用户账号数据结构存储与视频游戏应用程序的一个或多个玩游戏会话相关联的用户交互数据。所述指令还可以包括:使用难度分析模型至少部分地基于对用户账号数据的至少一部分的分析来确定与用户相关联的难度轨迹,所述难度轨迹指示与用户账号相关联的预测挑战等级。所述指令还可以包括:至少部分地基于预测挑战等级和与当前玩游戏会话相关联的玩游戏会话数据来确定视频游戏应用程序的当前玩游戏会话的难度水平。所述指令还可以包括:至少部分地基于所确定的难度水平选择与视频游戏应用程序相关联的至少一个玩游戏参数的值,其中所述玩游戏参数包括在被调整时引起对视频游戏的状态的修改的变量。所述指令还可以包括:通过将玩游戏参数调整至针对当前玩游戏会话所选择的值来修改视频游戏应用程序的执行。
附图说明
贯穿附图重复使用附图标记,以指示所参考的元件之间的对应关系。附图被提供来例示本文所述主题的实施方案,而并不限制其范围。
图1A例示了可以实现动态难度调整系统的一个或多个实施方案的网络化计算环境的一个实施方案。
图1B例示了图1A的模型生成系统的一个实施方案。
图1C例示了图1A的参与分析系统的一个实施方案。
图2呈现了机器学习过程的一个实施方案的流程图。
图3例示了用于实现动态难度的一个系统的框图的一个实施方案。
图4A例示了根据一些实施方案的在基于等级的游戏中的玩家进展模型的一个示例。
图4B例示了示出根据一些实施方案的可被配置用于游戏的难度轨迹的示例的图。
图5例示了根据一些实施方案的游戏难度、玩家进展和玩家行为可如何交互的示意图。
图6例示了动态难度配置过程的一个实施方案的流程图。
图7例示了玩游戏参数评估过程的一个实施方案的流程图。
图8例示了难度调整过程的一个实施方案的流程图。
图9例示了用于基于难度水平更新游戏的过程的一个实施方案的流程图。
图10例示了用户计算系统的一个实施方案,该用户计算系统也可称为游戏系统。
图11例示了用于图10的用户计算系统的硬件配置的一个实施方案。
具体实施方式
引言
通常期望视频游戏能吸引大量用户。然而,当涉及到玩视频游戏或者特定种类或类型的视频游戏时,不同的用户具有不同水平的技能和/或能力。此外,不同的用户对于视频游戏玩起来多有挑战性具有不同的期望。例如,一些用户更喜欢相对具有挑战性的视频游戏。这些类型的用户可能往往更会被需要大量练习来掌握的视频游戏吸引住,并且通常不介意在成功之前多次重复视频游戏的相同部分。相反,一些用户更喜欢相对容易的视频游戏。这些类型的用户可能往往更会被如下视频游戏吸引住:在该视频游戏中容易克服障碍并且很少需要用户重复该视频游戏的一部分来取得成功。
上述挑战的一个解决方案是视频游戏开发者在特定视频游戏中包含多个静态难度水平。然而,由于例如存储的限制、开发时间的限制以及为大量用户偏好预测大量难度水平的挑战,通常存在有限数量的开发者可以添加的静态难度水平。难度水平可以通过调整限定的可调节玩游戏参数的集合来建立。然而,静态难度水平可能导致整个视频游戏中不一致的挑战,因为特定用户可能会发现视频游戏的一个特定方面有挑战性但该视频游戏的另一方面不具有挑战性。
另一解决方案是基于用户和用户的竞争者之间的关系来改变用户或用户的竞争者的能力。这可以在一些类型的竞技视频游戏诸如赛车游戏中使用。例如,如果视频游戏是赛车游戏,当用户做得不好时可以使用户的汽车更快,并且当用户做得好时可以使用户的汽车更慢。这种解决方案可能导致有时被称为“橡皮筋效应”的结果。这种解决方案可以引起用户注意,因为用户的车辆将基于该车辆相对于用户的竞争者的位置而表现得不一致。
本文呈现的实施方案包括用于执行动态难度调整的系统和方法。此外,本文公开的实施方案使用可以不是用户可察觉的或与静态和/或现有难度调整过程相比更难被用户察觉的过程来执行动态难度调整。在一些实施方案中,历史用户信息由机器学习系统利用以生成预测模型,该预测模型预测玩游戏的预期持续时间,诸如,例如预期的流失率、保留率、用户期望玩游戏的时间长度或者相对于先前玩过该游戏的历史用户集合的用户的预期玩游戏时间的指示。在玩游戏之前或期间,可以将预测模型应用于关于用户的信息以预测用户玩游戏的预期持续时间。基于该预期持续时间,在一些实施方案中,然后系统可以利用映射数据储存库(repository)来确定如何动态地调整游戏的难度,诸如,例如改变一个或多个玩游戏参数的值以使得游戏的部分较不困难。
在某些实施方案中,本文公开的系统监测关于一个或多个视频游戏的用户活动,以确定用户关于游戏难度的偏好和用户关于玩视频游戏的技能水平。该信息可以至少部分地基于与用户的参与水平相关联的因素来确定。例如,玩视频游戏达平均时间长度以上并且在玩视频游戏时花钱的用户可以具有比在短时间段内玩视频游戏的用户更高的参与水平。作为另一示例,在短时间段内玩视频游戏但是玩平均数量以上的玩会话的用户可以与高参与水平相关联,但是可以不同于之前示例的用户被分类。在一些实施方案中,可以为不同的游戏不同地定制参与水平。例如,具有游戏内购买的游戏的参与水平可以与不具有游戏内购买的游戏被不同地确定。
此外,在本文描述的某些实施方案中,可以把用户和具有类似偏好的其他用户一起分组。可以基于关于在视频游戏中呈现的挑战或障碍的用户行为来对用户进行分组。用户的每个组可以与一个或多个视频游戏的难度偏好或设置相关联。使用该信息,可以动态地调整视频游戏的一个或多个方面以向视频游戏的用户呈现最有可能吸引住用户或者比一组静态难度水平更可能吸引住用户的特定难度水平。如上所述和本文进一步描述的,本文描述的附加的或替代的实施方案可以通过使用一个或多个参数函数或预测模型来确定用于调整视频游戏的难度的一个或多个种子或玩游戏参数值。例如,本文公开的某些实施方案可以使用回归模型来拟合历史用户数据。在获得回归模型的初始形式之后,其可以被应用于另外的玩家以促进动态难度分析和/或调整。
此外,在本文描述的某些实施方案中,可以监测或者检阅用户关于视频游戏的活动以确定用户关于视频游戏的行为。该监测可以基本上实时地发生,或者在用户已经完成了一个玩会话之后的某个时间段发生。玩会话可以是用户玩视频游戏的一个时间段和/或以用户完成或未能完成视频游戏或视频游戏的一部分结束的玩游戏的具体尝试。例如,一个玩会话可以开始于用户发起新的玩游戏的实例,并且结束于用户用完该游戏中的生命。作为另一示例,一个玩会话可以用户发起视频游戏开始,并且在用户退出视频游戏时结束。作为另一示例,玩会话可以是每次用户开始视频游戏内的一个等级或子等级。
在一些情况下,监测用户关于视频游戏的行为可以使得能够确定用户的技能水平和挑战等级。至少部分地基于该信息,可以根据基于用户的关联用户组确定的初始难度水平来调整视频游戏或视频游戏的部分的难度。在一些实施方案中,还可以监测在一个或多个用户玩游戏的过程期间视频游戏所使用的玩游戏参数。例如,通过监测一个或多个会话内的玩游戏参数,可以识别不同玩游戏参数与玩家行为之间的关联。
有利地,在某些实施方案中,通过使用预测模型将在玩视频游戏方面具有相似特性的用户分组以便预测用于个人用户的最佳难度水平以及基于关于视频游戏的个人用户动作调整难度水平,与不监测用户行为以确定难度水平的系统相比,可以进行更细粒度的难度水平管理。此外,尽管本公开内容聚焦于调整视频游戏的、修改由视频游戏呈现的难度水平或挑战的设置,但本公开内容不限于此。本公开内容的实施方案可以用于修改视频游戏的各个方面,这可能影响或者不影响视频游戏的难度水平。例如,在武器随机掉落的游戏中,如果确定用户更喜欢使用特定的游戏内武器玩游戏,可以调整游戏以更频繁地向用户呈现优选的武器。在一些情况下,诸如当所有武器均匀平衡时,掉落的武器的类型可能不影响视频游戏的难度,因此这样的调整可以基于用户玩的风格或偏好而不是难度水平偏好。可被修改的视频游戏的特征——其可以是用户可察觉或不是用户可察觉的——的一些其它非限制性示例可以包括向游戏内角色提供额外速度、提高游戏内角色的投掷精度、提高游戏内角色可以跳跃的距离或高度、调整操纵器的响应性等。在一些情况下,该调整可以附加地或替代地包括降低游戏内角色的能力,而不是提高游戏内角色的能力。例如,可以使游戏内角色更快,但是具有更低的射击精度。在一些实施方案中,可以调整玩家可用的游戏内资源的数量(例如,生命、药剂、游戏内货币)。
此外,本文给出的系统的实施方案可以至少部分地基于用户的技能水平以及用户是否成功地完成视频游戏内的挑战,来基本上实时地调整视频游戏的难度水平。然而,本公开内容不限于此。例如,可以至少部分地基于用户偏好来调整视频游戏的难度水平,所述用户偏好可以对应于或者可以不对应于用户的能力。例如,一些用户可能更喜欢在最困难的设置下玩视频游戏,而不管他们是否成功完成视频游戏或视频游戏中的目标。通过跟踪关于玩视频游戏的用户动作,可以调整视频游戏的难度水平以匹配特定用户的偏好和/或技能水平。
为了简化讨论,主要关于视频游戏描述了本公开内容。然而,本公开内容并不限于此,可以应用于其他类型的应用程序。例如,本文公开的实施方案可以应用于教育应用程序或其他可以基于与应用程序的用户交互性的历史来进行修改的应用程序。此外,本公开内容在视频游戏的类型方面是没有限制的。本文使用的术语“视频游戏”包括所有类型的游戏,包括但不限于:基于网络的游戏、控制台游戏、个人计算机(PC)游戏、计算机游戏、用于移动设备(例如,智能手机、便携式控制台、游戏机或可穿戴设备,可穿戴设备诸如虚拟现实眼镜、增强现实眼镜或智能手表)的游戏或虚拟现实游戏,以及其他类型的游戏。
示例网络化计算环境
图1A示出了可以实现动态难度调整系统的一个或多个实施方案的网络化计算环境100的一个实施方案。网络化计算环境100包括可以经由网络104与交互式计算系统130通信的用户计算系统110。此外,网络化计算环境100可以包括多个附加的用户计算系统102。用户计算系统102中的至少一些可以与用户计算系统110相同或相似地被配置。
视频游戏应用程序
用户计算系统110可以包括视频游戏应用程序112或对该视频游戏应用程序进行托管,该视频游戏应用程序也称为视频游戏。在一些情况下,视频游戏112可以完全在用户计算系统110上执行。在其他情况下,视频游戏112可以至少部分地在用户计算系统110执行并且至少部分地在交互式计算系统130上执行。在一些情况下,视频游戏112可以完全地在交互式计算系统130上执行,但是用户可以经由用户计算系统110与视频游戏112交互。例如,游戏可以是大型多玩家在线角色扮演游戏(MMORPG),该大型多玩家在线角色扮演游戏包括由用户计算系统110执行的客户端部分和由一个或多个应用程序主机系统(未示出)执行的服务器部分,所述应用程序主机系统可以被包括作为交互式计算系统130的一部分。作为另一个示例,视频游戏112可以是在不与交互式计算系统130交互的情况下在用户计算系统110上玩的冒险游戏。
玩游戏参数
视频游戏112可以包括描述视频游戏112的某方面(例如,修改或者影响视频游戏112的状态)的多个玩游戏参数114。通常,玩游戏参数114是影响视频游戏112的执行或者运行的变量。在一些情况下,玩游戏参数114是直接修改视频游戏112的执行的状态变量。在其他情况下,玩游戏参数114是可以改变视频游戏112内出现(occurrence)的概率或者视频游戏112内的随机(或伪随机)配置或事件的种子或种子变量。例如,一个种子可以对应于视频游戏112中的水平布局的生成并且影响该水平布局的生成。作为另一个示例,一个种子可以对应于,并且影响,当用户玩视频游戏112时物品下落的发生次数或下落物品的类型。在一些情况下,种子值是初始化或影响随机或伪随机数发生器的值。在一些这样的情况下,基于种子值生成的随机数可以被视频游戏112的一个或多个功能利用以影响视频游戏112的运行。玩游戏参数可以包括可以修改视频游戏112的执行的任何类型的变量。在一些实施方案中,玩游戏参数可以包括可以影响用户玩视频游戏的能力但可能未必修改视频游戏的执行的其他变量,诸如游戏内资源(例如,额外的生命、药剂)或货币。系统可以通过调整能改变视频游戏112的任何类型的玩游戏参数来修改视频游戏的执行,并且可以基于特定的玩游戏参数进行流失率分析。
一般来说,玩游戏参数114是与视频游戏112的难度水平相关的变量。玩游戏参数114可以包括修改视频游戏112运行的变量的子集,并且视频游戏112可以包括与视频游戏112的难度水平的设置无关和/或不可用于修改的其他变量。此外,玩游戏参数114可以包括以用户不能感知或者难以被用户感知的方式修改视频游戏112的变量。在一些情况下,对视频游戏112的修改是否可被用户感知可以取决于具体视频游戏。例如,假设一个玩游戏参数114与视频游戏112中敌人的生命量相关。在一些情况下,修改分配给玩游戏参数114的值可以是用户可察觉的,因为,例如,敌人的健康被数字地呈现给用户。在这种情况下,敌人的健康可以在视频游戏112的难度水平内保持不变,但是视频游戏112的难度水平可以经由不同的玩游戏参数114来修改。然而,在一些情况下,修改敌人的健康可能不是用户可察觉到的,因为,例如,敌人的健康不被呈现给用户。
用户交互历史储存库
在一些实施方案中,视频游戏112可以包括用户交互历史储存库116。用户交互历史储存库116可以存储与用户和视频游戏112的历史交互相关的数据或者信息。该用户交互信息或者数据可以包括与视频游戏112相关联的任何类型的信息。用户交互历史可用于确定用户对视频游戏112的参与水平和/或视频游戏112的难度。例如,用户交互信息的一些非限制性示例可以包括:与用户在视频游戏112内采取的动作有关的信息;用户在视频游戏112内的进展的度量;用户是否成功执行视频游戏112内的具体动作或者完成视频游戏112内的特定目标;用户完成特定目标花费了多长时间;用户为完成特定目标进行了多少尝试;用户关于视频游戏112花费了多少钱,其可以包括为获得对视频游戏112的访问而花费的金额和除了为获得对视频游戏112的访问而花费的钱之外的关于视频游戏112花费的金额中的一个或两个;用户访问视频游戏112有多频繁;用户玩视频游戏112多长时间等。用户计算系统110可以经由网络104与交互式计算系统130共享用户交互信息。在一些实施方案中,视频游戏112不存储用户交互信息中的一些或全部,而是用户交互信息中的一些或全部被提供给在视频游戏112外部的用户计算系统110的另一部分和/或交互式计算系统130,或者由在视频游戏112外部的用户计算系统110的另一部分和/或交互式计算系统130确定。在一些实施方案中,用户交互历史储存库116可以是可选的或者被省略。
用户计算系统
用户计算系统110可以包括用于通过通信网络104建立通信的硬件和软件部件。例如,用户计算系统110可以配备经由网络(例如,因特网)或内联网帮助通信的联网设备和网络软件应用程序(例如,网页浏览器)。用户计算系统110可以具有各种各样的本地计算资源,诸如中央处理单元和架构、存储器(memory,内存)、大容量存储装置、图形处理单元、通信网络可用性,以及带宽等。此外,用户计算系统110可以包括任何类型的计算系统。例如,用户计算系统110可以包括任何类型的计算设备,诸如台式电脑、膝上型计算机、视频游戏平台、电视机机顶盒、电视(例如,因特网电视)、启用网络的自助服务终端(kiosk)、汽车控制台设备、计算机化器具、可穿戴设备(例如,具有计算功能的智能手表和眼镜)和无线移动设备(例如,智能电话、PDA、平板计算机等),仅举几例。在一些实施方案中,用户计算系统110可以包括下文关于图10和图11描述的实施方案中的一个或多个。
如前所述,可能期望保持或增加用户参与视频游戏112的水平。用于保持或增加用户参与视频游戏112的水平的一个解决方案包括利用被配置为至少部分地基于用户的技能和/或在玩视频游戏112时与用户相关联的挑战等级来动态地设置或者调整视频游戏112的难度水平的难度配置系统(例如,难度配置系统132)。交互式计算系统130可以确定视频游戏112对于特定用户的难度水平,并且可以基于该确定修改视频游戏112的难度。如下面将更详细描述的,难度水平的这种确定可以至少部分地基于关于视频游戏112和/或用户可访问的其他视频游戏的用户交互信息来做出。
交互式计算系统
交互式计算系统130的实施方案可以包括多个系统或子系统,用于帮助确定视频游戏112对于特定用户的难度水平以及基于该确定对难度水平进行修改。这些系统或子系统可以包括难度配置系统132、用户分组系统134、玩游戏评估系统136、用户数据储存库138、参与分析系统140、映射数据储存库144,以及模型生成系统146。这些系统中的每一个可以用硬件实现,用软件实现,或者用硬件和软件的组合来实现。此外,这些系统中的每一个可以在包括计算机硬件的单个计算系统中实现,或在一个或多个分立的或分布式计算系统中实现。此外,尽管这些系统在图1A中被示出为在交互式计算系统130上进行存储或执行,但是应当认识到,在一些实施方案中,这些系统中的部分或全部可以在用户计算系统110或另一系统上进行存储和执行。
在一些实施方案中,当用户计算系统110经由网络104与交互式计算系统130连接或通信时,交互式计算系统130可以执行本文所述的过程。然而,在用户计算系统110和交互式计算系统130不通信的一些情况下,用户计算系统110可以使用可存储在用户交互历史储存库116中的用户的信息来执行本文描述的某些过程。
用户数据储存库
用户数据储存库138的实施方案可以存储与一个或多个用户与视频游戏112和/或一个或多个其他视频游戏的交互相关联的用户交互信息。这一用户交互信息可以在视频游戏112的一个或多个玩会话上获得。此外,用户数据储存库138可以存储与由用户分组系统134生成的一个或多个用户组相关联的用户组信息。在一些情况下,存储在用户数据储存库138中的至少一些数据可以存储在用户计算系统110的储存库处。本文描述的每个储存库可以包括非易失性存储器或者易失性和非易失性存储器的组合。
在一些实施方案中,用户数据储存库138可以基于所获得的用户交互信息来存储一个或多个用户简档,每个用户简档对应于一个特定用户。例如,特定用户的用户简档可以用于收集和汇总多个玩会话上用户的用户交互信息。
在一些实施方案中,特定用户的用户简档还可以通过汇总所收集的用户数据来定义用户的一个或多个属性。属性可以对应于指示用户关于视频游戏112的行为的方面的任何类型的值,诸如所确定的用户的技能水平、用户玩游戏的总时间长度、平均会话时间、高分数、平均分数、杀敌数/死亡数、每个等级的平均尝试次数、对于一等级的最高尝试次数和/或诸如此类。在一些实施方案中,可以针对每个游戏为每个用户构建用户简档。在其他实施方案中,用户简档可以对应于跨多个游戏的特定用户,并且包括用户在与该用户相关联的所有游戏中的第一组属性以及用户的特定于特定游戏的第二组属性。
难度配置系统
难度配置系统132的实施方案可以设置或调整视频游戏112的难度水平。在一些情况下,难度配置系统132可以通过提供或调整玩游戏参数114中的一个或多个的值来设置或调整视频游戏112的难度水平,然后这些值被提供给视频游戏112。在一些情况下,难度配置系统132在每次进行难度水平的设置或调整时设置或调整每个可用的玩游戏参数114。在其他情况下,难度配置系统132在设置或调整视频游戏112的难度水平时可以设置或调整可用的玩游戏参数114的子集。
在一些情况下,难度配置系统132可以在没有限制条件的情况下修改视频游戏112的一部分的难度。在一些其他情况下,难度配置系统132可以在一组限制条件内修改视频游戏112的一部分的难度。例如,限制条件可以由开发者、规则集合来指定,和/或特定于视频游戏112的一些部分。例如,在一些情况下,难度配置系统132可以基于视频游戏112的前一部分来调整视频游戏112的一后续部分的难度水平,以使得难度的改变相对于前一部分的难度不超过难度阈值。在一些实施方案中,难度配置系统132可以基于用户的历史数据(例如,来自用户数据储存库138)来调整视频游戏112的一些部分的难度。在一些实施方案中,难度配置系统132可以通过调整一个或多个玩游戏参数的值来调整难度水平,其中可以使用玩游戏参数评估系统136(在下文中更详细地加以描述)将玩游戏参数的值映射到不同的难度水平。难度配置系统132可以被配置为在某些情况下——比如在比赛期间——完全关闭。
模型生成系统
模型生成系统146的实施方案可以使用一个或多个机器学习算法来生成一个或多个预测模型或参数函数。这些预测模型中的一个或多个可以用于基于一组输入——诸如用户交互信息、用户属性(例如,基于用户的用户简档)、玩游戏参数值和/或诸如此类——来确定预期的值或出现。
例如,可以使用预测模型来确定指示用户参与游戏的水平的一个或多个度量。例如,所述一个或多个度量可以包括基于预测模型的一个或多个输入——比如例如,用户的历史用户交互信息——的预期流失率或用户会停止玩视频游戏112的概率。在另一实施方案中,可以使用预测模型来确定用户在玩游戏时会更喜欢面对的预测挑战等级或者挑战等级,以便增加用户对游戏的参与度以及用户将玩该游戏至完成的可能性。作为另一示例,可以使用预测模型来基于预测模型的一个或多个输入确定用户花费在购买视频游戏的游戏内物品上的预期金额。在一些情况下,预测模型可以被称为预测模型是因为,例如,输出可以是对动作或事件的预测——比如用户继续玩视频游戏112的预测,或者可以与所述对动作或事件的预测相关。
在一些实施方案中,可以通过分析来自多个用户或自动化例程(“机器人(bot)”,在下文中更详细地加以讨论)的数据生成预测模型。用户或机器人数据可以对应于任何类型的用户交互信息和/或机器人信息,诸如用户玩会话的长度/频率、用户/机器人分数、用户/机器人玩游戏交互和/或诸如此类。可以识别不同类型的用户和/或机器人数据之间的关系,以确定哪些类型的用户和/或机器人数据可以用来预测预期的值或出现。例如,可能发现某些类型的用户数据可高度指示用户参与的水平(例如,用户玩会话的频率、用户花费和/或诸如此类),而可能发现其他类型的用户数据较少地指示用户参与的水平。模型生成系统146可以使用多种不同类型的算法。例如,本文中的某些实施方案可以使用逻辑回归算法。然而,其他算法是可能的,诸如线性回归算法、离散选择算法或广义线性算法等等。
在一些实施方案中,模型生成系统146可以在与交互式计算系统130分开的单独系统上实现。例如,一个或多个预测模型160可以在与交互式计算系统130分开的系统上生成,并由交互式计算系统130接收以由交互式计算系统130(例如,由参与分析系统140和/或难度配置系统132)使用。
机器学习算法可以被配置为基于模型生成系统146接收的新输入随时间适应性地开发和更新模型。例如,可以在新的用户信息可用时定期重新生成模型,以在用户信息随时间演变时帮助使模型中的预测更准确。本文将更详细地描述模型生成系统146。生成模型后,可以将模型提供至参与分析系统140。
可以用于生成和更新参数函数或预测模型的机器学习算法的一些非限制性示例可以包括监督式和非监督式机器学习算法,包括回归算法(诸如,例如普通最小二乘回归)、基于实例的算法(诸如,例如学习矢量量化)、决策树算法(诸如,例如分类树和回归树)、贝叶斯算法(诸如,例如朴素贝叶斯)、聚类算法(诸如,例如k均值聚类)、关联规则学习算法(诸如,例如Apriori算法)、人工神经网络算法(诸如,例如感知机)、深度学习算法(诸如,例如深度玻尔兹曼机)、降维算法(诸如,例如主成分分析)、集成算法(诸如,例如堆栈泛化)和/或其他机器学习算法。
图1B示出了图1A的模型生成系统146的一个实施方案。模型生成系统146可以用于基于多个用户的历史数据152确定一个或多个预测模型160。通常,虽然不一定,历史数据152包括与大量用户相关联的数据,该大量用户诸如数百、数千、数十万或更多的用户。然而,本公开内容并不限于此,并且用户的数量可以包括任何数量的用户。
在一些实施方案中,历史数据152可以包括已经玩游戏至完成的用户的数据,该数据可以用来确定对于预测其他用户是否可能玩游戏直至完成而言可能最有用的信息类型(例如,用户行为、玩游戏设置等)。在一些实施方案中,历史数据152可以包括来自一个或多个机器人的数据。
此外,历史数据152可以包括从一个或多个数据源接收的数据,数据源诸如,例如应用程序主机系统(未示出)和/或一个或多个用户计算系统102。此外,历史数据152可以包括来自不同数据源的数据、不同数据类型,以及由一个或多个用户与视频游戏112的交互生成的任何数据。在一些实施方案中,历史数据152可以包括非常大量的数据点,诸如成百上千万个数据点,所述数据点可以聚合为一个或多个数据集。在一些情况下,可以从用户数据储存库138访问历史数据152。在一些实施方案中,历史数据152限于关于该视频游戏的历史信息,但在其他实施方案中,历史数据152可以包括来自一个或多个其他视频游戏的信息。此外,在一些实施方案中,历史数据的一个或多个子集受时期标准或其他标准限制,诸如,例如被限制为包括仅过去6个月的数据,或者限于与特定的地理区域或时区相关联的用户。
在一些情况下,模型生成系统146还可以接收反馈数据154。该数据可以被接收作为监督式模型生成过程的一部分,其使用户诸如管理员能够向模型生成系统146提供可以用于帮助生成预测模型160的附加输入。例如,如果历史数据152中存在异常,用户可以加标记于异常数据,使模型生成系统146能有区别地处理带标记的数据,诸如向该数据应用不同的权重或将该数据从模型生成过程中排除。
此外,模型生成系统146可以接收控制数据156。该控制数据156可以识别模型生成系统146待要针对其确定模型的一个或多个特征或特性。此外,在一些情况下,控制数据156可以指示控制数据156中识别的一个或多个特征的值。例如,假设控制数据156指示,将使用历史数据152生成预测模型以确定用户玩视频游戏112的时间长度。如果已知每个用户玩游戏的时间量,可以将该数据提供作为控制数据156的一部分,或者作为历史数据152的一部分。作为另一个示例,如果预测模型将要被生成以估计例如基于用户是否玩视频游戏112达阈值时间段或是否在特定阈值时间段后继续玩视频游戏112确定的保留率,控制数据156可以包括其数据被包括在历史数据152中的用户的保留率。
模型生成系统146一般可以包括用于生成预测模型160的模型生成规则集合170。规则集合170可以包括一个或多个参数162。可以使用一个或多个数学函数将每个集合的参数162组合,以获得参数函数。此外,可以用权重164为一个或多个具体参数加权。在一些情况下,可以通过将参数的集合与相应的权重164的集合组合在一起来获得参数函数。基于特定的输入数据——诸如历史数据152、反馈数据154和控制数据156——以及用于训练目的的可以随控制数据156被包括的限定输出标准,可以在训练过程期间得出预测模型160和/或预测模型160的各个参数162。模型生成规则集合170可以基于定义的目标函数——诸如确定保留率的,限定模型生成系统146使用来生成模型的具体机器学习规则和/或算法。在一些实施方案中,在模型生成过程的开始期间可以手动提供初始参数162和权重164。在模型生成阶段期间可以更新和修改参数162和权重164,以生成预测模型160。
模型生成系统146可以根据数据的各种特性和参数对历史数据集进行过滤和分类。例如,数据可以按数据源(诸如,例如游戏应用程序数据、主机应用程序数据或用户简档数据)、信息类型(诸如,例如玩游戏信息、交易信息、交互信息、游戏账号信息)或与数据相关联的其他类别进行分类。模型生成系统146可以过滤信息,以识别用于进一步处理的信息。在一些实施方案中,模型生成系统146被配置为在进行进一步处理之前将历史数据152过滤和分为多个数据类型或类别。此外,在一些情况下,可以将历史数据152中的一些数据基于该数据与如下相关性相关联而从历史数据152过滤掉或移除,该相关性即不满足如由模型生成系统146确定的阈值相关性。
在已经生成预测模型160之后,可以在参与分析系统140和/或难度配置系统132的运行期期间使用该模型来调整视频游戏112的难度。在一些情况下,该难度的调整可以是动态的,并且可以在用户与视频游戏112的交互期间发生。此外,在一些情况下,难度调整可以实时地发生或几乎实时地发生。
参与分析系统
参与分析系统140可以包括一个或多个系统,这一个或多个系统用于基于将用户的用户交互数据应用于模型生成系统140所生成的预测模型来确定用户的预测流失率或保留率。在一些情况下,难度配置系统132可以使用参与分析系统140所确定的预测保留率来确定对视频游戏112难度的调整。在一些实施方案中,使用映射数据储存库144中的数据来确定对难度的调整,以确定要改变游戏的哪些特征以及如何改变该特征。
图1C示出了图1A的参与分析系统140的一个实施方案。参与分析系统140可以应用或使用模型生成系统146生成的预测模型160中的一个或多个。虽然被示出为单独的系统,但在一些情况下,参与分析系统140可以被包括作为难度配置系统132的一部分。参与分析系统140可以使用一个或多个预测模型160A、160B、160N(其可以共同称为复数形式的“预测模型160”(“prediction models 160”)或单数形式的“预测模型160”(“prediction model160”))来处理输入数据172,以获得输出数据174。
参与分析系统140可在玩游戏期间应用预测模型160。在一些实施方案中,在游戏开始时应用预测模型160以确定如何调整整个游戏的难度。在其他实施方案中,在游戏期间的不同时间和/或在游戏中的不同阶段应用预测模型160。在确定视频游戏112的一个或多个部分的难度水平期间,参与分析系统140接收可以被应用于预测模型160中的一个或多个的输入数据172。输入数据172可以包括与正在玩视频游戏112的用户相关联的一条或多条数据。该数据可以包括视频游戏112的用户交互数据、用户的简档数据,以及可以应用于预测模型160以确定用户的预测挑战等级、用户的保留率或流失率和/或诸如此类的任何其他数据。在一些实施方案中,可以在将输入数据172提供给参与分析系统140之前过滤该输入数据。
在一些实施方案中,对于参与分析系统140可以存在单个预测模型160。然而,如例示的,参与分析系统140可以包括多个预测模型160。参与分析系统140可以基于输入数据172和/或与输入数据172相关联的附加标识符确定使用哪个检测模型,诸如模型160A-N中的任一个。另外,所选择的预测模型160可以基于被提供作为输入数据172的具体数据来选择。作为输入数据172的一部分的特定类型的数据的可用性可以影响对预测模型160的选择。例如,将人口统计数据(例如,年龄、性别、第一语言)包括作为输入数据的一部分可以造成使用预测模型160A。然而,如果对于特定用户人口统计数据不可用,则可以改为使用预测模型160B。
输出数据174可以是与用户相关联的如下预测挑战等级或挑战等级,即游戏的难度被配置为处于该预测挑战等级或挑战等级以增加用户对视频游戏的参与使得用户继续玩视频游戏112。输出数据174可以被配置为还针对其他参数诸如保留率或流失率进行优化。例如,在一些实施方案中,输出数据174可以包括预测流失率或预测保留率。
如本文中使用的,术语“预测挑战等级”或“挑战等级”可以指视频游戏的、在玩游戏的整个过程中维持用户的参与水平的相对难度水平。在一些实施方案中,预测挑战等级可以被表达为0至100之间的一个分数,指示将帮助增加用户的参与度的游戏难度水平。在一些实施方案中,预测挑战等级可以指示游戏的难度水平与用户的技能水平之间的关系。例如,具有低技能水平的第一用户和具有高技能水平的第二用户可以均与相同的预测挑战等级相关联。然而,用于向第一用户提供预测挑战等级的实际难度水平可以低于第二用户的。
在一些实施方案中,保留率可以在0至100之间,指示将在阈值时间段内停止玩视频游戏112的用户的预测百分比。在一些情况下,输出数据174还可以识别保留率的原因。例如,参与分析系统140可以指示,特定用户90%的保留率至少部分地基于在玩视频游戏112时花费的金额。然而,参与分析系统140可以指示,另一用户80%的保留率可能至少部分地基于该用户所在的地理区域的零度以下的温度。作为另一示例,参与分析系统140可以指示,用户20%的保留率可能至少部分地基于25%以下的胜率。
预测模型160A、160B、160N一般可以分别包括一个或多个参数162A、162B、162N(其可以共同称为“参数162”)的集合。可以使用一个或多个数学函数将每个集合的参数162(诸如,参数162A)组合在一起,以获得参数函数。此外,可以用权重164A、164B、164N(其可以共同称为“权重164”)为参数162A、162B、162N中的一个或多个具体参数加权。在一些情况下,可以通过将参数(诸如,参数162A)的集合与相应的权重164(诸如,权重164A)的集合组合在一起来获得参数函数。
映射数据储存库
映射数据储存库144可以包括预测模型的输出与视频游戏112的难度水平之间的一个或多个映射,所述映射可以由例如难度配置系统132使用以确定如何修改视频游戏112来调整视频游戏112的难度。举例而言,如果用户的预测挑战等级为“高”,则映射数据储存库144可以将使得游戏更加难玩的一个或多个玩游戏参数的一组值联系在一起。另外,难度配置系统132可以随着用户继续进展通过游戏而继续调整游戏,以便维持预测挑战等级。映射可以是参数函数的输出与可用于修改视频游戏112的难度的一个或多个玩游戏参数或种子的一个或多个值之间的。
此外,下面将关于参与分析系统140进一步详细描述参数函数的生成和应用以及它们在调整视频游戏112的难度水平中的使用。在某些实施方案中,难度配置系统132可以是模型生成系统146或者可以包括模型生成系统146。此外,在一些情况下,难度配置系统132可以是参与分析系统140或者可以包括参与分析系统140。
用户分组系统
用户分组系统134可以至少部分地基于与每个用户相关联的信息——比如用户的关于视频游戏112或者该用户所访问的其他视频游戏的技能水平,对用户集合进行分组或将用户集合划分成组。用户分组系统134可以基于与用户中的一个或多个相关联的、影响用户对视频游戏112或用户所访问的其他视频游戏的参与水平的一个或多个标准对用户进行分组。在一些实施方案中,用户分组系统134可以识别或确定一组难度偏好以与由用户分组系统134所识别或生成的每个用户组相关联。
玩游戏参数评估系统
如上所述,可能希望能够基于参与分析系统140的一个或多个输出来配置游戏的难度水平。在一些实施方案中,可以通过设置一个或多个游戏参数的值来配置游戏的难度水平。然而,为了能够通过调整玩游戏参数值来调整游戏的难度水平,可能需要能够将不同的玩游戏参数值与多个难度水平相关联。
玩游戏评估系统136可以评估玩游戏参数值——比如种子值和/或可影响视频游戏的执行(例如,视频游戏的玩游戏的难度)的其他可调节的方面或参数——的由视频游戏112提供的难度或挑战。例如,玩游戏评估系统136可以基于当利用特定参数值和/或种子值时用户玩视频游戏112有多好来确定视频游戏的特定等级或一部分(比如地牢)多有挑战性。有利地,在某些实施方案中,通过评估由一个特定玩游戏参数值、范围或玩游戏参数值和/或多个玩游戏值的组合提供的挑战,可以通过针对特定的难度水平调整玩游戏参数值来改进视频游戏112的难度水平。例如,如果确定一个特定玩游戏参数值、值范围和/或多个玩游戏值的组合导致用户以较高比率(例如,80%)失败,该一(或多个)玩游戏参数值相比于导致用户以较低比率(例如20%)失败的该玩游戏参数值的其他设置而言可以与更难的难度水平相关联。
在一些实施方案中,玩游戏参数可以对应于种子值。例如,在一些实施方案中,可以基于所选择的种子值生成游戏的级别。不同的种子值可以与不同的难度水平或类别相关联。在一些实施方案中,给定种子的初始难度水平可能是未知的。然而,随着玩游戏数据——比如与玩视频游戏112的一组用户相关联的数据——被接收,可以基于用户在使用该种子生成的视频游戏的级别成功的成功程度来推断种子的难度水平。
在一些实施方案中,可以通过使用与用于模拟玩游戏的一个或多个自动代理(而非人类用户)相关联的数据,来评估与某些玩游戏参数值(例如,种子值)相关联的难度水平。可以使用一个或多个自动代理(也称为“机器人”)来基于所定义的与该代理相关联的例程尝试将使用特定的玩游戏参数值(比如特定的种子值)生成的一级别的玩游戏状态进行到底。在一些实施方案中,不同的机器人可以与对应于不同类型的玩游戏行为的不同类型的例程相关联。例如,第一类型的机器人可以被编程为在玩游戏的过程期间模拟采取随机动作,而第二类型的机器人可以被编程为使采取某些类型的玩游戏动作优先于其他类型的玩游戏动作。在一些实施方案中,不同类型的机器人可以与不同的技能水平相关联。在基于玩游戏参数的玩游戏级别上运行多个不同类型的机器人多个不同的次数可以帮助确定与玩游戏参数相关联的难度水平。
例如,在一些实施方案中,具有不同技能水平(例如,不同的行为例程)的许多不同机器人可以在具有特定玩游戏参数值的视频游戏的一部分上运行,以便评估视频游戏的该部分的难度水平或其他属性或者评估与该玩游戏参数值相关联的难度。度量——诸如机器人技能水平、机器人为完成游戏的该部分所用的移动或所使用的资源的数量、机器人完成游戏的该部分所用的时间、机器人为完成游戏的该部分的成功率或尝试次数、机器人在玩游戏的该部分时所取得的分数和/或诸如此类——可被记录,并用于评估与游戏的该部分相关联的难度水平或其他属性或者评估与游戏的该部分相关联的一个或多个玩游戏参数值的难度水平或其他属性。在一些实施方案中,所记录的度量可用于生成或修改预测模型160,比如用于评估用户的技能水平。
网络
网络104可以包括任何类型的通信网络。例如,网络104可以包括广域网(WAN)、局域网(LAN)、蜂窝网络、自组织网络(ad hoc network)、卫星网络、有线网络、无线网络等中的一个或多个。此外,在一些情况下,网络104可以包括因特网。
示例机器学习过程
图2呈现了机器学习过程200的一个实施方案的流程图。过程200可以由可以生成一个或多个参数函数或包括一个或多个参数的预测模型的任何系统实施。在一些情况下,过程200用作用于基于历史数据或其他已知数据开发一个或多个参数函数或预测模型的训练过程。除了别的以外,过程200可以完全地或部分地由例如交互式计算系统130、难度配置系统132、用户分组系统134、参与分析系统140、模型生成系统146或用户计算系统110实施。虽然任何数量的系统都可以完全地或部分地实施过程200,但为了简化讨论,将关于特定的系统描述过程200。此外,应理解的是,可以随时间重复地更新或执行过程200。例如,可以每月重复过程200一次,同时添加或发布新视频游戏,或者添加可用于分析或玩视频游戏112的阈值数量的新用户。然而,可以更频繁或更不频繁地执行过程200。
过程200在框202处开始,在框202处,模型生成系统146接收包括视频游戏112的多个用户的用户交互数据的历史数据152。该历史数据152可以用作用于模型生成系统146的训练数据,并且可以包括用户人口统计数据或特性,诸如,年龄、地理位置、性别或社会经济阶层。替代地或另外地,历史数据152可以包括与下述相关的信息:一个或多个用户的玩的风格;玩视频游戏112所花费的金额;用户关于视频游戏112的成功或失败信息(例如,用户胜率);玩视频游戏112的游戏频率;使用特定可选游戏要素(例如,可用优化工具(boost)、跳级、游戏内提示、能力提升等)的频率;购买视频游戏112的游戏内物品所花费的实际货币(例如,美元或欧元)的数额等。此外,在一些情况下,历史数据152可以包括与视频游戏112相关的数据,诸如由玩视频游戏112的用户或机器人使用的一个或多个种子值。可以被接收作为历史数据152的一部分的与视频游戏112相关的数据的另外的示例可以包括视频游戏112的一个或多个玩游戏参数或状态变量的设置、用户使用的视频游戏112的一个或多个难度水平的个性(identity)、视频游戏112的类型等。
在一些实施方案中,历史数据152还可以包括与一个或多个自动化例程或机器人相关联的数据。例如,历史数据152可以用作用于模型生成系统146的训练数据,并且可以包括机器人类型或特性(例如,机器人技能水平、与机器人相关的规则或例程)、评估机器人玩游戏时使用的玩游戏参数值、机器人玩游戏数据(例如,完成视频游戏的部分时的机器人成功/失败率,机器人玩视频游戏的一部分时所用的步数、所用的移动或其他游戏内资源的数量,和/或诸如此类)。
在框204处,模型生成系统146接收控制数据156,该控制数据指示基于所提供的历史数据的多个用户的已知输出。该控制数据156可以指示将针对其使用模型生成系统146来生成模型的一个或多个特征或特性。替代地或另外地,控制数据156可以包括与所接收的历史数据152相关联的特征或特性的值。例如,控制数据156可以识别难度水平、流失率或保留率,作为模型生成系统146将要生成的模型待要预测的期望特征。难度水平可以对应于游戏的将增加用户的参与水平的难度水平。流失率或保留率可以对应于与历史数据152相关联的停止玩视频游戏112的用户的百分比。此外,控制数据156可以识别与历史数据相关联的难度水平和/或保留率。例如,控制数据156可以指示,对于其数据被包括在历史数据152中的某些用户高难度水平是期望的。在另一示例中,控制数据156可以指示,对于其数据被包括在历史数据152中的某些用户保留率为60%。在一些实施方案中,控制数据156可以包括模型生成系统146将要生成的模型待要预测的多个特性或特征。例如,控制数据156可以识别其数据被提供作为历史数据152的用户的保留率和保留率的原因(诸如,视频游戏112的难度对于在框202处其数据被提供作为历史数据152的一部分的用户来说太低或太高),或者保留率和所花费的平均金钱数额。
在框206处,模型生成系统146基于历史数据152和/或控制数据156生成一个或多个预测模型160。预测模型160可以包括一个或多个变量或参数162,可以使用数学算法或模型生成规则集合170将这些变量或参数组合在一起,以基于历史数据152以及——在一些情况下——基于控制数据156生成预测模型160。
在一些实施方案中,可以分析历史数据152以确定与用户相关的哪些信息类型表现出与期望预测的值的关联,以确定哪些信息类型对于确定针对用户的预测而言最有用。例如,在一些实施方案中,可以分析与玩游戏至完成的用户相关联的信息以确定哪些信息类型(例如,用户行为、玩游戏设置等)对于预测其他用户是否可能玩游戏直至完成而言可能最有用。
此外,在某些实施方案中,框206可以包括应用一个或多个反馈数据154。例如,如果生成预测模型160作为监督式机器学习过程的一部分,用户(例如,管理员)可以在正生成预测模型160时提供一个或多个输入至模型生成系统146,和/或以改进预测模型160生成过程。例如,用户可能知道特定地区或地理区域出现断电。在这种情况下,用户可以提供反馈数据154,以减小历史数据152的、可能对应于来自在断电期间受影响地理地区的用户的一部分的权重。此外,在一些情况下,可以使用例如权重164为变量或参数中的一个或多个加权。一个变量的权重的值可以至少部分地基于该变量在生成满足或者在阈值差异范围内满足控制数据156和/或历史数据152的预测模型160方面所具有的影响。在一些情况下,可以使用变量和权重的组合来生成预测模型160。
示例动态难度调整系统交互
图3示出根据一些实施方案的用户计算系统110、参与分析系统140和难度配置系统132之间的交互的框图。如上所述,用户可以在用户计算系统110处玩视频游戏。例如,视频游戏可以对应于如图1A中所示的视频游戏112。
当用户计算系统110处的用户玩视频游戏112时,可以生成用户数据并将其存储在交互式计算系统130的用户数据储存库138中。用户数据可以包括与用户的身份有关的信息,比如用户id、用户简档信息、用户人口统计信息和/或诸如此类。另外,用户数据可以包括在玩游戏的过程期间所执行的用户动作的指示、用户在玩游戏的过程期间所到达的游戏状态、用户所完成的玩游戏等级和/或其他玩游戏统计数据(例如,分数、输/赢记录、完成某些动作或等级的尝试和/或诸如此类)。
在一些实施方案中,可以在用户玩视频游戏112时基本上实时地收集用户数据并将其存储在用户数据储存库138中。在其他实施方案中,可以将用户数据存储在与用户计算系统110相关联的存储装置(例如,用户交互历史116)中,并且仅以定义的时间间隔(例如,在玩会话结束时、在玩会话期间的指定时间和/或诸如此类)将其发送并存储到用户数据储存库138。
用户数据储存库138可以包括为多个不同用户在多个玩会话上收集的玩家数据。例如,在一些实施方案中,用户第一次玩视频游戏112时,可以为用户收集账号信息或其他识别信息。可以在每次用户玩游戏时都为用户收集用户数据。这样,用户数据储存库138可以包括游戏的多个用户的汇总历史数据(例如,历史数据152)。
在一些实施方案中,用户数据储存库138还可以包括来自一个或多个运行定义的例程的自动代理(“机器人”)(未示出)的数据。每个机器人都可以用于通过逐步通过视频游戏112的多个玩游戏状态来模拟玩游戏。在一些实施方案中,不同的机器人可以与用于逐步通过视频游戏112的特定部分的视频游戏112的玩游戏状态的不同规则或过程相关联。在一些实施方案中,机器人可以被配置为逐步通过与某些玩游戏参数值相关联的视频游戏112的特定部分的玩游戏状态,以便评估与这些玩游戏参数值相关联的难度水平。
在一些实施方案中,如上所述,存储在用户数据储存库138中的特定用户的用户数据可以用于构建汇总与该用户相关联的数据的用户简档。例如,用户简档可以通过汇总所收集的用户数据来定义用户的一个或多个属性。属性可以对应于指示用户关于视频游戏112的行为的方面的任何类型的值,诸如所确定的用户的技能水平、用户玩游戏的总时间长度、平均会话时间、高分数、平均分数、杀敌数/死亡数、每个等级的平均尝试次数、对于一等级的最高尝试次数和/或诸如此类。在一些实施方案中,可以针对每个游戏为每个用户构建用户简档。在其他实施方案中,用户简档可以对应于跨多个游戏的特定用户,并且包括用户在与该用户相关联的所有游戏中的第一组属性以及用户的特定于特定游戏的第二组属性。
在一些实施方案中,用户简档属性可以对应于历史数据152,如图1B中所示,所述历史数据由模型生成系统146使用以根据历史数据152构建一个或多个预测模型160。例如,如上所述,模型生成系统146可以分析多个不同用户简档的属性,以便确定哪些用户属性在预测一种或多种类型的输出数据174方面最相关,用于生成预测模型160。在一些实施方案中,用户简档属性可以被用作如图1C中所示的预测模型160的输入数据172。例如,预测模型160可以接收用户简档属性并且使用它们来生成预测(例如,预期的流失率、预测挑战等级和/或诸如此类)。
在一些实施方案中,用户数据储存库138的数据(例如,特定用户的用户简档)可以由参与分析系统140的一个或多个预测模型160使用以生成一个或多个预测。预测模型160可以包括用于计算用户的保留或流失指标310的流失预测器302以及难度优化模型304,所述保留或流失指标指示用户将停止玩游戏的可能性。
难度优化模型304可以被配置为确定玩游戏的用户的挑战等级308。例如,不同类型的用户可能更喜欢玩较难或较简单的游戏。第一种类型的用户可能更喜欢玩较简单的游戏,并且如果他们不能在一定次数的尝试内完成游戏内的目标的话,可能会变得对游戏感到沮丧并停止玩游戏。另一方面,第二种类型的用户可能喜欢被游戏挑战,并且如果该用户不能在他们的第一次尝试下完成游戏中的某些目标的话,可能从该游戏获得增加的乐趣。在一些实施方案中,可以使用用户308在游戏内各种状态下的最佳胜率来指示该用户的预测挑战等级。例如,用户在游戏中特定状态下的较高胜率可能指示低挑战等级,而用户在该状态下的较低胜率可能指示较高的挑战等级。
难度优化模型304可以使用来自用户简档的数据来确定用户的预期行为。例如,如果知道用户已经尝试了游戏中的特定等级一定次数然而仍然继续玩该游戏,难度优化模型304可以预测该用户在玩游戏时能够接受一定程度的挑战308。可以将用户的用户简档数据与和其他用户相关联的历史数据作比较,以便估计出可能预计用户会如何表现。
在一些实施方案中,可以将一个用户与包括具有相似属性值(诸如,举例而言,相似的技能水平、相似的玩游戏行为、相似的在游戏上的花费量和/或诸如此类)的多个用户的用户池或组相关联,其中,可以基于与该组相关联的挑战等级来确定该用户的挑战等级308。在一些实施方案中,可以基于由难度优化模型304指定的属性值,使用用户分组系统134对用户进行分组。
在一些实施方案中,难度优化模型304可以确定用户的难度轨迹。例如,随着用户进展通过游戏,可能经常预期游戏将变得更加困难或更加复杂。另一方面,也可能预期玩游戏的用户随着他们进展通过游戏而会有技能上的提升和/或获得对游戏的更好理解。照此,通过基于难度轨迹改变游戏的难度,可能可以将在玩游戏时向用户呈现的挑战等级308保持在期望的水平。例如,可以将难度轨迹配置为使得游戏的难度水平基于用户的技能水平的预期增长率而增加,使得在玩游戏的过程中呈现给用户的难度水平308可以保持在期望的水平(例如,相对恒定,或随着游戏进展而缓慢增加)。难度轨迹可以用于确定用户在视频游戏112中所面临的当前难度,以及通过改变与该游戏相关联的一个或多个玩游戏参数114来控制随着游戏进展视频游戏112的难度可以增加或减少的速率。
在一些实施方案中,难度配置系统132可以使用一个或多个预测模型的输出来动态地确定玩游戏参数调整312以为用户调整视频游戏112的难度水平。例如,可以基于所预测的流失指标310(来自流失预测模型302)或者预测挑战等级308或难度轨迹(来自难度优化模型304)来改变游戏的难度。在一些实施方案中,难度配置系统132可以使用映射数据储存库144将由难度优化模型310输出的预测挑战等级与难度水平或玩游戏参数值进行映射。例如,基于用户的技能水平,预测挑战等级308可以用于确定用户在其在游戏中的当前状态下的难度水平。难度水平可以用于选择与期望的难度水平相关联的特定玩游戏参数值(例如,种子值)。
在一些实施方案中,难度配置系统132可以基于流失预测模型304的输出来指定玩游戏参数调整312。例如,如果流失预测模型308指示用户很可能转变(例如,流失指标310满足阈值)时,难度配置系统132可以指定被配置为使难度水平降低的玩游戏参数调整312,以便阻止用户在短期内流失(例如,以允许用户前进到游戏中的下一等级)。
另一方面,基于难度优化模型304的动态调整312可以例如通过基于由难度优化模型304所确定的用户的挑战等级308来提升或降低用户的难度轨迹,导致对用户的玩游戏的更长期影响。例如,如果确定用户正在快速进展通过游戏(例如,每水平的尝试次数低)但似乎正在失去对该游戏的兴趣(例如,游戏会话的长度或频率正在下降),难度优化模型304可以预测高于用户正面临的当前挑战等级的挑战等级308。作为响应,难度配置系统132可以指定玩游戏参数调整312以提升游戏的难度轨迹,以便向用户呈现更多的挑战。
随着用户继续玩游戏,难度优化模型304可以在接收到用户的附加用户数据时调整用户的挑战等级308或难度轨迹。例如,所接收的用户数据可以指示用户在游戏的特定部分正在经历比正常更多的挑战。这可能指示相对于游戏的难度轨迹而言用户的技能并未像预期的那样提高,或者指示游戏的该特定部分比预期的更加困难。照此,可以基于所接收的用户数据来调整难度轨迹。例如,如果确定用户技能的提高没有跟上游戏的难度轨迹,可以降低难度轨迹以便使与用户相关联的预测挑战等级得以维持。
在一些实施方案中,难度配置系统132还可以生成报告、数据集、标记、指示器或反馈,供游戏开发者检阅以考虑调整游戏的一个或多个方面。例如,推荐系统314可以分析针对多个用户的由难度配置系统132确定的游戏难度设置以及来自用户数据储存库138的与该多个用户相关联的用户数据,以便确定游戏的某些部分是否比预期的更难或更简单。例如,响应于检测到大量用户正在使用比在游戏的某部分所预期的更多或更少的尝试、在游戏的一部分处正在流失和/或诸如此类,可以确定游戏的该部分比预期的更难或更简单。照此,推荐系统314可以生成待呈现给游戏开发者的报告或推荐,该报告或推荐指示游戏的一部分的难度水平并非预期的那样。在一些实施方案中,所述推荐可以指定与游戏的该部分相关联的一个或多个玩游戏参数。游戏开发者在查看推荐后,然后可以决定通过创建解决所检测的问题的游戏更新316以更新视频游戏112处的游戏来调整游戏的该部分的难度水平。
示例玩家进展模型
在一些实施方案中,可以使用玩家进展模型来对用户如何进展通过游戏进行建模。图4A示出基于等级的游戏中的玩家进展模型400的示例。在一些实施方案中,在基于等级的游戏中,只有在玩家赢得或完成当前等级时用户才可以解锁并前进到更高等级。照此,可以通过用户当前所在的游戏的等级来衡量用户在游戏内的进展。虽然图4A中所示的模型400可能主要参考基于等级的游戏中的进展,但是应当理解,也可以将该模型推广到其他游戏类型。在一些实施方案中,可以将图4A中所示的模型400实现为如图3中所示的难度优化模型304的一部分。
如图4A中所示,可以使用两个维度来定义用户的当前进展状态,这两个维度即:等级(level)和尝试(trial)(指示玩家赢得特定等级所进行的尝试的次数)。例如,当用户处于特定等级(例如,等级k)并且已经在该等级进行了特定次数的尝试(例如,尝试t)时,用户可以前进到更高等级(例如,等级k+1)或以重复尝试(例如尝试t+1)保持在当前等级。可以将玩游戏的用户在第k等级在第t次尝试中的状态表示为sk,t。
图4A示出用户在不同状态之间的可能进展的示例。例如,当处于初始状态sk,t402的用户完成等级k时,其可以前进到下一等级的第一尝试状态(状态sk+1,1404)。然而,如果用户未能完成该等级,其可以移动到相同等级的下一尝试状态(状态sk,t+1406)。另外,在用户停止玩游戏并且不返回游戏的情况下,可以存在流失状态408。用户可以从任何其他状态进入流失状态。
在一些实施方案中,可以基于胜率wk,t(指示用户可能在尝试t中完成当前等级k以能够前进到下一等级的概率)和流失率ck,t(指示用户可能在给定等级k在尝试t中流失的概率),对用户的玩家进展模型中的状态转变建模。在一些实施方案中,流失率ck,t可以包括获胜流失率(指示用户在尝试t上成功完成等级k后将会流失的概率)和失败流失率(指示用户在尝试t上尝试完成等级k失败后将会流失的概率)。在一些实施方案中,胜率wk,t可以指示用户在游戏的等级k和尝试t中所经历的挑战等级(例如,高胜率指示对于用户而言挑战等级低,而低胜率指示对于用户而言挑战等级高)。
照此,可以把用户将进展到下一等级状态404(例如,如果他们成功地完成游戏的一等级并且不流失)的概率表达为:
另一方面,可以将用户在尝试完成当前等级失败后将重新尝试该等级(状态406)的概率表达为:
可以把用户在成功完成一等级或者尝试完成该等级失败后将到达流失状态408的概率表达为:
在一些实施方案中,可以使用动态难度调整来配置胜率wk,t的值,以便增加用户参与度并且使用户进入流失状态的概率最小化。
如上所述,可以使用各种不同的度量——诸如所玩的时间量、游戏会话的长度和频率和/或诸如此类——来衡量用户的参与度。在一些实施方案中,可以通过用户玩的回合数来衡量用户参与度,其中每个回合可以指用户为完成一等级所做的一次尝试(成功或不成功)。可能预期用户在整个游戏的过程中会玩的回合数越高,其参与水平越高,并且其流失的可能性越小。
在一些实施方案中,可以使用度量R来表示可能预期用户在整个游戏的过程中会玩的回合数。度量Rk,t可以用于表示在用户已经到达特定状态sk,t之后所玩的预期总回合数。如图4A中所示,对于给定状态sk,t,用户可能仅能够转变到两个其他非流失状态,即sk+1,t(如果用户成功完成了等级k)和sk,t+1(如果用户没有成功完成等级k)。照此,基于状态之间的转变概率,可以将Rk,t计算为Rk+1,t和Rk,t+1的加权和。例如,可以将Rk,t表示为:
Rk,t=Pr(sk+1,tsk,t)Rk+1,t+Pr(sk,t+1sk,t)Rk,t+1+1
使用Pr(sk+1,t|sk,t)和Pr(sk,t+1|sk,t)的上述等式,可以如下地将Rk,t表示为胜率w和流失率c的函数:
可以确定经过多个状态的一组最佳胜率,以便使用户参与度最大化并且减少整个游戏的整个过程中的流失。例如,可以将该组最佳胜率计算为:
通过确定特定用户在每个游戏进展状态下的最佳胜率wk,t,可以提高用户的参与度(例如,如会玩的预期回合数Rk,t所指示的),使用户不太可能因为玩游戏的过程流失。在一些实施方案中,可以通过将用户与已经玩过游戏的其他相似用户进行比较来确定用户在不同状态下的预期流失率。例如,如上所述,可以基于共享的特性将一个用户与其他用户或用户组相关联,所述共享的特性可以包括个人或人口统计特性以及玩游戏特性,所述玩游戏特性诸如玩会话的长度和频率、特定等级的尝试次数、用户技能水平和/或诸如此类。可以跟踪并维护不同类型的用户在不同玩游戏状态下的历史流失率,从而允许为各个用户确定预测流失率。随着用户继续进展通过游戏,可以基于用户的一个或多个所监测的玩游戏特性针对用户的不同状态调整其预测流失率。
在一些实施方案中,难度优化模型304可以确定玩游戏的用户的一初始组的基准胜率或难度水平。然后,当获得附加的用户信息并且能够将用户与其他用户或者用户组进行比较和相关联时,可以更新用户的胜率或难度水平。在一些实施方案中,可以基于已经玩过游戏的所有用户的汇总数据来确定基准胜率或难度水平,同时可以基于特定用户的个人玩家历史针对该特定用户使所更新的胜率或难度水平个性化。
示例难度轨迹
如上所述,可以为各种玩游戏状态确定指示用户的挑战等级的最佳胜率。随着用户进展通过游戏,用户的挑战等级和用户的技能水平可以用于确定用户的难度轨迹。
图4B例示了示出根据一些实施方案的可被配置用于游戏的难度轨迹的示例的图410。如上所述,在一些实施方案中,可以使用难度优化模型310和/或难度配置系统132或其他预测模型160来配置游戏的用户的难度轨迹。如图4中所例示的,图410可以指示与x轴上的游戏进展水平相对的y轴上的难度水平。如上所述,可以由与用户相关的一个或多个因素——诸如用户到达的游戏中的等级、用户的玩家水平、用户玩的总时间、用户玩的回合数或比赛数和/或诸如此类——来指示游戏进展的水平。在一些实施方案中,可以基于游戏的类型来确定可以如何来测量游戏进展。例如,一些游戏可以被分成分立的多个玩游戏等级(例如,基于等级的游戏)。另一方面,一些游戏可能不具有分立的玩游戏等级,而是可能代之以随着玩家进展通过游戏而追踪玩家级别。
在一些实施方案中,游戏可具有难度低的初始玩游戏阶段412(例如,等级的数量、时间和/或诸如此类)。这可以用来教导用户游戏的机制(例如,教程)。在一些实施方案中,可以将这一初始阶段(也称为“教程阶段”)配置为对于所有用户而言具有相同的难度(例如,低难度水平,使得所有用户的胜率都可以接近100%)。在一些实施方案中,尽管在教程阶段期间不执行难度调整,但是可以随着用户进展通过教程阶段为用户收集用户数据(例如,包括与视频游戏的用户交互)。
在教程阶段412之后的一点,游戏的难度可以开始增加,以便为用户提供更多的挑战。随着为用户获取用户数据并将该用户数据用于更新用户简档和用户的属性,可以将用户与特定难度轨迹(例如,轨迹414A、414B、414C)相关联。在一些实施方案中,可以将用户的属性与已经玩过游戏的其他用户的属性进行比较,以便识别预期向用户提供预测挑战等级的难度轨迹。在一些实施方案中,预测挑战等级可以对应于为用户计算的使用户在整个游戏过程中的参与水平最大化的最佳胜率。
在一些实施方案中,随着用户继续玩游戏,所收集的用户的数据可能指示用户行为的改变。例如,可能确定,用户的参与水平已经降低(例如,基于玩会话的长度、玩会话的频率和/或诸如此类),同时用户当前在进行较少的尝试以进展通过每个等级(例如,指示用户的增加的胜率)。照此,可以推断用户面临的挑战等级不足以保持用户参与,并且可以相应地调整与用户相关联的难度轨迹(例如,从轨迹414B到轨迹414A)。在一些实施方案中,可以基本上实时地调整用户的难度轨迹。在其他实施方案中,可以在某些时间点(例如,在玩会话开始或结束时、在玩游戏等级之间和/或诸如此类)调整用户的难度轨迹。
难度调整循环
图5例示了根据一些实施方案的难度调整循环的图,该图示出游戏难度、玩家进展和玩家行为可如何交互。游戏的难度水平可能影响玩家进展通过游戏的能力。玩家进展的指示器——诸如玩家得分、玩家完成的等级、玩家获胜/失败记录和/或诸如此类——可能受游戏玩起来有多难影响。例如,当游戏较容易时,玩家可能能够在仅仅少量尝试之后完成游戏的等级或通过仅消耗少量游戏内资源(例如,生命值、金币和/或诸如此类)来完成游戏的等级。另一方面,如果游戏较难,玩家在能够完成游戏的一等级之前可能进行许多次尝试,或者可能不得不花费较大量的游戏内资源。在一些实施方案中,可以在用户玩游戏时通过收集用户数据对玩家通过游戏的进展直接进行测量。
玩家通过游戏的进展可能影响玩家关于游戏的行为。不同的玩家可能对其进展通过游戏的能力有不同的反应。例如,在玩游戏时更喜欢受到挑战的玩家,当其不能快速进展通过游戏时可能会经历提升的参与水平,而当其能够过于快速地进展通过游戏时可能会经历降低的参与水平。另一方面,其他类型的玩家可能会体验相反的效果。在一些实施方案中,可以通过收集指示玩家对特定游戏的参与水平的用户数据——比如玩家会话的频率和持续时间——来测量玩家行为的多方面(例如,参与水平)。例如,随着时间的推移其玩会话趋于更短或者更不频繁的玩家可以被确定为正在经历低参与水平,而具有一致的玩会话或频率或持续时间增加的玩会话的玩家可以被确定为正在经历高参与水平。
如上所述,可以(例如,使用难度优化模型304)基于指示用户行为的所收集的用户数据来配置游戏的难度。通过识别特定用户的行为可如何受用户通过游戏的玩家进展的影响,可以将游戏的难度水平配置为以便允许用户以使得用户对游戏的参与水平最大化的方式进展通过游戏。例如,可以对难度水平进行优化以便实现用户在游戏中的特定状态下的最佳胜率。在一些实施方案中,可以基于最佳胜率和用户的技能水平来确定难度水平。
照此,如图5中所例示的,游戏难度水平可以影响用户通过游戏的进展,用户通过游戏的进展又会影响用户关于游戏的行为。因此,可以动态地设置并调整游戏的难度,以便影响用户在玩游戏方面的行为。
示例动态难度配置过程
图6呈现了动态难度配置过程600的一个实施方案的流程图。过程600可以由可用于为用户动态地调整视频游戏的难度的任何系统实施。例如,过程600可以完全或部分地由用户计算系统110和交互式计算系统130执行(例如,使用难度配置系统132以基于预测模型160来确定难度轨迹,其可用于操纵一个或多个玩游戏参数114)。尽管任何数量的系统都可以完全或部分地实施过程600,但为了简化讨论,将关于特定的系统来描述过程600。此外,应该理解,可以随时间重复地更新或执行过程600。例如,可以针对视频游戏112的每个玩会话、针对视频游戏112的每个回合、每周、每月、每阈值数量的玩会话、用户每失败或未能完成目标达阈值次数时、每次胜率降低到阈值水平以下时等等重复过程600。然而,可以更频繁地或更不频繁地执行过程600。
过程600在框602处开始,在框602处交互式计算系统130识别用户。在一些实施方案中,可以响应于用户在用户计算系统110处开始游戏会话来识别用户。在一些实施方案中,可以接收用户的识别信息——诸如账号名称、密码、IP地址和/或诸如此类(共同称为用户标识符),并将该识别信息用于识别用户。
在框604处,在已经(例如,使用用户标识符)识别了用户之后,交互式计算系统130可以在一时间段内监测或记录用户与游戏的交互。例如,可以在用户的玩游戏会话的过程中收集与用户相关联的用户数据,并将其存储在用户数据储存库138中。在一些实施方案中,可以基本上实时地(例如,当用户在会话期间玩游戏时)收集用户数据并将其存储在用户数据储存库138中,而在其他实施方案中,可以以定义的时间间隔(例如,在指定的时间、在会话结束时和/或诸如此类)传输用户数据并将其存储在用户数据储存库138中。用户数据可以包括与用户如何与游戏交互有关的任何数据(例如,在玩游戏的过程中执行的用户动作、玩的时间(time play)、通过的等级、获胜/失败率、每等级的用户尝试和/诸如此类)。在一些实施方案中,所收集的用户数据可以用于构建或更新用户简档。用户简档可以基于所收集的指示用户通过游戏的进展和/或用户关于游戏的行为的用户数据(例如,玩的总时间、平均会话长度、平均会话频率、平均分数、每等级的平均尝试次数和/或诸如此类)来维护用户的多个属性。在一些实施方案中,用户简档可以用于形成输入数据集(例如,包括一个或多个用户属性、所收集的用户数据304和/或诸如此类)。
在框606处,难度优化模型304可以基于所监测的用户与游戏的交互将该用户的用户数据与其他用户的用户数据进行比较。在一些实施方案中,可以将与用户的用户简档相关联的所计算的属性与其他用户的属性进行比较。在一些实施方案中,用户分组系统134可以使用如由难度优化模型304指定的用户的一个或多个属性来执行比较。
在一些实施方案中,当将用户与其他用户进行比较,将用户与用户组相关联时,可以考虑用户的历史数据。在一些实施方案中,可以考虑用户的所有历史数据,而在其他实施方案中,可以仅考虑用户的满足阈值存在时间的历史数据或者比特定阈值时间段更近的历史数据(例如,过去一周、过去十个玩会话和/或诸如此类)。
在一些实施方案中,可以将用户与用户组相关联(例如,使用用户分组系统134)。用户组可以指具有某些共同特性的一个或多个用户的任何集合,所述特性例如游戏进展和用户行为特性。例如,可以将用户与一组用户相关联,其中该组的用户已经被记录为已经在游戏中的特定等级平均进行了相似次数的尝试,并且作为响应已经经历了玩游戏行为的相似改变(例如,增加/减少的会话频率和/或诸如此类)。照此,特定用户组的用户在玩游戏时可能具有相同或相似的预测挑战等级。通过将一用户与一用户组相关联,可以确定该用户更喜欢的预测挑战等级。
在一些实施方案中,将用户与其他用户进行比较和/或将用户与一用户组相关联允许预测模型160——比如难度优化模型304——确定用户的预测挑战等级。例如,在一些实施方案中,具有某些相似属性的不同用户可以具有相似的预测挑战等级。难度优化模型304可以识别对于确定用户的预测挑战等级而言最相关的用户数据类型(例如,与游戏的用户交互)。例如,对于难度优化模型304而言可能知道,第一用户属性与用户的预测挑战等级强相关,而第二用户属性与用户的预测挑战等级几乎不相关或不相关。照此,可以基于第一用户属性而非第二用户属性将该用户与其他用户进行比较。
在一些实施方案中,可以随着时间跟踪用户在历史上是如何响应视频游戏的不同难度水平的。例如,可能确定特定组的用户在面对某些难度水平时可能会流失或停止玩游戏,但在其他难度水平更有可能保持参与。
在一些实施方案中,可以在游戏的不同部分跟踪用户是如何响应不同的难度水平的。例如,通过随着时间跟踪用户行为,可以确定,当首次开始玩游戏时表现出某些特性的用户在游戏进展时更有可能更喜欢某些难度水平。通过追踪已经进展通过游戏的用户的难度轨迹,可以为可能尚未进展到游戏中如此深的其他用户确定难度轨迹。
在框608处,难度优化模型304为用户确定难度轨迹。在一些实施方案中,难度轨迹可以基于游戏的当前难度以及所记录的响应于该当前难度的用户行为(例如,基于用户的用户简档)。在一些实施方案中,可以响应于用户与其他用户的比较或者用户与用户组的关联来确定难度轨迹。例如,为用户确定的难度轨迹可以基于与其他用户和/或同一用户组的用户相关联的难度轨迹。在一些实施方案中,可以由难度配置系统132而非难度优化模型304来确定难度轨迹。在一些实施方案中,难度轨迹可以基于用户的一组所确定的最佳胜率。
在框610处,难度配置系统132可以基于所确定的难度轨迹为用户动态地调整游戏的难度。在一些实施方案中,调整游戏的难度水平可以包括选择对应于期望难度水平的基于特定难度的玩游戏参数值,或通过调整视频游戏112的一个或多个玩游戏参数114。随着用户继续进展通过游戏,可以根据所确定的难度轨迹继续调整游戏的难度。
在一些实施方案中,该过程可以返回到框604,在框604处继续监测用户与游戏的交互。在一些实施方案中,可以存储附加的所收集的用户数据并将其用于更新用户的用户简档。因此,可以改变或者更新与玩家相关联的难度轨迹。
在一些情况下,可以将上述实施方案中的一个或多个与用于预测玩家的流失或保留率的预测建模使用相结合。例如,流失预测可用于响应于用户可能流失的指示来调整游戏的当前难度,而难度轨迹可用于调整用户的长期难度趋势。
示例玩游戏参数评估过程
图7呈现了玩游戏参数值评估过程700的一个实施方案的流程图。过程700可以由可以至少部分地基于关于视频游戏112的一部分对特定种子值的使用来评估视频游戏112的该部分的难度的任何系统实施。例如,除了别的以外,过程700可以完全地或部分地由交互式计算系统130、玩游戏评估系统136、难度配置系统132或用户计算系统110实施。尽管任何数量的系统都可以完全地或部分地实施过程700,但为了简化讨论,将关于特定的系统来描述过程700。
使用过程700评估的玩游戏参数可以与视频游戏112的多个方面或部分的生成有关。例如,玩游戏参数可以对应于待用于确定游戏内世界或级别的初始配置的种子。作为另一示例,玩游戏参数可以用于确定视频游戏112内的一个或多个可玩或非可玩角色的能力。
过程700在框702处开始,在框702处,玩游戏评估系统136识别用于配置视频游戏112或视频游戏112的一部分的多个玩游戏参数值。在一些情况下,一个特定玩游戏参数的多个值中的每一个可以与配置视频游戏112的相同部分相关联。例如,用于配置游戏的一个特定等级的一方面的一个特定玩游戏参数可以与配置该等级的该方面的多个可能玩游戏参数值相关联。
对于在框702处识别的每个玩游戏参数值,在框704处玩游戏评估系统136监测或接收关于玩或访问视频游戏112的一个或多个用户的集合随时间的进展的数据,以获得与该玩游戏参数值相关联的进展数据。在一些情况下,用不同的用户集合评估每个玩游戏参数值,因为,例如,对于一些类型的视频游戏,在用特定用户的特定账号的特定玩会话期间可以使用仅一个玩游戏参数值。例如,如果玩游戏参数值与一个特定等级的布局相关联,则可能一旦该特定等级的布局针对特定用户被设置就不会改变。这样,该特定用户将不能遇到玩游戏参数的其他值。然而,在一些其他情况下,可以用相同的用户集合评估每个玩游戏参数值,因为,例如,在视频游戏的玩会话期间重复使用玩游戏参数值。例如,如果玩游戏参数值与卡牌战斗游戏中的开始的卡牌集合相关联,每当用户玩一轮时都可以生成开始的卡牌集合,从而提供了用特定用户评估多个不同的玩游戏参数值的机会。
在一些实施方式中,基于与用户集合相关联的技能水平或与同用户集合相关联的用户组相关联的技能水平来选择在框704处监测的用户集合。例如,每个玩游戏参数值可以通过被确定为具有大致相同的技能水平的用户来评估。替代地,每个玩游戏参数值可以通过具有不同等级技能的多个用户评估。
在框704处获得的进展数据可以反映被监测用户玩具有特定玩游戏参数值的视频游戏112已经取得的进展的量。例如,进展数据可以指示特定用户或用户集合是否完成了具有特定玩游戏参数值的目标或者未能完成具有特定玩游戏参数值的目标。在一些实施方案中,进展数据可以包括其他类型的度量,诸如用户为完成具有特定玩游戏参数值的特定目标所做的尝试的次数、与该目标相关联的失败/成功率、完成该目标的时间、完成该目标所采取的动作的数量、与完成该目标相关联的花费、与完成该目标相关联的分数和/或诸如此类。在一些实施方案中,进展数据可以基本实时地收集和存储,或者可以在指定时间(例如,以某一时间间隔、在玩会话结束时等)存储。
在一些实施方案中,可以使用运行定义的例程的自动代理程序(“机器人”)评估玩游戏参数值。每个例程可以通过逐步通过视频游戏112的多个玩游戏状态而用来模拟玩游戏。在一些实施方案中,不同的自动化例程可以与用于逐步通过视频游戏112的玩游戏状态的不同规则或过程相关联。例如,在一些实施方案中,第一例程可以随机方式逐步通过玩游戏状态,而第二例程可被配置为优先考虑某些类型的状态或可导致某些状态的类型的玩游戏动作。在一些实施方案中,每个自动化例程可以基于其能多好地完成视频游戏112中的目标而与一个技能水平相关联。在一些实施方案中,可以在使用玩游戏参数值配置的视频游戏112中运行每个类型的自动化例程,以收集与该例程相关联的进展数据。在一些实施方案中,可以使用真实用户和自动化例程的组合评估玩游戏参数值。
在框706处,对于所评估的每个玩游戏参数值,玩游戏参数评估系统136基于与来自用户集合中的每个集合的每个用户相关联的技能数据使进展数据标准化。换句话说,在一些情况下,可以使针对每个玩游戏参数值获得的进展数据标准化,使得不同用户的不同技能水平不影响玩游戏参数值的评估。替代地或另外地,可以基于通过例如用户分组系统134确定的特定用户的技能水平对针对玩游戏参数值关于该用户获得的进展数据进行加权。在一些情况下,特定用户的技能水平可以基于玩视频游戏112赢得的点或用于监测特定用户的技能的某种其他度量确定。
在一些实施方案中,通过基于用户技能水平使收集的与一个玩游戏参数值相关联的进展数据标准化和/或对其进行加权,可以更准确地确定与该玩游戏参数值相关联的难度。例如,如果用户具有高技能水平,用户的、指示使用玩游戏参数值配置的目标的高失败率的进展数据可能更多地指示与该玩游戏参数值相关联的高难度水平,而不是用户具有低技能水平。
在一些实施方案中,框706可以是可选的或被省略。例如,在被选择用于数据收集以评估特定玩游戏参数的每个值的用户集合与特定用户组相关联,或者各自被确定为具有小于阈值的技能水平差别的情况下,可以不必使进展数据标准化,并且可以省略框706。
在框708处,玩游戏评估系统136基于相关联的进展数据确定与每个玩游戏参数值相关联的难度。当使用与视频游戏112的一个目标或一部分相关联的特定玩游戏参数值时,可以基于成功完成或没成功完成视频游戏112的该目标或该部分的用户的数量或百分比来确定难度。有利地,在某些实施方案中,通过评估玩游戏参数值的难度,可以将玩游戏参数值的集合基于其相关联的难度水平分组。例如,每个玩游戏参数值可以被分类为诸如“容易”、“中等”或“难”。因此,在一些情况下,如果确定特定用户更喜欢玩较容易的视频游戏,可以使用与较低难度水平相关联的玩游戏参数值来生成视频游戏112的部分。
此外,过程700使得开发者能够确认与特定玩游戏参数值相关联的难度水平和对特定玩游戏参数值的类别进行调整。例如,一个特定玩游戏参数值可能用于选择容易难度水平的玩家。然而,在使用过程700对具有特定种子值的多个用户的多个玩会话进行评估之后,可能确定该玩游戏参数值导致视频游戏112的一部分比当视频游戏112的该部分与其他种子值相关联时明显更具挑战性。在这种情况下,该特定玩游戏参数值可以被重新分类以供更喜欢或选择更难的难度水平的玩家使用,并且可以被移除使得不能被获得供更喜欢或选择容易难度水平的玩家使用。
在一些实施方案中,开发者可能被提供以用户界面,用户界面显示与针对其使用特定玩游戏参数值的用户相关联的数据。该数据可以包括一个或多个用户度量,诸如多少用户完成了与该玩游戏参数值相关联的游戏的一部分、用户为完成该游戏的该部分所做的尝试的平均数量、在该游戏的该部分用户的流失率和/或诸如此类。开发者可以使用此数据以确定与该玩游戏参数值相关联的该游戏的该部分是否比预期的更难或者不如预期的难。例如,如果开发者使用用户界面确定大量玩家在流失或大量玩家完成该游戏的该部分需要做出多于预期数量的尝试,可以推断该特定玩游戏参数值与过高的难度水平相关联,并且可以相应地调整该特定玩游戏参数值或使其与更合适的难度水平相关联。
基于难度轨迹为用户调整难度水平
如上所述,可以使用难度轨迹来贯穿游戏的不同部分为特定用户设置游戏的难度水平,以便维持用户的预测挑战等级。图8提供了用于调整特定用户的视频游戏的难度水平的过程的流程图的一个实施方案。过程800可以由可用于为用户动态调整视频游戏的难度的任何系统实施。例如,过程800可以完全或部分地由用户计算系统110和交互式计算系统130执行(例如,使用难度配置系统132以基于预测模型160来确定难度轨迹,其可用于操纵一个或多个玩游戏参数114)。尽管任何数量的系统都可以完全或部分地实施过程800,但为了简化讨论,将关于特定的系统来描述过程800。此外,应该理解,可以随时间重复地更新或执行过程800。例如,可以针对视频游戏112的每个玩会话、针对视频游戏112的每个回合、每周、每月、每阈值数量的玩会话、用户每失败或未能完成目标达阈值次数时、每次胜率降低到阈值水平以下时等等重复过程800。然而,可以更频繁地或更不频繁地执行过程800。
在框802处,难度优化模型304识别用户的预测挑战等级。如上所述,在一些实施方案中,预测挑战等级可以指示在玩游戏的过程中维持用户的参与水平的相对难度水平。在一些实施方案中,可以基于存储在用户数据储存库138中的一个或多个用户属性来确定预测挑战等级。在一些实施方案中,预测挑战等级可以对应于为用户计算的使用户在整个玩游戏的过程中的参与水平最大化的最佳胜率。在一些实施方案中,预测挑战等级可以指示游戏的难度水平与用户的技能水平之间的关系。在一些实施方案中,预测挑战等级可以被表达为0至100之间的一个分数。
在框804处,难度优化模型304可以识别与用户相关联的技能水平。在一些实施方案中,用户的技能水平可以基于多方面收集的用户数据304,诸如分数、获胜/失败记录、游戏中的目标的完成、尝试完成游戏中的目标的次数和/或诸如此类。
在框806处,难度优化模型304使用预测挑战等级和用户技能水平来为用户确定难度轨迹。难度轨迹可以指示贯穿游戏的不同部分用户的难度水平。在一些实施方案中,可以基于用户的技能水平和预测挑战等级来设置难度轨迹的难度水平。在一些实施方案中,可以将难度水平表达为用户的技能水平和预测挑战等级的和或汇总。例如,具有低技能但高预测挑战等级的第一玩家的难度水平在一些实施方案中可以与具有高技能但低预测挑战等级的玩家的难度水平类似,但是低于具有高挑战等级的高技能的玩家的难度水平。在一些实施方案中,难度轨迹可以基于用户的预期未来技能水平为用户指示游戏的一些部分的难度水平。
在框808处,可以为用户调整游戏的一部分的玩游戏参数的值。在一些实施方案中,可以将游戏的该部分与一难度水平相关联(例如,基于所确定的难度轨迹)。为了调整游戏的该部分的难度水平,可以识别与游戏的该部分相关联的玩游戏参数。该玩游戏参数可具有多个不同的可能值。每个值可以与一难度水平相关联。在一些实施方案中,可以使用图7中所例示的过程来确定每个玩游戏参数值的难度水平。难度优化器310因此可以通过选择与游戏的一部分相关联并具有相应难度水平的玩游戏参数的值来设置该部分的难度水平。
基于难度水平的游戏更新
在一些实施方案中,游戏开发者可以使用由难度优化模型304分析的多个用户的所收集的用户数据,以便更新和改善游戏的难度。例如,在一些实施方案中,游戏的某些部分可能包括对于许多玩家而言预料不到的难度变化。如果检测到许多用户在游戏的特定部分中表现得比预期的更差(例如,较低的分数、为进展所需要的更多尝试和/或诸如此类),可以设置标记,该标记指示游戏的该部分比预期的更难。这些相对于预期难度轨迹的偏差可以引起游戏开发者的注意,使得可以做出适当的改变。
图9呈现了根据一些实施方案的用于基于难度水平更新游戏的过程的流程图。过程900可以由可用于收集关于视频游戏的难度和与视频游戏的用户交互的数据的任何系统实施。例如,过程900可以完全或部分地由用户计算系统110和交互式计算系统130执行(例如,结合用户交互历史116使用难度配置系统132以确定用户在如何对游戏的不同部分和不同的难度水平做出反应)。尽管任何数量的系统都可以完全或部分地实施过程900,但为了简化讨论,将关于特定的系统来描述过程900。此外,应该理解,可以随时间重复地更新或执行过程900。例如,可以针对视频游戏112的每个玩会话、针对视频游戏112的每个回合、每周、每月、每阈值数量的玩会话、用户每失败或未能完成目标达阈值次数时、每次胜率降低到阈值水平以下时等等重复过程900。然而,可以更频繁地或更不频繁地执行过程900。
在框902处,推荐系统314可以接收与多个用户相关联的汇总用户数据。在一些实施方案中,该数据可以包括多个用户的用户简档数据以及与多个用户相关联的难度调整数据和/或难度轨迹数据。
在一些实施方案中,还可以接收与一个或多个机器人相关联的数据。例如,数据可以包括一个或多个机器人的属性诸如机器人行为方案、机器人技能水平和/或诸如此类,以及与机器人玩游戏表现相关联的数据。
在框904处,推荐系统314可以确定难度设置和用户数据之间的一个或多个关系。在一些实施方案中,一个关系可以对应于多个用户的预期难度轨迹与多个用户的检测到的行为之间的偏差。例如,用户的难度轨迹可能意图使用户在游戏的特定部分面对一定程度的挑战。然而,用户的检测到的行为(例如,获胜/失败记录、尝试次数和/或诸如此类)可能指示用户在游戏的该特定部分被过度挑战或欠挑战,并且游戏的该部分比预期的更难或者更简单。举例而言,可能确定,用户在游戏的特定部分失败的频率比游戏的该部分的其相应难度水平原本会指示的更高。在一些实施方案中,可能确定,许多用户在到达游戏的特定部分时经历其难度轨迹的变化,这可能指示游戏的该部分的异常难度。
在一些实施方案中,可以响应于多个用户在游戏的一部分的预期行为与实际行为之间的差异满足阈值来自动识别游戏的该部分的异常难度。该行为可以包括完成游戏的该部分的成功率、为完成游戏的该部分所用的移动或所消耗的游戏内资源的量、完成游戏的该部分时的分数、完成游戏的该部分时的玩会话的长度和/或频率、在游戏的该部分的流失率和/或诸如此类。例如,可以将游戏的该部分配置为使得具有特定难度轨迹的用户通常被预期花费一定量的移动或游戏内资源以便完成游戏的该部分。如果用户在完成游戏的该部分方面消耗的实际资源量大于预期的量一阈值量,可以认为游戏的该部分是异常难的。在一些实施方案中,可以设置指示游戏的该部分的异常难度水平的标记。
在一些实施方案中,可以确定难度设置和机器人数据之间的一个或多个关系。例如,可以预期与特定玩游戏参数值相关联的游戏的特定部分具有某个难度水平。指示一个或多个机器人在游戏的该部分能够如何表现的机器人数据可以用于确定游戏的该部分是否比预期的更难或更简单。例如,可能预期,游戏的特定部分通常会对具有特定行为或技能水平的机器人有一定量的完成时间的要求。如果确定一个或多个机器人能够在显著更短的时间内完成游戏的该部分,则可以确定游戏的该部分不如预期的难。
在框906处,推荐系统314可以基于难度设置和用户数据之间的所确定的关系为游戏开发者生成一个或多个设计建议。例如,如上所述,可能确定游戏的特定部分比预期的更难或更简单。因此,可以向游戏开发者提出设计建议,以使游戏的特定部分更简单或更难,从而允许更多玩游戏的用户维持其预期难度轨迹。在一些实施方案中,一个或多个设计建议可以指定和所确定的关系相关联的与游戏的特定部分相关联的一个或多个特定玩游戏参数。例如,如果确定游戏的该部分比预期的更难,建议可以识别与游戏的该部分相关联的、可由游戏开发者修改以改变游戏的该部分的难度的一个或多个玩游戏参数。例如,建议可以包括按与期望难度水平相关联的某些玩游戏参数值限制游戏的该部分,调整某些玩游戏参数值对视频游戏的影响以改变与经调整的玩游戏参数值相关联的难度水平,和/或诸如此类。
在方框908处,游戏接收来自游戏开发者的一个或多个设计改变。在一些实施方案中,设计改变可以调整一个或多个玩游戏参数值(例如,玩游戏参数值如何影响视频游戏的状态)或将一个或多个玩游戏参数限制为某些值。在框910处,基于所接收的改变更新游戏。
计算系统的概览
图10示出了也被称为游戏系统的用户计算系统110的一个实施方案。如所示出的,用户计算系统110可以是可以包括多个元件的单个计算设备。然而,在一些情况下,用户计算系统110可以包括多个设备。例如,用户计算系统110可以包括:包括中央处理单元和图形处理单元的一个设备,包括显示器的另一设备,以及包括输入机构诸如键盘或鼠标的另一设备。
用户计算系统110可以是可以执行游戏系统的计算系统的一个实施方案。在图8的非限制性实施例中,用户计算系统110是能够经由触摸屏显示器1002从用户接收输入的可触摸计算设备。然而,用户计算系统110并不限于此,而是可以包括非可触摸的实施方案,该非可触摸的实施方案不包括触摸屏显示器1002。
用户计算系统110包括触摸屏显示器1002和触摸屏界面1004,并且被配置为执行游戏应用程序1010。该游戏应用程序可以是视频游戏112,或者是连同视频游戏112一起执行或支持该视频游戏的应用程序,诸如视频游戏执行环境。虽然被描述为游戏应用程序1010,但是在一些实施方案中,应用程序1010可以是可以至少部分地基于用户的偏好或能力而具有可变的执行状态的另一种类型的应用程序,诸如教学软件。尽管用户计算系统110包括触摸屏显示器1002,但应认识到,可以除触摸屏显示器1002之外或代替触摸屏显示器1002使用多种输入设备。
用户计算系统110可以包括一个或多个处理器,诸如中央处理单元(CPU)、图形处理单元(GPU)和加速处理单元(APU)。此外,用户计算系统110可以包括一个或多个数据存储元件。在一些实施方案中,用户计算系统110可以是出于执行游戏应用程序1010的目的创建的专用计算设备。例如,用户计算系统110可以是视频游戏控制台。由用户计算系统110执行的游戏应用程序1010可以是使用特定的应用程序编程接口(API)创建的,或者可以被编译为可以特定于用户计算系统110的特定指令集。在一些实施方案中,用户计算系统110可以是能够执行游戏应用程序1010和非游戏应用程序的通用计算设备。例如,用户计算系统110可以是具有集成触摸屏显示器的膝上型计算机或者具有外部触摸屏显示器的台式电脑。关于图9更详细地描述了用户计算系统110的示例实施方案的部件。
触摸屏显示器1002可以是电容性触摸屏、电阻式触摸屏、表面声波触摸屏或被配置成从用户接收触觉输入——也被称为触摸输入——的其他类型的触摸屏技术。例如,可以经由一个手指触摸屏幕、多个手指触摸屏幕、手写笔或者可以用于在触摸屏显示器1002上记录触摸输入的其他刺激物来接收触摸输入。触摸屏界面1004可以被配置为将触摸输入转化成数据并且输出数据,使得其可以被用户计算系统110的部件——诸如操作系统和游戏应用程序1010——解读。该触摸屏界面1004可以将触觉触摸输入触摸的特性转化成触摸输入数据。触摸输入的一些示例特性可以包括形状、大小、压力、位置、方向、动量、持续时间和/或其他特性。触摸屏界面1004可以被配置为确定触摸输入的类型,诸如,例如轻击(例如,在单个位置处触摸并释放)或者滑动(例如,在单个触摸输入中移动通过触摸屏上的多个位置)。触摸屏界面1004可以被配置成检测和输出与同时地或基本上并行地发生的多个触摸输入相关联的触摸输入数据。在一些情况下,同时的触摸输入可以包括其中用户维持在触摸屏显示器1002上的第一触摸,同时随后在触摸屏显示器1002上执行第二触摸的实例。触摸屏界面1004可以被配置为检测触摸输入的移动。可以将触摸输入数据传输到用户计算系统110的部件以用于处理。例如,可以将触摸输入数据直接传输到游戏应用程序1010以用于处理。
在一些实施方案中,在被输出到游戏应用程序1010之前,触摸输入数据可以经受由触摸屏界面1004、操作系统或者其他部件进行的处理和/或滤波。作为一个示例,可以从触摸输入捕获原始触摸输入数据。可以对原始数据进行滤波以移除背景噪声,可以测量与输入相关联的压力值,以及可以计算与触摸输入相关联的位置坐标。提供给游戏应用程序1010的触摸输入数据的类型可以取决于触摸屏界面1004和与触摸屏界面1004相关联的特定API的具体实现。在一些实施方案中,触摸输入数据可以包括触摸输入的位置坐标。可以以限定的频率输出触摸信号数据。处理触摸输入可以每秒计算许多次,并且可以将触摸输入数据输出到游戏应用程序以用于进一步处理。
游戏应用程序1010可以被配置成在用户计算系统110上执行。游戏应用程序810还可以被称为视频游戏、游戏、游戏代码和/或游戏程序。游戏应用程序应当被理解为包括用户计算系统110可以使用以提供供用户玩的游戏的软件代码。游戏应用程序1010可能包括向用户计算系统110通知要执行的处理器指令的软件代码,但还可能包括在玩游戏方面使用的数据,诸如与常量、图像和其他数据结构相关的数据。例如,在所示出的实施方案中,游戏应用程序包括游戏引擎912、游戏数据914以及游戏状态信息916。
用户计算系统110的触摸屏界面1004或另一部件诸如操作系统可以提供用户输入诸如触摸输入至游戏应用程序1010。在一些实施方案中,用户计算系统110可以包括替代的或者附加的用户输入设备,诸如鼠标、键盘、相机、游戏控制器等。用户可以经由触摸屏界面1004和/或一个或多个替代的或附加的用户输入设备与游戏应用程序1010交互。游戏引擎912可以被配置为在用户计算系统110内执行游戏应用程序1010的操作的各方面。游戏应用程序内的玩游戏的各方面的执行可以至少部分地基于所接收的用户输入、游戏数据914以及游戏状态信息916。游戏数据914可以包括游戏规则、预录的运动捕获姿势/路径、环境设置、约束、动画参考曲线、骨架模型和/或其他游戏应用程序信息。此外,游戏数据914可以包括用于设置或调整游戏应用程序1010的难度的信息。
游戏引擎912可以根据游戏规则来执行游戏内的玩游戏。游戏规则的一些示例可以包括用于打分、可能的输入、动作/事件、响应于输入的移动等的规则。其他部件可以控制接受哪些输入和游戏如何进展,以及玩游戏的其他方面。在游戏应用程序1010的执行期间,游戏应用程序1010可以存储游戏状态信息916,该游戏状态信息可以包括角色状态、环境状态、场景对象存储和/或与游戏应用程序1010的执行状态相关联的其他信息。例如,游戏状态信息916可以识别游戏应用程序在特定时间点的状态,诸如角色位置、角色动作、游戏等级属性以及影响游戏应用程序的状态的其他信息。
游戏引擎912可以接收用户输入,并且确定适于游戏应用程序1010的游戏内事件,诸如动作、碰撞、奔跑、投掷、攻击和其他事件。在运行期间,游戏引擎912可以读取游戏数据914和游戏状态信息916,以便确定合适的游戏内事件。在一个实施例中,在游戏引擎912确定角色事件之后,这些角色事件可以被传送到运动引擎,该运动引擎可以确定角色响应于该事件应当做出的合适运动,并将那些运动传递到动画引擎。动画引擎可以确定角色的新姿势,并且将新姿势提供到皮肤和渲染引擎。皮肤和渲染引擎又可以将角色图像提供至对象组合器,以便将有生命对象、无生命对象和背景对象组合成完整场景。可以将该完整场景传送至渲染器,该渲染器可以生成用于显示给用户的新帧。在执行游戏应用程序期间,可以重复该过程以用于渲染每一帧。虽然在角色的情况下描述了该过程,但是该过程可以应用于用于处理事件和渲染用于显示给用户的输出的任何过程。
计算系统的示例硬件配置
图11示出了用于图10的用户计算系统110的硬件配置的一个实施方案。用户计算系统110的其他变型可以代替本文明确呈现的实施例,诸如移除用户计算系统110的部件或向该用户计算系统添加部件。用户计算系统110可以包括专用游戏设备、智能手机、平板计算机、个人计算机、台式计算机、膝上型计算机、智能电视、汽车控制台显示器等。此外,(虽然没有在图11中明确地示出)如关于图10所描述的,用户计算系统110可以可选地包括触摸屏显示器1002和触摸屏界面1004。
如所示出的,用户计算系统110包括处理单元20,该处理单元与用户计算系统110的其他部件交互并且还与在用户计算系统110外部的部件交互。可以包括可以与游戏媒介12通信的游戏媒介读取器22。游戏媒介读取器22可以是能够读取光盘诸如CD-ROM或者DVD的光盘读取器,或者可以是可以从游戏媒介12接收和读取数据的任何其他类型的读取器。在一些实施方案中,游戏媒介读取器22可以是可选的或者被省略。例如,可以经由网络I/O38通过网络访问游戏内容或应用程序,从而使游戏媒介读取器22和/或游戏媒介12是可选的。
用户计算系统110可以包括单独的图形处理器24。在一些情况下,图形处理器24可以诸如用APU内置于处理单元20中。在一些这样的情况下,图形处理器24可以与处理单元20共享随机存取存储器(RAM)。替代地或附加地,用户计算系统110可以包括与处理单元20分开的分立图形处理器24。在一些这样的情况下,图形处理器24可以具有与处理单元20分开的RAM。此外,在一些情况下,图形处理器24可以连同一个或多个另外的图形处理器和/或连同嵌入的或非分立的图形处理单元一起工作,该嵌入的或非分立的图形处理单元可以被嵌入到主板中并且有时被称为板上图形芯片或设备。
用户计算系统110还包括用于使得能够输入/输出的各种部件,诸如I/O 32、用户I/O 34、显示I/O 36和网络I/O 38。如之前所描述的,在一些情况下,输入/输出部件可以包括触控设备。I/O 32与存储元件40交互,并且通过设备42与可移动存储媒介44交互,以便提供用于计算设备110的存储装置。处理单元20可以通过I/O 32进行通信以存储数据,诸如游戏状态数据和任何共享的数据文件。除了存储装置40和可移动存储媒介44之外,计算设备110还被示出包括ROM(只读存储器)46和RAM 48。RAM 48可以用于被频繁访问的数据,诸如当正在玩游戏时。
用户I/O 34用于在处理单元20与用户设备诸如游戏控制器之间发送和接收命令。在一些实施方案中,用户I/O 34可以包括触摸屏输入。如之前所描述的,触摸屏可以是电容性触摸屏、电阻式触摸屏或者被配置为通过触觉输入从用户接收用户输入的其他类型的触摸屏技术。显示I/O 36提供用于显示来自正在玩的游戏的图像的输入/输出功能。网络I/O38用于针对网络的输入/输出功能。在执行游戏期间,诸如当正在线玩游戏或者在线访问游戏时,可以使用网络I/O 38。
显示输出信号可以由显示I/O 36产生,并且可以包括用于在显示设备上显示由计算设备800产生的可视内容的信号,所述可视内容诸如图形、用户界面、视频和/或其他可视内容。用户计算系统110可以包括被配置为接收由显示I/O 36产生的显示输出信号的一个或多个集成显示器,所述显示输出信号可以被输出以用于显示给用户。根据一些实施方案,由显示I/O 36产生的显示输出信号还可以被输出到在计算设备800外部的一个或多个显示设备。
用户计算系统110还可以包括可以与游戏一起使用的其他特征,诸如时钟50、闪存52以及其他部件。音频/视频播放器56还可以用于播放视频序列,诸如电影。应当理解的是,可以在用户计算系统110中设置其他部件,并且本领域技术人员将会意识到用户计算系统110的其他变型。
程序代码可以存储在ROM 46、RAM 48或者存储装置40(其可以包括硬盘、其他磁存储装置、光存储装置、固态驱动器和/或其他非易失性存储装置,或者它们的组合或变型)中。程序代码的至少一部分可以存储在可编程的ROM(ROM、PROM、EPROM、EEPROM等)中、存储在存储装置40中和/或存储在可移动媒介诸如游戏媒介12(其可以是CD-ROM、盒式磁带(cartridge)、存储器芯片等,或者可以根据需要通过网络或其他电子渠道获得)上。通常,可以发现程序代码被包含在有形的非暂时性信号承载媒介中。
随机存取存储器(RAM)48(以及可能的其他存储装置)可根据需要用于存储变量以及其他游戏和处理器数据。使用RAM,RAM保存在玩游戏期间生成的数据,并且其一部分还可以被留出用于帧缓冲、游戏状态和/或对于解读用户输入和生成游戏显示而言所需要的或可用的其他数据。一般地,RAM 48是易失性存储装置,并且当用户计算系统110被关闭或者失去电力时,存储在RAM 48内的数据可能会丢失。
当用户计算系统110读取游戏媒介12并提供游戏时,可以从游戏媒介12读取信息并且将信息存储在存储设备诸如RAM 48中。另外地,来自存储装置40、ROM 46、经由网络(未示出)访问的服务器或可移动存储媒介46的数据可以被读取且加载到RAM 48中。虽然描述了在RAM 48中得到数据,但将理解的是,数据不是非要存储在RAM 48中,而是可以存储在处理单元20可访问的其他存储器中,或者分布在若干媒介诸如游戏媒介12和存储装置40中。
另外的实施方案
要理解的是,根据本文描述的任何具体实施方案不一定可以实现所有的目标或优点。因此,例如本领域技术人员将认识到,某些实施方案可以被配置为以实现或优化如本文所教示的一个优点或一组优点而不一定实现如本文可能教示或暗示的其他目标或优点的方式进行操作。
本文描述的所有过程均可以体现在软件代码模块中并且经由软件代码模块完全自动化,所述软件代码模块由包括一个或多个计算机或处理器的计算系统执行。上述代码模块可以被存储在任何类型的非暂时性计算机可读介质或其他计算机存储设备中。一些或所有上述方法可以以专用的计算机硬件来实施。
根据本公开内容将明了除本文描述的那些之外的许多其他变型。例如,根据实施方案,本文描述的算法中任一个的某些动作、事件或功能均可以以不同的顺序执行,可以被添加、合并或完全被省略(例如,对于算法的实行而言,并非所有描述的动作或者事件都是必需的)。此外,在某些实施方案中,动作或事件可以被同时执行——例如通过多线程处理、中断处理或者多个处理器或处理器内核被同时执行或在其他并行架构上被同时执行,而不是被顺序地执行。此外,不同的任务或过程可以由可以一起运行的不同机器和/或计算系统来执行。
结合本文公开的实施方案描述的各种说明性逻辑框和模块可以由机器实施或执行,所述机器诸如处理单元或处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其他可编程逻辑器件、分立门或晶体管逻辑电路、分立硬件部件或被设计成执行本文描述的功能的其任何组合。处理器可以是微处理器,但在替代方案中,处理器可以是控制器、微控制器或者状态机,其组合等。处理器可以包括被配置为处理计算机可执行指令的电路。在另一实施方案中,处理器包括执行逻辑操作而不处理计算机可执行指令的FPGA或其他可编程器件。处理器还可以被实现为计算设备的组合,例如DSP和微处理器的组合、多个微处理器、一个或多个微处理器连同DSP内核或者任何其他这样的配置。虽然本文中主要关于数字技术描述了处理器,但处理器还可以包括主要是模拟性的部件。计算环境可以包括任何类型的计算机系统,包括但不限于基于微处理器的计算机系统、大型计算机、数字信号处理器、便携式计算设备、设备控制器或者器具内的计算引擎等,仅举几例。
除非另外特别说明,否则条件性用语,诸如“能(can)”、“可(could)”、“可能(might)”或“可以(may)”等,应在上下文中如通常所使用的被理解为表达:某些实施方案包括某些特征、元件和/或步骤,而其他实施方案不包括所述的某些特征、元件和/或步骤。因此,这样的条件性用语通常并不意在暗示:特征、元件和/或步骤以任何方式是一个或多个实施方案所需要的,或者一个或多个实施方案必需包括用于判定——在具有或不具有用户输入或提示的情况下——这些特征、元件和/或步骤是否被包括在任何特定的实施方案中或是否要在任何特定的实施方案中执行的逻辑。
除非另外特别说明,否则析取性(disjunctive)用语,诸如短语“X、Y或Z中的至少一个”,应在上下文中如通常所使用的被理解为表示:项、术语等可以是X、Y或Z,或它们的任何组合(例如,X、Y和/或Z)。因此,这样的析取性用语通常并不意在并且不应当暗示,某些实施方案需要至少一个X、至少一个Y或至少一个Z均存在。
在本文中描述的和/或在附图中描绘的流程图中的任何过程描述、要素或框均应当被理解为潜在地表示包括用于实现过程中的特定逻辑功能或要素的一个或多个可执行指令的代码模块、代码段或代码部分。在本文描述的实施方案的范围内包括替代的实施方式,在所述替代的实施方式中,要素或功能可以被删除、不按照所示出的或讨论的次序执行,包括基本上同时执行或以颠倒的顺序执行,这取决于所涉及的功能,如本领域技术人员会理解的。
除非另外明确说明,否则冠词,诸如“一个”或“一”,通常应被解释为包括一个或多个所描述的项。相应地,诸如“被配置成……的设备”之类的措辞意在包括一个或多个所叙述的设备。这样的一个或多个所叙述的设备还可以被共同配置成执行所陈述的列举项(recitation)。例如,“被配置为执行列举项A、B和C的处理器”可以包括连同被配置为执行列举项B和C的第二处理器一起工作的、被配置为执行列举项A的第一处理器。
应当强调的是,可以对上述实施方案做出许多变型和修改,这些变型和修改的要素应被理解为在其他可接受的示例之中。所有这样的修改和变型都意在被包括在本文中在本公开内容的范围内。
Claims (20)
1.一种计算机实施的方法,包括:
在配置有具体计算机可执行指令的一个或多个硬件计算设备的控制下,所述具体计算机可执行指令存储在电子硬件存储器中,
通过网络从用户计算系统接收玩游戏会话数据包,所述玩游戏会话数据包包括在所述用户计算系统上启动在第一玩游戏等级的视频游戏应用程序的当前玩游戏会话的指示;
从所述玩游戏会话数据包识别与所述用户计算系统上的所述视频游戏应用程序的所述当前玩游戏会话相关联的用户标识符,所述用户标识符与用户账号相关联;
至少部分地基于所述用户标识符访问物理数据存储器中的用户账号数据,其中所述物理数据存储器被配置为存储用户账号数据结构,所述用户账号数据结构存储与所述视频游戏应用程序的一个或多个玩游戏会话相关联的用户交互数据;
确定与所述用户账号相关联的流失率,其中所述流失率包括获胜流失率和失败流失率,所述获胜流失率指示用户在完成在所述第一玩游戏等级的成功尝试后会退出玩所述视频游戏应用程序的概率,所述失败流失率指示用户在所述第一玩游戏等级的失败尝试后会退出玩所述视频游戏应用程序的概率;
使用难度分析模型至少部分地基于对所述获胜流失率、所述失败流失率和所述用户账号数据的至少一部分的分析来确定与所述用户账号通过所述视频游戏应用程序的进展相关联的难度轨迹,其中通过所述视频游戏应用程序的进展由多个游戏进展状态限定,其中所述难度轨迹识别与所述用户账号的所述多个游戏进展状态中的每个游戏进展状态相关联的预测挑战等级;
至少部分地基于所述预测挑战等级、所述流失率和与所述当前玩游戏会话相关联的玩游戏会话数据确定所述视频游戏应用程序的所述当前玩游戏会话的所述第一玩游戏等级的难度水平;
至少部分地基于所确定的难度水平选择与所述视频游戏应用程序相关联的至少一个玩游戏参数的值,其中所述至少一个玩游戏参数包括当被调整时引起对所述视频游戏应用程序的状态的修改的变量;和
通过将所述至少一个玩游戏参数调整至针对所述当前玩游戏会话的所述第一玩游戏等级的所选择的值来修改所述视频游戏应用程序的执行。
2.根据权利要求1所述的计算机实施的方法,其中,所述用户交互数据包括近期用户交互数据和历史用户交互数据,所述近期用户交互数据比阈值存在时间段更近,所述历史用户交互数据不如所述阈值存在时间段近。
3.根据权利要求1所述的计算机实施的方法,其中,所确定的难度水平还至少部分地基于与所述用户账号相关联的技能水平来确定。
4.根据权利要求1所述的计算机实施的方法,其中,所述难度轨迹指示所述视频游戏应用程序的多个不同部分的多个所确定的难度水平。
5.根据权利要求1所述的计算机实施的方法,其中,所述至少一个玩游戏参数的所述值为种子值,所述种子值识别用于在所述视频游戏应用程序内生成玩游戏等级的种子数据。
6.根据权利要求1所述的计算机实施的方法,其中,所述通过调整所述至少一个玩游戏参数至针对所述当前玩游戏会话的所述第一玩游戏等级的所选择的值来修改所述视频游戏应用程序的执行先于在所述当前玩游戏会话期间启动每个玩游戏等级而发生。
7.根据权利要求1所述的计算机实施的方法,还包括:
确定所述难度轨迹和所检测的与所述用户账号相关联的难度水平之间的关系;
基于所确定的关系生成一个或多个设计推荐;和
基于所述一个或多个设计推荐更新所述视频游戏应用程序。
8.一种系统,包括:
电子数据存储器,所述电子数据存储器被配置为存储用户账号数据结构,所述用户账号数据结构存储与视频游戏应用程序的一个或多个玩游戏会话相关联的用户交互数据;
硬件处理器,所述硬件处理器与所述电子数据存储器通信,所述硬件处理器被配置为执行具体计算机可执行指令以至少:
通过网络从用户计算系统接收玩游戏会话数据包,所述玩游戏会话数据包包括在所述用户计算系统上启动在第一玩游戏等级的视频游戏应用程序的当前玩游戏会话的指示;
从所述玩游戏会话数据包识别与所述用户计算系统上的所述视频游戏应用程序的所述当前玩游戏会话相关联的用户标识符,所述用户标识符与用户账号相关联;
至少部分地基于所述用户标识符访问物理数据存储器中的用户账号数据,其中所述物理数据存储器被配置为存储用户账号数据结构,所述用户账号数据结构存储与所述视频游戏应用程序的一个或多个玩游戏会话相关联的用户交互数据;
确定与所述用户账号相关联的流失率,其中所述流失率包括获胜流失率和失败流失率,所述获胜流失率指示用户在完成在所述第一玩游戏等级的成功尝试后会退出玩所述视频游戏应用程序的概率,所述失败流失率指示用户在所述第一玩游戏等级的失败尝试后会退出玩所述视频游戏应用程序的概率;
使用难度分析模型至少部分地基于对所述获胜流失率、所述失败流失率和所述用户账号数据的至少一部分的分析来确定与所述用户账号通过所述视频游戏应用程序的进展相关联的难度轨迹,其中通过所述视频游戏应用程序的进展由多个游戏进展状态限定,其中所述难度轨迹识别与所述用户账号的所述多个游戏进展状态中的每个游戏进展状态相关联的预测挑战等级;
至少部分地基于所述预测挑战等级、所述流失率和与所述当前玩游戏会话相关联的玩游戏会话数据确定所述视频游戏应用程序的所述当前玩游戏会话的所述第一玩游戏等级的难度水平;
至少部分地基于所确定的难度水平选择与所述视频游戏应用程序相关联的至少一个玩游戏参数的值,其中所述至少一个玩游戏参数包括当被调整时引起对所述视频游戏应用程序的状态的修改的变量;和
通过将所述至少一个玩游戏参数调整至针对所述当前玩游戏会话的所述第一玩游戏等级的所选择的值来修改所述视频游戏应用程序的执行。
9.根据权利要求8所述的系统,其中,所述用户交互数据包括近期用户交互数据和历史用户交互数据,所述近期用户交互数据比阈值存在时间段更近,所述历史用户交互数据不如所述阈值存在时间段近。
10.根据权利要求8所述的系统,其中,所确定的难度水平还至少部分地基于与所述用户账号相关联的技能水平来确定。
11.根据权利要求8所述的系统,其中,所述难度轨迹指示所述视频游戏应用程序的多个不同部分的多个所确定的难度水平。
12.根据权利要求8所述的系统,其中,所述至少一个玩游戏参数的所述值为种子值,所述种子值识别用于在所述视频游戏应用程序内生成玩游戏等级的种子数据。
13.根据权利要求8所述的系统,其中,所述通过将所述至少一个玩游戏参数调整至针对所述当前玩游戏会话的所述第一玩游戏等级的所选择的值来修改所述视频游戏应用程序的执行先于在所述当前玩游戏会话期间启动每个玩游戏等级而发生。
14.根据权利要求8所述的系统,其中,所述硬件处理器还被配置为:
确定所述难度轨迹和所检测的与所述用户账号相关联的难度水平之间的关系;
基于所确定的关系生成一个或多个设计推荐;和
基于所述一个或多个设计推荐更新所述视频游戏应用程序。
15.一种存储计算机可执行指令的非暂时性计算机可读存储介质,所述计算机可执行指令在由一个或多个计算设备执行时将所述一个或多个计算设备配置为执行操作,所述操作包括:
在配置有具体计算机可执行指令的一个或多个硬件计算设备的控制下,所述具体计算机可执行指令存储在电子硬件存储器中,
通过网络从用户计算系统接收玩游戏会话数据包,所述玩游戏会话数据包包括在所述用户计算系统上启动在第一玩游戏等级的视频游戏应用程序的当前玩游戏会话的指示;
从所述玩游戏会话数据包识别与所述用户计算系统上的所述视频游戏应用程序的所述当前玩游戏会话相关联的用户标识符,所述用户标识符与用户账号相关联;
至少部分地基于所述用户标识符访问物理数据存储器中的用户账号数据,其中所述物理数据存储器被配置为存储用户账号数据结构,所述用户账号数据结构存储与所述视频游戏应用程序的一个或多个玩游戏会话相关联的用户交互数据;
确定与所述用户账号相关联的流失率,其中所述流失率包括获胜流失率和失败流失率,所述获胜流失率指示用户在完成在所述第一玩游戏等级的成功尝试后会退出玩所述视频游戏应用程序的概率,所述失败流失率指示用户在所述第一玩游戏等级的失败尝试后会退出玩所述视频游戏应用程序的概率;
使用难度分析模型至少部分地基于对所述获胜流失率、所述失败流失率和所述用户账号数据的至少一部分的分析来确定与所述用户账号通过所述视频游戏应用程序的进展相关联的难度轨迹,其中通过所述视频游戏应用程序的进展由多个游戏进展状态限定,其中所述难度轨迹识别与所述用户账号的所述多个游戏进展状态中的每个游戏进展状态相关联的预测挑战等级;
至少部分地基于所述预测挑战等级、所述流失率和与所述当前玩游戏会话相关联的玩游戏会话数据确定所述视频游戏应用程序的所述当前玩游戏会话的所述第一玩游戏等级的难度水平;
至少部分地基于所确定的难度水平选择与所述视频游戏应用程序相关联的至少一个玩游戏参数的值,其中所述至少一个玩游戏参数包括当被调整时引起对所述视频游戏应用程序的状态的修改的变量;和
通过将所述至少一个玩游戏参数调整至针对所述当前玩游戏会话的所述第一玩游戏等级的所选择的值来修改所述视频游戏应用程序的执行。
16.根据权利要求15所述的非暂时性计算机可读存储介质,其中,所述用户交互数据包括近期用户交互数据和历史用户交互数据,所述近期用户交互数据比阈值存在时间段更近,所述历史用户交互数据不如所述阈值存在时间段近。
17.根据权利要求15所述的非暂时性计算机可读存储介质,其中,所确定的难度水平还至少部分地基于与所述用户账号相关联的技能水平来确定。
18.根据权利要求15所述的非暂时性计算机可读存储介质,其中,所述难度轨迹指示所述视频游戏应用程序的多个不同部分的多个所确定的难度水平。
19.根据权利要求15所述的非暂时性计算机可读存储介质,其中,所述至少一个玩游戏参数的所述值为种子值,所述种子值识别用于在所述视频游戏应用程序内生成玩游戏等级的种子数据。
20.根据权利要求15所述的非暂时性计算机可读存储介质,其中,所述通过将所述至少一个玩游戏参数调整至针对所述当前玩游戏会话的所述第一玩游戏等级的所选择的值来修改所述视频游戏应用程序的执行先于在所述当前玩游戏会话期间启动每个玩游戏等级而发生。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/445,784 US10357718B2 (en) | 2017-02-28 | 2017-02-28 | Realtime dynamic modification and optimization of gameplay parameters within a video game application |
US15/445,784 | 2017-02-28 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108499108A CN108499108A (zh) | 2018-09-07 |
CN108499108B true CN108499108B (zh) | 2021-12-24 |
Family
ID=63245552
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810167242.8A Active CN108499108B (zh) | 2017-02-28 | 2018-02-28 | 视频游戏应用程序内玩游戏参数的实时动态修改和优化 |
Country Status (3)
Country | Link |
---|---|
US (2) | US10357718B2 (zh) |
KR (1) | KR102060879B1 (zh) |
CN (1) | CN108499108B (zh) |
Families Citing this family (94)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9919217B2 (en) | 2016-03-08 | 2018-03-20 | Electronic Arts Inc. | Dynamic difficulty adjustment |
US20180053433A1 (en) * | 2016-08-19 | 2018-02-22 | Robert Dunn | System and method for providing an adaptive scenario-based user experience |
US10384133B1 (en) | 2016-12-30 | 2019-08-20 | Electronic Arts Inc. | Systems and methods for automatically measuring a video game difficulty |
US10357718B2 (en) | 2017-02-28 | 2019-07-23 | Electronic Arts Inc. | Realtime dynamic modification and optimization of gameplay parameters within a video game application |
US10343069B2 (en) * | 2017-04-11 | 2019-07-09 | Sony Interactive Entertainment LLC | Systems and methods for executing a training program based on player DNA |
WO2018231505A1 (en) * | 2017-06-15 | 2018-12-20 | Cognant Llc | System and method for controlling player success in a multiplayer online game |
CN111565809B (zh) * | 2017-10-11 | 2024-07-23 | 华纳兄弟娱乐公司 | 基于机器学习的灵活计算机游戏 |
US10572231B1 (en) * | 2018-01-05 | 2020-02-25 | Amazon Technologies, Inc. | Component grouping for application development |
JP6405479B1 (ja) * | 2018-02-19 | 2018-10-17 | 株式会社コナミデジタルエンタテインメント | ゲームシステム、ゲーム端末、及びプログラム |
GB2572168A (en) * | 2018-03-21 | 2019-09-25 | Sony Interactive Entertainment Inc | Activity search method and apparatus |
GB2572548A (en) * | 2018-03-28 | 2019-10-09 | Sony Interactive Entertainment Inc | Content generation system |
US10839215B2 (en) | 2018-05-21 | 2020-11-17 | Electronic Arts Inc. | Artificial intelligence for emulating human playstyles |
US10713543B1 (en) * | 2018-06-13 | 2020-07-14 | Electronic Arts Inc. | Enhanced training of machine learning systems based on automatically generated realistic gameplay information |
CN109395385B (zh) * | 2018-09-13 | 2021-05-25 | 深圳市腾讯信息技术有限公司 | 虚拟场景的配置方法和装置、存储介质、电子装置 |
KR102063813B1 (ko) * | 2018-10-05 | 2020-01-08 | 엔에이치엔 주식회사 | 스테이지형 턴제 게임 제공 장치 및 시스템 |
US11245776B2 (en) | 2018-10-22 | 2022-02-08 | Sony Interactive Entertainment LLC | Data model for uniform data platform |
WO2020086666A1 (en) | 2018-10-25 | 2020-04-30 | Sony Interactive Entertainment LLC | Cross-platform consumption of in-game objects |
CN109107162B (zh) * | 2018-11-01 | 2021-11-19 | 杭州勺子网络科技有限公司 | 游戏难度调节方法及装置 |
US10918946B2 (en) * | 2018-11-05 | 2021-02-16 | Sony Interactive Entertainment LLC | In-game information platform |
US10576380B1 (en) * | 2018-11-05 | 2020-03-03 | Sony Interactive Entertainment LLC | Artificial intelligence (AI) model training using cloud gaming network |
TWI696929B (zh) * | 2018-11-07 | 2020-06-21 | 遊戲橘子數位科技股份有限公司 | 遊戲行為的資料庫建立及其分析方法 |
CN109529351B (zh) * | 2018-11-19 | 2023-03-24 | 网易(杭州)网络有限公司 | 游戏中虚拟对象的行为能力控制方法、装置及存储介质 |
CN109364490A (zh) * | 2018-12-05 | 2019-02-22 | 网易(杭州)网络有限公司 | 卡牌游戏测试方法、装置及存储介质 |
CN109692479B (zh) * | 2018-12-11 | 2022-09-16 | 咪咕互动娱乐有限公司 | 一种游戏视频的生成方法、装置及计算机可读存储介质 |
CN109876454A (zh) * | 2019-01-14 | 2019-06-14 | 珠海金山网络游戏科技有限公司 | 一种游戏动态修正方法及系统 |
CN109858956B (zh) * | 2019-01-14 | 2023-12-12 | 珠海金山数字网络科技有限公司 | 一种基于大数据的游戏物品推送方法及系统 |
CN109966739B (zh) * | 2019-01-17 | 2022-11-11 | 珠海金山数字网络科技有限公司 | 一种优化游戏运行的方法及系统 |
CN109806584A (zh) * | 2019-01-24 | 2019-05-28 | 网易(杭州)网络有限公司 | 游戏场景生成方法及装置、电子设备、存储介质 |
KR102668095B1 (ko) * | 2019-01-31 | 2024-05-22 | 한국전자통신연구원 | 게이머 행동 예측 모델에 기반한 게임 운영 시나리오 생성 방법 및 시스템 |
WO2020172140A1 (en) | 2019-02-20 | 2020-08-27 | Formation, Inc. | Method and system for customizing end user gaming experience |
CN109847367A (zh) * | 2019-03-06 | 2019-06-07 | 网易(杭州)网络有限公司 | 一种游戏胜率的预测方法、模型生成方法和装置 |
US11065549B2 (en) * | 2019-03-15 | 2021-07-20 | Sony Interactive Entertainment Inc. | AI modeling for video game coaching and matchmaking |
US11331581B2 (en) * | 2019-03-19 | 2022-05-17 | modl.ai ApS | Experience based game development and methods for use therewith |
US10918941B2 (en) * | 2019-03-27 | 2021-02-16 | Electronic Arts Inc. | Predictive execution of distributed game engines |
US11276216B2 (en) | 2019-03-27 | 2022-03-15 | Electronic Arts Inc. | Virtual animal character generation from image or video data |
US10953334B2 (en) * | 2019-03-27 | 2021-03-23 | Electronic Arts Inc. | Virtual character generation from image or video data |
US10946281B2 (en) | 2019-03-29 | 2021-03-16 | Nvidia Corporation | Using playstyle patterns to generate virtual representations of game players |
KR102199466B1 (ko) * | 2019-04-16 | 2021-01-06 | 넷마블 주식회사 | 게임 환경 변경 방법 |
CN111841009A (zh) * | 2019-04-30 | 2020-10-30 | 北京达佳互联信息技术有限公司 | 控制游戏难度的方法、装置、电子设备及介质 |
CN110141868A (zh) * | 2019-05-27 | 2019-08-20 | 合肥常春藤移动科技有限公司 | 一种用于竞速类游戏应用的ai追逐方法 |
US11033824B2 (en) * | 2019-06-14 | 2021-06-15 | Roblox Corporation | Predictive data preloading |
US10940393B2 (en) | 2019-07-02 | 2021-03-09 | Electronic Arts Inc. | Customized models for imitating player gameplay in a video game |
US11308428B2 (en) * | 2019-07-09 | 2022-04-19 | International Business Machines Corporation | Machine learning-based resource customization to increase user satisfaction |
US11110353B2 (en) | 2019-07-10 | 2021-09-07 | Electronic Arts Inc. | Distributed training for machine learning of AI controlled virtual entities on video game clients |
US11068284B2 (en) | 2019-07-25 | 2021-07-20 | Huuuge Global Ltd. | System for managing user experience and method therefor |
CN110496387B (zh) * | 2019-08-23 | 2023-08-29 | Oppo(重庆)智能科技有限公司 | 游戏优化方法、装置、移动终端及存储介质 |
CN112439193B (zh) * | 2019-09-04 | 2024-02-23 | 网易(杭州)网络有限公司 | 一种游戏难度匹配方法及装置 |
US11144315B2 (en) * | 2019-09-06 | 2021-10-12 | Roblox Corporation | Determining quality of an electronic game based on developer engagement metrics |
US20210081498A1 (en) * | 2019-09-17 | 2021-03-18 | Disney Enterprises, Inc. | Artificial intelligence-based roleplaying experiences based on user-selected scenarios |
GB2590891A (en) * | 2019-10-24 | 2021-07-14 | Sony Interactive Entertainment Europe Ltd | Apparatus and method of user analysis and content selection |
CN110879730B (zh) * | 2019-11-14 | 2023-10-24 | 腾讯科技(深圳)有限公司 | 自动调整游戏配置的方法、装置、电子设备及存储介质 |
CN111035935A (zh) * | 2019-12-17 | 2020-04-21 | 詹万宇 | 一种基于用户行为的游戏辅助方法及系统 |
KR102330040B1 (ko) * | 2019-12-30 | 2021-11-23 | 동국대학교 산학협력단 | 게임 요소와 게임 컨텐츠 소모 시간과의 연관성 정량화를 통한 게임 난이도 조절 방법 |
CN111191136A (zh) * | 2019-12-30 | 2020-05-22 | 华为技术有限公司 | 一种信息推荐方法以及相关设备 |
CN111176758B (zh) * | 2019-12-31 | 2021-06-22 | 腾讯科技(深圳)有限公司 | 配置参数的推荐方法、装置、终端及存储介质 |
CN111249737B (zh) * | 2020-01-17 | 2021-07-06 | 腾讯科技(深圳)有限公司 | 一种游戏测试的方法、相关装置、设备及存储介质 |
KR102263438B1 (ko) * | 2020-02-06 | 2021-06-10 | 엔에이치엔 주식회사 | 딥러닝 기반의 게임 플레이 서버를 이용한 게임 난이도 예측 방법 및 그 장치 |
US11541317B2 (en) * | 2020-02-06 | 2023-01-03 | Sony Interactive Entertainment Inc. | Automated weapon selection for new players using AI |
CN111330269B (zh) * | 2020-02-26 | 2021-03-26 | 北京字节跳动网络技术有限公司 | 应用难度调整和策略确定方法、装置、系统、设备及介质 |
US11623154B2 (en) * | 2020-03-31 | 2023-04-11 | Sony Interactive Entertainment Inc. | Driving virtual influencers based on predicted gaming activity and spectator characteristics |
CN111450533B (zh) * | 2020-03-31 | 2022-06-24 | 腾讯科技(深圳)有限公司 | 虚拟场景中的虚拟对象控制方法、装置、终端及存储介质 |
US12051011B2 (en) | 2020-04-01 | 2024-07-30 | Sony Interactive Entertainment Inc. | Human performance capturing for artificial intelligence recommendations |
CN111617478B (zh) * | 2020-05-29 | 2023-03-03 | 腾讯科技(深圳)有限公司 | 游戏阵容强度的预测方法、装置、电子设备及存储介质 |
WO2021262733A1 (en) * | 2020-06-24 | 2021-12-30 | Insolent Games Inc. | System and method for executing and manipulating a storyline |
KR102421698B1 (ko) * | 2020-07-30 | 2022-07-15 | 한국과학기술원 | 원버튼 게임의 난이도 설계방법 및 장치 |
CN112221153B (zh) * | 2020-10-27 | 2024-08-20 | 北京字节跳动网络技术有限公司 | 一种游戏参数的获取方法、装置、终端设备和存储介质 |
CN112546632B (zh) * | 2020-12-09 | 2024-10-01 | 百果园技术(新加坡)有限公司 | 游戏地图参数调整方法、装置、设备和存储介质 |
KR102579332B1 (ko) * | 2020-12-16 | 2023-09-15 | 주식회사 투파이브듀 | 동적 학습 콘텐츠와 결합된 맞춤형 게임 서비스 제공 시스템 및 방법 |
KR102246617B1 (ko) * | 2021-03-16 | 2021-04-30 | 넷마블 주식회사 | 화면 분석 방법 |
EP4338408A1 (en) * | 2021-05-12 | 2024-03-20 | Skillz Platform Inc. | System and method for segmenting users of a client application |
US20220383156A1 (en) * | 2021-05-29 | 2022-12-01 | Intuit Inc. | Method and system for event prediction based on time-domain bootstrapped models |
CN113384900B (zh) * | 2021-07-06 | 2022-09-30 | 在线途游(北京)科技有限公司 | 一种场景控制方法及装置 |
KR102592559B1 (ko) * | 2021-08-11 | 2023-10-20 | 넷마블 주식회사 | 게임 내 허들(huddle)을 탐지하는 방법 |
WO2023041968A1 (en) * | 2021-09-16 | 2023-03-23 | Sensetime International Pte. Ltd. | Message processing method, apparatus and device, and storage medium |
AU2021240199A1 (en) * | 2021-09-16 | 2023-03-30 | Sensetime International Pte. Ltd. | Message processing method, apparatus and device, and storage medium |
US20230109792A1 (en) | 2021-10-13 | 2023-04-13 | Nlevel Software Llc | Software path prediction via machine learning |
KR102706331B1 (ko) * | 2021-12-15 | 2024-09-12 | 주식회사 딜리셔스게임즈 | 인공 지능 모델을 기반으로 게임 컨텐츠의 난이도를 관리하는 방법 및 장치 |
CN114225391B (zh) * | 2021-12-20 | 2022-12-13 | 广州博冠信息科技有限公司 | 通关游戏控制方法、装置、终端和存储介质 |
CN114247148B (zh) * | 2021-12-22 | 2023-08-15 | 广州银汉科技有限公司 | 智能分析开发平台 |
GB2614880A (en) * | 2022-01-19 | 2023-07-26 | Sony Interactive Entertainment Inc | Data processing |
CN114404996A (zh) * | 2022-01-26 | 2022-04-29 | 厦门雅基软件有限公司 | 资源数据处理方法、系统、编辑器、电子设备及存储介质 |
CN114832385A (zh) * | 2022-03-29 | 2022-08-02 | 山东赤子城网络技术有限公司 | 一种游戏动态调整方法和系统 |
US20230310995A1 (en) * | 2022-03-31 | 2023-10-05 | Advanced Micro Devices, Inc. | Detecting personal-space violations in artificial intelligence based non-player characters |
US20230381662A1 (en) * | 2022-05-31 | 2023-11-30 | Sony Interactive Entertainment LLC | Adaptive difficulty calibration for skills-based activities in virtual environments |
US11806630B1 (en) | 2022-05-31 | 2023-11-07 | Sony Interactive Entertainment LLC | Profile-based detection of unintended controller errors |
US20230385967A1 (en) * | 2022-05-31 | 2023-11-30 | Sony Interactive Entertainment LLC | Secure matchmaking, asset transfer, and usability reconfiguration platform |
CN115317919A (zh) * | 2022-06-20 | 2022-11-11 | 赤子城网络技术(北京)有限公司 | 基于玩家行为的游戏内容动态调整方法以及相关设备 |
GB2623106A (en) * | 2022-10-06 | 2024-04-10 | Sony Interactive Entertainment Inc | User accessibility system and method |
US20240139629A1 (en) * | 2022-10-31 | 2024-05-02 | Samsung Electronics Co., Ltd. | Effective multi-scale multi-granular targeting for game users |
GB2624176A (en) * | 2022-11-08 | 2024-05-15 | Sony Interactive Entertainment Inc | System and method of operational control |
CN115951786B (zh) * | 2023-03-14 | 2023-05-12 | 环球数科集团有限公司 | 一种利用aigc技术的多结局创意社交游戏的创作方法 |
CN116173513B (zh) * | 2023-04-24 | 2023-07-25 | 深圳市乐易网络股份有限公司 | 一种智能化游戏推送系统及方法 |
CN116650973A (zh) * | 2023-07-28 | 2023-08-29 | 深圳易帆互动科技有限公司 | 一种游戏内容动态调整方法、电子设备及存储介质 |
CN118121933B (zh) * | 2024-04-10 | 2024-08-23 | 宁波希木网络科技有限公司 | 一种用于互联网游戏的人机交互方法及系统 |
Family Cites Families (88)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5274801A (en) | 1988-04-29 | 1993-12-28 | International Business Machines Corp. | Artifical intelligence delivery system |
US5683082A (en) | 1992-08-04 | 1997-11-04 | Kabushiki Kaisha Ace Denken | Gaming system controlling termination of playing and degree of playing difficulty |
US6285380B1 (en) | 1994-08-02 | 2001-09-04 | New York University | Method and system for scripting interactive animated actors |
EP1526472A3 (en) | 1995-02-13 | 2006-07-26 | Intertrust Technologies Corp. | Systems and methods for secure transaction management and electronic rights protection |
US6106395A (en) | 1997-03-04 | 2000-08-22 | Intel Corporation | Adaptive gaming behavior based on player profiling |
US8540575B2 (en) | 2002-10-08 | 2013-09-24 | White Knuckle Gaming, Llc | Method and system for increased realism in video games |
US20040152512A1 (en) | 2003-02-05 | 2004-08-05 | Collodi David J. | Video game with customizable character appearance |
JP4057945B2 (ja) | 2003-04-25 | 2008-03-05 | 株式会社バンダイナムコゲームス | プログラム、情報記憶媒体及びゲーム装置 |
US20050130725A1 (en) | 2003-12-15 | 2005-06-16 | International Business Machines Corporation | Combined virtual and video game |
US7296007B1 (en) | 2004-07-06 | 2007-11-13 | Ailive, Inc. | Real time context learning by software agents |
KR100766545B1 (ko) | 2005-09-08 | 2007-10-11 | 엔에이치엔(주) | 게이머의 입력 패턴을 복사하여 게임을 수행하는 게임 ai제어 방법 및 게임 ai 제어 시스템 |
US9117329B2 (en) | 2005-09-12 | 2015-08-25 | Bally Gaming, Inc. | Gaming system for data management and collection and related methods |
US20070066403A1 (en) | 2005-09-20 | 2007-03-22 | Conkwright George C | Method for dynamically adjusting an interactive application such as a videogame based on continuing assessments of user capability |
US9250703B2 (en) | 2006-03-06 | 2016-02-02 | Sony Computer Entertainment Inc. | Interface with gaze detection and voice input |
US8142282B2 (en) | 2006-11-15 | 2012-03-27 | Microsoft Corporation | Console integrated downloadable game service |
US9522332B2 (en) | 2006-12-13 | 2016-12-20 | Voodoo Gaming Llc | Video games including real-life attributes and/or fantasy team settings |
US8128476B1 (en) | 2007-02-02 | 2012-03-06 | Popcap Games, Inc. | Electronic game, such as a computer game involving removing pegs |
US8907193B2 (en) | 2007-02-20 | 2014-12-09 | Ubisoft Entertainment | Instrument game system and method |
JP5427343B2 (ja) | 2007-04-20 | 2014-02-26 | 任天堂株式会社 | ゲームコントローラ |
US20080268943A1 (en) | 2007-04-26 | 2008-10-30 | Sony Computer Entertainment America Inc. | Method and apparatus for adjustment of game parameters based on measurement of user performance |
US20080268961A1 (en) | 2007-04-30 | 2008-10-30 | Michael Brook | Method of creating video in a virtual world and method of distributing and using same |
US8197313B2 (en) | 2007-10-29 | 2012-06-12 | Microsoft Corporation | User to user game referrals |
WO2009101153A2 (en) | 2008-02-13 | 2009-08-20 | Ubisoft Entertainment S.A. | Live-action image capture |
KR20090092007A (ko) | 2008-02-26 | 2009-08-31 | 한국전자통신연구원 | 게임 캐릭터의 사용자 조작 패턴 학습 방법 및 장치 |
US8443350B2 (en) | 2008-06-06 | 2013-05-14 | Cornell University | System and method for scaling simulations and games |
JP4439572B2 (ja) | 2008-07-11 | 2010-03-24 | 任天堂株式会社 | ディジタルデータ補正プログラムおよびディジタルデータ補正装置 |
US20100144444A1 (en) | 2008-12-04 | 2010-06-10 | Disney Enterprises, Inc. | Real-time, video game playtesting |
WO2010111705A2 (en) | 2009-03-27 | 2010-09-30 | Infomotion Sports Technologies, Inc. | Monitoring of physical training events |
US8803889B2 (en) | 2009-05-29 | 2014-08-12 | Microsoft Corporation | Systems and methods for applying animations or motions to a character |
US9159151B2 (en) | 2009-07-13 | 2015-10-13 | Microsoft Technology Licensing, Llc | Bringing a visual representation to life via learned input from the user |
US20110035280A1 (en) | 2009-08-04 | 2011-02-10 | Visa U.S.A. Inc. | Systems and Methods for Targeted Advertisement Delivery |
US20110295649A1 (en) | 2010-05-31 | 2011-12-01 | International Business Machines Corporation | Automatic churn prediction |
US20120083330A1 (en) | 2010-10-05 | 2012-04-05 | Zynga Game Network, Inc. | System and Method for Generating Achievement Objects Encapsulating Captured Event Playback |
US20120115580A1 (en) | 2010-11-05 | 2012-05-10 | Wms Gaming Inc. | Wagering game with player-directed pursuit of award outcomes |
JP5587800B2 (ja) | 2011-01-12 | 2014-09-10 | 株式会社スクウェア・エニックス | ネットワークゲームシステム、ゲーム装置、サーバ装置、及びプログラム |
JP5581232B2 (ja) | 2011-01-12 | 2014-08-27 | 株式会社スクウェア・エニックス | ネットワークゲームシステム、及びサーバ装置 |
JP6302614B2 (ja) | 2011-02-25 | 2018-03-28 | 任天堂株式会社 | 通信システム、情報処理装置、プログラム及び情報処理方法 |
US8977585B2 (en) | 2011-03-09 | 2015-03-10 | Sportsvision, Inc. | Simulation system |
US8267764B1 (en) | 2011-04-21 | 2012-09-18 | Wms Gaming Inc. | Wagering game having enhancements to queued outcomes |
JP5068873B2 (ja) * | 2011-05-13 | 2012-11-07 | 株式会社三共 | 遊技機 |
US9013489B2 (en) | 2011-06-06 | 2015-04-21 | Microsoft Technology Licensing, Llc | Generation of avatar reflecting player appearance |
KR101217361B1 (ko) | 2011-09-08 | 2012-12-31 | (주)네오위즈게임즈 | 스포츠 게임의 캐릭터 정보 관리 방법 및 장치 |
US8535163B2 (en) | 2012-01-10 | 2013-09-17 | Zynga Inc. | Low-friction synchronous interaction in multiplayer online game |
US10937239B2 (en) | 2012-02-23 | 2021-03-02 | Charles D. Huston | System and method for creating an environment and for sharing an event |
KR101495757B1 (ko) | 2012-04-20 | 2015-03-04 | (주)네오위즈게임즈 | 게임 자동 플레이 제어 방법 및 장치 |
US8814701B2 (en) | 2012-05-24 | 2014-08-26 | Sap Ag | Artificial intelligence avatar to engage players during game play |
CN104395929B (zh) | 2012-06-21 | 2017-10-03 | 微软技术许可有限责任公司 | 使用深度相机的化身构造 |
US9616329B2 (en) | 2012-06-28 | 2017-04-11 | Electronic Arts Inc. | Adaptive learning system for video game enhancement |
DE102013203667B4 (de) | 2013-03-04 | 2024-02-22 | Adidas Ag | Kabine zum Ausprobieren eines oder mehrerer Bekleidungsstücke |
US9056252B2 (en) | 2013-03-13 | 2015-06-16 | Sugarcane Development, Inc. | Highly interactive online multiplayer video games |
JP5869544B2 (ja) * | 2013-10-10 | 2016-02-24 | 株式会社 ディー・エヌ・エー | サーバー装置、及び、プログラム |
US20150142507A1 (en) | 2013-11-21 | 2015-05-21 | Ana Maria Tuta Osman | Recommendation system for specifying and achieving goals |
US9524582B2 (en) | 2014-01-28 | 2016-12-20 | Siemens Healthcare Gmbh | Method and system for constructing personalized avatars using a parameterized deformable mesh |
US10013710B2 (en) | 2014-04-17 | 2018-07-03 | Ebay Inc. | Fashion preference analysis |
GB2583848B (en) | 2014-05-21 | 2021-03-24 | Tangible Play Inc | Virtualization of tangible interface objects |
US10376792B2 (en) | 2014-07-03 | 2019-08-13 | Activision Publishing, Inc. | Group composition matchmaking system and method for multiplayer video games |
US9675889B2 (en) * | 2014-09-10 | 2017-06-13 | Zynga Inc. | Systems and methods for determining game level attributes based on player skill level prior to game play in the level |
KR101603681B1 (ko) | 2014-11-12 | 2016-03-16 | 세종대학교산학협력단 | 게임 플레이 데이터의 모방에 기반한 게임 캐릭터의 인공지능 생성 시스템 및 방법 |
US10169891B2 (en) | 2015-08-26 | 2019-01-01 | Electronic Arts Inc. | Producing three-dimensional representation based on images of a person |
US9734594B2 (en) | 2015-08-26 | 2017-08-15 | Electronics Arts Inc. | Producing three-dimensional representation based on images of an object |
US20170124753A1 (en) | 2015-11-03 | 2017-05-04 | Electronic Arts Inc. | Producing cut-out meshes for generating texture maps for three-dimensional surfaces |
US10105603B2 (en) | 2015-11-13 | 2018-10-23 | Zynga Inc. | Automated tuning of computer-implemented games |
CN105413170A (zh) * | 2015-11-26 | 2016-03-23 | 北京像素软件科技股份有限公司 | 一种游戏难度的动态调整方法及装置 |
US9919217B2 (en) | 2016-03-08 | 2018-03-20 | Electronic Arts Inc. | Dynamic difficulty adjustment |
CA3017518A1 (en) | 2016-03-18 | 2017-09-21 | President And Fellows Of Harvard College | Automatically classifying animal behavior |
US20170312634A1 (en) | 2016-04-28 | 2017-11-02 | Uraniom | System and method for personalized avatar generation, especially for computer games |
US10226708B2 (en) | 2016-06-30 | 2019-03-12 | Electronic Arts Inc. | Interactive gameplay playback system |
US10478730B1 (en) | 2016-08-25 | 2019-11-19 | Electronic Arts Inc. | Computer architecture for simulation of sporting events based on real-world data |
CN106422295B (zh) * | 2016-09-27 | 2020-03-17 | 珠海格力智能装备有限公司 | 对弈难度等级的处理方法及装置、机器人 |
CN106390456B (zh) | 2016-09-30 | 2018-09-18 | 腾讯科技(深圳)有限公司 | 游戏中角色行为的生成方法和装置 |
US10004984B2 (en) | 2016-10-31 | 2018-06-26 | Disney Enterprises, Inc. | Interactive in-room show and game system |
BR112019011452A2 (pt) | 2016-12-09 | 2019-10-15 | Unity IPR ApS | criar, transmitir e visualizar conteúdo 3d |
US20180161673A1 (en) | 2016-12-13 | 2018-06-14 | Microsoft Technology Licensing, Llc | Using telemetry data in a distributed computing environment to address complex problems |
US10384133B1 (en) | 2016-12-30 | 2019-08-20 | Electronic Arts Inc. | Systems and methods for automatically measuring a video game difficulty |
US10357718B2 (en) | 2017-02-28 | 2019-07-23 | Electronic Arts Inc. | Realtime dynamic modification and optimization of gameplay parameters within a video game application |
US11763143B2 (en) | 2017-04-19 | 2023-09-19 | AIBrain Corporation | Adding deep learning based AI control |
CN107376353B (zh) * | 2017-07-14 | 2018-09-04 | 腾讯科技(深圳)有限公司 | 关卡配置方法及装置 |
WO2019050916A1 (en) | 2017-09-11 | 2019-03-14 | Track160, Ltd. | TECHNIQUES FOR RENDERING THREE-DIMENSIONAL ANIMATED GRAPHICS FROM A VIDEO |
WO2019126665A1 (en) | 2017-12-22 | 2019-06-27 | Magic Leap, Inc. | Viewpoint dependent brick selection for fast volumetric reconstruction |
US10614310B2 (en) | 2018-03-22 | 2020-04-07 | Viisights Solutions Ltd. | Behavior recognition |
US10839215B2 (en) | 2018-05-21 | 2020-11-17 | Electronic Arts Inc. | Artificial intelligence for emulating human playstyles |
US10713543B1 (en) | 2018-06-13 | 2020-07-14 | Electronic Arts Inc. | Enhanced training of machine learning systems based on automatically generated realistic gameplay information |
US10569176B2 (en) | 2018-06-22 | 2020-02-25 | Yacht Club Games, LLC | Video game gameplay having nuanced character movements and dynamic movement indicators |
WO2020068878A1 (en) | 2018-09-24 | 2020-04-02 | Magic Leap, Inc. | Methods and systems for three-dimensional model sharing |
US11276216B2 (en) | 2019-03-27 | 2022-03-15 | Electronic Arts Inc. | Virtual animal character generation from image or video data |
US10953334B2 (en) | 2019-03-27 | 2021-03-23 | Electronic Arts Inc. | Virtual character generation from image or video data |
US10940393B2 (en) | 2019-07-02 | 2021-03-09 | Electronic Arts Inc. | Customized models for imitating player gameplay in a video game |
US11110353B2 (en) | 2019-07-10 | 2021-09-07 | Electronic Arts Inc. | Distributed training for machine learning of AI controlled virtual entities on video game clients |
-
2017
- 2017-02-28 US US15/445,784 patent/US10357718B2/en active Active
-
2018
- 2018-02-26 KR KR1020180023140A patent/KR102060879B1/ko active IP Right Grant
- 2018-02-28 CN CN201810167242.8A patent/CN108499108B/zh active Active
-
2019
- 2019-07-22 US US16/518,914 patent/US11413539B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
CN108499108A (zh) | 2018-09-07 |
US20200078685A1 (en) | 2020-03-12 |
US20180243656A1 (en) | 2018-08-30 |
US10357718B2 (en) | 2019-07-23 |
US11413539B2 (en) | 2022-08-16 |
KR20180099532A (ko) | 2018-09-05 |
KR102060879B1 (ko) | 2019-12-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108499108B (zh) | 视频游戏应用程序内玩游戏参数的实时动态修改和优化 | |
US11369880B2 (en) | Dynamic difficulty adjustment | |
US11141663B2 (en) | Multiplayer video game matchmaking optimization | |
KR102239062B1 (ko) | 감각 기반의 동적 게임 상태 구성 | |
US10751629B2 (en) | Multiplayer video game matchmaking system and methods | |
US11458399B2 (en) | Systems and methods for automatically measuring a video game difficulty | |
US12076638B2 (en) | Automated test multiplexing system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |