CN107158702A - 动态难度调整 - Google Patents

动态难度调整 Download PDF

Info

Publication number
CN107158702A
CN107158702A CN201710134652.8A CN201710134652A CN107158702A CN 107158702 A CN107158702 A CN 107158702A CN 201710134652 A CN201710134652 A CN 201710134652A CN 107158702 A CN107158702 A CN 107158702A
Authority
CN
China
Prior art keywords
user
game
video
data
partially
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.)
Granted
Application number
CN201710134652.8A
Other languages
English (en)
Other versions
CN107158702B (zh
Inventor
纳维德·阿加达耶
约翰·科伦
默罕默德·马尔万·马塔尔
穆赫辛·萨尔达里
薛苏
卡齐·阿蒂夫·乌兹·扎曼
肯尼思·艾伦·莫斯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Electronic Arts Inc
Original Assignee
Electronic Arts Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Electronic Arts Inc filed Critical Electronic Arts Inc
Publication of CN107158702A publication Critical patent/CN107158702A/zh
Application granted granted Critical
Publication of CN107158702B publication Critical patent/CN107158702B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/67Generating 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
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/56Computing the motion of game characters with respect to other game characters, game objects or elements of the game scene, e.g. for simulating the behaviour of a group of virtual soldiers or for path finding
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/58Controlling game characters or game objects based on the game progress by computing conditions of game characters, e.g. stamina, strength, motivation or energy level
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/53Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing
    • A63F2300/535Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing for monitoring, e.g. of user parameters, terminal parameters, application parameters, network parameters
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • Accounting & Taxation (AREA)
  • Marketing (AREA)
  • Human Resources & Organizations (AREA)
  • Game Theory and Decision Science (AREA)
  • Finance (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Software Systems (AREA)
  • General Business, Economics & Management (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Tourism & Hospitality (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Human Computer Interaction (AREA)
  • Medical Informatics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Algebra (AREA)
  • User Interface Of Digital Computer (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本文提出的系统的实施方案可以执行自动粒度的难度调整。在一些实施方案中,难度调整是用户不可察觉的。此外,本文公开的系统的实施方案可以查看关于一个或多个视频游戏的历史用户活动数据,以生成预测玩游戏的预期持续时间的指示的游戏保持预测模型。所述游戏保持预测模型可以应用于用户的活动数据,以确定用户玩游戏的预期持续时间的指示。基于所确定的玩游戏的预期持续时间,可以自动调整视频游戏的难度水平。

Description

动态难度调整
背景技术
软件开发者通常期望他们的软件尽可能长时间地吸引住用户。用户被软件吸引住的时间越长,软件越有可能成功。对于视频游戏,吸引住用户的时长与软件的成功之间的关系尤其如此。用户玩特定视频游戏的时间越长,用户喜欢该游戏的可能性越大,因此用户继续玩该游戏的可能性越大。
通常,太难或太容易的游戏将导致用户的兴致减少。随之,用户可能更少地玩该游戏。因此,游戏开发的挑战之一是设计具有最可能使用户保持被吸引住更长时间的难度水平的游戏。
发明内容
本公开内容的系统、方法和设备各自具有多个创新方面,这些方面没有一个单独诠释本文公开的所有期望属性。附图和下文描述中给出了本说明书描述的主题的一种或多种实施方式的细节。
在一些实施方案中,公开了一种计算机实施的方法,其可以由配置有具体的计算机可执行指令的交互计算系统实施,以至少确定正在用户计算设备上玩视频游戏的用户的用户标识符。此外,该方法可以包括至少部分地基于用户的用户标识符来访问与用户相关联的输入数据的集合(a set of input data,一组输入数据)。该输入数据的集合可以包括与用户和视频游戏的交互相关联的用户交互数据。另外,至少部分地基于该输入数据的集合,该方法可以包括确定用户的预测的流失率。所述预测的流失率可以对应于用户停止玩视频游戏的概率。此外,至少部分地基于所述用户的预测的流失率,该方法可以包括为与视频游戏相关联的操纵控件(knob,手柄控件)选择种子值。操纵控件可以包括在被调整时引起对视频游戏的状态的修改的变量。此外,该方法可以包括通过至少部分地基于种子值调整操纵控件来修改视频游戏的执行。
在一些实施方式中,修改视频游戏的执行包括调整视频游戏的难度。此外,用户交互数据可以包括比阈值时期(age)时间段更近的近期用户交互数据和没有阈值时期时间段近的历史用户交互数据。在一些情况下,近期用户交互数据比历史用户交互数据被更大地加权。此外,在一些情况下,阈值时期时间段对应于用户玩视频游戏的若干玩会话(session,回合)。
对于一些实施方案,确定预测的流失率包括将所述输入数据的集合提供给参数函数。可以至少部分地基于机器学习算法来生成参数函数。此外,该方法可以包括至少部分地基于参数函数的输出来确定预测的流失率。此外,生成参数函数可以包括至少访问输入数据的第二集合。输入数据的第二集合可以与玩视频游戏的多个用户相关联,并且可以包括指示所述多个用户过去玩游戏的流失率的数据。另外,该方法可以包括使用机器学习算法以至少部分地基于该输入数据的集合来确定参数函数。此外,该方法可以包括至少部分地基于以下中的一个或多个来将不利因素(penalty,不利或惩罚)与参数函数相关联:参数函数中包括的变量的数量、与参数函数相关联的数学算法的复杂度、或者与输出数据相比的参数函数输出的准确度。另外,该方法可以包括至少部分地基于与来自多个参数函数中的至少一些参数函数相关联的不利值来从多个参数函数中选择参数函数。
在一些实施方式中,至少部分地基于该输入数据的集合,该方法包括确定所述预测的流失率的原因。此外,至少部分地基于所述预测的流失率的原因,该方法可以包括选择与视频游戏相关联的操纵控件的种子值。此外,修改所述视频游戏的执行可以包括向用户计算设备提供种子值。
在一些实施方案中,公开了一种系统,该系统包括被配置为存储关于视频游戏的用户交互数据的电子数据存储装置。该系统还可以包括与电子数据存储装置通信的硬件处理器。该硬件处理器可以被配置为执行具体的计算机可执行指令,以至少确定正在玩视频游戏的用户的用户标识符,并且至少部分地基于用户的用户标识符来访问与用户相关联的输入数据的集合。该输入数据的集合可以包括与用户和视频游戏的交互相关联的用户交互数据。此外,至少部分地基于该输入数据的集合,该系统可以确定与用户停止玩视频游戏的概率相关联的保留概率。此外,至少部分地基于用户的保留概率,该系统可以确认对于视频游戏中的变量的调整值。该变量可以与视频游戏的难度水平相关联。另外,该系统可以至少部分地基于该调整值来修改视频游戏的执行。
对于一些实施方式,视频游戏的被修改的执行是用户不可察觉的。此外,在一些情况下,响应于用户玩视频游戏的玩会话期间出现的触发事件,至少访问所述输入数据的集合、确定所述保留概率、确认所述调整值并且修改视频游戏的执行被重复。
此外,确定保留概率可以包括将该输入数据的集合提供给预测模型。预测模型可以由机器学习系统生成。此外,该系统可以至少部分地基于预测模型的输出来确定保留概率。此外,在一些情况下,硬件处理器还被配置为通过执行具体的计算机可执行指令以至少访问输入数据的第二集合来生成预测模型。输入数据的第二集合可以与玩视频游戏的多个用户相关联,并且可以包括与多个用户的保留率相关联的数据。此外,该系统可以使用机器学习系统来至少部分地基于输入数据的集合和保留率来确定预测模型。在一些情况下,来自多个预测模型的至少一些预测模型与不利因素相关联。来自多个预测模型的至少一个预测模型可以与不同于至少另一个预测模型的不利因素相关联,并且硬件处理器还可以被配置为执行具体的计算机可执行指令,以至少:至少部分地基于与所述多个预测模型相关联的不利因素,从所述多个预测模型选择预测模型。
本文公开的一些实施方案涉及一种存储计算机可执行指令的非暂时性计算机可读存储介质,所述计算机可执行指令在由一个或多个计算设备执行时,配置所述一个或多个计算设备执行以下操作,所述操作包括访问与用户相关联的输入数据的集合。该输入数据的集合可以包括与用户和视频游戏的交互相关联的用户交互数据。此外,至少部分地基于该输入数据的集合,所述操作可以包括确定与用户停止玩视频游戏的概率相关联的保留概率。此外,至少部分地基于用户的保留概率,所述操作可以包括确认视频游戏的难度水平。此外,至少部分地基于视频游戏的难度水平,所述操作可以包括确认与难度水平相关联的一个或多个种子值。
在一些实施方案中,该操作还包括通过从一个或多个种子值中选择种子值以用于在视频游戏的执行期间使用来修改视频游戏的难度水平。此外,该操作还可以包括通过至少向预测模型提供输入数据的集合来确定保留概率。预测模型可以由机器学习系统生成。此外,该操作可以包括至少部分地基于预测模型的输出来确定保留概率。
虽然本文公开了一些实施方案和实施例,但发明主题超出具体公开的实施方案扩展至其他替代实施方案和/或使用,并扩展至其修改和等同物。
附图说明
贯穿附图中重复使用了一些附图标记,用以指示所引用的元件之间的对应关系。附图被提供用来例示本文所述主题的实施方案,但并不限制其范围。
图1A例示了可以实现动态难度调整系统的一个或多个实施方案的网络化计算环境的一个实施方案。
图1B例示了图1A的模型生成系统的一个实施方案。
图1C例示了图1A的保留分析系统的一个实施方案。
图2呈现了机器学习过程的一个实施方案的流程图。
图3呈现基于难度的种子选择过程的一个实施方案的流程图。
图4呈现了集群创建过程的一个实施方案的流程图。
图5呈现了用于用户的集群分配过程的一个实施方案的流程图。
图6呈现了对于一应用的难度设置过程的一个实施方案的流程图。
图7呈现了种子评估过程的一个实施方案的流程图。
图8例示了用户计算系统的一个实施方案。
图9例示了用于图8的用户计算系统的硬件配置的一个实施方案。
具体实施方式
介绍
通常期望视频游戏能吸引大量用户。然而,当涉及到玩视频游戏或者特定种类或类型的视频游戏时,不同的用户具有不同水平的技能和/或能力。此外,不同的用户对于将要玩有多少挑战性的视频游戏具有不同的期望。例如,一些用户喜欢相对具有挑战性的视频游戏。这些类型的用户可能往往更会被需要大量练习来掌握的视频游戏吸引住,并且通常不介意在成功之前多次重复视频游戏的相同部分。相反,一些用户喜欢相对容易的视频游戏。这些类型的用户可能往往更会被其中容易克服障碍并且很少需要用户重复一部分视频游戏才能成功的视频游戏吸引住。
上述挑战的一个解决方案是视频游戏开发者在特定视频游戏中包含多个静态难度水平。然而,开发者通常可以添加有限数量的难度水平,由于例如存储的限制、开发时间的限制、和为大量用户喜好预测大量难度水平的挑战。此外,这些难度水平通常是粗糙的,例如,因为所述难度水平通常是通过调整可调节元件(其在本文中有时可称为“操纵控件”)的限定集合而形成的。因此,由于特定用户可能会发现视频游戏的一个特定的方面有挑战性,但该视频游戏的另一方面不具有挑战性,选择一个静态难度水平对于该用户可能会导致整个视频游戏的不一致的挑战性。此外,静态难度水平的该问题由于以下事实而加剧,即,另一用户可能会发现视频游戏的不同方面具有挑战性或容易性。
可以在某些类型的竞技视频游戏(诸如赛车游戏)中使用的另一解决方案是基于用户和用户的竞争者之间的关系来改变用户或用户的竞争者的能力。例如,假设视频游戏是赛车游戏,当用户做得不好时可以使用户的汽车更快,并且当用户做得很好时可以使用户的汽车更慢。这种解决方案可能导致有时被称为“橡皮筋效应”的结果。这种解决方案通常能引起用户注意,因为用户的车辆将基于车辆相对于用户的竞争者的位置而表现得不一致。结果,用户可能离开,而不是吸引用户。此外,对于某些类型的不相对于具体竞争者来度量用户的视频游戏,该解决方案实施起来可能具有挑战性。
本文呈现的实施方案包括用于执行动态难度调整的系统和方法。此外,本文公开的实施方案使用与静态和/或现有难度调整过程相比不会被用户察觉或更难以察觉的过程来执行动态难度调整。在一些实施方案中,历史用户信息被馈送到机器学习系统中以生成预测玩游戏的预期持续时间的预测模型,诸如例如,预期的流失率、保留率、用户期望玩游戏的时间长度、或者相对于先前玩过该游戏的历史用户集合的用户的预期玩游戏时间的指示。在玩游戏之前或期间,将预测模型应用到关于用户的信息以预测用户玩游戏的预期的持续时间。基于该预期的持续时间,然后系统可以利用映射数据储存库(repository)来确定如何动态地调整游戏的难度,诸如例如,改变一个或多个操纵控件的值以使得游戏的部分不那么困难。
在一些实施方案中,本文公开的系统监测关于一个或多个视频游戏的用户活动,以确定关于游戏难度的用户偏好和用户关于玩视频游戏的技能水平。该信息可以至少部分地基于与用户的参与水平相关联的因素被确定。例如,玩视频游戏在平均时间长度以上并且在玩视频游戏时花钱的用户可以具有比在短时间内玩视频游戏的用户更高的参与度。作为另一示例,在短时间段内玩视频游戏但是玩平均数量以上的玩会话的用户可以被与高水平的参与度相关联,但是可以不同于之前示例的用户而被分类。
此外,在本文描述的一些实施方案中,可以把用户和具有类似偏好的其他用户分组成集群。可以基于用户关于在视频游戏中呈现的挑战或障碍的行为来对用户进行分组。用户的每个组或集群可以与一个或多个视频游戏的难度偏好或设置相关联。使用该信息,可以动态地调整视频游戏的一个或多个方面以向视频游戏的用户呈现最有可能吸引住用户或者比难度水平的静态集合更可能吸引住用户的特定难度水平。如上所述和本文进一步描述的,本文描述的附加的或替代的实施方案可以通过使用一个或多个参数函数或预测模型来确定用于调整视频游戏的难度的一个或多个种子或操纵控件值。在一些情况下,预测模型可以与聚类组合。在其他实施方案中,可以使用预测模型来代替聚类。应当理解的是,聚类是可以与本公开的实施方案一起使用的一种方法。然而,本公开不限于使用聚类,并且本文给出的一些实施方案可以省略聚类的用户。例如,本文公开的一些实施方案可以使用回归模型来拟合历史用户数据,而不使用聚类。在获得回归模型的初始形式之后,其可以被应用于另外的玩家以促进动态难度分析和/或调整。
此外,在本文描述的一些实施方案中,可以监测或者审查用户关于视频游戏的活动以确定用户关于视频游戏的行为。该监测可以基本上实时地发生,或者在用户已经完成了一个玩会话之后的某个时间段发生。玩会话可以是用户完成或未能完成视频游戏或视频游戏的一部分而结束的用户玩视频游戏的一个时间段和/或玩游戏的一种尝试。例如,一个玩会话可以开始于用户发起新的玩游戏的实例,并且结束于用户在该游戏中用完生命。作为另一示例,一个玩会话可以从用户发起视频游戏开始,并且在用户退出视频游戏时结束。
在一些情况下,监测用户关于视频游戏的行为可以使得能够确定用户的技能水平和期望的挑战等级。至少部分地基于该信息,可以从基于用户的关联用户集群确定的初始难度水平来调整视频游戏或部分视频游戏的难度。
有利地,在一些实施方案中,通过将在玩视频游戏方面具有相似特征的用户分组,并且通过基于在视频游戏方面的个人的用户动作调整难度水平,与不监测用户行为以确定难度水平的系统相比,可以进行更细粒度的难度水平管理。此外,尽管本公开文本集中于调整修改由视频游戏呈现的难度水平或挑战的视频游戏的设置,但本公开文本不限于此。本公开文本的实施方案可以用于修改视频游戏的游戏状态的各个方面,这可以影响或者可以不影响视频游戏的难度水平。例如,在武器随机掉落的游戏中,如果确定用户喜欢使用特定的游戏中武器玩游戏,则可以调整游戏以更频繁地向用户呈现优选的武器。在一些情况下,诸如当所有武器均匀平衡时,掉落的武器的类型可能不影响视频游戏的难度,因此,这样的调整可以基于用户玩的风格或偏好而不是难度水平偏好。可被修改的视频游戏的特征(其可被用户察觉或不可被用户察觉)的一些其它非限制性实施例可以包括向游戏内人物提供额外速度、提高游戏中人物的投掷精度、改进游戏中的人物可以跳跃的距离或高度、调整控制的响应性等。在一些情况下,该调整可以附加地或替代地包括降低游戏中人物的能力,而不是提高游戏中人物的能力。例如,可以使游戏中人物更快,但是具有更低的射击精度。
此外,本文给出的系统的实施方案可以至少部分地基于用户的技能水平以及用户是否成功地完成视频游戏内的挑战来基本上实时地调整视频游戏的难度水平。然而,本公开文本不限于此。例如,可以至少部分地基于用户偏好来调整视频游戏的难度水平,所述用户偏好可以对应或者可以不对应于用户能力。例如,一些用户可能更喜欢在最困难的设置下玩视频游戏,而不管他们是否成功完成视频游戏或视频游戏中的目标。通过监测关于玩视频游戏的用户动作,可以调整视频游戏的难度水平以匹配特定用户的偏好和/或技能水平。
为了简化讨论,主要关于视频游戏方面描述了本公开文本。然而,本公开文本并不限于此,并可以应用于其他类型的应用。例如,本文公开的实施方案可以应用于教育应用或其他可以基于与应用的用户交互历史来修改的应用。此外,本公开文本在视频游戏的类型方面是没有限制的。这里使用的术语“视频游戏”包括所有类型的游戏,包括但不限于基于网络的游戏、控制台游戏、个人计算机(PC)游戏、计算机游戏、用于移动设备(例如,智能手机、便携式控制台、游戏机或可穿戴设备,诸如虚拟现实眼镜、增强现实眼镜或智能手表)的游戏、或虚拟现实游戏以及其他类型的游戏。
示例网络化计算环境
图1A示出了可以实现动态难度调整系统的一个或多个实施方案的网络化计算环境100的一个实施方案。网络化计算环境100包括可以经由网络104与交互计算系统130通信的用户计算系统110。此外,网络化计算环境100可以包括多个附加的用户计算系统102。至少一些用户计算系统102可以被配置成与用户计算系统110相同或相似。
用户计算系统110可以包括视频游戏112或作为视频游戏112的主机。在一些情况下,视频游戏112可以完全在用户计算系统110上执行。在其他情况下,视频游戏112可以至少部分地在用户计算系统110执行并且至少部分地在交互计算系统130上执行。在一些情况下,视频游戏112可以完全地在交互计算系统130上执行,但是用户可以经由用户计算系统110与视频游戏112交互。例如,游戏可以是大型多玩家在线角色扮演游戏(MMORPG),该游戏包括由用户计算系统110执行的客户端部分和由一个或多个应用主机系统(未示出)执行的服务器部分,所述应用主机系统可以被包括作为交互计算系统130的一部分。作为另一个示例,视频游戏112可以是在用户计算系统110上玩的冒险游戏,而不与交互计算系统130交互。
视频游戏112可以包括修改或者影响视频游戏112状态的多个操纵控件114。通常,操纵控件114是影响视频游戏112的执行或者操作的变量。在一些情况下,操纵控件114是直接修改视频游戏112的执行的状态变量。在其他情况下,操纵控件114是可以改变视频游戏112中出现的概率或者视频游戏112中的随机(或伪随机)配置或事件的种子或种子变量。例如,一个种子可以对应于视频游戏112中的水平布局的生成并且影响该水平布局的生成。作为另一个示例,一个种子可以对应于当用户玩视频游戏112时物品下落的发生次数或下落物品类型,并且影响物品下落的发生次数或下落物品类型。在一些情况下,种子值是初始化或影响随机或伪随机数生成器的值。在一些这样的情况下,基于种子值生成的随机数可以被视频游戏112的一个或多个功能利用以影响视频游戏112的操作。在一些情况下,种子变量可以被称为操作杆(lever),并且种子变量是各种类型的操纵控件的非限制性示例。应当理解的是,操纵控件114(有时被称为操作杆)不限于种子,而是可以包括可以修改视频游戏112的执行的任何类型的变量。系统可以通过能够改变视频游戏112并且可以进行流失率的操纵控件水平分析调整任何类型的操纵控件或操作杆来修改视频游戏的执行。系统不限于基于种子值调整操纵控件或操作杆。
一般来说,操纵控件114是与视频游戏112的难度水平相关的变量。应当理解的是,操纵控件114通常包括修改视频游戏112操作的变量的子集,并且视频游戏112可以包括不涉及视频游戏112的难度水平的设置和/或不可用于修改的其他变量。此外,操纵控件114可以包括以用户不能感知或者难以被用户感知的方式修改视频游戏112的变量。在一些情况下,视频游戏112的修改是否可被用户感知可以取决于具体视频游戏。例如,假设一个操纵控件114与视频游戏112中的敌人具有的生命量相关。在一些情况下,修改分配给操纵控件114的值可以被用户察觉,因为,例如,敌人的健康被数字地呈现给用户。在这种情况下,敌人的健康可以在视频游戏112的难度水平保持不变,但是视频游戏112的难度水平可以经由不同的操纵控件114来修改。然而,在一些情况下,修改敌人的健康可能不被用户察觉到,因为,例如,未将敌人的健康呈现给用户,并且击败敌人所需的命中量在一个范围内变化,使得用户难以确定从和敌人的一次遭遇到相比的与敌人的另一次遭遇已经修改了敌人的健康(例如,从与视频游戏112的一次玩通关,到相比的视频游戏112的另一次玩通关)。
在一些情况下,视频游戏112可以包括用户交互历史储存库116。用户交互历史储存库116可以存储与用户和视频游戏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可以具有不同的本地计算资源,诸如,中央处理单元和架构、内存、大容量存储器、图形处理单元、通信网络可用性和带宽。此外,用户计算系统110可以包括任何类型的计算系统。例如,用户计算系统110可以包括任何类型的计算设备,诸如,台式电脑、笔记本电脑、视频游戏平台、电视机机顶盒、电视(例如,网络电视)、网络启用自助服务终端、汽车控制台设备、计算机化器具、穿戴式设备(例如,具有计算功能的智能手表和眼镜)和无线移动设备(例如,智能电话、PDA、平板电脑等),仅举几例。在一些实施方案中,用户计算系统110可以包括下文关于图8和图9描述的实施方案的一种或多种。
如前所述,可能期望保持或增加用户参与视频游戏112的水平。用于维持或增加用户参与视频游戏112的水平的一个解决方案包括至少部分地基于用户的技能和用户在玩视频游戏112时所期望的挑战等级来设置或者调整视频游戏112的难度水平。交互计算系统130可以确定视频游戏112对于特定用户的难度水平,并且可以基于该确定修改视频游戏112的难度。如下面将更详细描述的,难度水平的这种确定可以至少部分地基于关于视频游戏112和/或用户可访问的其他视频游戏的用户交互信息来做出。
交互计算系统130可以包括多个系统或子系统,用于帮助确定视频游戏112对于特定用户的难度水平以及基于该确定对难度水平的修改。这些系统或子系统可以包括难度配置系统132、用户聚类系统134、种子评估系统136、用户数据储存库138、保留分析系统140、模型生成系统146、和映射数据储存库144。这些系统的每一个可以用硬件、软件或者硬件和软件的组合来实施。此外,这些系统中的每一个可以在包括计算机硬件的单个计算系统中实施,或在一个或多个分立的计算系统或分布式计算系统中实施。此外,尽管这些系统在图1A中示出为在交互计算系统130上存储或执行,但是应当认识到,在一些实施方案中,这些系统的部分或全部可以在用户计算系统110上存储和执行。
在一些实施方案中,当用户计算系统110经由网络104与交互计算系统130连接或通信时,交互计算系统130可以执行本文所述的方法。然而,在用户计算系统110和交互计算系统130不通信的一些情况下,用户计算系统110可以使用可存储在用户交互历史储存库116中的用户近期玩的游戏来执行本文描述的一些方法。
难度配置系统132设置或调整视频游戏112的难度水平。在一些情况下,难度配置系统132可以通过提供或调整一个或多个操纵控件114的值来设置或调整视频游戏112的难度水平114,然后将一个或多个操纵控件114的值馈送或提供给视频游戏112。在一些情况下,每当进行难度水平的设置或调整时,难度配置系统132设置或调整每个可用的操纵控件114。在另一些情况下,在设置或调整视频游戏112的难度水平时,难度配置系统132可以比每个可用操纵控件114设置或调节的次数少。
在一些情况下,难度配置系统130可以在没有约束的情况下修改视频游戏112的一部分的难度。然而,在一些其他情况下,难度配置系统132可以在约束集合内修改视频游戏112的一部分的难度,该约束集合可以通过开发者、规则集合被指定,或者是与视频游戏112的其他部分相关的。例如,在一些情况下,难度配置系统132可以将视频游戏112的特定部分的难度水平降低到不超过由视频游戏112的正在进行部分指定的难度阈值。因此,在一些情况下,视频游戏112的该特定部分的难度水平的降低将不会导致视频游戏112的该特定部分变得比正在进行部分112更容易。可以在一些情况,例如在比赛期间完全关闭难度调整。
模型生成系统146可以使用一个或多个机器学习算法生成一个或多个预测模型或参数函数。这些预测模型中的一个或多个可以用于基于输入集合确定预期的值或事件。例如,预测模型可以用于基于至预测模型的一个或多个输入——诸如例如用户的历史用户交互信息——确定用户将停止玩视频游戏112的预期流失率或概率。再如,预测模型可以用于基于至预测模型的一个或多个输入确定用户在购买用于视频游戏的游戏内物品所花费的预期金额。在一些情况下,可以将预测模型称为预测模型是因为例如输出可能是对动作或事件的预测或者与动作或事件的预测相关,诸如对用户继续玩视频游戏112的预测。模型生成系统146可以使用多个不同类型的算法。例如,本文的一些实施方案可以使用逻辑回归算法。然而,其他算法也是可以的,诸如线性回归模型、离散选择算法或广义线性算法。
机器学习算法可以被配置为基于模型生成系统146接收的新输入随时间适应性地开发和更新模型。例如,可以在新的用户信息可用时定期重新生成模型,以在用户信息随时间演变时帮助使模型中的预测更准确。本文将更详细地描述模型生成系统146。生成模型后,可以将模型提供至保留分析系统140。
可以用于生成和更新参数函数或预测模型的机器学习算法的一些非限制性示例可以包括监督式和非监督式机器学习算法,包括回归算法(诸如,例如普通最小二乘回归)、基于实例的算法(诸如,例如学习矢量量化)、决策树算法(诸如,例如分类树和回归树)、贝叶斯算法(诸如,例如朴素贝叶斯)、聚类算法(诸如,例如k均值聚类)、关联规则学习算法(诸如,例如Apriori算法)、人工神经网络算法(诸如,例如感知机)、深度学习算法(诸如,例如深度玻尔兹曼机)、降维算法(诸如,例如主成分分析)、集成算法(诸如,例如堆栈泛化)和/或其他机器学习算法。
保留分析系统140可以包括用于基于用户的用户交互数据到模型生成系统140生成的预测模型的应用来确定用户的预测流失率或保留率的一个或多个系统。在一些情况下,难度配置系统132可以使用由保留分析系统140确定的预测保留率来确定对视频游戏112的难度的调整。在一些实施方案中,使用映射数据储存库144中的数据来确定对难度的调整,以确定要改变的游戏的哪些特征以及如何改变该特征。
映射数据储存库144可以包括预测模型的输出和视频游戏112的难度水平之间的一个或多个映射,例如,难度配置系统132可以用该映射来确定如何修改视频游戏112以调整视频游戏112的难度。例如,如果用户的预测流失水平是“高”,则映射数据储存库144可以包括“高”和数据之间的映射,以将游戏调整到“容易”,使得与游戏相关联的一个或多个操纵控件或种子被设置为使游戏更容易玩的值。作为另一实施例,如果用户的预测的流失水平是65%,则映射数据储存库144可以包括“60-70%”之间的映射,以将与游戏相关联的一个或多个操纵控件或种子的具体子集调整到使得游戏不那么难玩但不是最容易玩的值的集合。替换地或附加地,映射可以在参数函数的输出和可用于修改视频游戏112的难度的一个或多个操纵控件或种子的一个或多个值之间。
此外,下面将参考保留分析系统140更详细地描述参数函数的生成和应用及其在调整视频游戏112的难度水平中的使用。在一些实施方案中,难度配置系统132可以是模型生成系统146或可以包括模型生成系统146。此外,在一些情况下,难度配置系统132可以是保持分析系统140或可以包括保持分析系统140。如上所述,在本文中可以使用的机器学习算法的一个非限制性实施例是聚类算法。用户聚类系统134可以有助于聚类算法的执行。用户聚类系统134至少部分地基于关于视频游戏112或由用户访问的其他视频游戏的每个用户的技能水平将用户的集合分组或分开成为组。可替换地或附加地,用户聚类系统134可基于与一个或多个用户相关联的一个或多个标准来对用户进行分组或聚类,这些标准影响用户对视频游戏112或对用户访问的其他视频游戏的参与水平。此外,用户聚类系统134可以确认或确定与由用户聚类系统134确认或生成的每个用户聚类相关联的难度偏好的集合。
种子评估系统136(其还可被称为操作杆评估系统)响应于种子值来评估由视频游戏112提供的难度或挑战。例如,种子评估系统136可以基于当使用特定种子值时一组用户玩视频游戏112玩得多好,确定响应于视频游戏112中的特定种子值而生成的视频游戏(诸如地牢)的特定水平或部分有多少挑战性。有利地,在一些实施方案中,通过评估由特定种子值提供的挑战,可以通过将种子值添加或移除到对于特定难度水平的可用种子值的集合来改进视频游戏112的难度水平。例如,如果确定种子值导致用户以80%的比率失败,则该种子值可以与导致用户以20%的比率失败的另一个种子值相比的更难的难度水平相关联。
用户数据储存库138可以存储与一个或多个用户与视频游戏112和/或一个或多个其他视频游戏的交互相关联的用户交互信息。该用户交互信息可以在视频游戏112的一个或多个玩会话上获得。此外,用户数据储存库138可以存储与由用户聚类系统134生成的一个或多个用户集群相关联的用户集群信息。在一些情况下,存储在用户数据储存库128中的数据中的至少一些可以存储在用户计算系统110的储存库处。这里描述的储存库中的每一个可以包括非易失性存储器或易失性和非易失性存储器的组合。
网络104可以包括任何类型的通信网络。例如,网络104可以包括广域网(WAN)、局域网(LAN)、蜂窝网络、自组织网(ad hoc network)、卫星网络、有线网络、无线网络等中的一个或多个。此外,在一些情况下,网络104可以包括互联网。
示例模型生成系统
图1B示出了图1A的模型生成系统146的一个实施方案。模型生成系统146可以用于基于多个用户的历史数据152确定一个或多个预测模型160。通常,虽然不一定,历史数据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过滤和分为多个数据类型或分类。此外,在一些情况下,基于数据与如下相关性相关联,即不满足由模型生成系统146确定的阈值相关性,可以将历史数据152中的一些从历史数据152中过滤掉或移除。
可选地,预测模型160中的一个或多个可以与不利因素166相关联。这些不利因素166可以用于基于用于得出不利因素的一个或多个因素帮助生成或选择特定预测模型160。例如,特定预测模型160中包括的参数的数学复杂性或数量可以用于生成该特定预测模型160的不利因素,该数学复杂性或数量可能影响模型的生成和/或选择特定预测模型160的选择算法或选择几率。
在已经生成预测模型160之后,可以在保持分析系统140和/或难度配置系统132的运行期间使用模型来调整视频游戏112的难度。在一些情况下,该难度的调整可以是动态的,并且可以在用户与视频游戏112的交互期间发生。此外,在一些情况下,难度调整可以实时地发生或接近实时地发生。
示例保留分析系统
图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以确定用户保留率或用户的流失率的任何其他数据。在一些实施方案中,可以在提供给保留分析系统140之前过滤输入数据172。
在一些实施方案中,对于保留分析系统140可以存在单个预测模型160。然而,如上所述,保留分析系统140可以包括多个预测模型160。保留分析系统140可以基于输入数据172和/或与输入数据172相关联的额外标识符确定使用哪个检测模型,诸如模型160A-N中的哪一个。另外,所选择的预测模型160可以基于提供作为输入数据172的具体数据被选择。作为输入数据172的一部分的特定类型的数据的可用性可以影响对预测模型160的选择。例如,将人口统计数据(例如,年龄、性别、第一语言)包括作为输入数据的一部分可能造成使用预测模型160A。然而,如果特定用户的人口统计数据不可用,则可以替代使用预测模型160B。
如上所述,预测模型160中的一个或多个可能已经用不利因素166生成或与不利因素166相关联。不利因素可以用于影响模型的生成或保留分析系统140使用的预测模型的选择。
输出数据174可以是与用户停止玩视频游戏112的预测相关联的保留率或流失率。例如,在一些实施方案中,保留率可以在0至100之间,指示与包括作为输入数据172的类似或相同数据相关联的、将在阈值时间段内停止玩视频游戏112的用户的预测百分比。在一些情况下,输出数据174还可以确认保留率的原因。例如,保留分析系统140可以指示特定用户90%的保留率是至少部分地基于在玩视频游戏112时花费的金额。然而,保留分析系统140可以指示另一用户90%的保留率是至少部分地基于该用户所在的地理区域的零度以下的温度。再如,保留分析系统140可以指示用户20%的保留率可能至少部分地基于25%之下的获胜比率。
预测模型160A、160B、160N一般可以分别包括一个或多个参数162A、162B、162N的集合(可以共同称为“参数162”)。可以使用一个或多个数学函数将参数162的每个集合(诸如,参数162A)组合在一起,以获得参数函数。此外,可以通过加权值164A、164B、164N(可以共同称为“加权值164”)为参数162A、162B、162N中的一个或多个具体参数加权。在一些情况下,可以通过将参数集合(诸如,参数162A)与加权值164的相应集合(诸如,加权值164A)组合在一起来获得参数函数。可选地,预测模型160A、160B、160N中的一个或多个可以分别与不利因素166A、166B、166N(可以共同称为“不利因素166”)相关联。
示例机器学习过程
图2示出了机器学习过程200的一个实施方案的流程图。可以由可以生成一个或多个参数函数或包括一个或多个参数的预测模型的任何系统来实施过程200。在一些情况下,过程200用作基于历史数据或其他已知数据开发一个或多个参数函数或预测模型的训练过程。可以由例如除了别的以外的交互计算系统130、难度配置系统132、用户聚类系统134、保留分析系统140、模型生成系统146或用户计算系统110实施整个或部分过程200。虽然任何数量的系统均可以整体地或部分地实施所述过程200,但为了简化讨论,将参考特定系统描述过程200。此外,应理解的是,可以随时间重复更新或执行所述过程200。例如,可以每月重复一次所述过程200,并且添加或发布新视频游戏,或者添加可进行分析或玩视频游戏112的域值数量的新用户。然而,可以更频繁或更不频繁地进行过程200。
过程200在框202处开始,其中,模型生成系统146接收包括视频游戏112的多个用户的用户交互数据的历史数据152。该历史数据152可以用作模型生成系统146的训练数据并且可以包括用户人口统计资料或特征,诸如,年龄、地理位置、性别或社会经济阶级。替代地或另外地,历史数据152可以包括与下述相关的信息:一个或多个用户的玩法风格;玩视频游戏112所花费的金额;用户关于视频游戏112的成功或失败信息(例如,用户获胜比率);玩视频游戏112的游戏频率;使用特定可选游戏元素(例如,可用加持、跳级、游戏内提示、能力提升等)的频率;购买用于视频游戏112的游戏内物品所花费的真币的数量(例如,美元或欧元)等。此外,在一些情况下,历史数据152可以包括与视频游戏112相关的数据,诸如由玩视频游戏112的用户使用的一个或多个种子值。可以作为历史数据152的一部分接收的与视频游戏112相关的数据的附加实施例可以包括视频游戏112的一个或多个操纵控件或状态变量的设置、用户使用的视频游戏112的一个或多个难度等级的确认、视频游戏112的类型等。
在框204处,模型生成系统146接收指示对于与所述历史数据对应的多个用户的期望预测的控制数据156。该控制数据156可以指示模型生成系统146确定模型的一个或多个特性或特征。替代地或另外地,控制数据156可以包括与接收的历史数据152相关联的特性或特征的值。例如,控制数据156可以确认流失率或保留率,作为模型生成系统146待要生成的模型待要预测的期望特性。流失率或保留率可以对应于停止玩视频游戏112的与历史数据152相关联的用户的百分比。此外,控制数据156可以确认与历史数据相关联的保留率。例如,控制数据156可以指示其数据包括在历史数据152中的用户中的某些用户的保留率为60%。在一些实施方案中,控制数据156可以包括模型生成系统146待要生成的模型待要预测的多个特征或特性。例如,控制数据156可以确认保留率和保留率的原因(诸如,在框202处,视频游戏112的难度对于其数据被提供作为历史数据152的一部分的用户来说太低或太高),或者其数据被提供为历史数据152的用户的保留率和花费的平均金额。
在框206处,模型生成系统146基于历史数据152和控制数据156生成一个或多个预测模型160。预测模型160可以包括一个或多个变量或参数162,可以使用数学算法或模型生成规则集合170将这些变量或参数组合在一起,以基于历史数据152以及在一些情况下也基于控制数据156生成预测模型160。此外,在一些实施方案中,框206可以包括应用一个或多个反馈数据154。例如,如果生成预测模型160作为监督性机器学习过程的一部分,则用户(例如,管理员)可以在生成预测模型160时向模型生成系统146提供一个或多个输入,和/或用于精炼预测模型160生成过程。例如,用户可以意识到特定地区或地理区域出现断电。在这种情况下,用户可以提供反馈数据154,以减少历史数据152中可能对应于在断电期间受影响地理地区的用户的那部分的加权值。此外,在一些情况下,可以使用例如加权值164为变量或参数中的一个或多个加权。变量的加权值的值可以至少部分地基于该变量对于生成满足所述控制数据156和/或历史数据152、或者在阈值差异范围满足所述控制数据156和/或历史数据152的预测模型160所具有的影响。在一些情况下,可以使用变量和加权值的组合生成预测模型160。
可选地,在框208处,模型生成系统146将不利因素应用至在框206处生成的一个或多个预测模型160中的至少一些、或者将不利因素166与在框206处生成的一个或多个预测模型160中的至少一些关联起来。与该一个或多个预测模型160中的每个相关联的不利因素可能不同。此外,预测模型160中每个的不利因素可以至少部分地基于预测模型160的模型类型和/或用于将预测模型160的参数162与参数函数中包括的参数数量组合在一起的数学算法。例如,当生成预测模型160时,可以应用反对非常大量变量或更大量处理能力的不利因素,以应用模型。再如,使用比另一预测模型更多参数或变量的预测模型160可以与比使用更少变量的预测模型更大的不利因素166相关联。又如,使用要求比另一预测模型更大的处理能力进行计算的模型类型或数学算法的预测模型可以与比使用要求更少量的处理能力来计算的模型类型或数学算法的预测模型更大的不利因素相关联。
框210处的模型生成系统146至少部分地基于预测模型160的准确度和任何相关联的不利因素选择预测模型160。在一些实施方案中,模型生成系统146选择与比另一预测模型160更低的不利因素相关联的预测模型160。然而,在一些实施方案中,如果例如预测模型160的输出是比与更低不利因素相关联的预测模型更准确的阈值度,则模型生成系统146可以选择与更高不利因素相关联的预测模型。在一些实施方案中,框210可以是可选的或省略的。例如,在一些情况下,预测模型160可以不与不利因素相关联。在一些这种情况下,可以基于预测模型生成的输出的准确度从多个预测模型中选择预测模型。
示例的基于难度的种子选择过程
图3呈现了基于难度的种子选择过程300的一个实施方案的流程图。过程300可以由任何系统实施,该系统可以至少部分地基于预测函数或参数函数的输出来选择用于调整视频游戏的难度的种子值。例如,过程300全部或部分可以通过例如除了别的以外的交互计算系统130、难度配置系统132、用户聚类系统134、模型生成系统146、保留分析系统140或用户计算系统110等实施。尽管任何数量的系统可以整体地或部分地实现所述过程300,为了简化讨论,将关于特定系统来描述过程300。此外,应当理解的是,过程300可以随时间被重复地更新或执行。例如,对于视频游戏112的每个玩会话、对于视频游戏112的每轮、每周、每月、对于每个阈值数量的玩会话、对于用户失去或者不能完成目标的每个阈值数量的次数、每次赢比率下降到阈值水平以下等时,可以重复过程300。然而,过程300可以更频繁或不那么频繁地执行。
过程300在框302处开始,在该框302处保留分析系统140接收输入数据的集合(诸如,输入数据172),包括视频游戏112的用户的用户交互数据。该输入数据172通常是用户专用数据,但也不一定。此外,该组输入数据172可以包括用户的历史用户交互数据和近期用户交互数据二者。历史用户交互数据可以包括非当前玩会话中的用户交互数据和/或满足阈值时间或比特定阈值时间段更长的用户交互数据。例如,历史用户交互数据可以包括至少一周或一个月的用户交互数据。替代地或另外地,历史用户交互数据可以包括5或10个玩会话以上的玩会话的数据。
相反,近期用户交互数据可以包括满足阈值时间或比特定阈值时间段更近的用户交互数据。例如,近期用户交互数据可以包括少于一周或一个月的用户交互数据。替代地或另外地,近期用户交互数据可以包括少于3、5或10个玩会话的玩会话的用户交互数据。
在一些实施方案中,历史用户数据和近期用户数据在预测模型160内可能被不同地加权。在一些情况下,可以重复预测模型160内的每个参数162。例如,参数的一个形式可以基于历史用户数据并且可以与一个加权值164相关联,而参数的另一形式可以基于近期用户数据并且可以与不同加权值164相关联。此外,在一些实施方式中,可以根据浮动制或累进基础应用加权值。例如,更近的历史用户数据可以与更高的加权值164相关联,而较不近的历史用户数据可以与较低的加权值相关联。
在框304,保留分析系统140使用参数函数或预测模型160可以至少部分地基于在框302处接收的输入数据的集合172来确定用户的预测的流失率。可以在游戏开始时和/或在游戏过程中的各个阶段或在各个时间帧确定用户的预测的流失率。预测模型160的确定的或计算的输出174可以是具有与在框302处接收的输入数据的集合相同或基本相似的输入数据的用户的预测的流失率或预期的用户流失。此外,流失率可以基于在框302处接收的输入数据的集合,指示用户将继续玩或不继续玩视频游戏112的用户的百分比或可能性。例如,如果通过保留分析系统140输出75%的流失率,那么可以估计有75%的概率用户将不会继续玩视频游戏112。可替换地或者附加地,75%的流失率可以指示75%的具有与在框302处接收的输入数据的集合相关联的相同或相似的用户交互数据的用户一般将在一定量的时间以后或在游戏中的特定点停止玩视频游戏112。在一些实施方案中,预测模型160可以预测用户被预测在特定时间段内玩视频游戏112或者直到停止玩视频游戏112的时间量。该确定可以针对特定的玩会话或者针对多个玩会话,并且可替代确定保留率或是除了确定保留率以外附加的。
可选地,在框306处,保留分析系统140使用预测模型160基于输入数据的集合172确定用户的预测的流失率的预测原因。例如,参数函数可以基于指示赢概率下降到阈值以下的输入数据来确定通过参数函数计算的流失率至少部分地基于视频游戏112的难度。
在框308,基于在框304处确定的用户的预测的流失率,难度配置系统132选择与视频游戏的一部分的特定难度水平相关联的种子。选择种子可以包括访问映射数据储存库144的映射数据。该映射数据可以指示视频游戏112的一个或多个流失率与一个或多个难度水平之间的映射。在一些情况下,特定阈值水平以上的流失率可以被映射到可以降低视频游戏112的难度的一个或多个种子值。此外,在一些情况下,流失率可以被映射到与不同难度水平相关联的不同的种子值的集合。在这种情况下,可以基于保留分析系统140的附加输出174来选择与特定难度水平相关联的种子值的集合。例如,保留分析系统140可以输出流失率和特定用户的流失率的原因。这样的实施例,特定阈值以上的流失率可以导致选择新的种子值。此外,流失率的原因可以用于选择与不同难度水平相关联的多个种子值。流失率的原因可以与特定数值相关联。例如,由视频游戏112太容易造成的特定阈值以上的流失率可以与一个数值相关联,由于视频游戏112太难造成的特定阈值以上的流失率可以与另一个数值相关联。
在一些实施方案中,保留分析系统140可以输出来自输入数据172的在确定用户的保留率时具有最大影响或阈值量的影响的一个或多个因素或数据。使用该信息,难度配置系统132可以确认视频游戏112的状态变量的一个或多个改变,或确认对应于用于生成保留率的因素的一个或多个种子值。
在一些情况下,来自保留分析系统140的输出和种子值之间的映射可以是多级映射。例如,第一映射可以在保留分析系统140的流失率输出与多个种子值之间,并且第二映射可以在保留分析系统140的另一输出(诸如流失率的预测原因)和来自所述多个种子值的特定种子值或种子值的子集之间。在另一实现中,多级映射可以包括在流失率和特定难度水平之间的第一级映射,以及在特定难度水平与一个或多个种子值或操纵控件值之间的第二级映射。
在一些情况下,种子是对操纵控件的调整,其中使用状态变量用于修改视频游戏112的执行。在其他情况下,种子是在随机或伪随机数生成器中使用的用于修改视频游戏112内的一个或多个事件的概率或出现率的值。此外,在一些情况下,种子是用于影响视频游戏112的水平或一部分的生成和/或视频游戏112内的用户可玩人物的位置的值。
在一些情况中,上述实施方案的一个或多个可以与聚类(clustering)组合,以促进确认可能喜欢玩更难或者不那么难的视频游戏的用户。在下文中更详细的描述了可以与本公开内容一起使用的聚类的一些示例性实施方案。
示例的聚类实施方案
在一些实施方案中,聚类处理可以用于将共享有可以用于确认用于视频游戏112的难度偏好的一个或多个特性的用户分成一组。集群可以包括共享一个或多个特性的一个或多个用户。难度偏好可以与每个集群相关联以便于调整视频游戏112的难度。可以将其特性与特定集群匹配的用户分配给特定集群。可以基于与集群相关联的难度偏好来为用户调整视频游戏112的难度水平。以下描述了使得能够使用聚类进行难度调整的某些非限制性示例过程。
示例的集群创建过程
图4呈现了集群创建过程400的一个实施方案的流程图。所述过程400可以通过基于每个用户与视频游戏的交互以及与每个用户关联的参与的水平可以创建多个集群或者用户组的任何系统来实施。例如,所述过程400可以整体地或者部分地通过除了别的以外的交互计算系统130、难度配置系统132、用户聚类系统134、或者用户计算系统110来实施。虽然任何数量的系统整体地或部分地均可以实施所述过程400,但是为了简化讨论,将关于特定系统来描述过程400。此外,应该理解的是,过程400可以随着时间被重复地更新或者执行。例如,过程400可以每月重复一次,并且添加或发布新视频游戏,或者添加可用于分析或者玩视频游戏112的阈值数量的新用户。然而,可以更多或者更少频率地执行过程400。
过程400开始于框402,在该框402处用户聚类系统134确认视频游戏112的用户的集合。为了简化讨论,首先相对于单个视频游戏,诸如视频游戏112,来描述过程400。然而,本公开内容不限制于此,并且过程400可以实施用于多个视频游戏。在一些情况下,多个视频游戏的每个可以具有相同的类型,或者可以共享共同的一个或多个特性。在其他情况下,多个视频游戏可以分布在多个类型中。该类型可以基于主题和/或游戏类型(例如,开放世界游戏、角色扮演游戏、第一人称射击、侧滚动游戏、模拟、太空战斗、西部游戏等)。此外,在一些情况下,过程400包括分析在额外视频游戏中的数据,用以确认或者精炼基于视频游戏的分析所创建的集群。
在框404处,对于在框402处确认的每个用户,用户聚类系统134监测用户随着时间与视频游戏112的交互用以获得该用户的用户交互数据。这种监测可以通过查看来自不同时间段的用于用户的多组用户交互数据来进行,或者通过实时地将数据从视频游戏112抽出并将数据存储用于之后查看来进行。这种用户交互数据可以包括上文关于图1A所述的信息的任何一种。此外,用户交互数据可以包括:涉及用户在视频游戏内进度的数据;当用户成功完成等级或者目标时用户所采取的动作;当用户没有成功完成等级或者目标时用户所采取的动作;基于用户在目标处成功所花费的时长,用户所采取的动作的不同;用户每次玩视频游戏的时长或者用户玩视频游戏的平均时长;用户是否典型地短时间或长时间玩游戏;当玩视频游戏时,用户是否花费真实世界的货币(与游戏货币不同),这可以用作确认用户参与水平的因素(例如,与没有花钱或者没有玩视频游戏的玩家相比,花钱玩视频游戏的用户更可能再次玩该游戏);以及可以用于度量用户参与视频游戏的水平的其他任何标准,和/或用户响应于视频游戏呈现给用户的挑战水平的动作。此外,用户交互数据还可以包括涉及由用户用来访问视频游戏的用户计算系统110的类型的信息;不同点,如果有任何不同的话,以及基于用于访问视频游戏的用户计算系统110的类型用户如何与视频游戏交互;用户是否使用了多用户计算系统110来访问视频游戏等。
在框406,用户聚类系统134过滤掉用户交互数据不满足交互标准的最小集合的用户。交互标准的该最小集合可以与用户玩游戏的时间长度或用户玩视频游戏是否玩多个玩会话相关。例如,玩视频游戏小于阈值时间量或小于阈值数量的玩会话的用户可能不能提供足够的数据,以确定视频游戏的难度是否影响用户的参与水平。此外,交互标准的最小集合可以与用户在视频游戏112中进行的动作的类型或用户在视频游戏112中进行的进度相关。在一些情况下,用户交互数据不满足交互标准的最小集合的用户可以被保留,但是与满足交互标准的最小集合的用户的用户交互数据相比,有较低的权重。在一些实施方案中,框406可以是可选的或被省略。
对于来自用户集合的每个剩余用户,用户聚类系统134在框408处基于该用户的用户交互数据来确定用户的参与度。确定用户的参与度可以包括基于用户在视频游戏内的进度确定用户是否继续玩或停止玩视频游戏。此外,确定用户的参与水平可以包括确定用户在玩视频游戏时是否花了钱和/或花了多少钱。在一些情况下,确定用户的参与水平可以包括基于为用户收集的用户交互数据确定用户将再次玩视频游戏的概率。在一些情况下,确定用户的参与水平可以包括确定用户关于视频游戏的技能。此外,执行与框408相关联的操作可以包括:使用用户交互数据作为输入来应用一个或多个机器学习算法,以基于通过视频游戏呈现给用户的挑战的数量来确定用户继续玩或停止玩视频游戏的概率用户。
在框410,用户聚类系统134基于用户交互数据和剩余用户的每个用户的参与度确定多个用户聚类。确定用户集群可以包括基于如从在框404处监测的用户交互数据确定的用户的行为来对用户进行分组。进一步地,将用户分组到用户集群中可以包括基于为用户收集的指示视频游戏的参与水平的用户交互数据来确认与每个用户相关联的特性。例如,假设系统确定多个用户通常玩视频游戏时间小于30分钟并且往往在阈值数量的玩会话和/或目标的过程中以少于两次尝试就成功完成目标。此外,假设这些用户通常在达到一些如下目标之后停止玩视频游戏,该目标需要多于两次尝试以完成目标。可以将这些数量的用户一起聚类在用户集群中,该用户集群的用户倾向于玩短游戏会话并倾向于喜欢不具有挑战性的视频游戏。相比较,可以将倾向于一次玩两个小时的视频游戏并继续玩视频游戏(尽管目标需要几次尝试来完成)的另一组玩家一起聚类在单独的用户集群中。可以使用一个或多个机器学习算法来至少部分地基于用户集合的用户交互数据来确认用户集群。
在一些情况下,框410可包括在每个集群内生成子集群。例如,一个集群可以包括倾向于喜欢特别具有挑战性的视频游戏的用户。在这个集群中,可能有两个子集群。一个子集群可以用于喜欢那种在贯穿整个游戏的过程中保持挑战性的视频游戏的用户。另一个子集群可以用于倾向于喜欢那种在开始时具有挑战性但是随着时间的推移可能变得不那么具有挑战性的视频游戏的用户,因为这种视频游戏可能发生难以掌握的情况,但是一旦用户掌握了视频游戏所需的技能就不那么难了。
在框412,难度配置系统132基于与用户集群中的用户相关联的用户交互数据将难度偏好与每个用户集群相关联。在一些实施方案中,例如,机器学习模型可以由模型生成系统146生成,以确定与难度偏好的其他值相比,难度偏好的哪些值与较长游戏玩法相关联。难度偏好可以确认与用户集群相关联的用户是否喜欢玩困难、容易或二者之间的一些等级的视频游戏。此外,难度偏好可以确认重置与视频游戏相关联的游戏状态变量的一个或多个操纵控件的一个或多个值。
示例集群分配过程
图5呈现了用于用户的集群分配过程500的一个实施方案的流程图。过程500可以由能够确认用户集群以基于用户与视频游戏的交互将用户与用户集群关联的任何系统来实施。例如,所述过程500整体地或者部分地可以由除了别的以外的交互计算系统130、难度配置系统132、用户聚类系统134或者用户计算系统110来实施。尽管任何数量的系统整体地或者部分地都可以实施过程500,但是为了简化讨论,将会参照特定系统来描述过程500。此外,还应该理解的是,过程500可以随着时间过去被重复地更新或执行。例如,过程500可以每月一次被重复,在自从过程500的上一次执行后的用户的阈值数量的玩会话之后被重复,或者在用户玩了新视频游戏之后被重复。然而,可以更多或更少频率地执行过程500。此外,过程500可以实时地执行或者可以在特定事件之前执行。例如,可以在用户使用游戏部署系统注册时或在用户访问视频游戏112时执行过程500。
过程500开始于框502,在该框502处用户聚类系统134确认视频游戏112的用户。可以基于用户账户信息(诸如用户登录)确认用户,或者基于与用户的头像关联的信息(诸如昵称)来确认用户。可替换地,或者附加地,可以基于与用户的用户计算系统110关联的信息(诸如因特网协议(IP)地址)确认用户。
在框504处,用户聚类系统134监测用户与视频游戏112的交互一段时间,用以获得用户的用户交互数据。这种监测可以通过查看来自不同时间段的用户的用户交互数据集合来进行,或者通过实时地将数据从视频游戏112抽出并且将数据存储以用于之后查看来进行。通常,时间段是可以包括多个玩会话中用户与视频游戏112的交互的历史时间段。此外,时间段的长度可以被选择以满足或超过最小时间阈值。例如,时间段可以被选择为至少或者超过一个月、两个月、半年等。在一些情况下,替换或者除了监测用户与视频游戏的交互一段时间之外,用户聚类系统134可以配置成监测阈值数量的玩会话的用户交互。例如,用户聚类系统134可以配置成监测用户的第一数量(例如,五场、十场、十二场等)的玩会话,或者用户的近期数量的玩会话。在一些情况下,框504可以包括监测用户与多个视频游戏的交互。多个视频游戏可以是与视频游戏112相同类型的视频游戏。在其他情况下,多个视频游戏可以不限于特定类型的视频游戏。
用户聚类系统134在框506访问集群集合的集群定义。访问集群集合的集群定义可以包括访问用户数据储存库138。集群定义可以包括与用户集合的用户交互数据相关联或从用户集合的用户交互数据导出的特征的集合。
使用在框506访问的集群定义和在框504获得的用户交互数据,用户集群系统134在框508从集群的集合中确认集群。从集群的集合中确认集群可以包括将所述用户交互数据的特性和与所述集群集合中的每一个相关联的特性匹配。例如,如果用户交互数据指示用户在成功完成目标时每次玩视频游戏112达数小时,并且在未能完成目标时在平均大约10分钟内停止玩视频游戏112,则用户聚类系统134可以确定用户是花费大量时间玩视频游戏并且不享受重大挑战的玩家。继续该实施例,用户聚类系统134可以从与在相当长的时间内玩视频游戏并且倾向于享受具有小于阈值难度水平的游戏的玩家相关联的集群集合中确认用户集群。
在一些情况下,从集群集合中确定集群可以包括基于在框504获得的用户交互数据来确认用户发现视频游戏112有多困难。此外,确定集群集合的集群可以包括确认用户对视频游戏内的事件(包括与用户在视频游戏112内克服挑战相关的成功或失败的事件)的动作或反应。可以基于用户关于在视频游戏112内成功满足目标或未能满足目标的行为来确定用户相对于视频游戏的参与特性或用户交互特性。可以将从用户与视频游戏的交互导出的与用户相关的这些参与特性和/或其他特性和与集群集合相关联的特性进行比较,以确认对应集群来关联用户。
在一些实施方案中,可以向用户呈现参与特征,并且作为响应,用户聚类系统134可以从用户接收关于参与特征的输入。例如,用户可以指示用户是否同意分析。作为另一示例,用户可以指示他或她正在体验新的游戏风格,该游戏风格用户计划继续使用或不计划继续使用。用户聚类系统134可以使用用户输入来调整或确认其对特定用户集群的选择。在一些情况下,可以基于用户聚类系统134在框504已经获得的数据量来对用户输入进行加权。例如,可以对具有少量历史的用户(诸如,两个或三个玩会话)较重地加权,并且对具有大量历史(诸如,五十或一百个玩会话)的用户较少地加权。
在一些情况下,交互计算系统130可以将滑块或一些其他用户界面元素显示给用户,以在频谱上指示用户的参与特性。例如,滑块可以指示用户倾向于比平均水平更频繁地尝试挑战,或者用户平均倾向于在某些挑战上比其他用户更成功。尽管可以向用户呈现用户交互数据的分析,但是可以不通知用户该信息正被用于调整视频游戏112的至少部分的难度水平。
在用户已经玩视频游戏112的一部分之后,用户聚类系统134可以询问用户以帮助确定用户偏好,或者获得关于用户如何查看视频游戏112的该部分的难度的信息。可以在用户指示用户结束一个玩会话之后询问用户。因此,可以向用户询问他或她的体验而不中断用户的游戏体验。此外,用户聚类系统134可以解析用户的聊天消息数据,以确定用户的参与度和/或用户发现视频游戏112有多难。
在框510,用户聚类系统134将用户与所确认的集群相关联。将用户与所确认的集群相关联可以包括在用户数据储存库138处存储用户和所确认的集群之间的关联。
在一些实施方案中,过程500可以用于确定用户停止玩视频游戏112的可能性。该确定有时可以被称为“流失率”或“流失”,并且可以与用户多频繁切换视频游戏或停止玩某些视频游戏关联。例如,倾向于玩一个或两个玩会话的视频游戏然后转到另一个视频游戏的用户可能具有高的流失率。通过确认这样的用户,可以修改视频游戏的难度设置以减少流失率。例如,如果确定简单游戏或者没有为用户提供足够挑战的游戏导致用户停止玩这样的游戏,则可以将用户与喜欢难的视频游戏的用户集群相关联。此外,如下面更详细描述的,基于用来关联用户的集群的标识,可以改进视频游戏112的难度,以试图减少用户停止玩视频游戏112的概率。
示例难度设置过程
图6呈现了对于一个应用(诸如视频游戏112)的难度设置过程600的一个实施方案的流程图。过程600可以由可以至少部分地基于对用户的监测活动而动态设置或调整视频游戏的难度的任何系统来实施。例如,过程600全部或部分可以由除了别的以外的交互计算系统130、难度配置系统132、用户聚类系统134或用户计算系统110等实施。尽管任何数量的系统全部或部分可以实施过程600,为了简化讨论,将关于特定系统来描述过程600。
当执行视频游戏112时或者当视频游戏112的玩会话开始时,可以执行过程600。在一些情况下,可以在用户开始新游戏或者相对于视频游戏112启用新帐户时执行过程600。此外,可以在用户每次加载关于视频游戏112的先前保存的游戏时,执行过程600。在一些情况下,过程600可以在特定时间或响应于视频游戏112内的触发事件而被执行或重复。例如,过程600可以在每次用户未能完成视频游戏112内的特定目标或成功完成视频游戏112内的特定目标时发生。在一些情况下,过程600可以在完成阈值数目的目标之后发生,或者在为完成目标的阈值数目的尝试没有成功之后发生。
过程600开始于框602,其中难度配置系统132确认视频游戏112的用户。在一些情况下,响应于用户访问视频游戏112而执行所述框602。然而,如上所述,可以响应于诸如在游戏触发事件中的其他事件来执行过程600的一个或多个部分。确认视频游戏112的用户可以基于用户标识符或头像。在一些情况下,框602可以包括先前关于框502描述的一个或多个实施方案。
在框604,难度配置系统132确定与用户相关联的用户集群。确定与用户相关联的用户集群可以包括访问用户数据储存库138以标识与用户相关联的一个或多个集群。在一些情况下,用户集群可以与用户和视频游戏112两者相关联。在一些这样的情况下,用户可以与多个用户集群相关联。例如,对于用户玩的每个视频游戏,用户可以与不同的用户集群相关联。在其他情况下,用户可以与用于视频游戏的集合的单个用户集群相关联。在一些情况下,视频游戏的集合可以是用户玩的所有视频游戏或由与交互计算系统130相关联的实体发布的所有视频游戏。在其他情况下,视频游戏的集合可以是特定种类或主题的视频游戏。
基于所确认的用户集群,难度配置系统132确定与视频游戏112相关联的一个或多个操纵控件的集合的配置值。这些配置值可由用户集群来确认。可替换地,可以基于与用户集群相关联的难度水平来确定配置值。在一些情况下,至少一些配置值是与用户集群相关联或者基于与用户集群相关联的特性而确定的具体值或固定值。可替换地或者附加地,可以使用算法选择配置值中的至少一些,或从与用户集群相关联的特定池或值集合随机地选择配置值中的至少一些。
在框608,难度配置系统132访问用户相对于视频游戏112的近期用户交互数据。可通过视频游戏112将该近期用户交互数据提供给难度配置系统132。可替换地,或者附加地,难度配置系统132可以从用户交互历史储存库116访问近期用户交互数据。在其他情况下,难度配置系统132可以从用户数据储存库138访问近期用户交互数据。
近期用户交互数据可以包括在当前的玩会话期间,在阈值时间段内(例如,在最后一周内)或在阈值数量的玩会话内(例如,近期三个玩会话)收集的用户交互数据。通常,尽管不是必须的,从其收集近期用户交互数据的玩会话的时间段或数目比关于过程500使用的用于确定与用户相关联的用户集群的历史数据更少和/或更近。
有利地,在一些实施方案中,通过访问与用户相关联的用户集群并且通过访问近期用户交互数据,难度配置系统132可以预测关于用户在特定难度水平玩视频游戏112时的成功。此外,难度配置系统132可以进行关于用户对于视频游戏112的行为的预测。至少部分地基于这些预测,难度配置系统132可以选择能够被发送到视频游戏112的配置值以相应地调整视频游戏112的难度。在一些实施方案中,框606或框608可以是可选的或省略的。例如,在用户先前没有玩视频游戏112的情况下,可以省略框608。作为另一实施例,在用户没有累积足够的历史用户交互数据以将用户与用户集群相关联的情况下,可以省略框606。可替换地,用户可与默认的用户集群相关联,以便确定与视频游戏112相关联的操纵控件集合的配置值的初始集合。作为另一替代方案,用户可以至少部分地基于用户提供的信息与用户集群相关联。
在框610,难度配置系统132可以至少部分地基于用户的近期用户交互数据来调整操纵控件集合的配置值。调整配置值可以使得视频游戏112对于用户而言更容易或更具挑战性。此外,调整配置值可以修改视频游戏112的状态和/或与视频游戏112相关联的特征的数量。例如,调整配置值可以修改视频游戏112内的水平的布局。作为另一实施例,调整配置值可以修改视频游戏112内物品掉落的时间和/或视频游戏112内的物品掉落的类型。在一些情况下,配置值可以是视频游戏112用来在生成视频游戏112的一个或多个方面所使用的种子值,诸如视频游戏112内的用户控制人物的水平布局或开始位置。应当理解的是,本公开不限制可以对视频游戏112所做的修改的类型。然而,通常,对视频游戏112进行的修改将导致视频游戏112的难度水平的调整。有利地,在一些实施方案中,通过基于历史和/或近期用户交互数据来调整视频游戏112内的特定操纵控件,可以比与一些视频游戏相关联的静态难度水平设置基于更粒度化调整视频游戏112的难度。
在一些情况下,调整视频游戏的难度设置可以包括改变调整视频游戏112中的特征的限定集合的配置值。或者,难度配置系统132可以至少部分地基于从近期用户交互数据确定的用户的特定技能的评估来确定配置设置。例如,可以确定用户没能完成视频游戏112中的多个目标,因为用户具有定时跳跃的问题。如果用户是这种当用户没能完成目标时将停止玩视频游戏112的类型的用户,如通过与用户相关联的用户集群所确定的,则难度配置系统132可以生成用于视频游戏112中的可玩人物的能力的配置值以使得更容易设定跳跃的时间(例如,通过允许人物跳得更远)。相反,如果另一用户对定时跳跃没有问题,但是瞄准武器有麻烦,则难度配置系统132可以生成配置值,该配置值使得通过使武器的命中区域更大而使得更容易射击目标。在一些情况下,可以在用户没有意识到游戏已经被修改的情况下进行这两个改变。
在一些情况下,框610可以包括向视频游戏112和/或用户计算系统110提供用于操纵控件集合的经调整的配置值的难度配置系统132。向用户计算系统110提供调整的配置值可以包括通过交互计算系统130和用户计算系统110之间建立的通信信道提供调整的配置值。在一些情况下,通信信道可以在视频游戏112和难度配置系统132之间。在一些情况下,经调整的配置值可以被提供为可以由视频游戏112访问的配置文件和/或可以超驰控制视频游戏112的配置文件的配置文件(例如,标记语言文件,诸如XML文件)。在一些情况下,可以在诸如动态链接库(DLL)文件的共享库文件中提供调整器配置值。
尽管过程600可以用于提供调整视频游戏112的难度设置的配置值,但是在一些情况下,对视频游戏112的难度水平的调整是有限的。例如,在一些情况下,视频游戏112的开发者可能希望视频游戏112内的每个奇数水平比每个偶数水平更容易。因此,玩家在玩视频游戏112时将在较简单和较难的水平之间交替。在这种情况下,可以限制对框610处的配置值的调整,使得视频游戏112内的奇数水平保持比偶数水平更容易。作为另一示例,对于视频游戏112中的不同部分的难度水平的调整可以被限制到特定范围。因此,在一些情况下,尽管视频游戏112中的较后的水平可能比较早的水平更难或不难,但是较后的水平可能仍然比较早的水平更难。
在一些实施方案中,过程600可以至少部分地由用户计算系统110执行。例如,在用户计算系统110到交互计算系统130没有网络连接的情况下,视频游戏112可以被配置为至少部分地基于存储在用户交互历史储存库116中的用户交互数据动态地调整该视频游戏的难度。此外,在一些情况下,交互计算系统130可以向用户计算系统110提供用户集群信息用于存储,使得用户计算系统110能够在用户计算系统110到交互计算系统130没有网络连接时执行处理600。
示例种子评估过程
图7呈现了种子评估过程700的一个实施方案的流程图。过程700可以由任何可以至少部分地基于对于视频游戏112的一部分的特定种子值的使用来评估视频游戏112的该部分的难度的任何系统来实施。例如,过程700全部或部分可以由除了别的以外的交互计算系统130、种子评估系统136、难度配置系统132或用户计算系统110实施。尽管任何数量的系统全部或部分可以实施过程700,为了简化讨论,将相对于特定系统来描述过程700。
使用过程700评估的种子可以涉及视频游戏112的多个方面或部分的生成。例如,种子可以用于确定游戏中的世界或水平的初始配置。作为另一实施例,种子可以用于确定视频游戏112内的一个或多个可玩或不可玩人物的能力。
过程700在框702处开始,其中种子评估系统136确认用于配置视频游戏112或视频游戏112的部分的多个种子。在一些情况下,多个种子中的每一个可以与配置视频游戏112的相同部分相关联。
对于在框702处确认的每个种子,种子评估系统136随着时间监测玩或访问视频游戏112的用户集合的过程,以在框704获得与该种子相关联的进度数据。在一些情况下,对于不同的用户集合来评估每个种子,因为,例如,在与特定用户的特定帐户的特定玩会话期间,对于一些类型的视频游戏,可以使用仅一个种子。例如,如果种子值与特定水平的布局相关联,则可能一旦为特定用户设置,特定水平的布局将不改变。然而,在一些其他情况下,可以对于相同的用户集合来评估每个种子,因为,例如,在视频游戏的玩会话期间重复使用种子值。例如,如果种子值与卡牌战斗游戏中的开始的牌的集合相关联,则每当用户玩一轮时,可以生成开始的牌的集合,从而提供机会使多个不同的种子值待要对于特定用户进行评估。
在一些实现中,基于与用户集合或与用户集合相关联的用户集群相关联的技能水平来选择在框704处监测的用户集合。例如,每个种子值可以由被确定为具有大致相同的技能水平的用户来评估。或者,每个种子值可以由具有不同等级技能的多个用户评估。
在框704处获得的进度数据可以反映被监测用户已经使用特定种子值玩视频游戏112的进度的量。例如,进度数据可以指示特定用户或用户集合是否完成了具有特定种子值的目标,或者无法完成具有特定种子值的目标。
在框706,对于所评估的每个种子,种子评估系统136基于与来自用户集合的每个集合的每个用户相关联的技能数据来标准化进度数据。换句话说,在一些情况下,可以归一化针对每个种子值获得的进度数据,使得不同用户的不同技能水平不影响种子的评估。替代地或另外地,可以基于通过例如用户聚类系统134确定的用户的技能水平对关于针对种子的特定用户获得的进度数据进行加权。在一些情况下,用户的技能水平可以基于玩视频游戏112赢得的点或用于监测特定用户的技能的某种其他度量被确定。
在一些实施方案中,框706可以是可选的或省略的。例如,在被选择来评估每个种子的用户集合与特定用户集群相关联,或者被选择来评估每个种子的用户集合的每个被确定为具有小于技能水平的阈值差的情况下,可以不必标准化进度数据,并且可以省略框706。
在框708,种子评估系统136基于相关联的归一化进度数据确定与每个种子相关联的难度。当使用与视频游戏112的目标或部分相关联的特定种子值时,可以基于成功或没成功完成视频游戏112的目标或部分的用户的数量或百分比来确定难度。有利地,在一些实施方案中,通过评估种子值的难度,可以针对特定难度水平对种子值的集合进行分组或聚类。因此,在一些情况下,如果确定特定用户更喜欢玩更容易的视频游戏,则可以使用与较低难度水平相关联的种子值来生成视频游戏112的部分。此外,过程700使得开发者能够确认与特定种子值相关联的难度水平,并对特定种子值的分类进行调整。例如,特定的种子值可以与选择简单难度水平的玩家一起使用。然而,在使用过程700评估具有特定种子值的多个用户的多个玩会话之后,可以确定该种子值导致视频游戏112的一部分比当视频游戏112的该部分与其他种子值相关联时明显更具挑战性。在这种情况下,特定种子值可以被重新分类以供喜欢或选择更难的难度水平的玩家使用,并且特定种子值可以被移除以使得不能用于供喜欢或选择简单难度水平的玩家使用。
计算系统的概述
图8示出了用户计算系统110的一个实施方案,该用户计算系统也被称为游戏系统。如所示的,用户计算系统110可以是包括若干元件的单个计算设备。然而,在一些情况下,用户计算系统110可以包括多个设备。例如,用户计算系统110可以包括以下设备:一个设备包括中央处理单元和图形处理单元,另一个设备包括显示器,再一个设备包括输入机构,诸如键盘或者鼠标。
用户计算系统110可以是能够执行游戏系统的计算系统的一个实施方案。在图8的非限制性的实施例中,用户计算系统110是能够经由触摸屏显示器802从用户接收输入的可触摸的计算设备。然而,用户计算系统110并不限于此,并且可以包括不可触摸的实施方案,其不包括触摸屏显示器802。
用户计算系统110包括触摸屏显示器802和触摸屏接口804,并且被配置成执行游戏应用810。该游戏应用可以是视频游戏112,或者是与视频游戏112一起执行的或支持视频游戏而执行的应用,诸如视频游戏执行环境。尽管描述为游戏应用810,但是在一些实施方案中,应用810可以是可以具有至少部分基于用户的喜好或能力的可变执行状态的另一种类型的应用,诸如教学软件。虽然用户计算系统110包括触摸屏显示器802,可以意识到,多种输入设备可以与触摸屏显示器802一起使用或者代替触摸屏显示器802。
用户计算系统110可以包括一个或多个处理器,诸如中央处理单元(CPU)、图形处理单元(GPU)和加速处理单元(APU)。此外,用户计算系统110可以包括一个或多个数据存储元件。在一些实施方案中,用户计算系统110可以是用于执行游戏应用810目的的专用计算设备。例如,用户计算系统110可以是视频游戏机。由用户计算系统110执行的游戏应用810可以使用特定应用程序接口(API)创建,或编译到针对用户计算系统110专用的特定的指令集中。在一些实施方案中,用户计算系统110可以是能够执行游戏应用810和非游戏应用的通用计算设备。例如,用户计算系统110可以是具有集成触摸屏显示器的笔记本电脑或者具有外部触摸屏显示器的台式计算机。参照图9更详细的描述了用户计算系统110的示例性实施方案的部件。
触摸屏显示器802可以是被配置成从用户处接收触觉输入(也称为触摸输入)的电容性触摸屏、电阻式触摸屏、表面声波触摸屏或其他类型的触摸屏技术。例如,可以经由单个手指触摸屏幕、多个手指触摸屏幕、触笔或者可以用于在触摸屏显示器802上登记触摸输入的其他刺激物,来接收触摸输入。触摸屏接口804可以被配置成将触摸输入转化成数据并且输出数据,使得其可以被用户计算系统110的部件(诸如操作系统和游戏应用810)解释。该触摸屏接口804可以将触觉触摸的输入触摸转化成触摸输入数据。触摸输入的一些示例性的特性可以包括形状、大小、压力、位置、方向、动量、持续时间和/或其他的特性。触摸屏接口804可以配置成确定触摸输入的类型,诸如,例如轻拍(例如,在单个位置触摸并释放)或者滑动(例如,以单个触摸输入的方式移动通过触摸屏上的多个位置)。触摸屏接口804可以配置成同时地或基本上并行地发生检测和输出与多个触摸输入关联的触摸输入数据。在一些情况下,同时触摸输入包括如下示例:用户保持在触摸屏显示器802上的第一触摸,随后执行触摸屏显示器802上的第二触摸。触摸屏接口804可以配置成检测触摸输入的移动。可以将触摸输入数据传输到用户计算系统110的部件用于处理。例如,可以直接将触摸输入数据传输到游戏应用810用于处理。
在一些实施方案中,在被输出到游戏应用810之前,触摸输入数据可以先经受由触摸屏接口804、操作系统或者其他部件进行的处理和/或过滤。作为一个示例,可以从触摸输入中捕获原始触摸输入数据。可以过滤原始数据以移除背景噪声,可以测量与输入关联的压力值,以及可以计算与触摸输入关联的位置坐标。提供给游戏应用810的触摸输入数据的类型可以依赖于触摸屏接口804和与触摸屏接口804关联的特定API的具体实现方式。在一些实施方案中,触摸输入数据可以包括触摸输入的位置坐标。可以以限定的频率输出触摸信号数据。处理触摸输入可以每秒计算许多次,并且可以将触摸输入数据输出到游戏应用用于进一步处理。
游戏应用810可以配置成在用户计算系统110上执行。游戏应用810还可以称为视频游戏、游戏、游戏编码和/或游戏程序。应该理解的是,游戏应用包括用户计算系统110可以使用来为用户提供游戏来玩的软件代码。游戏应用810可以包括通知用户计算系统110执行处理器指令的软件代码,但还可以包括用于在玩游戏中使用的数据,诸如涉及常量、图像和其他数据结构的数据。例如,在所示出的实施方案中,游戏应用包括游戏引擎812、游戏数据814以及游戏状态信息816。
用户计算系统110的触摸屏接口804或者其他部件(诸如操作系统),可以将用户输入(诸如触摸输入)提供到游戏应用810。在一些实施方案中,用户计算系统110可以包括替选地或者额外的用户输入设备,诸如鼠标、键盘、照相机、游戏控制器等。用户可以经由触摸屏接口804和/或替选的或额外的用户输入设备的一个或多个与游戏应用810交互。游戏引擎812可以配置成执行用户计算系统110内的游戏应用810的操作的多个方面。游戏应用内的游戏玩法的多个方面的执行可以至少部分地基于所接收的用户输入、游戏数据814以及游戏状态信息816。游戏数据814可以包括游戏规则、预录动作捕捉姿势/路径、环境设置、约束、动画参照曲线、骨架模型和/或其他游戏应用信息。此外,游戏数据814可以包括用于设置或者调整游戏应用810的难度的信息。
游戏引擎812可以根据游戏规则执行游戏内的游戏玩法。游戏规则的一些示例可以包括用于得分、可能的输入、动作/事件、响应于输入的移动等的规则。其他部件可以控制接受什么输入和游戏如何进行,以及游戏玩法的其他方面。在游戏应用810的执行期间,游戏应用810可以存储游戏状态信息816,该游戏状态信息可以包括人物状态、环境状态、场景目标的存储和/或与游戏应用810的执行的状态关联的其他信息。例如,游戏状态信息816可以确认处于特定时间点的游戏应用的状态,诸如人物位置、人物动作、游戏水平属性以及有助于游戏应用状态的其他信息。
游戏引擎812可以接收用户输入,并且确定游戏中事件,诸如适于游戏应用810的动作、撞击、跑、丢、袭击和其他事件。操作期间,游戏引擎812可以读取游戏数据814和游戏状态信息816,以便确定合适的游戏中事件。在一个实施例中,在游戏引擎812确定人物事件之后,人物事件可以被传送到移动引擎,移动引擎可以确定响应于该事件所述人物应该做出的合适的运动,并且将这些运动传递到动画引擎。动画引擎可以确定用于人物的新姿势,并且将新的姿势提供到皮肤和渲染引擎。皮肤和渲染引擎转而可以将人物图像提供给对象组合器,以便将有生命的、无生命的和背景对象组合成完整的场景。可以将该完整的场景传送到渲染器,该渲染器可以生成向用户显示的新的帧。在执行游戏应用期间,该过程可以被重复用于渲染每个帧。尽管已经在人物的背景下描述了该过程,但是该过程可以被应用于处理事件和渲染向用户显示的输出的任何过程。
计算系统的示例硬件配置
图9示出了用于图8的用户计算系统110的硬件配置的实施方案。用户计算系统110的其他变形可以用本文明确呈现的实施例来替换,诸如移除部件或添加部件到用户计算系统110。用户计算系统110可以包括专用的游戏设备、智能手机、平板电脑、个人计算机、台式机、笔记本电脑、智能电视、汽车控制显示器等。此外,(尽管没有在图9中明确地示出)如参照图8所述的,用户计算系统110可以可选地包括触摸屏显示器802和触摸屏接口804。
如所示的,用户计算系统110包括处理单元20,该处理单元与用户计算系统110的其他部件相互作用,并且还与用户计算系统110外部的部件相互作用。可以包括能够与游戏介质12通信的游戏介质读取器22。游戏介质读取器22可以是能够读取光盘的光盘读取器,诸如CD-ROM或者DVD,或者是可以接收并读取来自游戏介质12的数据的任何其它类型的读取器。在一些实施方案中,游戏介质读取器22可以是可选的或者省略的。例如,可以在网络上经由网络I/O 38访问游戏内容或应用,使游戏介质读取器22和/或游戏介质12可选。
用户计算系统110可以包括分立的图形处理器24。在一些情况下,图形处理器24可以安装在处理单元20中,诸如具有APU(加速处理单元)。在一些这样的情况下,图形处理器24可以与处理单元20共享随机存取存储器(RAM)。替选地或者额外地,用户计算系统110可以包括与处理单元20分立的独立图形处理器24。在一些这样的情况下,图形处理器24可以具有与处理单元20分立的RAM。此外,在一些情况下,图形处理器24可以与一个或多个额外的图形处理器和/或与嵌入的或者非独立的图形处理单元一起工作,所述嵌入的或者非独立的图形处理单元可以嵌入到主板中并且有时被称为主板图形芯片或者设备。
用户计算系统110还包括用于使能输入/输出的各种部件,诸如I/O 32、用户I/O34、显示器I/O 36和网络I/O 38。如上所述,在一些情况下,输入/输出部件可以包括触控设备。I/O 32与存储元件40交互,并且通过设备42与可移除存储介质44交互,以便提供用于计算设备800的存储。处理单元20可以通过I/O 32通信以存储数据,诸如游戏状态数据和任何共享的数据文件。除了存储器40和可移除存储介质44,计算设备800还被示出包括ROM(只读存储器)46和RAM 48。RAM 48可以用于被频繁访问的数据,诸如当正在玩游戏时。
用户I/O 34用于发送和接收在处理单元21和用户设备(诸如游戏控制器)之间的指令。在一些实施方案中,用户I/O 34可以包括触摸屏输入。如上所述,触摸屏可以是电容性触摸屏、电阻式触摸屏或者被配置成通过触觉输入从用户处接收用户输入的其他类型的触摸屏技术。显示器I/O 36提供用于显示来自正在玩的游戏的图像的输入/输出功能。网络I/O 38用于关于网络的输入/输出功能。在游戏的执行期间,诸如当正在在线玩游戏或者在线访问游戏时,可以使用网络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、盒式磁带、存储器芯片等,或者根据需要通过网络或其他电子信道获得的)。通常,可以发现程序代码嵌入在有形的非暂时信号承载(signal-bearing)介质。
随机存取存储器(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)”及其他,应通常在所使用的上下文中被理解为表达某些实施方案包括某些特征、元件和/或步骤,而另一些实施方案不包括某些特征、元件和/或步骤。因此,这样的条件性用语通常并不意在暗示:特征、元件和/或步骤以任何方式是一个或多个实施方案所需要的,或者一个或多个实施方案必需包括用于判定——在具有或不具有用户输入或提示的情况下——这些特征、元件和/或步骤是否包括在任何具体的实施方案中或要在任何具体的实施方案中执行的逻辑。
除非另有特别说明,否则诸如短语“X、Y或Z中的至少一个”之类的析取性(disjunctive,选言)用语通过结合所使用的上下文一般理解为表示项、术语等可以是X、Y、或Z或其任何组合(例如,X、Y和/或Z)。因此,这样的选言通常不旨在并且不应当暗示某些实施方案需要X的至少一个、Y的至少一个或Z的至少一个均都存在。
在本文中描述的和/或在附图中描绘的流程图中的任何过程描述、元件或框均应当被理解为潜在地表示包括用于在过程中实施特定的逻辑功能或元件的一个或多个可执行指令的代码模块、代码段或代码部分。在本文描述的实施方案的范围内包括可替代的实施方式,在这样的实施方式中,元件可以被删除、与所示出的或讨论的次序颠倒地执行,包括基本上同时执行或以相反的顺序执行,这取决于本领域技术人员理解的所涉及的功能。
除非另外明确说明,否则冠词,诸如“一个”或“一”,通常应被解释为包括一个或多个所描述的项。因此,诸如“被配置成…的设备”的措辞意在包括一个或多个所描述的设备。这样的一个或多个叙述的设备还可以被共同配置成执行列举项(recitation)。例如,“被配置为执行列举项A、B和C的处理器”可以包括被配置为执行列举项A的第一处理器,该第一处理器连同被配置为执行列举项B和C的第二处理器一起工作。
应当强调的是,可以对上述实施方案做出许多变型和修改,这些变型和修改要素要被理解为在其他可接受实施例中。所有这样的修改和变型都意在包括在本公开内容的范围内。

Claims (20)

1.一种计算机实施的方法,包括:
在由配置有具体的计算机可执行指令的交互计算系统实施时,
确定正在用户计算设备上玩视频游戏的用户的用户标识符;
至少部分地基于所述用户的用户标识符来访问与所述用户相关联的输入数据的集合,其中所述输入数据的集合包括与所述用户和所述视频游戏的交互相关联的用户交互数据;
至少部分地基于所述输入数据的集合,确定所述用户的预测的流失率,所述预测的流失率对应于所述用户停止玩所述视频游戏的概率;
至少部分地基于所述用户的所述预测的流失率,为与所述视频游戏相关联的操纵控件选择种子值,其中所述操纵控件包括在被调整时引起对所述视频游戏的状态的修改的变量;以及
通过至少部分地基于所述种子值调整所述操纵控件来修改所述视频游戏的执行。
2.根据权利要求1所述的计算机实施的方法,其中修改所述视频游戏的执行包括调整所述视频游戏的难度。
3.根据权利要求1所述的计算机实施的方法,其中所述用户交互数据包括比阈值时期时间段更近的近期用户交互数据和没有阈值时期时间段近的历史用户交互数据。
4.根据权利要求3所述的计算机实施的方法,其中,所述近期用户交互数据比所述历史用户交互数据被更大地加权。
5.根据权利要求3所述的计算机实施的方法,其中所述阈值时期时间段对应于所述用户玩所述视频游戏的若干玩会话。
6.根据权利要求1所述的计算机实施的方法,其中确定所述预测的流失率包括:
将所述输入数据的集合提供给参数函数,所述参数函数至少部分地基于机器学习算法被生成;以及
至少部分地基于所述参数函数的输出来确定所述预测的流失率。
7.根据权利要求6所述的计算机实施的方法,还包括通过至少以下生成所述参数函数:
访问输入数据的第二集合,所述输入数据的第二集合与玩所述视频游戏的多个用户相关联,并且包括指示所述多个用户过去玩游戏的流失率的数据;以及
使用所述机器学习算法来至少部分地基于所述输入数据的集合来确定所述参数函数。
8.根据权利要求6所述的计算机实施的方法,还包括至少部分地基于以下中的一个或多个将不利因素与所述参数函数相关联:所述参数函数中包括的变量的数量、与所述参数函数相关联的数学算法的复杂度、或与输出数据相比的参数函数的输出的准确度。
9.根据权利要求6所述的计算机实施的方法,还包括至少部分地基于与来自多个参数函数中的至少一些参数函数相关联的不利值来从所述多个参数函数中选择所述参数函数。
10.根据权利要求1所述的计算机实施的方法,还包括:
至少部分地基于所述输入数据的集合,确定所述预测的流失率的原因;以及
至少部分地基于所述预测的流失率的原因,选择与所述视频游戏相关联的操纵控件的种子值。
11.根据权利要求1所述的计算机实施的方法,其中修改所述视频游戏的执行包括向所述用户计算设备提供所述种子值。
12.一种系统,包括:
电子数据存储装置,所述电子数据存储装置被配置为存储关于视频游戏的用户交互数据;
硬件处理器,所述硬件处理器与所述电子数据存储装置通信,所述硬件处理器被配置为执行具体的计算机可执行指令,以至少:
确定正在玩视频游戏的用户的用户标识符;
至少部分地基于所述用户的用户标识符来访问与所述用户相关联的输入数据的集合,其中所述输入数据的集合包括与所述用户和所述视频游戏的交互相关联的用户交互数据;
至少部分地基于所述输入数据的集合,确定与所述用户停止玩所述视频游戏的概率相关联的保留概率;
至少部分地基于所述用户的保留概率,确认对所述视频游戏中的变量的调整值,所述变量与所述视频游戏的难度水平相关联;以及
至少部分地基于所述调整值来修改所述视频游戏的执行。
13.根据权利要求12所述的系统,其中所述视频游戏的被修改的执行是用户不可察觉的。
14.根据权利要求12所述的系统,其中响应于在用户玩视频游戏的玩会话期间出现的触发事件,至少访问所述输入数据的集合、确定所述保留概率、确认所述调整值、以及修改所述视频游戏的执行被重复。
15.根据权利要求12所述的系统,其中确定所述保留概率包括:
将所述输入数据的集合提供给预测模型,所述预测模型由机器学习系统生成;并且
至少部分地基于所述预测模型的输出来确定所述保留概率。
16.根据权利要求15所述的系统,其中所述硬件处理器还被配置为通过执行具体的计算机可执行指令来生成所述预测模型,以至少:
访问输入数据的第二集合,所述输入数据的第二集合与玩所述视频游戏的多个用户相关联,并且包括与所述多个用户的保留率相关联的数据;以及
使用所述机器学习系统来至少部分地基于所述输入数据的集合和所述保留率确定所述预测模型。
17.根据权利要求15所述的系统,其中来自多个预测模型的至少一些预测模型与不利因素相关联,其中来自所述多个预测模型的至少一个预测模型与不同于至少另一个预测模型的不利因素相关联,并且其中所述硬件处理器还被配置为执行具体的计算机可执行指令,以至少:至少部分地基于与所述多个预测模型相关联的不利因素,从所述多个预测模型中选择预测模型。
18.一种存储计算机可执行指令的非暂时性计算机可读存储介质,所述计算机可执行指令在由一个或多个计算设备执行时,配置所述一个或多个计算设备执行以下操作,所述操作包括:
访问与用户相关联的输入数据的集合,其中所述输入数据的集合包括与所述用户和所述视频游戏的交互相关联的用户交互数据;
至少部分地基于所述输入数据的集合,确定与所述用户停止玩所述视频游戏的概率相关联的保留概率;
至少部分地基于所述用户的保留概率,确认所述视频游戏的难度水平;以及
至少部分地基于所述视频游戏的难度水平,确认与所述难度水平相关联的一个或多个种子值。
19.根据权利要求18所述的非暂时性计算机可读存储介质,其中所述操作还包括通过从所述一个或多个种子值中选择种子值以在所述视频游戏的执行期间使用来修改所述视频游戏的难度水平。
20.根据权利要求18所述的非暂时性计算机可读存储介质,其中所述操作还包括通过至少以下确定所述保留概率:
将所述输入数据的集合提供给预测模型,所述预测模型由机器学习系统生成;以及
至少部分地基于所述预测模型的输出来确定所述保留概率。
CN201710134652.8A 2016-03-08 2017-03-08 动态难度调整 Active CN107158702B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/064,082 US9919217B2 (en) 2016-03-08 2016-03-08 Dynamic difficulty adjustment
US15/064,082 2016-03-08

Publications (2)

Publication Number Publication Date
CN107158702A true CN107158702A (zh) 2017-09-15
CN107158702B CN107158702B (zh) 2021-05-11

Family

ID=59788797

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710134652.8A Active CN107158702B (zh) 2016-03-08 2017-03-08 动态难度调整

Country Status (2)

Country Link
US (4) US9919217B2 (zh)
CN (1) CN107158702B (zh)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107694093A (zh) * 2017-10-26 2018-02-16 广州市雷军游乐设备有限公司 在游戏中控制道具模型抓取方法、装置、设备及存储介质
CN108057242A (zh) * 2018-01-02 2018-05-22 联想(北京)有限公司 一种控制方法和电子设备
CN108769192A (zh) * 2018-05-29 2018-11-06 努比亚技术有限公司 一种游戏带宽调控方法、设备及计算机可读存储介质
CN109471712A (zh) * 2018-11-21 2019-03-15 腾讯科技(深圳)有限公司 虚拟环境中的虚拟对象的调度方法、装置及设备
CN109529351A (zh) * 2018-11-19 2019-03-29 网易(杭州)网络有限公司 游戏中虚拟对象的行为能力控制方法、装置及存储介质
CN110193203A (zh) * 2018-04-11 2019-09-03 腾讯科技(深圳)有限公司 虚拟角色竞技属性预测方法及装置
CN110548283A (zh) * 2018-05-31 2019-12-10 索尼互动娱乐有限责任公司 挑战游戏系统
CN111565809A (zh) * 2017-10-11 2020-08-21 华纳兄弟娱乐公司 基于机器学习的灵活计算机游戏
CN111841009A (zh) * 2019-04-30 2020-10-30 北京达佳互联信息技术有限公司 控制游戏难度的方法、装置、电子设备及介质
CN112236203A (zh) * 2018-01-31 2021-01-15 索尼互动娱乐有限责任公司 向玩家反应分配情景游戏玩法辅助
CN112439193A (zh) * 2019-09-04 2021-03-05 网易(杭州)网络有限公司 一种游戏难度匹配方法及装置
CN113318448A (zh) * 2021-06-11 2021-08-31 北京完美赤金科技有限公司 游戏资源展示方法及装置、设备、模型训练方法
CN114728205A (zh) * 2019-11-18 2022-07-08 索尼互动娱乐股份有限公司 游戏活动的基于服务器的个人游戏时间估计
CN116650973A (zh) * 2023-07-28 2023-08-29 深圳易帆互动科技有限公司 一种游戏内容动态调整方法、电子设备及存储介质
CN116650970A (zh) * 2023-07-27 2023-08-29 深圳易帆互动科技有限公司 一种个性化游戏调整方法、电子设备及存储介质

Families Citing this family (68)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9919217B2 (en) 2016-03-08 2018-03-20 Electronic Arts Inc. Dynamic difficulty adjustment
US10198914B2 (en) * 2016-03-31 2019-02-05 Igt Canada Solutions Ulc Gaming device for updating game play in real-time
US20180061180A1 (en) * 2016-08-26 2018-03-01 Flo, Llc System and Method for Incorporating Game Play into Product Transactions
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
US10894215B1 (en) * 2017-06-27 2021-01-19 Amazon Technologies, Inc. Matching players for networked gaming applications
US10891219B1 (en) * 2017-08-07 2021-01-12 Electronic Arts Inc. Code failure prediction system
US10949325B1 (en) 2017-08-18 2021-03-16 Electronic Arts Inc. Automated cross-session video game testing
US10632387B2 (en) * 2017-11-15 2020-04-28 International Business Machines Corporation Cognitive user experience optimization
US10572231B1 (en) * 2018-01-05 2020-02-25 Amazon Technologies, Inc. Component grouping for application development
US10694221B2 (en) 2018-03-06 2020-06-23 At&T Intellectual Property I, L.P. Method for intelligent buffering for over the top (OTT) video delivery
US11429891B2 (en) 2018-03-07 2022-08-30 At&T Intellectual Property I, L.P. Method to identify video applications from encrypted over-the-top (OTT) data
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
JP7322878B2 (ja) * 2018-06-29 2023-08-08 ソニーグループ株式会社 情報処理装置、および情報処理方法
JP6573205B2 (ja) * 2018-09-10 2019-09-11 澪標アナリティクス株式会社 一のユーザによるアプリケーションプログラムの利用に関する予測データを計算する情報処理装置、情報処理方法、プログラム及びマーケティング情報処理装置
CN109395385B (zh) * 2018-09-13 2021-05-25 深圳市腾讯信息技术有限公司 虚拟场景的配置方法和装置、存储介质、电子装置
EP3627400A1 (en) * 2018-09-20 2020-03-25 Visa International Service Association Continuous learning neural network system using rolling window
EP3870322A4 (en) * 2018-10-22 2022-08-03 Sony Interactive Entertainment LLC DATA MODEL FOR UNIFORM DATA PLATFORM
WO2020086339A1 (en) * 2018-10-22 2020-04-30 Sony Interactive Entertainment LLC Remote networked services for providing contextual information
EP3870320A4 (en) 2018-10-22 2022-06-22 Sony Interactive Entertainment LLC REMOTE NETWORK SERVICES TO PROVIDE CONTEXTUAL GAME GUIDANCE
CN110796263B (zh) * 2018-10-23 2024-06-04 谷歌有限责任公司 用于干预优化的系统和方法
US11318388B2 (en) 2018-10-23 2022-05-03 Sony Interactive Entertainment LLC Spoiler block service
WO2020086666A1 (en) 2018-10-25 2020-04-30 Sony Interactive Entertainment LLC Cross-platform consumption of in-game objects
US10918946B2 (en) * 2018-11-05 2021-02-16 Sony Interactive Entertainment LLC In-game information platform
US11593539B2 (en) 2018-11-30 2023-02-28 BlueOwl, LLC Systems and methods for facilitating virtual vehicle operation based on real-world vehicle operation data
US12001764B2 (en) 2018-11-30 2024-06-04 BlueOwl, LLC Systems and methods for facilitating virtual vehicle operation corresponding to real-world vehicle operation
GB2579613A (en) * 2018-12-06 2020-07-01 Sony Interactive Entertainment Inc Method and apparatus for determining user engagement in a videogame
GB2582303A (en) * 2019-03-18 2020-09-23 Sony Interactive Entertainment Europe Ltd System and method of challenge generation
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
US20200306635A1 (en) * 2019-03-29 2020-10-01 Rovi Guides, Inc. Content recommendation based on game progress
US20220152468A1 (en) * 2019-04-16 2022-05-19 Sony Group Corporation Information processing apparatus and information processing system
US11033824B2 (en) * 2019-06-14 2021-06-15 Roblox Corporation Predictive data preloading
CN110263937B (zh) * 2019-06-18 2021-09-28 深圳市腾讯网域计算机网络有限公司 一种数据处理方法、设备及存储介质
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
US20210081498A1 (en) * 2019-09-17 2021-03-18 Disney Enterprises, Inc. Artificial intelligence-based roleplaying experiences based on user-selected scenarios
US20210129031A1 (en) * 2019-11-05 2021-05-06 Sony Interactive Entertainment Inc. Adaptive time dilation based on player performance
US11574327B2 (en) * 2019-12-18 2023-02-07 Visa International Service Association Method, system, and computer program product for determining customer migration
WO2021150492A1 (en) 2020-01-20 2021-07-29 BlueOwl, LLC Training virtual occurrences of a virtual character using telematics
US11541317B2 (en) * 2020-02-06 2023-01-03 Sony Interactive Entertainment Inc. Automated weapon selection for new players using AI
US11648467B2 (en) 2020-02-14 2023-05-16 Microsoft Technology Licensing, Llc Streaming channel personalization
WO2021176189A1 (en) * 2020-03-05 2021-09-10 Square Enix Ltd. Rebalancing of in-game activity in multiplayer video games
US11179644B2 (en) 2020-03-30 2021-11-23 Electronic Arts Inc. Videogame telemetry data and game asset tracker for session recordings
US11351464B2 (en) * 2020-04-02 2022-06-07 Electronic Arts Inc. Automated coaching for online gaming
CN111530081B (zh) * 2020-04-17 2023-07-25 成都数字天空科技有限公司 游戏关卡设计方法、装置、存储介质及电子设备
US11446570B2 (en) 2020-05-08 2022-09-20 Electronic Arts Inc. Automated test multiplexing system
US12066883B2 (en) 2020-05-19 2024-08-20 Electronic Arts Inc. Glitch detection system
US20210374183A1 (en) * 2020-06-02 2021-12-02 Soffos, Inc. Method and Apparatus for Autonomously Assimilating Content Using a Machine Learning Algorithm
US20220004814A1 (en) * 2020-07-02 2022-01-06 Accenture Global Solutions Limited Agent environment co-creation
CN111741367B (zh) * 2020-07-23 2021-06-04 腾讯科技(深圳)有限公司 视频互动方法、装置、电子设备及计算机可读存储介质
US20220067052A1 (en) * 2020-09-01 2022-03-03 Roblox Corporation Providing dynamically customized rankings of game items
US11493995B2 (en) * 2021-03-24 2022-11-08 International Business Machines Corporation Tactile user interactions for personalized interactions
US11683283B2 (en) 2021-03-30 2023-06-20 International Business Machines Corporation Method for electronic messaging
US11533279B2 (en) 2021-03-30 2022-12-20 International Business Machines Corporation Method for electronic messaging using image based noisy content
US11697069B1 (en) 2021-08-17 2023-07-11 BlueOwl, LLC Systems and methods for presenting shared in-game objectives in virtual games
US11969653B2 (en) 2021-08-17 2024-04-30 BlueOwl, LLC Systems and methods for generating virtual characters for a virtual game
US11896903B2 (en) 2021-08-17 2024-02-13 BlueOwl, LLC Systems and methods for generating virtual experiences for a virtual game
US11504622B1 (en) 2021-08-17 2022-11-22 BlueOwl, LLC Systems and methods for generating virtual encounters in virtual games
US20230109792A1 (en) * 2021-10-13 2023-04-13 Nlevel Software Llc Software path prediction via machine learning
GB2616285A (en) * 2022-03-03 2023-09-06 Sony Interactive Entertainment Inc Content modification system and method
US20230398455A1 (en) * 2022-05-27 2023-12-14 Sony Interactive Entertainment LLC Method and system for providing game reimmersion
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
US20240033640A1 (en) * 2022-07-27 2024-02-01 Sony Interactive Entertainment Inc. User sentiment detection to identify user impairment during game play providing for automatic generation or modification of in-game effects
CN116943226B (zh) * 2023-09-20 2024-01-05 小舟科技有限公司 基于情绪识别的游戏难度调节方法、系统、设备及介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
US20110295649A1 (en) * 2010-05-31 2011-12-01 International Business Machines Corporation Automatic churn prediction
US20130316779A1 (en) * 2012-05-24 2013-11-28 Sap Ag Predictive Analytics for Targeted Player Engagement in a Gaming System
CN104657412A (zh) * 2013-11-21 2015-05-27 商业对象软件有限公司 用于指定和实现目标的推荐系统
US20160005270A1 (en) * 2014-07-03 2016-01-07 Activision Publishing, Inc. System and method for driving microtransactions in multiplayer video games

Family Cites Families (73)

* Cited by examiner, † Cited by third party
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
CN101359350B (zh) 1995-02-13 2012-10-03 英特特拉斯特技术公司 用于安全地管理在数据项上的操作的方法
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
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
EP2263190A2 (en) 2008-02-13 2010-12-22 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
US20120083330A1 (en) 2010-10-05 2012-04-05 Zynga Game Network, Inc. System and Method for Generating Achievement Objects Encapsulating Captured Event Playback
US20120115581A1 (en) 2010-11-05 2012-05-10 Wms Gaming Inc. Wagering games, methods and systems including skill-based components
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
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 (주)네오위즈게임즈 게임 자동 플레이 제어 방법 및 장치
KR101911133B1 (ko) 2012-06-21 2018-10-23 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 깊이 카메라를 이용한 아바타 구성
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 株式会社 ディー・エヌ・エー サーバー装置、及び、プログラム
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
EP3916632A1 (en) 2014-05-21 2021-12-01 Tangible Play, Inc. Virtualization of tangible interface objects
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 세종대학교산학협력단 게임 플레이 데이터의 모방에 기반한 게임 캐릭터의 인공지능 생성 시스템 및 방법
US10105603B2 (en) 2015-11-13 2018-10-23 Zynga Inc. Automated tuning of computer-implemented games
US9919217B2 (en) 2016-03-08 2018-03-20 Electronic Arts Inc. Dynamic difficulty adjustment
US10909691B2 (en) 2016-03-18 2021-02-02 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
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
EP3665653A4 (en) 2017-09-11 2021-09-29 Track160, Ltd. METHOD FOR REPRESENTING THREE-DIMENSIONAL ANIMATED GRAPHICS FROM VIDEOS
CN115019015A (zh) 2017-12-22 2022-09-06 奇跃公司 密集3d重建数据的缓存和更新
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
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

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
US20110295649A1 (en) * 2010-05-31 2011-12-01 International Business Machines Corporation Automatic churn prediction
US20130316779A1 (en) * 2012-05-24 2013-11-28 Sap Ag Predictive Analytics for Targeted Player Engagement in a Gaming System
CN104657412A (zh) * 2013-11-21 2015-05-27 商业对象软件有限公司 用于指定和实现目标的推荐系统
US20160005270A1 (en) * 2014-07-03 2016-01-07 Activision Publishing, Inc. System and method for driving microtransactions in multiplayer video games

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111565809B (zh) * 2017-10-11 2024-07-23 华纳兄弟娱乐公司 基于机器学习的灵活计算机游戏
CN111565809A (zh) * 2017-10-11 2020-08-21 华纳兄弟娱乐公司 基于机器学习的灵活计算机游戏
CN107694093A (zh) * 2017-10-26 2018-02-16 广州市雷军游乐设备有限公司 在游戏中控制道具模型抓取方法、装置、设备及存储介质
CN107694093B (zh) * 2017-10-26 2020-11-17 广州市雷军游乐设备有限公司 在游戏中控制道具模型抓取方法、装置、设备及存储介质
CN108057242A (zh) * 2018-01-02 2018-05-22 联想(北京)有限公司 一种控制方法和电子设备
CN108057242B (zh) * 2018-01-02 2020-11-20 联想(北京)有限公司 一种控制方法和电子设备
CN112236203A (zh) * 2018-01-31 2021-01-15 索尼互动娱乐有限责任公司 向玩家反应分配情景游戏玩法辅助
CN112236203B (zh) * 2018-01-31 2024-06-11 索尼互动娱乐有限责任公司 向玩家反应分配情景游戏玩法辅助
CN110193203A (zh) * 2018-04-11 2019-09-03 腾讯科技(深圳)有限公司 虚拟角色竞技属性预测方法及装置
CN108769192A (zh) * 2018-05-29 2018-11-06 努比亚技术有限公司 一种游戏带宽调控方法、设备及计算机可读存储介质
CN108769192B (zh) * 2018-05-29 2022-01-14 努比亚技术有限公司 一种游戏带宽调控方法、设备及计算机可读存储介质
CN110548283B (zh) * 2018-05-31 2023-08-22 索尼互动娱乐有限责任公司 挑战游戏系统及方法
CN110548283A (zh) * 2018-05-31 2019-12-10 索尼互动娱乐有限责任公司 挑战游戏系统
CN109529351B (zh) * 2018-11-19 2023-03-24 网易(杭州)网络有限公司 游戏中虚拟对象的行为能力控制方法、装置及存储介质
CN109529351A (zh) * 2018-11-19 2019-03-29 网易(杭州)网络有限公司 游戏中虚拟对象的行为能力控制方法、装置及存储介质
US11779837B2 (en) 2018-11-21 2023-10-10 Tencent Technology (Shenzhen) Company Limited Method, apparatus, and device for scheduling virtual objects in virtual environment
CN109471712B (zh) * 2018-11-21 2023-03-10 腾讯科技(深圳)有限公司 虚拟环境中的虚拟对象的调度方法、装置及设备
CN109471712A (zh) * 2018-11-21 2019-03-15 腾讯科技(深圳)有限公司 虚拟环境中的虚拟对象的调度方法、装置及设备
CN111841009A (zh) * 2019-04-30 2020-10-30 北京达佳互联信息技术有限公司 控制游戏难度的方法、装置、电子设备及介质
CN112439193A (zh) * 2019-09-04 2021-03-05 网易(杭州)网络有限公司 一种游戏难度匹配方法及装置
CN112439193B (zh) * 2019-09-04 2024-02-23 网易(杭州)网络有限公司 一种游戏难度匹配方法及装置
CN114728205A (zh) * 2019-11-18 2022-07-08 索尼互动娱乐股份有限公司 游戏活动的基于服务器的个人游戏时间估计
CN113318448A (zh) * 2021-06-11 2021-08-31 北京完美赤金科技有限公司 游戏资源展示方法及装置、设备、模型训练方法
CN116650970A (zh) * 2023-07-27 2023-08-29 深圳易帆互动科技有限公司 一种个性化游戏调整方法、电子设备及存储介质
CN116650970B (zh) * 2023-07-27 2024-01-30 深圳易帆互动科技有限公司 一种个性化游戏调整方法、电子设备及存储介质
CN116650973A (zh) * 2023-07-28 2023-08-29 深圳易帆互动科技有限公司 一种游戏内容动态调整方法、电子设备及存储介质

Also Published As

Publication number Publication date
US20210086083A1 (en) 2021-03-25
US11369880B2 (en) 2022-06-28
US10807004B2 (en) 2020-10-20
US20170259177A1 (en) 2017-09-14
US20190388789A1 (en) 2019-12-26
US10286323B2 (en) 2019-05-14
CN107158702B (zh) 2021-05-11
US9919217B2 (en) 2018-03-20
US20180169526A1 (en) 2018-06-21

Similar Documents

Publication Publication Date Title
CN107158702A (zh) 动态难度调整
US11141663B2 (en) Multiplayer video game matchmaking optimization
CN108499108A (zh) 视频游戏应用程序内玩游戏参数的实时动态修改和优化
US10751629B2 (en) Multiplayer video game matchmaking system and methods
CN111954564B (zh) 在球队运动中进行交互的、可说明的且改进的比赛和球员表现预测的方法和系统
US10835823B2 (en) Sensory-based dynamic game-state configuration
Khalifa et al. Talakat: Bullet hell generation through constrained map-elites
Miljković et al. The use of data mining for basketball matches outcomes prediction
Yuan et al. A mixture-of-modelers approach to forecasting NCAA tournament outcomes
CN107749006A (zh) 游戏评估方法、装置及设备
Agrawal et al. ARGO-An AI Based Responsible Gamification Framework for Online Skill Gaming Platform
CN113413608A (zh) 游戏数据处理方法、装置、计算机设备和存储介质
Landers Improving Game Design through Responsive Configuration and Procedural Generation

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