WO2017040167A1 - Context and proficiency aware player encouragement - Google Patents

Context and proficiency aware player encouragement Download PDF

Info

Publication number
WO2017040167A1
WO2017040167A1 PCT/US2016/048539 US2016048539W WO2017040167A1 WO 2017040167 A1 WO2017040167 A1 WO 2017040167A1 US 2016048539 W US2016048539 W US 2016048539W WO 2017040167 A1 WO2017040167 A1 WO 2017040167A1
Authority
WO
WIPO (PCT)
Prior art keywords
users
proficiency
micro
encouragement
user
Prior art date
Application number
PCT/US2016/048539
Other languages
French (fr)
Inventor
Kuo-Chu Lee
Zijun YAO
John David Doyle
Euthimios Panagos
Gregory S. Sternberg
Shoshana Loeb
Original Assignee
Interdigital Technology Corporation
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 Interdigital Technology Corporation filed Critical Interdigital Technology Corporation
Publication of WO2017040167A1 publication Critical patent/WO2017040167A1/en

Links

Classifications

    • 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/01Customer relationship services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking

Definitions

  • Player retention is an important business objective for developers of mobile applications and games.
  • Game data mining and player behavior analysis may provide insights for game developers to improve the game design.
  • a real-time player behavior event pattern detection and remedial action system may detect events patterns indicating risks of game abandonment and may trigger various types of remedial actions to prevent users from abandoning the game in order to improve the user experience.
  • Embodiments may include: receiving event data from a plurality of users, wherein the event data corresponds to user behavior events of the plurality of users; defining and collecting one or more micro-attributes (MAs) from the received event data, wherein the one or more MAs are defined based on user behavior events related to a specific application and used to improve user experience; determining proficiency indicators for the one or more MAs, wherein the proficiency indicators are determined by scoring, ranking, and classifying MAs for different event data in real-time against one or more models derived from one or more users grouped together based on behavior events; detecting patterns using the one or more MAs and proficiency indicators in real-time and recording the patterns in a data repository, wherein the patterns are used to detect new patterns and track the progression pattern of MAs and proficiency indicators of the one or more users to observe the learning curves; determining encouragement action configuration parameters using the MAs, proficiency indicators, and detected patterns; and
  • Embodiments are disclosed for performing context and proficiency aware player encouragement to users of an application.
  • the embodiments may include: defining a plurality of micro-attributes relevant to user progress toward completing a task in the application; receiving user behavior data from a plurality of users of the application, wherein the user behavior data comprises the micro- attributes of the plurality of users; comparing the micro- attributes of one of the plurality of users to one or more models derived from the user behavior data of one or more of the plurahty of users grouped together based on similar user behavior data; generating micro- attribute progression patterns for the micro-attributes of the one of the plurality of users based on the comparison, wherein the micro-attribute progression patterns indicate progress toward completion of the task; and providing an encouragement action to the one of the plurahty of users, wherein the encouragement action is selected from a plurality of encouragement actions based on the micro-attribute progression patterns.
  • FIG. 1A is a system diagram of an example communications system in which one or more disclosed embodiments may be implemented;
  • FIG. IB is a system diagram of an example wireless transmit/receive unit (WTRU) that may be used within the communications system illustrated in FIG. 1 A;
  • WTRU wireless transmit/receive unit
  • FIG. 1C is a system diagram of an example radio access network and an example core network that may be used within the communications system illustrated in FIG. 1 A;
  • FIG. ID is a system diagram of an example communications system in which one or more disclosed embodiments may be implemented.
  • FIG. 2 is a diagram which illustrates an exemplary micro- attribute event pattern detection and action service architecture
  • FIG. 3 is a service workflow diagram of the micro -attribute event pattern detection
  • FIG. 4 is an illustration of a micro -attribute profiling and event pattern detection engine
  • FIG. 5 is a template for micro -attribute profiling and event pattern detection
  • FIG. 6. is a graph which illustrates automated multiple micro- attributes proficiency profile evolution paths
  • FIG. 7 is a flowchart which illustrates adaptive proficiency boosting control parameter adjustments
  • FIG. 8 is a flowchart which illustrates an adaptive encouragement action service processing flow
  • FIG. 9 is a state diagram which illustrates automatic recommendation of encouragement actions.
  • FIG. 10 is a diagram illustrating a method for performing context and proficiency aware player encouragement to users of an application.
  • FIG. 1A is a diagram of an example communications system 100 in which one or more disclosed embodiments may be implemented.
  • the communications system 100 may be a multiple access system that provides content, such as voice, data, video, messaging, broadcast, etc., to multiple wireless users.
  • the communications system 100 may enable multiple wireless users to access such content through the sharing of system resources, including wireless bandwidth.
  • the communications systems 100 may employ one or more channel access methods, such as code division multiple access (CDMA), time division multiple access (TDMA), frequency division multiple access (FDMA), orthogonal FDMA (OFDMA), single-carrier FDMA (SC-FDMA), and the hke.
  • CDMA code division multiple access
  • TDMA time division multiple access
  • FDMA frequency division multiple access
  • OFDMA orthogonal FDMA
  • SC-FDMA single-carrier FDMA
  • the communications system 100 may include wireless transmit/receive units (WTRUs) 102a, 102b, 102c, 102d, a radio access network (RAN) 104, a core network 106, a pubhc switched telephone network (PSTN) 108, the Internet 110, and other networks 112, though it will be appreciated that the disclosed embodiments contemplate any number of WTRUs, base stations, networks, and/or network elements.
  • WTRUs 102a, 102b, 102c, 102d may be any type of device configured to operate and/or communicate in a wireless environment.
  • the WTRUs 102a, 102b, 102c, 102d may be configured to transmit and/or receive wireless signals and may include user equipment (UE), a mobile station, a fixed or mobile subscriber unit, a pager, a cellular telephone, a personal digital assistant (PDA), a smartphone, a laptop, a netbook, a personal computer, a wireless sensor, consumer electronics, and the like.
  • UE user equipment
  • PDA personal digital assistant
  • smartphone a laptop
  • netbook a personal computer
  • a wireless sensor consumer electronics, and the like.
  • the communications systems 100 may also include a base station
  • Each of the base stations 114a, 114b may be any type of device configured to wirelessly interface with at least one of the WTRUs 102a, 102b, 102c, 102d to facilitate access to one or more communication networks, such as the core network 106, the Internet 110, and/or the other networks 112.
  • the base stations 114a, 114b may be a base transceiver station (BTS), a Node-B, an eNode B, a Home Node B, a Home eNode B, a site controller, an access point (AP), a wireless router, and the like.
  • BTS base transceiver station
  • AP access point
  • the base station 114a may be part of the RAN 104, which may also include other base stations and/or network elements (not shown), such as a base station controller (BSC), a radio network controller (RNC), relay nodes, etc.
  • BSC base station controller
  • RNC radio network controller
  • the base station 114a and/or the base station 114b may be configured to transmit and/or receive wireless signals within a particular geographic region, which may be referred to as a cell (not shown).
  • the cell may further be divided into cell sectors. For example, the cell associated with the base station 114a may be divided into three sectors.
  • the base station 114a may include three transceivers, i.e., one for each sector of the cell.
  • the base station 114a may employ multiple-input multiple-output (MIMO) technology and, therefore, may utihze multiple transceivers for each sector of the cell.
  • MIMO multiple-input multiple-output
  • the base stations 114a, 114b may communicate with one or more of the WTRUs 102a, 102b, 102c, 102d over an air interface 116, which may be any suitable wireless communication link (e.g., radio frequency (RF), microwave, infrared (IR), ultraviolet (UV), visible light, etc.).
  • the air interface 116 may be established using any suitable radio access technology (RAT).
  • RAT radio access technology
  • the base station 114a in the RAN 104 and the WTRUs 102a, 102b, 102c may implement a radio technology such as Universal Mobile Telecommunications System (UMTS) Terrestrial Radio Access (UTRA), which may establish the air interface 116 using wideband CDMA (WCDMA).
  • WCDMA may include communication protocols such as High-Speed Packet Access (HSPA) and/or Evolved HSPA (HSPA+).
  • HSPA may include High-Speed Downhnk Packet Access (HSDPA) and/or High-Speed Uplink Packet Access (HSUPA).
  • the base station 114a and the WTRUs are identical to the base station 114a and the WTRUs.
  • E-UTRA Evolved UMTS Terrestrial Radio Access
  • LTE Long Term Evolution
  • LTE-A LTE-Advanced
  • 102a, 102b, 102c may implement radio technologies such as IEEE 802.16 (i.e., Worldwide Interoperability for Microwave Access (WiMAX)), CDMA2000, CDMA2000 IX, CDMA2000 EV-DO, Interim Standard 2000 (IS-2000), Interim Standard 95 (IS-95), Interim Standard 856 (IS-856), Global System for Mobile communications (GSM), Enhanced Data rates for GSM Evolution (EDGE), GSM EDGE (GERAN), and the like.
  • IEEE 802.16 i.e., Worldwide Interoperability for Microwave Access (WiMAX)
  • CDMA2000, CDMA2000 IX, CDMA2000 EV-DO Code Division Multiple Access 2000
  • IS-95 Interim Standard 95
  • IS-856 Interim Standard 856
  • GSM Global System for Mobile communications
  • GSM Global System for Mobile communications
  • EDGE Enhanced Data rates for GSM Evolution
  • GERAN GSM EDGERAN
  • the base station 114b in FIG. 1A may be a wireless router, Home
  • Node B, Home eNode B, or access point may utilize any suitable RAT for facilitating wireless connectivity in a localized area, such as a place of business, a home, a vehicle, a campus, and the like.
  • the base station 114b and the WTRUs 102c, 102d may implement a radio technology such as IEEE 802.11 to establish a wireless local area network (WLAN).
  • the base station 114b and the WTRUs 102c, 102d may implement a radio technology such as IEEE 802.15 to establish a wireless personal area network (WPAN).
  • WLAN wireless local area network
  • WPAN wireless personal area network
  • the base station 114b and the WTRUs 102c, 102d may utilize a cellular-based RAT (e.g., WCDMA, CDMA2000, GSM, LTE, LTE-A, etc.) to establish a picocell or femtocell.
  • a cellular-based RAT e.g., WCDMA, CDMA2000, GSM, LTE, LTE-A, etc.
  • the base station 114b may have a direct connection to the Internet 110.
  • the base station 114b may not be required to access the Internet 110 via the core network 106.
  • the RAN 104 may be in communication with the core network
  • the core network 106 may be any type of network configured to provide voice, data, applications, and/or voice over internet protocol (VoIP) services to one or more of the WTRUs 102a, 102b, 102c, 102d.
  • the core network 106 may provide call control, billing services, mobile location-based services, pre-paid calling, Internet connectivity, video distribution, etc., and/or perform high- level security functions, such as user authentication.
  • the RAN 104 and/or the core network 106 may be in direct or indirect communication with other RANs that employ the same RAT as the RAN 104 or a different RAT.
  • the core network 106 may also be in communication with another RAN (not shown) employing a GSM radio technology.
  • the core network 106 may also serve as a gateway for the
  • the PSTN 108 may include circuit-switched telephone networks that provide plain old telephone service (POTS).
  • POTS plain old telephone service
  • the Internet 110 may include a global system of interconnected computer networks and devices that use common communication protocols, such as the transmission control protocol (TCP), user datagram protocol (UDP) and the internet protocol (IP) in the TCP/IP internet protocol suite.
  • TCP transmission control protocol
  • UDP user datagram protocol
  • IP internet protocol
  • the networks 112 may include wired or wireless communications networks owned and/or operated by other service providers.
  • the networks 112 may include another core network connected to one or more RANs, which may employ the same RAT as the RAN 104 or a different RAT.
  • Some or all of the WTRUs 102a, 102b, 102c, 102d in the communications system 100 may include multi-mode capabihties, i.e., the WTRUs 102a, 102b, 102c, 102d may include multiple transceivers for communicating with different wireless networks over different wireless links.
  • the WTRU 102c shown in FIG. 1A may be configured to communicate with the base station 114a, which may employ a cellular -based radio technology, and with the base station 114b, which may employ an IEEE 802 radio technology.
  • FIG. IB is a system diagram of an example WTRU 102.
  • the WTRU 102 may include a processor 118, a transceiver 120, a transmit/receive element 122, a speaker/microphone 124, a keypad 126, a display /touchp ad 128, non-removable memory 130, removable memory 132, a power source 134, a global positioning system (GPS) chipset 136, and other peripherals 138.
  • GPS global positioning system
  • the processor 118 may be a general purpose processor, a special purpose processor, a conventional processor, a digital signal processor (DSP), a plurality of microprocessors, one or more microprocessors in association with a DSP core, a controller, a microcontroller, Application Specific Integrated Circuits (ASICs), Field Programmable Gate Array (FPGAs) circuits, any other type of integrated circuit (IC), a state machine, and the like.
  • the processor 118 may perform signal coding, data processing, power control, input/output processing, and/or any other functionality that enables the WTRU 102 to operate in a wireless environment.
  • the processor 118 may be coupled to the transceiver 120, which may be coupled to the transmit/receive element 122. While FIG. IB depicts the processor 118 and the transceiver 120 as separate components, it will be appreciated that the processor 118 and the transceiver 120 may be integrated together in an electronic package or chip.
  • the transmit/receive element 122 may be configured to transmit signals to, or receive signals from, a base station (e.g., the base station 114a) over the air interface 116.
  • a base station e.g., the base station 114a
  • the transmit/receive element 122 may be an antenna configured to transmit and/or receive RF signals.
  • the transmit/receive element 122 may be an emitter/detector configured to transmit and/or receive IR, UV, or visible light signals, for example.
  • the transmit/receive element 122 may be configured to transmit and receive both RF and hght signals. It will be appreciated that the transmit/receive element 122 may be configured to transmit and/or receive any combination of wireless signals.
  • the WTRU 102 may include any number of transmit/receive elements 122. More specifically, the WTRU 102 may employ MIMO technology. Thus, in one embodiment, the WTRU 102 may include two or more transmit/receive elements 122 (e.g., multiple antennas) for transmitting and receiving wireless signals over the air interface 116.
  • the transceiver 120 may be configured to modulate the signals that are to be transmitted by the transmit/receive element 122 and to demodulate the signals that are received by the transmit/receive element 122.
  • the WTRU 102 may have multi-mode capabilities.
  • the transceiver 120 may include multiple transceivers for enabling the WTRU 102 to communicate via multiple RATs, such as UTRA and IEEE 802.11, for example.
  • the processor 118 of the WTRU 102 may be coupled to, and may receive user input data from, the speaker/microphone 124, the keypad 126, and/or the display /touchp ad 128 (e.g., a liquid crystal display (LCD) display unit or organic hght-emitting diode (OLED) display unit).
  • the processor 118 may also output user data to the speaker/microphone 124, the keypad 126, and/or the display /touchp ad 128.
  • the processor 118 may access information from, and store data in, any type of suitable memory, such as the non-removable memory 130 and/or the removable memory 132.
  • the nonremovable memory 130 may include random-access memory (RAM), read-only memory (ROM), a hard disk, or any other type of memory storage device.
  • the removable memory 132 may include a subscriber identity module (SIM) card, a memory stick, a secure digital (SD) memory card, and the like.
  • SIM subscriber identity module
  • SD secure digital
  • the processor 118 may access information from, and store data in, memory that is not physically located on the WTRU 102, such as on a server or a home computer (not shown).
  • the processor 118 may receive power from the power source 134, and may be configured to distribute and/or control the power to the other components in the WTRU 102.
  • the power source 134 may be any suitable device for powering the WTRU 102.
  • the power source 134 may include one or more dry cell batteries (e.g., nickel-cadmium (NiCd), nickel-zinc (NiZn), nickel metal hydride (NiMH), lithium-ion (Li-ion), etc.), solar cells, fuel cells, and the like.
  • the processor 118 may also be coupled to the GPS chipset 136, which may be configured to provide location information (e.g., longitude and latitude) regarding the current location of the WTRU 102.
  • location information e.g., longitude and latitude
  • the WTRU 102 may receive location information over the air interface 116 from a base station (e.g., base stations 114a, 114b) and/or determine its location based on the timing of the signals being received from two or more nearby base stations. It will be appreciated that the WTRU 102 may acquire location information by way of any suitable location-determination method while remaining consistent with an embodiment.
  • the processor 118 may further be coupled to other peripherals
  • the peripherals 138 may include one or more software and/or hardware modules that provide additional features, functionality and/or wired or wireless connectivity.
  • the peripherals 138 may include an accelerometer, an e-compass, a satellite transceiver, a digital camera (for photographs or video), a universal serial bus (USB) port, a vibration device, a television transceiver, a hands free headset, a Bluetooth® module, a frequency modulated (FM) radio unit, a digital music player, a media player, a video game player module, an Internet browser, and the like.
  • an accelerometer an e-compass, a satellite transceiver, a digital camera (for photographs or video), a universal serial bus (USB) port, a vibration device, a television transceiver, a hands free headset, a Bluetooth® module, a frequency modulated (FM) radio unit, a digital music player, a media player, a video game player module, an Internet browser, and the like.
  • FM frequency modulated
  • FIG. 1C is a system diagram of the RAN 104 and the core network 106 according to an embodiment.
  • the RAN 104 may employ an E-UTRA radio technology to communicate with the WTRUs 102a, 102b, 102c over the air interface 116.
  • the RAN 104 may also be in communication with the core network 106.
  • the RAN 104 may include eNode-Bs 140a, 140b, 140c, though it will be appreciated that the RAN 104 may include any number of eNode-Bs while remaining consistent with an embodiment.
  • the eNode-Bs 140a, 140b, 140c may each include one or more transceivers for communicating with the WTRUs 102a, 102b, 102c over the air interface 116.
  • the eNode-Bs 140a, 140b, 140c may implement MIMO technology.
  • the eNode-B 140a for example, may use multiple antennas to transmit wireless signals to, and receive wireless signals from, the WTRU 102a.
  • Each of the eNode-Bs 140a, 140b, 140c may be associated with a particular cell (not shown) and may be configured to handle radio resource management decisions, handover decisions, scheduling of users in the uplink and/or downhnk, and the like. As shown in FIG. 1C, the eNode-Bs 140a, 140b, 140c may communicate with one another over an X2 interface.
  • the core network 106 shown in FIG. 1C may include a mobility management entity gateway (MME) 142, a serving gateway 144, and a packet data network (PDN) gateway 146. While each of the foregoing elements are depicted as part of the core network 106, it will be appreciated that any one of these elements may be owned and/or operated by an entity other than the core network operator.
  • MME mobility management entity gateway
  • PDN packet data network
  • the MME 142 may be connected to each of the eNode-Bs 140a,
  • the MME 142 may be responsible for authenticating users of the WTRUs 102a, 102b, 102c, bearer activation/deactivation, selecting a particular serving gateway during an initial attach of the WTRUs 102a, 102b, 102c, and the like.
  • the MME 142 may also provide a control plane function for switching between the RAN 104 and other RANs (not shown) that employ other radio technologies, such as GSM or WCDMA.
  • the serving gateway 144 may be connected to each of the eNode-
  • the serving gateway 144 may generally route and forward user data packets to/from the WTRUs 102a, 102b, 102c.
  • the serving gateway 144 may also perform other functions, such as anchoring user planes during inter-eNode B handovers, triggering paging when downlink data is available for the WTRUs 102a, 102b, 102c, managing and storing contexts of the WTRUs 102a, 102b, 102c, and the like.
  • the serving gateway 144 may also be connected to the PDN gateway 146, which may provide the WTRUs 102a, 102b, 102c with access to packet-switched networks, such as the Internet 110, to facilitate communications between the WTRUs 102a, 102b, 102c and IP-enabled devices.
  • the PDN gateway 146 may provide the WTRUs 102a, 102b, 102c with access to packet-switched networks, such as the Internet 110, to facilitate communications between the WTRUs 102a, 102b, 102c and IP-enabled devices.
  • the core network 106 may facilitate communications with other networks.
  • the core network 106 may provide the WTRUs 102a, 102b, 102c with access to circuit-switched networks, such as the PSTN 108, to facilitate communications between the WTRUs 102a, 102b, 102c and traditional land-line communications devices.
  • the core network 106 may include, or may communicate with, an IP gateway (e.g., an IP multimedia subsystem (IMS) server) that serves as an interface between the core network 106 and the PSTN 108.
  • IMS IP multimedia subsystem
  • the core network 106 may provide the WTRUs 102a, 102b, 102c with access to the networks 112, which may include other wired or wireless networks that are owned and/or operated by other service providers.
  • WLAN 160 may include an access router 165.
  • the access router may contain gateway functionality.
  • the access router 165 may be in communication with a plurality of access points (APs) 170a, 170b.
  • the communication between access router 165 and APs 170a, 170b may be via wired Ethernet (IEEE 802.3 standards), or any type of wireless communication protocol.
  • AP 170a is in wireless communication over an air interface with WTRU 102 d.
  • FIG. ID is a system diagram of an example communications system 175 in which one or more disclosed embodiments may be implemented.
  • communications system 175 may be implemented using all or a portion of system 100 as shown and described with respect to FIG. 1A.
  • User device 180a, server 185, and/or service server 190 may communicate over a communications network 195. These communications may be wireless, wired, or any combination of wireless and wired.
  • Communications network 195 may include the internet 110, core network 106, other networks 112, or any other suitable communications network or combination of communications networks.
  • User device 180a may include a WTRU (such as WTRU 102a), or any suitable user computing and/or communications device such as a desktop computer, web appliance, interactive television (ITV) device, gaming console (such as Microsoft XBOXTM or Sony PlaystationTM) or the like.
  • User device 180a and/or applications executing on user device 180a may generate events such as mouse clicks, keyboard strokes, and the like. These events may be processed by user device 180a and/or may be transmitted to another device such as server 185 or service server 190.
  • Server 185 may include a web server, application server, data server, or any combination of these or other types of servers. Server 185 may include any suitable server device such as a server computer, personal computer, or the like.
  • Server 185 may host applications accessible to user device 185a.
  • server 185 may include a gaming server hosting a massively multiplayer online game (MMOG), an email server, a web server hosting a website such as a social media website or blog, or other types of servers typically accessible by a user device over a computer communications network.
  • MMOG massively multiplayer online game
  • email server a web server hosting a website such as a social media website or blog
  • web server hosting a website such as a social media website or blog
  • User device 180a may access server 185 over computer system
  • user device 180a may access a game server hosted on server 185 to participate in a multiplayer online game. Access of server 185 by user device 180a may be via a client application executing on user device 180a or any other suitable mechanism.
  • the server 185 may receive events from user device 180a, or may send events to user device 180a. For example, the server 185 may send an event to user device 180a indicating that additional in-game resources are required for continued play.
  • Service server 190 may include a web server, application server, data server, or any combination of these or other types of servers hosted on a server device.
  • Service server 190 may include any suitable server device such as a server computer, personal computer, or the like.
  • Service server 190 may be configured to communicate with server 185, for example, over communications network 195 or any other suitable communications medium.
  • Service server may be co-located with, combined with, or in direct communication with server 185.
  • Service server 190 may communicate with server 185 to provide services, such as third party services, to users of server 185. For example, a subscriber to a game hosted on server 185 may access server 185 from user device 180A and may subscribe to third party services for the game which are hosted on service server 190.
  • Service server 190 may be configured to receive and/or intercept events transmitted between user device 180a and server 185. For example, server 185 may be configured to send an event destined for user device 180a to service server 190 instead of sending the event to the user device 180a, and the service server 190 may send the event or another event, signal, or message to device 180a.
  • server 185 may also send the event to service server 190.
  • Service server 190 may then also send the event or it may send another event, signal, or message to device 180a.
  • server 185 may send an event to service server 190 indicating a requirement of a user of user device 180a
  • service server 190 may send the event or another signal or message to device 180a indicating that a resource is available to acquire the requirement.
  • service server 190 may only forward the event to device 180a under certain conditions, such as based on a user preference and/or context information relating to the user of device 180a.
  • the functions of the service server 190 and server 185 may be implemented using the same device. In an alternative embodiment, the functions of the service server 190 and server 185 may be implemented across a number of additional devices.
  • user devices 180b and 180c may communicate with server 185 and or service server 190 via user device 180a.
  • user device 180a may forward a notification message from service server 190 to user device 180b via a peer to peer connection and may forward a notification message from service server 190 to user device 180c via communications network 195.
  • user devices 180a, 180b, and 180c may form a network, such as a peer-to-peer network, and such network may have a mesh topology, a star topology using user device 180a as a coordinating node, or any other suitable topology.
  • the peer-to-peer network may operate independently of server 185 and/or service server 190, and may incorporate functionality that otherwise would be hosted by server 185 and/or service server 190, such as functionality described herein.
  • the proposed event pattern detection and action system may also assist game and application developers to incorporate additional functionality in existing games or applications or offer additional games or apphcations.
  • a game independent intrinsic player characteristic profile calibration method and system may be used to assess a game independent player skill characteristic profile based on scores from multiple game sessions.
  • the game independent player skill profile may be used as input to provide online help that matches player's characteristics.
  • the effectiveness of actions may be measured using feedback information provided by users or measurements on behavior improvements.
  • micro- attributes In addition to game independent player profiling, it may also be important to model and analyze detailed "micro- attributes" of one or more users specific to the tasks and stages of each game or application. For example, different types of prizes, weapons, and treasures collected by a player may be considered types of micro -attributes. Achievement levels may also be defined by attributes such as score, kill rate, and failure rate. In an embodiment, these micro-attributes may be tiny indicators (e.g., not the score displayed to a user) and may provide feedback regarding user's actual in-game performance, which may not be related to a tangible score. The micro- attributes may be of interest to anyone learning a new skill. The micro- attributes may be application specific, complex, diverse, and may be hidden from the player, coach, or spectators (e.g., prize earned, level passed, killing types of monsters, etc.).
  • a game may consist of multiple levels, with each level containing various prizes that may be collected. Some of these prizes may result in additional prizes becoming available in more advanced levels or in better weapons or character abilities.
  • a player may still be able to go through all levels without collecting all prizes and get an overall score of X, if applicable.
  • a second player may not complete all levels but if she collects a lot of prizes at each level, the result may be the same overall score as the first player.
  • two "yardsticks" or models may be needed in order to compare a player against her own past session performance or against other players. Based on the comparison results, specific encouragement messages may be provided to help improve user experience.
  • micro-attributes and reference models may be derived from multiple selected groups of users based on one or more parameters such as session durations, frequency, achievements, and scores.
  • Disclosed herein are methods and systems to define and detect detailed and game or application specific micro-attributes for the purpose of supporting developers and owners of these games or applications in improving user experience. For example, user experience may be improved by introducing specific encouragement actions based on one or more micro-attribute progression patterns.
  • Some micro-attributes may be hidden from players and may be observed indirectly by one or more non-linear or abnormal player behavior patterns.
  • micro-attributes may comprise the knowledge, strategies, and basic skills required to accomphsh different types of tasks.
  • Tasks by way of example, may include selecting a weapon and taking action steps for killing different types of monsters, navigating through different paths to collect treasures and obtaining prizes, building different virtual structures with proper types of tools and resources, and learning the rules and steps to solve a puzzle, for example, a Rubik's cube.
  • micro-attributes Since users may gain skills and knowledge on one or more micro- attributes at different paces, the relative progress of a user's proficiency level observed from one or more micro-attributes is likely to differ and may change over time when using different reference groups. For most of the mobile applications and games that have a relatively short lifecycle, the progress of users modeled by the micro-attributes may be faster than traditional athletic games, for example, basketball or baseball games which require years of training. Therefore, efficient methods for tracking and detecting the relatively faster progression patterns present another challenging problem to address.
  • defining, detecting and triggering effective encouragement actions and feedback requires a deep understanding of both a game or apphcation context and a user's proficiency level for one or more micro-attributes against reference models.
  • Real-time encouragement and feedback may also require different kinds of messages or actions designed for different stages or phases of a game or apphcation task, for example, passing a monster cave.
  • Examples of encouragement types may include actions for avoiding frustration at the beginning of a session, keeping intermediate one or more users motivated to achieve higher levels, improving effectiveness of user retention, and recommending appropriate coaching for improving user performance at different skill levels.
  • Disclosed herein are efficient methods and systems for providing an application independent event pattern processing engine for game or application developers to specify, track, analyze, and detect game or application dependent event patterns based on detailed player behavior micro- attributes that are defined for tasks and/or a sub-division of tasks for individuals and groups of users.
  • the player behavior micro- attributes may be defined by game developers and/or third party service providers.
  • the proposed system may support multiple types of statistical analysis methods including machine learning algorithms and data mining processes to discover one or more micro-attributes in real-time or by using batch processes.
  • the disclosed methods and systems may also support rapid creation of effective encouragement actions based on one or more micro-attributes for one or more users in real-time.
  • the proposed system may trigger the execution of encouragement service actions defined by the developers in an automatic fashion.
  • the disclosed system may analyze one or more micro- attributes from a selected group of users on one or more tasks or subtasks to generate one or more models for use as a "yardstick" in assessing the proficiency level of one or more micro-attributes of each individual user against the models.
  • the proficiency assessment of a user with respect to one or more specific application tasks, and/or sub-tasks may comprise scores or rankings of one or more micro-attributes against the models derived from one or more users grouped by criteria. Criteria may comprise by way of example, cumulative engagement time, session frequency, and/or achievement scores.
  • the disclosed proficiency level assessment method may comprise one or more proficiency indicators, each representing the scores, ranking, or classification of one or more micro-attributes.
  • a micro-attribute kill rate may be defined based the number of enemies killed divided by a unit of time. The unit of time may be specified per game, per session of the game, or per hour.
  • the proficiency level indicator may be defined based on the percentile ranking of the kill rate against a statistical distribution model for a set of players. The average and standard distribution of a normal distribution model may be used to calculate the rank of the proficiency level indicator.
  • the proficiency level of the kill rate may also depend on two proficiency indicators derived from the micro-attributes; two examples include speed and shooting accuracy.
  • the speed proficiency of a player may be assessed by one micro- attribute: reaction time or number of clicks per minute when encountering an enemy.
  • the accuracy proficiency may be assessed by two micro-attributes: a number of bullets fired to kill one or more enemies and a number of bullets which miss the one or more enemies.
  • the disclosed system may support real-time and batch processing of one or more machine learning and data mining processes to optimize the models and scoring methods.
  • a game developer may choose to also define kill rate and/or death rate as well as score or game level as micro-attributes. Some high level attributes may be dependent on one or more low level attributes.
  • the proficiency level may provide the percentile ranking for both high level and low level attributes.
  • a proficiency indicator such as kill rate for a first person shooting game may comprise two micro-attributes such as accuracy and speed. Each micro-attribute may have a statistical distribution for players with different levels of experience or play time.
  • the system may identify the specific micro-attribute, for example, accuracy or speed, that may have hindered the player's kill rate.
  • the game developer may also identify attributes, for example, accuracy, speed, or other attributes such as navigation, that the player has made good progress on but was not necessarily aware of.
  • the disclosed system may track the progression of the micro-attributes and proficiency indicators to observe the learning curves of individual users on one or more micro-attributes. By observing and analyzing the progression pattern of proficiency indicators of individual users and groups of users, the disclosed system may discover hidden, for example, latent clues on the uneven or abnormal progression patterns with respect to different groups of users in one or more stages or phases of one or more tasks.
  • the proposed system may support real-time and batch processing of one or more machine learning and data mining processes to discover one or more optimized models for one or more sub-divided progression stages of one or more tasks.
  • the disclosed system may have collected and discovered a set of proficiency progression models from different groups of users.
  • the proposed system may then score the micro-attribute inputs against one or more selected distribution models to provide the relative progression patterns of each user against different models for different tasks in real-time.
  • effective encouragement actions may be provided to users to accelerate the learning curve of one or more micro-attributes associated with specific accomplishments related to the current stage of task, in real-time, and suggest strategies to achieve better performance on subsequent tasks.
  • the disclosed method and system may be comprised of service functional interfaces as shown in FIG. 2.
  • FIG. 2 illustrates a micro-attribute event pattern detection and action service architecture 200.
  • a developer 202 may design and deploy an application to a game/application server 204.
  • users 206 may use a personal computer (PC) or one or more mobile devices to interact with the game/application server 204.
  • PC personal computer
  • the users 206 may interact with social network servers 208.
  • a micro-attribute profiling and event pattern detection and action service server (“service server”) 210 may provide an easy to use GUI template as well as APIs, for example, a web service interface, for the game developer 202 to define micro-attributes and proficiency indicators as well as event pattern detections and one or more action parameters.
  • the game developer 202 may share the definition of the micro-attributes and proficiency indicators to third party service providers 212.
  • third party service providers 212 may use a GUI template to enter one or more micro-attribute definitions, event pattern detection rules and actions that may send encouragement messages and/or invoke API calls.
  • the game server 204 may report game events in real-time or in batch.
  • the service server 210 may also collect game/application data from users 206 and user 206 devices and provide encouragement messages or actions directly.
  • step 1 the game or application providers, for example, game developers 202, may create, deploy and maintain games in one or more game servers 204.
  • step 2 the game developer 202 may define micro-attributes, proficiency indicator and models, event pattern triggers, and actions using a GUI template stored using a web service API to the repository of the service server 210.
  • a first person shooting game may have speed and accuracy defined as micro- attributes.
  • steps 3 and 4 the interaction between the first user 214 and the game server 204 may be recorded and sent from the game server 204 to the service server 210 as game events.
  • the interaction between the second user 216 and the game server 204 may be recorded and sent from the game server 204 to the service server 210 as game events.
  • the game events may contain information on the state of the one or more users 206, for example, the first user 214 and the second user 216.
  • One or more events may be sent to the service server 210 in real-time or as a batch to report the evolution of a state of the one or more micro-attributes for each user 206.
  • the event reporting by the game server 204 to the service server 210 may be repeated for one or more game sessions.
  • the game developer 202 may also disable or filter the amount of data reported to the service server 210 to prevent network congestion.
  • the service server 210 may analyze the micro-attribute evolution over time across multiple users 206 and user groups. Each user group may segmented by one or more criteria that may be defined by the game developer 202. For example, one criterion may be based on play score. Other criteria may be based on combination of play score and play time. Based on the distribution of the micro-attributes, proficiency indicators may be generated to represent the normalized percentage ranking of each micro- attribute and high level attributes that may be depended on one or more combination of micro-attributes.
  • the service server 210 may detect progression patterns for combinations of proficiency indicators and triggers action alerts.
  • the action alerts may be processed based on game developer 202 and/or third party 212 provided APIs.
  • the service server 210 210 may use the APIs to generate one or more in-game action request, for example, for the first user 214, containing detected event patterns and the state of micro- attributes and proficiency indicators to be provided to the game server 204.
  • step 11 the game server 204 may activate and send the specific encouragement actions for the first user 214.
  • step 12 the service server 204 may directly send an encouragement message to the second user 216.
  • the disclosed methods and systems provide templates for game developers 202 and/or third party service providers 212 to define micro- attributes and specify event patterns on one or more micro-attributes.
  • a smart device e.g., the Apple iWatch
  • an enabled gamification application such as training an athlete (e.g., a runner, swimmer, or martial artist)
  • the disclosed embodiments may track and provide instant encouragement based on multiple micro-attributes of the athlete.
  • heart rate at different exercise intensities, strength and durability of different muscle groups, and other specific factors may be critical to the success of a specific training method.
  • a task may be divided, for example, the 100 meter dash, into a number of sub-tasks, similar to the micro- attributes, based on "tipping points", "milestones", or "phases” that are used for determining the overall outcome for this task.
  • the 100 meter dash there may be three phases: start, mid-race, and finish.
  • start, mid-race, and finish usually the first 40 meters cover the start phase in which racers accelerate to their maximum speed.
  • racers try to hold their maximum speed.
  • racers may make extra effort to complete the race.
  • the tipping point largely affects a racer's final result of the whole race. Therefore, in addition to attributes that measure user performance at the task level, micro-attribute may be defined for measuring finer scale performance metrics at each distinct task phase.
  • the encouragement action may pin point the specific exercise for specific muscle groups that may improve the first 40 meters or the effort required to improve the durability of the last 20 meters. While this example is given in the context of a 100 meter dash, the concepts of tipping points and phases may be applied to a broad set of tasks and/or challenges.
  • the disclosed system may support automated encouragement generation using default criteria.
  • the default criteria may comprise praising users with fast improving or higher than average micro- attributes or providing help to users with degrading or lower than average micro-attributes.
  • the disclosed system may generate default encouragement triggers with additional context information. Examples of context information comprise trigger conditions and thresholds settings that may be used by the developers to select and provide effective encouragement to users. For example, when detecting deceleration patterns of one or more micro-attributes of a user that are worse than other users, the disclosed system may provide encouragements to users to make extra efforts.
  • the service server 210 may comprise a micro -attribute profiler 402, event pattern detection engine 404, encouragement action services 406 and a data repository 408 implementing one or more of the functions described herein.
  • the service server 210 may be interfaced with one or more social networks servers 208 and may include a social activity profiler 410.
  • the social activity profiler 410 may provide encouragement actions based on a user's 206 social network, which is described detail below.
  • the micro-attribute profiler 402 may obtain micro-attribute and model definition templates provided by game developers 202 and stored in the data repository 408 for one or more games/applications.
  • the micro-attribute profiler 402 may additionally collect selected micro-attributes from game event inputs reported by the game server for each user 206 in real-time or in batch and analyze the micro-attributes and build distribution models for one or more micro-attributes.
  • the micro-attribute profiler 402 may score, rank, or classify micro-attributes from input events in real-time against one or more distribution models to obtain "proficiency indicators" for one or more micro-attributes.
  • the micro-attribute profiler 402 may record the micro- attributes and proficiency indicators in the data repository 408.
  • the event pattern detection engine 404 may detect patterns using proficiency indicators, micro-attributes, and other user events. For example, the event pattern detection engine 404 may detect a user 206 is having difficulties passing a level or having a high death rate and low proficiency in a kill rate.
  • the event pattern detection engine 404 may also trigger actions to send alert messages or invoke actions.
  • a game provider or game developer 202 may specify the rule by filling templates in advance for triggering encouragement such as, "if a player fails for 3 consecutive times", then do "encouragement action”.
  • the event pattern detection engine 404 may count the number of consecutive failure events from the user 206 and trigger one or more encouragement actions when the count equals three. Furthermore, the event pattern detection engine 404 may record the matched event patterns and actions in a data repository for tracking the progress of one or more micro-attributes and for addition of one or more new event patterns.
  • the action processing done in, for example, the encouragement and action services 406, may include processing triggered actions to send encouragement messages, feedback, or some other content to user devices directly or through proxies, mediators, or external services.
  • the encouragement and action services 406 may identify the specific micro- attributes that cause the difficulties in accomplishing a current task as well as micro-attributes that may be useful for future tasks.
  • the action processing may also include processing triggered actions to invoke game or application related functions using API interfaces provided by game or application developers 202 or third party service providers 212.
  • triggered actions may be used to call function interfaces to boost the power, for example, speed, force, or shield, of an avatar or weapon.
  • Other on-line help functions may additionally be invoked to improve a user's 206 performance or trigger a practice session to support the user 206 in progressing their performance, for example, honing one or more skills for a particular challenge.
  • the action processing may support activation and utilizing the result of real-time and batch processing of machine learning and data mining processes developed by game developers or third party service providers.
  • Micro-attributes may be defined by developers 202 or third party service providers 212 and stored in the data repository 408.
  • Event pattern matching templates may be provided for developers 202 or administrators to define micro-attributes for each application task.
  • the templates may also contain threshold control parameters for each micro -attribute.
  • predefined actions may be triggered to invoke corresponding encouragement actions, by the encouragement action services 406, to users 206.
  • an event pattern may be specified to detect a user who spent an excessive amount of time collecting treasures or wandering in a game world but does not know which weapon to use or have adequate battle skills required to advance beyond a monster cave.
  • Another exemplary event pattern may be a user attempting to solve a Rubik's cube without making sufficient progress.
  • the service server 210 may send encouragement actions, which may be defined by the game or application developers 202 in a provided template. For example, for a user 206 who is stuck at a specific game level but has collected many prizes, the detection rule may encourage the player to use some of the collected prizes to buy a better weapon in order to advance by, in one example, killing a monster. On the other hand, for a player who focuses on completing game levels but does not collect the appropriate weapons or shields that may be required to pass an advanced game level, the service server 210 may suggest collection of the required weapons or shields.
  • the triggered encouragement events may comprise detailed context information about a task, thresholds on the micro-attributes required for the task, and a sequence of actions taken by the user 206.
  • the disclosed system may provide a progressive pattern triggered recording to save the sequence of steps executed by a player who solved the puzzle and navigated through the track faster and more efficiently than other players.
  • These triggering patterns and corresponding recorded sequences of actions may be retrieved and provided as "success examples" to users 206 who have deficient micro-attributes required to solve the puzzle or complete the track even before the players have actually encountered problems.
  • Such information which may have originally been hidden from the user 206, may enable the user 206 to complete a specific task and, at the same time, may help the user 206 to learn the "right" methods or the "path” to success.
  • the disclosed system may also provide progressive proficiency indicator profiling and tracking functions to assess the learning curve of micro-attributes.
  • the strength and weakness of a user 206 through the whole game or application lifecycle may be observed by the progression of proficiency indicators for one or more micro-attributes, which may be extracted from the event parameters defined and instrumented by the game developer 202, a community of players, or a third party service provider 212.
  • the variation of proficiency indicators over time may represent the learning curve of each user 206 on each task for one or more micro-attributes.
  • users 206 and/or coaches may obtain such information to provide effective coaching and encouragements.
  • the micro- attributes may be extracted from input events and provided as inputs to the micro-attribute profiler 402 to build statistical distribution models.
  • the models may be used for assessing, for example, classification, scoring, and ranking, one or more micro-attributes of a user 206 against models built upon the historical data from one or more users 206.
  • a set of proficiency indicators may be defined by game developers 202 or one or more third party service providers 212.
  • Proficiency indicators may also be used for profiling micro-attribute behaviors relative to models built from the user 206 or one or more groups of users 206. These proficiency indicators may include, for example, average, beginner, and expert levels.
  • the micro- attribute profiler 402 may track the proficiency profile over the full application or game lifecycle.
  • the encouragement action services 406 may include interfaces to accept triggered actions from the event pattern detection engine 404 and service interfaces for game engines in both game servers 204 and/or users 206 or user devices 206. This may be different from the typical in-game "power-up” or “bonus” mechanisms designed for users 206 to gain instant benefits of various kinds and to boost their in-game performance.
  • the encouragement action services 406 may enable additional value-added functions to be provided to users 206 after the game has been designed and deployed.
  • Game developers 202 may design and deploy new encouragement actions based on real-time data that may provide insights on user behavior in progression at different granularities modeled by one or more micro-attributes. Developers 202 may have the flexibility to define corrective compensation and adjust the difficulty level for users 206 to improve the game experience. Furthermore, the developer 202 or third party service providers 212 may offer encouragement actions of different kinds to motivate users 206 and keep them engaged.
  • GUI template may be used to segment one or more users into multiple groups based on progression models of micro- attributes for each application/game context such as game task or game level.
  • the application context may also include specific tasks or challenges, for example, a difficult turn of a race track or battle with a boss, as defined by the game developer 202.
  • One or more developers 202 may enter the micro- attributes and parameters for segmentation filters and submit the template to the service server 210 for each application/game using web services and/or HTML scripts and data repository backend functions.
  • the service server 210 may record the templates in the data repository 408.
  • a first application may include micro-attributes (MAs) such as ⁇ MAI: score/kill rate, MA2: prize/points ⁇ for all levels. For levels 3-5, only part of the MAs such as ⁇ MA3: accuracy, MA4: speed ⁇ may be filtered and for levels 2-7, ⁇ MA5: hiding, MA6: discovery ⁇ may be filtered.
  • the micro- attributes may be encoded using attribute-value pairs.
  • the micro- attribute profiler 402, event pattern detection engine 404, and encouragement action services 406 may use the attribute-value pair definition entered by the game developers 202 as a data model to process the game event inputs.
  • the third party service providers 212 may have access to the template based on the attribute-value pair definition.
  • micro-attributes may be filtered and extracted from a large number of possible input events from the applications or games.
  • the filters may also partition the data into segments or bands based on a statistical distribution.
  • the population filter may segment users 206 based on skill level, using for example, scores or prize earned, or spending level (e.g., VIP or casual freemium user).
  • the progression for example, evolving filter may segment the users 206 based on time and progression criteria such as cumulated play time or play frequency.
  • the micro-attribute profiler 402 may use the segmented models to score or rank the micro-attributes of each user 206 to calculate proficiency indicators.
  • a proficiency indictor of a micro-attribute such as kill rate may also be dependent on one or more proficiency indicators for other micro- attributes such as accuracy and speed.
  • Proficiency indicators may be normalized such that a weighted average and threshold may be set without knowledge of absolute scales that may be highly diverse and game dependent.
  • An additional clustering model may be built using one or more proficiency indicators calculated using the segmented population and progression filter band. The clustering model provides a multi-dimensional grouping of progressive behavior paths for different groups of users as a reference model for identifying the progression of deficiency and strength of a user's 206 micro- attributes.
  • event pattern detection rules may be specified by the game developers 202 and third party service providers 212.
  • the event pattern detection template also shown in FIG. 5, may comprise fields for developers 202 to specify the rule ID and patterns (e.g., Boolean expressions) on proficiency indicators of micro-attributes.
  • a developer 202 may submit the template to the service server 210 and the template may be stored in the data repository 408.
  • One or more third party service providers 212 may also submit the event detection and action template to the service server 210.
  • developers 202 may specify three rules to provide different levels of encouragement to users 206.
  • a first rule for example, "If player X failed to pass level 3 for 3 times and Proficiency(MAl) ⁇ 60% and Proficiency(MAl) ⁇ 70% Proficiency (MA2)" may indicate a frustrating event for player X who has failed 3 times at level 3. The player may not know the reason for failing the level. The first rule, however, may detect that the player was doing well in earning the prize but has a problem with kill rate, which may be a micro-attribute. In this case, the system may provide a first level encouragement message, "Praise player- X: "You did well in MA2 by earning a prize that will be useful for the next level. Focus on MAI, kill rate, to pass level 3.”
  • a second rule may provide more detailed information when detecting that player X is doing poorly on “accuracy” but doing well in "speed,” which may be micro-attributes.
  • a more specific encouragement message may be provided to the player-X: "In order to improve MAI, kill rate, focus on MA4, accuracy.” This level of detail may provide a specific area for improvement that may be hidden from the players.
  • a third rule may combine the first rule, use multiple MAs, for example, prizes earned, hiding, discovery, and suggest a revenue generating encouragement action, invoke special weapon promotion link and provide a message: "You are doing great in collecting prize(s), you may use points to buy weapon shield Z to pass level 3. Try to hide in the corner and use the shield when the Big Boss appears.”
  • the templates stored in the data repository 408 may be managed by the service server 210 and may be accessible by the micro-attribute profiler 402, event pattern detection engine 404 and encouragement action services 406.
  • the micro-attribute and model filters may be used by the micro-attribute profiler 402 to generate proficiency indicators for each of one or more attributes.
  • a combination of one or more proficiency indicators representing one or more micro-indicators may be for higher level proficiency indicators.
  • Some proficiency indicators are derived from higher level micro-attributes, for example, a cumulative score or kill rate. These higher level micro-attributes may have a dependency on lower level micro-attributes such as accuracy and speed.
  • Proficiency indicators may be updated in memory and in the data repository 408 that may be accessed by the event pattern detection engine 404 in real-time. On detecting event patterns, either an encouragement message may be sent or an action may be invoked to interact with a selected user 206, for example, player X, from the action interface as described in the workflow diagram illustrated in FIG. 3.
  • Automated micro -attribute progression analysis and tracking methods and systems are disclosed herein.
  • the disclosed system may support automated encouragement actions based on progression of proficiency indicators of one or more micro-attributes, as well as the contexts, including the sequence of actions that generated the micro- attributes and proficiency indictors.
  • the sequence of actions may be stored in an event repository and organized by various dimensions, including tasks and user groups, for example, average and expert user groups.
  • Methods and systems for multi-model multi-attribute progression detection and recommendation are disclosed herein.
  • the disclosed system detects progression of proficiency level of micro- attributes and recommends when to issue guidance to encourage and prepare a player with a proficiency level lower than the required minimal thresholds provisioned by a game designer for each task.
  • GUI GUI
  • HTML hypertext markup language
  • CRUD create, read, update and delete
  • context information may be provided on the user 206.
  • Task, proficiency indicators, micro -attributes, and threshold values may be used in the detection patterns to activate encouragement actions (EA).
  • Users 206 may be praised based on defined criteria including, for example, when a proficiency indicator for micro-attribute X is higher than average proficiency indicators of a user 206 in a similar experience band and the proficiency indicator is not critical for an immediate task but it will be of benefit in future tasks.
  • Another example includes making a determination of acceleration and de-acceleration patterns of proficiency indicators, whereby one or more micro-attributes are determined to be worse than expected. If one or more successful past patterns exist, one or more of these patterns may be used as exemplary patterns to comfort the one or more users and provide an incentive for user improvement.
  • One or more experts' proficiency indicator progression paths may be identified for a set of tasks.
  • the proficiency indicators may be normalized to suggest the priority for improvements that may benefit multiple anticipated tasks.
  • One or more users 206 may be encouraged to take a path that matches proficiency indicator profile automatically. In other words, there may be a number of paths to achieve a certain objective, and the user 206 may be encouraged to choose the path which is consistent with their proficiency.
  • Multiple encouragement methods may be provided for retaining users 206 effectively.
  • Actions for comforting users 206 by providing positive feedback may be provided.
  • Actions for helping users 206 to identify the weakness by insufficient proficiency indicators may be further provided.
  • Instructions may be provided for enhancing user 206 proficiency or rearranging difficulty level.
  • One or more actions may be used for encouraging users 206 to try lower difficulty level game modes for distracting users 206 from current failures and to help them develop the skills needed to progress beyond their current roadblock.
  • One or more actions for pre-showing users 206 the hidden game contents for increasing users' 206 expectation are further disclosed.
  • one or more actions for dynamically boosting low performance users 206 may include adjusting the in-game control parameters.
  • the micro-attribute profiler 402 may collect and generate the proficiency indicator model as one or more yardsticks to score input micro- attributes such as the resources collected by a player (e.g., prizes, weapons, and shields for explorer types of players) or achievement scores (e.g., kill rates or scores for aggressive type of players).
  • the following example illustrates two micro-attributes; one is based on price earned and the other is based on achievement level.
  • the micro-attribute profiler 402 may observe the two micro-attributes and may generate proficiency indicators (Pis) that may be used as inputs to an event pattern detection rule template to detect the progression pattern of a user 206 with respect to other users 206 on one or more micro-attributes.
  • the proficiency indicator data model may comprise a list of Pis, with a unique identifier (ID), PI. ID, and usage time (UT) category, PI.UT, for each task X, from one or more players:
  • the PIPath may comprise a sequence of proficiency indicator profile metrics for users in multiple experience bands, for example, cumulative usage time.
  • the following PI progression path data model of a user 206 comprises the progression sequences of two dimensional proficiency indicators PI.V, for example, an achievement score PI.V1 and total earned prizes PI.V2, for 5 categories of cumulative usage time (UT).
  • a UT for example, may be 1 to 5 weeks:
  • PIPath ⁇ PI.UT: 1, PI.V: (0.12, 0.1) ⁇ , ⁇ PI.UT: 2, PI.V: (0.2, 0.22) ⁇ ,
  • PI.V may be defined as a normalized percentile ranking of the micro-attributes prize earned or kill rate. It may also be used to define detailed micro-attributes such as accuracy and speed.
  • the system may cluster the user 206 into groups, for example, experts, average, and below-average laggers.
  • Well known unsupervised machine learning techniques may be used to cluster performing group users 206. These machine learning techniques may include by way of example, K- Means and Hierarchical clustering.
  • K- Means and Hierarchical clustering The progression pattern of micro- attributes and the corresponding proficiency indicators in each group may provide the detailed information of each user's 206 learning curves on one or more micro-attributes. Some users 206 may achieve higher proficiency with respect to one micro -attribute faster than other users 206.
  • FIG. 6 illustrates an embodiment in which three different PI paths are used for tracking the progressions of proficiency indicators for expert users 206, average users 206, and a specific user 206, respectively.
  • the proficiency indicators of the expert group may be used as role model reference for comparing the proficiency indicators of other groups of users 206.
  • the expert group has the advantage of informing the user 206 about the progression of micro-attributes of experts as role models. This may aid in the identification of areas of micro-attributes for improvement for multiple types of games automatically. It may also provide insight for users 206 and coaches to learn and design effective encouragement for users 206 at different proficiency levels.
  • the expert group may be defined based on application specific criteria, for example, the virtual resource purchased, the numbers of followers in social network, fastest recovery, or weight lost. For example, to encourage aggressive and competitive behavior, the PI path of a group of aggressive and fast paced achievers may be used as the basis to guide the beginners interested in winning a competition. On the other hand, to encourage players to purchase virtual goods, the progression path for the top 10% of revenue generating customers may be selected as the basis to encourage other players.
  • the encouragement messages may be provided to average users 206 to pay more attention to improve proficiency indicator V.l so that the user 206 may be more likely to achieve better proficiency and achievement when compared to the experts.
  • a user 206 e.g., user number 3
  • the system may "praise" the progress with regard to V. l and provide help, for example, with a hint or guidance with regard to V.2.
  • the dimension of the overall space of micro- attributes becomes large. This in turn may increase the likelihood that any particular user 206 will exceed the mean in one of those dimensions. This may enable the system to determine encouraging feedback for the user 206.
  • Adaptive control of proficiency boosting control parameters are disclosed herein.
  • the disclosed system may support in-game user 206 capability boosting by integrating control parameters that adaptively impact the observable behavior micro-attributes with the progressive proficiency path model and proficiency indicators of each player in real-time. It should be noted that this is in contrast to game specific "power-up" mechanisms, which are a set of performance or experience boosting control parameters for in-game characters which may be adjusted and offered transparently to the player after the game is deployed.
  • the encouragement action services 406 may provide methods for the game developer 202 to define game control parameters which may affect the user 206 behavior micro-attributes. These micro-attributes may be important performance indicators of a user 206. For example, running and jumping control parameters may affect the navigation efficiency of explorers in an adventure game. Magnification and vision range control parameters may affect the accuracy and alertness of aggressive users 206 in shooting game. Additionally, temporal modifications may be performed that take into account the user's 206 reaction time, which may be characterized as a micro- attribute. For example, when faced with an insurmountably fast moving target, the speed of the target may be adjusted to be within range of the user's 206 reaction time. These in-game parameters may be included in the templates for provisioning the encouragement actions.
  • the running and jumping control parameters may be included in the API for a game developer 202 to define rules to invoke and pass one or more suitable parameter values that are dependent on the real-time behavior (e.g., if a proficiency indicator "running" is determined to be 20% below the average).
  • the game developer may only need to power up a specific capability of the avatar, for example, running speed by 10% to 20%.
  • Adjusting the control parameters in encouragement actions may provide new capabilities for a game developer 202 to improve the gaming experience. For example, when detecting a user 206 has a slow learning curve on navigating the game world, the developer 202 may define rules to increase the control parameters to boost running and jumping capabilities or to make visible certain previously obscured regions of a world map. Similarly, the developer 202 may also define rules to boost a magnification ratio or vision range control parameters for beginner users 206.
  • Disclosed herein is an embodiment which may be employed to create the effect of a faster than actual learning pace and may actually improve the user's 206 learning curve by allowing the user 206 to acquire more knowledge and experience or more effective fighting capabilities.
  • FIG. 7 is a flowchart which illustrates a method of adaptive proficiency boosting control parameter adjustments.
  • step 702 the proficiency path of micro-attributes of different levels of details (e.g., kill rate, shield level, accuracy, navigation skills, puzzle solved, and prizes earned) and character control parameters (e.g., speed, acceleration, jumping ability, magnifying glass, number of bullets, and power of punch, etc.) that may boost the proficiency level for one or more micro- attributes may be observed.
  • levels of details e.g., kill rate, shield level, accuracy, navigation skills, puzzle solved, and prizes earned
  • character control parameters e.g., speed, acceleration, jumping ability, magnifying glass, number of bullets, and power of punch, etc.
  • users 206 may be profiled into multiple user 206 types (e.g., aggressor or explorer) for each experience band and models may be built based on the user types and micro-attributes.
  • user 206 types e.g., aggressor or explorer
  • step 706 proficiency indicators (e.g., scores and percentiles) of one or more micro-attribute may be tracked for the users 206 and compared to the generated models.
  • step 708 users 206 with deficient, slow improving, or un-balanced proficiency levels may be identified using the tracking procedure.
  • one or more control parameters may be incrementally boosted for deficient micro-attributes to enable the users 206 to gain experience in achieving a higher proficiency level.
  • this may include increasing the users 206 performance in one or more micro- attributes, such as, for example, improving a user's 206 accuracy or speed.
  • a user's 206 proficiency level may be measured to determine if it approaches a determined percentage of the proficiency of an average user 206 of the same type in the same experience band.
  • a gradual reduction of the "boosting" control parameters may be employed.
  • step 716 if the user's 206 proficiency degradation is determined to be lower than the average by a defined threshold, the reduction in the boost of control parameters may be stopped at step 720. In an embodiment, if the user's 206 proficiency degradation is later determined to be lower than the average by a defined threshold, a reduction in the boost may be employed. This boost power reduction is expected to induce more of an effort by the user 206 to keep up with the previously established high proficiency experiences at the same time the user 206 observes the effort or skill to obtain the proficiency level.
  • step 718 if the user's 206 proficiency level is below the determined percentage, and it is also below another determined percentage of the average proficiency after the control parameters have been boosted a certain amount of times, the boosting process may be stopped at step 720.
  • the disclosed methods may be introduced periodically to different sets of users 206 or may be triggered by certain event patterns. Based on the change of a proficiency indicator, the system may select the most effective adjustment increments and period of time.
  • the event pattern detection engine 404 may support flexible and application specific patterns. Disclosed herein are use cases which illustrate examples of encouragement patterns which may be implemented rapidly by defining detection rules and encouragement actions.
  • the disclosed system may provide encouragement actions automatically for retaining users 206.
  • the scenarios in which users 206 are likely to give up on may be carefully analyzed. Based on that analysis, four possible action categories are disclosed for encouraging users 206 in different ways.
  • An action for comforting users 206 is disclosed. This may be the most direct action which comforts users 206 when they find difficulty in continuing the game. Methods and systems are disclosed for using comforting actions as positive feedback when users 206 fail to pass a level or complete a task.
  • the disclosed system may provide four kinds of positive feedback based on the actual user 206 performance.
  • the system may provide information on micro- attributes that the user 206 is doing well on relative to other micro-attributes if a player fails one or more sessions.
  • the system may provide the average failure rate or the number of users 206 that encounter similar problems in the current session.
  • the system may provide performance improvement information on one or more micro-attributes in comparison historical sessions of the user 206 or other users 206.
  • the system may provide words of encouragement to comfort the user 206 who performs poorly across all the micro-attributes in order to help build the user's 206 confidence.
  • Actions for identifying users 206 weaknesses are disclosed herein. These actions may encourage users 206 by letting them know specific gaming skill weaknesses for improvement.
  • the weaknesses may be identified through the use of proficiency indicators. Since proficiency indicators may evaluate the unique micro- attribute against reference models, weaknesses may be determined by calculating and identifying proficiency indicators lower than that of other users 206. Once the weaknesses are identified, the system may provide multiple instructions for users 206, such as encouraging users 206 to try suitable sessions or lower difficulty level.
  • the historical micro-attributes of users 206 may be monitored. If negative trends on users' 206 proficiency indicators are discovered, the proficiency indicators which have insufficient performance may be identified.
  • the insufficient proficiency indicators of users 206 may be identified by measuring the negative distance between users 206 and group averages.
  • the group a user 206 belongs to may be defined in various ways, one of them may be based on similar playing frequency and gaming lifetime.
  • the encouragement system may bias the feedback in the areas specific to the user's 206 weaknesses in order to help them build up confidence in themselves and enable them to ultimately improve their performance.
  • Actions for suggesting different playing modes are disclosed herein. These types of actions may encourage user's 206 to try different modes of a game. Different modes usually have different conditions for winning. Adapting to new winning conditions may help to distract users 206 from previous failure frustration.
  • a good use case is Fruit Ninja, developed and published by
  • Halfbrick Studios a popular game for use on both iOS and Android smartphones.
  • In the classic mode users 206 are allowed to miss at most three emerged fruits. At the same time, users 206 may not touch a bomb mixed in emerging fruits or the user 206 will fail.
  • In zen mode there is no missed fruit restriction and no bombs. However, the time is limited for users 206 to earn points.
  • arcade mode there are both time limits and bombs mixed in with the fruit. Users 206 are required to avoid bombs and earn points in the limited time.
  • multiplayer mode users 206 play against real users 206 instead of AIs. Users 206 are allowed to slice their own fruits and are required to avoid an enemy's fruits.
  • users 206 have different requirements and winning conditions. If a user 206 keeps failing in one mode, the system may discover the failure and encourage him to try other modes, such as a move from the multiplayer mode to the classic mode or from the classic mode to the zen mode. This action may help to distract users 206 from frustrations caused by previous failures and to make them adapt to new modes for a longer gaming lifetime. Also, the characterization of the user's 206 micro-attributes may enhance the recommended alternate game mode. For example, if the user 206 is determined to have one or more slow reaction times, the non-time modes of play may be encouraged.
  • Actions for showing higher level or premium game content to users 206 are disclosed herein. These actions may use previews of currently unavailable game content to motivate users 206 to overcome the current difficulties. It is well known that users 206 explore the game content of different levels due to the time they invest in game play. For example, a beginner may only play limited virtual items such as cars and have many objects, modes, or levels which have yet to be unlocked. At this early stage, there are many game contents which are not available to the user 206. If a user 206 has a high frustration at a beginner level, he may abandon the game before finding more interesting content. Showing the higher level game content to users 206 may help to encourage them to continue anticipating more content.
  • Higher level game content may be defined as the game content which is not available for users' 206 current levels or sessions. Examples of higher level game contents may include but are not limited to, the rewards on efforts or progress made on a failed session that may be valued or useful for accomplishing new tasks in future sessions; new virtual gear, places or backgrounds in future sessions; and new challenges in future sessions.
  • Actions for dynamically boosting low performance users 206 by adjusting in-game control parameters are disclosed herein. These actions may automatically and dynamically tune the difficulty level without the awareness of poor performing users 206.
  • users 206 may randomly collect power-up items to boost the character forward an extra distance which enables users 206 to earn more points.
  • Systems may automatically boost the performance of the user 206, which may have the same effect as collecting the power-up items virtually.
  • the system may alternatively or in combination, identify specific power-up items that may help the user 206 the most and offer it to the user 206 automatically.
  • Another example may be shown using the game Fruit Ninja. In Fruit Ninja, beginners may find that fruit emerges and leaves the screen too fast. The system may automatically slow the motion of the fruit in order to give users 206 more time to slice the fruit. Once the user's 206 performance reaches the expected progress, the system may automatically remove the boosting preference from the user 206.
  • step 802 micro-attributes for encouraging players may be gathered and input into the event pattern detection engine 404.
  • the micro-attributes of users 206 may be compared to determined expert level standards and indicators of insufficient proficiency may be generated through the use of analytics as described above.
  • step 804 the users' 206 status and proficiency levels may be processed by an action generation service and encouragement actions may be generated.
  • the action generation service may be a function of the encouragement action services 406.
  • step 806 a series of encouragement action recommendations may be determined and may be sent to the users 206 based on the users' 206 status and proficiency levels.
  • the users 206 may receive the encouragement actions.
  • the users' 206 statuses are mainly the monitoring of their performances or gaming results.
  • users 206 may react to the encouragement recommendations provided by action generation service 804.
  • the action generation service 804 may dynamically change action categories for adapting players 206. The possible encouragement actions are then recommended to the users 206.
  • the system may be able to provide a list that ranks the indicators of insufficient proficiency for analyzing the reasons of failure. For the top-K indicators of insufficient proficiency, the system may provide the feedback to improve users' 206 performance. On each failed attempt after the initial failure, the system may keep showing the feedback. If a user 206 still cannot improve performance after N attempts, the system may start to recommend frustration relief actions.
  • One frustration relief action may include playing mode switching.
  • the system may encourage the user 206 to try another playing mode and provide extra rewards for motivating the user 206. If the user 206 switches the mode, the system may return to step 802. If not, may continue to step 806. If the users 206 insist on re-playing the failed rounds, the system may encourage the user 206 to lower the difficulty level and provide extra rewards at first. If the user 206 insists on the original difficulty level, the system may recommend the action of previewing the premium game content to provide additional incentives for the user 206 to overcome the current failure. At the same time, the system may provide dynamic user 206 boosting action without the user's 206 awareness, in an effort to improve their performance.
  • FIG. 9 a diagram illustrating automatic recommendation of encouragement actions and automated encouragement control methods and systems is shown.
  • the system may automatically control whether or not to recommend encouragement actions to players. Normally, players may have encouragement actions by default, however, they may stop receiving encouragement in some cases.
  • encouragement may be stopped by the system. If a user 206 historically disliked encouragement actions, the system may learn this preference and stop providing encouragement actions. If a user 206 has been recommended all the encouragement actions and still cannot win, the encouragement actions may be stopped.
  • encouragement may be stopped by users 206.
  • the users 206 may have right to accept or reject specific encouragements. Also, users 206 may have the right to stop encouragement or block notification of encouragement messages at any time. Additionally, users 206 may have the ability to turn off specific types of encouragement actions, such as action number 4 which means that users 206 do not want to preview premium game contents.
  • FIG. 10 a diagram illustrating a method for performing context and proficiency aware player encouragement to users of an application is shown.
  • the method may be performed by the service server 210, which may include on or more circuits, integrated circuits, and/or processors.
  • the service server 210 may receive event data from a plurality of users.
  • the event data may correspond to user behavior events of the plurality of users.
  • the service server 210 may define and collect one or more micro-attributes (MAs) from the received event data.
  • the one or more MAs may be defined based on user behavior events related to a specific application and used to improve user experience.
  • the service server 210 may determine proficiency indicators for the one or more MAs.
  • the proficiency indicators may be determined by scoring, ranking, and classifying MAs for different event data in real-time against one or more models derived from one or more users grouped together based on behavior events.
  • the service server 210 may detect patterns using the one or more MAs and proficiency indicators in real-time and may record the patterns in a data repository, The patterns may be used to detect new patterns and track the progression pattern of MAs and proficiency indicators of the one or more users to observe the learning curves.
  • the service server 210 may determine encouragement action configuration parameters using the MAs, proficiency indicators, and detected patterns.
  • the service server may provide context aware encouragement actions to a user of the application in real-time based on the determined encouragement action configuration parameters.
  • Exemplary use cases are described herein.
  • the disclosed methods and systems support disclosed use case examples by defining and tracking proficiency indicators to decide when to offer effective encouragements.
  • encouraging users 206 with specific action coaching may be provided.
  • This use case may comprise identifying unique characteristics of a user 206 against other users 206 in the group and praising the user 206 with particular actions or a sequence of actions that the user 206 did well with when compared to other users 206 or the user's 206 past history.
  • This use case may include improving users' 206 performance by observing micro-attributes from users 206 and providing specific feedback or hints. For example, in a puzzle game such as a Rubik's cube game, when compared to expert level users 206, low performance users 206 usually take more action steps to solve the same stage or state of the puzzle.
  • low performance users 206 when compared to expert users 206, low performance users 206 usually are starting late in the first lap or the last to pass the final lap. In these cases, low performance users 206 may do poorly in a different stage or in sub-sessions of a game round. If a method exists such that they may obtain feedback or hints to selectively improve or optimize one or more sub-division of a game round, their final results may be improved.
  • each game round may be divided into sub- sessions or stages.
  • a round of a Rubik's cube game may be divided into a different color distribution between random patterns and regular patterns with a different number of elements that are misaligned by color.
  • Car racing games may be divided into laps. These sub-divisions of sessions, steps, or stages may be game dependent and may be designed by game developer.
  • Micro-attributes may collected for each subdivision by the micro- attribute profiler 402.
  • the input event data may include the input template illustrated in FIG. 5, and may define an Application ID (AppID), Task ID and sub-division ID.
  • the input template may define micro-attributes affecting the performance of the player for the sub-division, shown as micro-attribute ⁇ MA ⁇ .
  • Reference group model selection criteria may be defined through users 206 with an achievement score in a given percentile, for example, users 206 in the 20% to 80% percentile.
  • Progression intervals may comprise, for example, 5 experience bands obtained from early adopters of the game. These may be continuously adjusted based on reference group model. Clustering methods may also be used to decide the experience band based on multiple selected micro-attributes.
  • users' 206 micro-attributes may be compared with reference groups which represent the standard of expert users 206 based on sub-division level. Based on the comparison results, the exact places where the user 206 performance decreases may be known. For example, in the Rubik's cube game example, each action may be followed by an optimal action based on the state of the color pattern in the cube. Low performance users 206 may find it difficult to find optimal next actions or adopt useless or even counterproductive next steps. In this case, the system may provide hints for optimal next steps or provide feedback about bad actions at the end of one or more rounds.
  • a set of rules may be implemented to detect event patterns and to provide effective encouragement actions. If the user 206 has made 50% or more actions and has not completed a sub-division of a game task, the system may extract the micro- attributes of the user 206 defined for the sub-division. For example, a sequence of actions may be determined and compared the sequence of one or more users 206 from an expert group or a sequence defined by the game designer. Encouragement actions may be provided by rolling back the action steps to the first mistakes and suggesting the correct or a better action made by the user 206 group which has completed the puzzle with higher scores or in a shorter period of time.
  • An acceleration pattern or a de-acceleration pattern may be detected, for example, in the first and the last 20 meters of a 100 meter race, that is worse than average.
  • a determination may be made that the user 206 has been not been engaged in activities that may help improve the user's 206 conditioning. This determination may be made, for example, on a lack of weight training or conditioning training activities required to improve the performances of the first or the last 20 meters, for the last 2 weeks of training.
  • Each user 206 may have a unique play style. For example, in
  • World of Warcraft combat and avatar sequences of the actions may be unique under different situations.
  • the unique user 206 style may be modeled by the proficiency indicators of micro-attributes when compared to reference models. For example, an aggressive user 206 may have a higher proficiency level in a kill rate and may spend less time on exploring different parts of a game world or looking for treasure. An explorer may collect more prizes and try to run away from adversarial situations more often than the aggressors.
  • An avatar and/or weapon used by a user 206 may also provide insight into that user's 206 behavior.
  • the game developer 202 may provide micro-attributes based on the type and frequency each avatar or weapon is used for different sub-divisions of game tasks. Based on the correlation between avatar and weapon usage pattern and user 206 achievement, the system may encourage users 206 to select an avatar and weapon before engaging in different sub-divisions of tasks.
  • encouragement may be provided to users 206 making minimal or no progress.
  • the disclosed system may provide "encouragements" based on relative progress among the micro-attributes as well as a relative amount of effort that may be quantified in the encouragement message.
  • These encouragement messages may not indicate the actual progress of the user since this information may further discourage the user 206.
  • these encouragements may be based on facts in one or more rare cases which a user 206 did indeed improve after following the encouragement message.
  • the disclosed system may track and keep performance record of all the poor performers and/or performances and may record the effect of any signaled encouragement messages.
  • the system may then select micro- attributes from a set of poor performers as facts to encourage the user 206.
  • an encouragement message may be defined such that if the user 206 performs poorly in most or all micro-attributes, the encouragement message may be, "Among all the -micro-attributes, you are doing well in attribute X. Please keep up the good work. There are Y number of users who have a similar situation like you but after they improved micro- attribute X, they made good progress.”
  • an encouragement message may be defined which considers if a user 206 has not spent as much time as other users.
  • An example encouragement message may be, "Given the small amount of time or practice you have, you have made good progress compared to some of the other users and you are better than 30% of the other user.”
  • an encouragement message may be defined which considers if the user 206 did not spend an appropriate amount of time and did not make any progress, and if improving the micro-attribute X is most important attribute related to making progress, the encouragement message may be, "There are bonus and reward available after you make effort to work on micro-attribute X.”
  • the system may record all these encouragement messages and apply the messages to poor performers.
  • encouragement may be provided to a user 206 by utilizing social network aspects of the game.
  • a wall of accomplishments for social purposes may be used.
  • the wall of accomplishments may comprise an in-game ranking list of a user's 206 friends. The ranking may be based on daily progress or based on resource collection.
  • a subgroup of users 206 may be selected based on proficiency progression patterns of micro-attributes of a particular task or subtask to support a context aware experience, for example, complaint or glory sharing.
  • This use case may include providing an encouragement action based on social network functions.
  • In-game social network includes the friendship system in which users 206 socialize or collaborate inside the game. Users 206 may build or create in-game friendships by making real-time friendship invitations or importing an email or social network, for example Facebook, contact list.
  • the online community may include online forums in which users 206 may ask questions and share experiences outside of the game. Users 206 may follow other players in a community in order to receive good posts.
  • Both social network functions reflect users' 206 social behaviors and preferences and are able to form users' 206 skills and understanding. Based on social resources of a game, the system is able to provide encouragement actions by influencing users 206 from social networks.
  • users 206 may be encouraged directly while gaming. Rare achievements may be compared and shared among friends. For example, in multiplayer online games, if a user 206 accomplishes an achievement which is difficult, the system may compare this achievement with the achievements of others, such as "only 10 out of your 100 friends made this achievement.'' This news may be shared among his friends. [0172] In addition, the information about performance may be compared and shared among friends as well. For example, in multiplayer online games, several users 206 may form a team for challenging monsters or completing quests together. If a user 206 performs the best in the team by providing the largest contribution, his performance statistics may be compared with others by "Player A's firepower made 40% of the total damage which is the largest contribution in the team.” This information may be shared with one or more connections.
  • Another disclosed encouraging action may be recommending experienced users 206.
  • the system may suggest a list of current online users 206 who have experience in completing this quest in a short period of time.
  • the proposed system may recommend the user 206 to invite experienced users 206 as teammates.
  • a good user 206 may be any user 206 who has above average proficiency levels on the micro-attributes defined by the subdivision of task of the game.
  • users 206 may be encouraged indirectly by learning experiences or getting answers outside the game.
  • the system may suggest expert users 206 that should be followed.
  • the system may suggest several expert users 206 who are active in the online forum. Usually these expert users 206 are willing to share their experiences, virtual gear configurations, and answer questions.
  • the users 206 with poor performance may be provided with a good resource to learn and observe the strategy and actions of good users 206.
  • other users 206 may find the tricks to complete the task and improve their skills quickly.
  • the system may suggest good posts in an online forum for specific questions. For example, for a user 206 who has failed to achieve a quest several times, the system may recommend a post in which an experienced user 206 demonstrates very detailed strategy and steps for finishing the same quest.
  • the system may suggest that the user 206 post questions about difficulties on the forum. For example, if a user 206 has failed several times on the same quest, the system may automatically prepare the specific performance, important actions, and failure characteristics of the user 206 in the quests and suggest the user 206 to post on the forum. If the question is posted, other experienced users 206 may view it and provide personalized advice for the failed user 206 to help him overcome the quest.
  • Examples of computer-readable storage media include, but are not limited to, a read only memory (ROM), a random access memory (RAM), a register, cache memory, semiconductor memory devices, magnetic media such as internal hard disks and removable disks, magneto-optical media, and optical media such as CD- ROM disks, and digital versatile disks (DVDs).
  • ROM read only memory
  • RAM random access memory
  • register cache memory
  • semiconductor memory devices magnetic media such as internal hard disks and removable disks, magneto-optical media, and optical media such as CD- ROM disks, and digital versatile disks (DVDs).
  • a processor in association with software may be used to implement a radio frequency transceiver for use in a WTRU, UE, terminal, base station, RNC, or any host computer.

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Accounting & Taxation (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Primary Health Care (AREA)
  • Tourism & Hospitality (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Methods and systems are provided for improving the effectiveness of user retention in games and applications. Defining and collecting micro-attributes from user behavior events, analyzing the micro-attributes from a selected group of users on one or more tasks or subtasks, and generating one or more models for assessing a proficiency level of a user based on the micro-attributes from the selected group is provided. Assessing a proficiency level of an individual user may comprise assessing one or more proficiency indicators, each proficiency indicator representing one or more of a score, ranking, or classification of one or more of the micro-attributes.

Description

CONTEXT AND PROFICIENCY AWARE PLAYER ENCOURAGEMENT
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application claims the benefit of U.S. Provisional
Application No. 62/213,403 filed on September 2, 2015 and U.S. Provisional Application No. 62/216,104 filed on September 9, 2015, the contents of which are hereby incorporated by reference herein.
BACKGROUND
[0002] Player retention is an important business objective for developers of mobile applications and games. Game data mining and player behavior analysis may provide insights for game developers to improve the game design. A real-time player behavior event pattern detection and remedial action system may detect events patterns indicating risks of game abandonment and may trigger various types of remedial actions to prevent users from abandoning the game in order to improve the user experience.
SUMMARY
[0003] The following disclosure contains methods, systems, and apparatuses for performing context and proficiency aware player encouragement to users of an application. Embodiments may include: receiving event data from a plurality of users, wherein the event data corresponds to user behavior events of the plurality of users; defining and collecting one or more micro-attributes (MAs) from the received event data, wherein the one or more MAs are defined based on user behavior events related to a specific application and used to improve user experience; determining proficiency indicators for the one or more MAs, wherein the proficiency indicators are determined by scoring, ranking, and classifying MAs for different event data in real-time against one or more models derived from one or more users grouped together based on behavior events; detecting patterns using the one or more MAs and proficiency indicators in real-time and recording the patterns in a data repository, wherein the patterns are used to detect new patterns and track the progression pattern of MAs and proficiency indicators of the one or more users to observe the learning curves; determining encouragement action configuration parameters using the MAs, proficiency indicators, and detected patterns; and providing context aware encouragement actions to a user of the application in real-time based on the determined encouragement action configuration parameters. The performing context and proficiency aware player encouragement to users of the application may be done by at least one process, which may be located in a server.
[0004] Embodiments are disclosed for performing context and proficiency aware player encouragement to users of an application. The embodiments may include: defining a plurality of micro-attributes relevant to user progress toward completing a task in the application; receiving user behavior data from a plurality of users of the application, wherein the user behavior data comprises the micro- attributes of the plurality of users; comparing the micro- attributes of one of the plurality of users to one or more models derived from the user behavior data of one or more of the plurahty of users grouped together based on similar user behavior data; generating micro- attribute progression patterns for the micro-attributes of the one of the plurality of users based on the comparison, wherein the micro-attribute progression patterns indicate progress toward completion of the task; and providing an encouragement action to the one of the plurahty of users, wherein the encouragement action is selected from a plurality of encouragement actions based on the micro-attribute progression patterns.
BRIEF DESCRIPTION OF THE DRAWINGS
[0005] A more detailed understanding may be had from the following description, given by way of example in conjunction with the accompanying drawings wherein:
[0006] FIG. 1A is a system diagram of an example communications system in which one or more disclosed embodiments may be implemented; [0007] FIG. IB is a system diagram of an example wireless transmit/receive unit (WTRU) that may be used within the communications system illustrated in FIG. 1 A;
[0008] FIG. 1C is a system diagram of an example radio access network and an example core network that may be used within the communications system illustrated in FIG. 1 A;
[0009] FIG. ID is a system diagram of an example communications system in which one or more disclosed embodiments may be implemented;
[0010] FIG. 2 is a diagram which illustrates an exemplary micro- attribute event pattern detection and action service architecture;
[0011] FIG. 3 is a service workflow diagram of the micro -attribute event pattern detection;
[0012] FIG. 4 is an illustration of a micro -attribute profiling and event pattern detection engine;
[0013] FIG. 5 is a template for micro -attribute profiling and event pattern detection;
[0014] FIG. 6. is a graph which illustrates automated multiple micro- attributes proficiency profile evolution paths;
[0015] FIG. 7 is a flowchart which illustrates adaptive proficiency boosting control parameter adjustments;
[0016] FIG. 8 is a flowchart which illustrates an adaptive encouragement action service processing flow;
[0017] FIG. 9 is a state diagram which illustrates automatic recommendation of encouragement actions; and
[0018] FIG. 10 is a diagram illustrating a method for performing context and proficiency aware player encouragement to users of an application.
DETAILED DESCRIPTION
[0019] FIG. 1A is a diagram of an example communications system 100 in which one or more disclosed embodiments may be implemented. The communications system 100 may be a multiple access system that provides content, such as voice, data, video, messaging, broadcast, etc., to multiple wireless users. The communications system 100 may enable multiple wireless users to access such content through the sharing of system resources, including wireless bandwidth. For example, the communications systems 100 may employ one or more channel access methods, such as code division multiple access (CDMA), time division multiple access (TDMA), frequency division multiple access (FDMA), orthogonal FDMA (OFDMA), single-carrier FDMA (SC-FDMA), and the hke.
[0020] As shown in FIG. 1A, the communications system 100 may include wireless transmit/receive units (WTRUs) 102a, 102b, 102c, 102d, a radio access network (RAN) 104, a core network 106, a pubhc switched telephone network (PSTN) 108, the Internet 110, and other networks 112, though it will be appreciated that the disclosed embodiments contemplate any number of WTRUs, base stations, networks, and/or network elements. Each of the WTRUs 102a, 102b, 102c, 102d may be any type of device configured to operate and/or communicate in a wireless environment. By way of example, the WTRUs 102a, 102b, 102c, 102d may be configured to transmit and/or receive wireless signals and may include user equipment (UE), a mobile station, a fixed or mobile subscriber unit, a pager, a cellular telephone, a personal digital assistant (PDA), a smartphone, a laptop, a netbook, a personal computer, a wireless sensor, consumer electronics, and the like.
[0021] The communications systems 100 may also include a base station
114a and a base station 114b. Each of the base stations 114a, 114b may be any type of device configured to wirelessly interface with at least one of the WTRUs 102a, 102b, 102c, 102d to facilitate access to one or more communication networks, such as the core network 106, the Internet 110, and/or the other networks 112. By way of example, the base stations 114a, 114b may be a base transceiver station (BTS), a Node-B, an eNode B, a Home Node B, a Home eNode B, a site controller, an access point (AP), a wireless router, and the like. While the base stations 114a, 114b are each depicted as a single element, it will be appreciated that the base stations 114a, 114b may include any number of interconnected base stations and/or network elements. [0022] The base station 114a may be part of the RAN 104, which may also include other base stations and/or network elements (not shown), such as a base station controller (BSC), a radio network controller (RNC), relay nodes, etc. The base station 114a and/or the base station 114b may be configured to transmit and/or receive wireless signals within a particular geographic region, which may be referred to as a cell (not shown). The cell may further be divided into cell sectors. For example, the cell associated with the base station 114a may be divided into three sectors. Thus, in one embodiment, the base station 114a may include three transceivers, i.e., one for each sector of the cell. In another embodiment, the base station 114a may employ multiple-input multiple-output (MIMO) technology and, therefore, may utihze multiple transceivers for each sector of the cell.
[0023] The base stations 114a, 114b may communicate with one or more of the WTRUs 102a, 102b, 102c, 102d over an air interface 116, which may be any suitable wireless communication link (e.g., radio frequency (RF), microwave, infrared (IR), ultraviolet (UV), visible light, etc.). The air interface 116 may be established using any suitable radio access technology (RAT).
[0024] More specifically, as noted above, the communications system
100 may be a multiple access system and may employ one or more channel access schemes, such as CDMA, TDMA, FDMA, OFDMA, SC-FDMA, and the like. For example, the base station 114a in the RAN 104 and the WTRUs 102a, 102b, 102c may implement a radio technology such as Universal Mobile Telecommunications System (UMTS) Terrestrial Radio Access (UTRA), which may establish the air interface 116 using wideband CDMA (WCDMA). WCDMA may include communication protocols such as High-Speed Packet Access (HSPA) and/or Evolved HSPA (HSPA+). HSPA may include High- Speed Downhnk Packet Access (HSDPA) and/or High-Speed Uplink Packet Access (HSUPA).
[0025] In another embodiment, the base station 114a and the WTRUs
102a, 102b, 102c may implement a radio technology such as Evolved UMTS Terrestrial Radio Access (E-UTRA), which may establish the air interface 116 using Long Term Evolution (LTE) and/or LTE-Advanced (LTE-A). [0026] In other embodiments, the base station 114a and the WTRUs
102a, 102b, 102c may implement radio technologies such as IEEE 802.16 (i.e., Worldwide Interoperability for Microwave Access (WiMAX)), CDMA2000, CDMA2000 IX, CDMA2000 EV-DO, Interim Standard 2000 (IS-2000), Interim Standard 95 (IS-95), Interim Standard 856 (IS-856), Global System for Mobile communications (GSM), Enhanced Data rates for GSM Evolution (EDGE), GSM EDGE (GERAN), and the like.
[0027] The base station 114b in FIG. 1A may be a wireless router, Home
Node B, Home eNode B, or access point, for example, and may utilize any suitable RAT for facilitating wireless connectivity in a localized area, such as a place of business, a home, a vehicle, a campus, and the like. In one embodiment, the base station 114b and the WTRUs 102c, 102d may implement a radio technology such as IEEE 802.11 to establish a wireless local area network (WLAN). In another embodiment, the base station 114b and the WTRUs 102c, 102d may implement a radio technology such as IEEE 802.15 to establish a wireless personal area network (WPAN). In yet another embodiment, the base station 114b and the WTRUs 102c, 102d may utilize a cellular-based RAT (e.g., WCDMA, CDMA2000, GSM, LTE, LTE-A, etc.) to establish a picocell or femtocell. As shown in FIG. 1A, the base station 114b may have a direct connection to the Internet 110. Thus, the base station 114b may not be required to access the Internet 110 via the core network 106.
[0028] The RAN 104 may be in communication with the core network
106, which may be any type of network configured to provide voice, data, applications, and/or voice over internet protocol (VoIP) services to one or more of the WTRUs 102a, 102b, 102c, 102d. For example, the core network 106 may provide call control, billing services, mobile location-based services, pre-paid calling, Internet connectivity, video distribution, etc., and/or perform high- level security functions, such as user authentication. Although not shown in FIG. 1A, it will be appreciated that the RAN 104 and/or the core network 106 may be in direct or indirect communication with other RANs that employ the same RAT as the RAN 104 or a different RAT. For example, in addition to being connected to the RAN 104, which may be utilizing an E-UTRA radio technology, the core network 106 may also be in communication with another RAN (not shown) employing a GSM radio technology.
[0029] The core network 106 may also serve as a gateway for the
WTRUs 102a, 102b, 102c, 102d to access the PSTN 108, the Internet 110, and/or other networks 112. The PSTN 108 may include circuit-switched telephone networks that provide plain old telephone service (POTS). The Internet 110 may include a global system of interconnected computer networks and devices that use common communication protocols, such as the transmission control protocol (TCP), user datagram protocol (UDP) and the internet protocol (IP) in the TCP/IP internet protocol suite. The networks 112 may include wired or wireless communications networks owned and/or operated by other service providers. For example, the networks 112 may include another core network connected to one or more RANs, which may employ the same RAT as the RAN 104 or a different RAT.
[0030] Some or all of the WTRUs 102a, 102b, 102c, 102d in the communications system 100 may include multi-mode capabihties, i.e., the WTRUs 102a, 102b, 102c, 102d may include multiple transceivers for communicating with different wireless networks over different wireless links. For example, the WTRU 102c shown in FIG. 1A may be configured to communicate with the base station 114a, which may employ a cellular -based radio technology, and with the base station 114b, which may employ an IEEE 802 radio technology.
[0031] FIG. IB is a system diagram of an example WTRU 102. As shown in FIG. IB, the WTRU 102 may include a processor 118, a transceiver 120, a transmit/receive element 122, a speaker/microphone 124, a keypad 126, a display /touchp ad 128, non-removable memory 130, removable memory 132, a power source 134, a global positioning system (GPS) chipset 136, and other peripherals 138. It will be appreciated that the WTRU 102 may include any sub-combination of the foregoing elements while remaining consistent with an embodiment.
[0032] The processor 118 may be a general purpose processor, a special purpose processor, a conventional processor, a digital signal processor (DSP), a plurality of microprocessors, one or more microprocessors in association with a DSP core, a controller, a microcontroller, Application Specific Integrated Circuits (ASICs), Field Programmable Gate Array (FPGAs) circuits, any other type of integrated circuit (IC), a state machine, and the like. The processor 118 may perform signal coding, data processing, power control, input/output processing, and/or any other functionality that enables the WTRU 102 to operate in a wireless environment. The processor 118 may be coupled to the transceiver 120, which may be coupled to the transmit/receive element 122. While FIG. IB depicts the processor 118 and the transceiver 120 as separate components, it will be appreciated that the processor 118 and the transceiver 120 may be integrated together in an electronic package or chip.
[0033] The transmit/receive element 122 may be configured to transmit signals to, or receive signals from, a base station (e.g., the base station 114a) over the air interface 116. For example, in one embodiment, the transmit/receive element 122 may be an antenna configured to transmit and/or receive RF signals. In another embodiment, the transmit/receive element 122 may be an emitter/detector configured to transmit and/or receive IR, UV, or visible light signals, for example. In yet another embodiment, the transmit/receive element 122 may be configured to transmit and receive both RF and hght signals. It will be appreciated that the transmit/receive element 122 may be configured to transmit and/or receive any combination of wireless signals.
[0034] In addition, although the transmit/receive element 122 is depicted in FIG. IB as a single element, the WTRU 102 may include any number of transmit/receive elements 122. More specifically, the WTRU 102 may employ MIMO technology. Thus, in one embodiment, the WTRU 102 may include two or more transmit/receive elements 122 (e.g., multiple antennas) for transmitting and receiving wireless signals over the air interface 116.
[0035] The transceiver 120 may be configured to modulate the signals that are to be transmitted by the transmit/receive element 122 and to demodulate the signals that are received by the transmit/receive element 122. As noted above, the WTRU 102 may have multi-mode capabilities. Thus, the transceiver 120 may include multiple transceivers for enabling the WTRU 102 to communicate via multiple RATs, such as UTRA and IEEE 802.11, for example.
[0036] The processor 118 of the WTRU 102 may be coupled to, and may receive user input data from, the speaker/microphone 124, the keypad 126, and/or the display /touchp ad 128 (e.g., a liquid crystal display (LCD) display unit or organic hght-emitting diode (OLED) display unit). The processor 118 may also output user data to the speaker/microphone 124, the keypad 126, and/or the display /touchp ad 128. In addition, the processor 118 may access information from, and store data in, any type of suitable memory, such as the non-removable memory 130 and/or the removable memory 132. The nonremovable memory 130 may include random-access memory (RAM), read-only memory (ROM), a hard disk, or any other type of memory storage device. The removable memory 132 may include a subscriber identity module (SIM) card, a memory stick, a secure digital (SD) memory card, and the like. In other embodiments, the processor 118 may access information from, and store data in, memory that is not physically located on the WTRU 102, such as on a server or a home computer (not shown).
[0037] The processor 118 may receive power from the power source 134, and may be configured to distribute and/or control the power to the other components in the WTRU 102. The power source 134 may be any suitable device for powering the WTRU 102. For example, the power source 134 may include one or more dry cell batteries (e.g., nickel-cadmium (NiCd), nickel-zinc (NiZn), nickel metal hydride (NiMH), lithium-ion (Li-ion), etc.), solar cells, fuel cells, and the like.
[0038] The processor 118 may also be coupled to the GPS chipset 136, which may be configured to provide location information (e.g., longitude and latitude) regarding the current location of the WTRU 102. In addition to, or in lieu of, the information from the GPS chipset 136, the WTRU 102 may receive location information over the air interface 116 from a base station (e.g., base stations 114a, 114b) and/or determine its location based on the timing of the signals being received from two or more nearby base stations. It will be appreciated that the WTRU 102 may acquire location information by way of any suitable location-determination method while remaining consistent with an embodiment.
[0039] The processor 118 may further be coupled to other peripherals
138, which may include one or more software and/or hardware modules that provide additional features, functionality and/or wired or wireless connectivity. For example, the peripherals 138 may include an accelerometer, an e-compass, a satellite transceiver, a digital camera (for photographs or video), a universal serial bus (USB) port, a vibration device, a television transceiver, a hands free headset, a Bluetooth® module, a frequency modulated (FM) radio unit, a digital music player, a media player, a video game player module, an Internet browser, and the like.
[0040] FIG. 1C is a system diagram of the RAN 104 and the core network 106 according to an embodiment. As noted above, the RAN 104 may employ an E-UTRA radio technology to communicate with the WTRUs 102a, 102b, 102c over the air interface 116. The RAN 104 may also be in communication with the core network 106.
[0041] The RAN 104 may include eNode-Bs 140a, 140b, 140c, though it will be appreciated that the RAN 104 may include any number of eNode-Bs while remaining consistent with an embodiment. The eNode-Bs 140a, 140b, 140c may each include one or more transceivers for communicating with the WTRUs 102a, 102b, 102c over the air interface 116. In one embodiment, the eNode-Bs 140a, 140b, 140c may implement MIMO technology. Thus, the eNode-B 140a, for example, may use multiple antennas to transmit wireless signals to, and receive wireless signals from, the WTRU 102a.
[0042] Each of the eNode-Bs 140a, 140b, 140c may be associated with a particular cell (not shown) and may be configured to handle radio resource management decisions, handover decisions, scheduling of users in the uplink and/or downhnk, and the like. As shown in FIG. 1C, the eNode-Bs 140a, 140b, 140c may communicate with one another over an X2 interface. [0043] The core network 106 shown in FIG. 1C may include a mobility management entity gateway (MME) 142, a serving gateway 144, and a packet data network (PDN) gateway 146. While each of the foregoing elements are depicted as part of the core network 106, it will be appreciated that any one of these elements may be owned and/or operated by an entity other than the core network operator.
[0044] The MME 142 may be connected to each of the eNode-Bs 140a,
140b, 140c in the RAN 104 via an Si interface and may serve as a control node. For example, the MME 142 may be responsible for authenticating users of the WTRUs 102a, 102b, 102c, bearer activation/deactivation, selecting a particular serving gateway during an initial attach of the WTRUs 102a, 102b, 102c, and the like. The MME 142 may also provide a control plane function for switching between the RAN 104 and other RANs (not shown) that employ other radio technologies, such as GSM or WCDMA.
[0045] The serving gateway 144 may be connected to each of the eNode-
Bs 140a, 140b, 140c in the RAN 104 via the Si interface. The serving gateway 144 may generally route and forward user data packets to/from the WTRUs 102a, 102b, 102c. The serving gateway 144 may also perform other functions, such as anchoring user planes during inter-eNode B handovers, triggering paging when downlink data is available for the WTRUs 102a, 102b, 102c, managing and storing contexts of the WTRUs 102a, 102b, 102c, and the like.
[0046] The serving gateway 144 may also be connected to the PDN gateway 146, which may provide the WTRUs 102a, 102b, 102c with access to packet-switched networks, such as the Internet 110, to facilitate communications between the WTRUs 102a, 102b, 102c and IP-enabled devices.
[0047] The core network 106 may facilitate communications with other networks. For example, the core network 106 may provide the WTRUs 102a, 102b, 102c with access to circuit-switched networks, such as the PSTN 108, to facilitate communications between the WTRUs 102a, 102b, 102c and traditional land-line communications devices. For example, the core network 106 may include, or may communicate with, an IP gateway (e.g., an IP multimedia subsystem (IMS) server) that serves as an interface between the core network 106 and the PSTN 108. In addition, the core network 106 may provide the WTRUs 102a, 102b, 102c with access to the networks 112, which may include other wired or wireless networks that are owned and/or operated by other service providers.
[0048] Other network 112 may further be connected to an IEEE 802.11 based wireless local area network (WLAN) 160. The WLAN 160 may include an access router 165. The access router may contain gateway functionality. The access router 165 may be in communication with a plurality of access points (APs) 170a, 170b. The communication between access router 165 and APs 170a, 170b may be via wired Ethernet (IEEE 802.3 standards), or any type of wireless communication protocol. AP 170a is in wireless communication over an air interface with WTRU 102 d.
[0049] FIG. ID is a system diagram of an example communications system 175 in which one or more disclosed embodiments may be implemented. In some embodiments, communications system 175 may be implemented using all or a portion of system 100 as shown and described with respect to FIG. 1A.
[0050] User device 180a, server 185, and/or service server 190 may communicate over a communications network 195. These communications may be wireless, wired, or any combination of wireless and wired. Communications network 195 may include the internet 110, core network 106, other networks 112, or any other suitable communications network or combination of communications networks.
[0051] User device 180a may include a WTRU (such as WTRU 102a), or any suitable user computing and/or communications device such as a desktop computer, web appliance, interactive television (ITV) device, gaming console (such as Microsoft XBOX™ or Sony Playstation™) or the like. User device 180a and/or applications executing on user device 180a may generate events such as mouse clicks, keyboard strokes, and the like. These events may be processed by user device 180a and/or may be transmitted to another device such as server 185 or service server 190. [0052] Server 185 may include a web server, application server, data server, or any combination of these or other types of servers. Server 185 may include any suitable server device such as a server computer, personal computer, or the like. Server 185 may host applications accessible to user device 185a. For example, server 185 may include a gaming server hosting a massively multiplayer online game (MMOG), an email server, a web server hosting a website such as a social media website or blog, or other types of servers typically accessible by a user device over a computer communications network.
[0053] User device 180a may access server 185 over computer system
175 to interact with services that it provides. For example, user device 180a may access a game server hosted on server 185 to participate in a multiplayer online game. Access of server 185 by user device 180a may be via a client application executing on user device 180a or any other suitable mechanism. In some cases, the server 185 may receive events from user device 180a, or may send events to user device 180a. For example, the server 185 may send an event to user device 180a indicating that additional in-game resources are required for continued play.
[0054] Service server 190 may include a web server, application server, data server, or any combination of these or other types of servers hosted on a server device. Service server 190 may include any suitable server device such as a server computer, personal computer, or the like. Service server 190 may be configured to communicate with server 185, for example, over communications network 195 or any other suitable communications medium. Service server may be co-located with, combined with, or in direct communication with server 185.
[0055] Service server 190 may communicate with server 185 to provide services, such as third party services, to users of server 185. For example, a subscriber to a game hosted on server 185 may access server 185 from user device 180A and may subscribe to third party services for the game which are hosted on service server 190. [0056] Service server 190 may be configured to receive and/or intercept events transmitted between user device 180a and server 185. For example, server 185 may be configured to send an event destined for user device 180a to service server 190 instead of sending the event to the user device 180a, and the service server 190 may send the event or another event, signal, or message to device 180a. In another example, in addition to sending the event user device 180a, server 185 may also send the event to service server 190. Service server 190 may then also send the event or it may send another event, signal, or message to device 180a. In a case where server 185 includes a game server, server 185 may send an event to service server 190 indicating a requirement of a user of user device 180a, and service server 190 may send the event or another signal or message to device 180a indicating that a resource is available to acquire the requirement. In some embodiments, service server 190 may only forward the event to device 180a under certain conditions, such as based on a user preference and/or context information relating to the user of device 180a.
[0057] In an embodiment, the functions of the service server 190 and server 185 may be implemented using the same device. In an alternative embodiment, the functions of the service server 190 and server 185 may be implemented across a number of additional devices.
[0058] In some embodiments, user devices 180b and 180c may communicate with server 185 and or service server 190 via user device 180a. For example, user device 180a may forward a notification message from service server 190 to user device 180b via a peer to peer connection and may forward a notification message from service server 190 to user device 180c via communications network 195. In some embodiments, user devices 180a, 180b, and 180c may form a network, such as a peer-to-peer network, and such network may have a mesh topology, a star topology using user device 180a as a coordinating node, or any other suitable topology. In such embodiments, the peer-to-peer network may operate independently of server 185 and/or service server 190, and may incorporate functionality that otherwise would be hosted by server 185 and/or service server 190, such as functionality described herein. [0059] In addition to discouraging users from abandoning a game in order to improve the user experience, the proposed event pattern detection and action system may also assist game and application developers to incorporate additional functionality in existing games or applications or offer additional games or apphcations.
[0060] A game independent intrinsic player characteristic profile calibration method and system may be used to assess a game independent player skill characteristic profile based on scores from multiple game sessions. The game independent player skill profile may be used as input to provide online help that matches player's characteristics. The effectiveness of actions may be measured using feedback information provided by users or measurements on behavior improvements.
[0061] In addition to game independent player profiling, it may also be important to model and analyze detailed "micro- attributes" of one or more users specific to the tasks and stages of each game or application. For example, different types of prizes, weapons, and treasures collected by a player may be considered types of micro -attributes. Achievement levels may also be defined by attributes such as score, kill rate, and failure rate. In an embodiment, these micro-attributes may be tiny indicators (e.g., not the score displayed to a user) and may provide feedback regarding user's actual in-game performance, which may not be related to a tangible score. The micro- attributes may be of interest to anyone learning a new skill. The micro- attributes may be application specific, complex, diverse, and may be hidden from the player, coach, or spectators (e.g., prize earned, level passed, killing types of monsters, etc.).
[0062] For example, a game may consist of multiple levels, with each level containing various prizes that may be collected. Some of these prizes may result in additional prizes becoming available in more advanced levels or in better weapons or character abilities. In this type of game, a player may still be able to go through all levels without collecting all prizes and get an overall score of X, if applicable. A second player may not complete all levels but if she collects a lot of prizes at each level, the result may be the same overall score as the first player. Here, two "yardsticks" or models may be needed in order to compare a player against her own past session performance or against other players. Based on the comparison results, specific encouragement messages may be provided to help improve user experience.
[0063] For different types of games or applications and different business purposes, different types of micro-attributes and reference models may be derived from multiple selected groups of users based on one or more parameters such as session durations, frequency, achievements, and scores. Disclosed herein are methods and systems to define and detect detailed and game or application specific micro-attributes for the purpose of supporting developers and owners of these games or applications in improving user experience. For example, user experience may be improved by introducing specific encouragement actions based on one or more micro-attribute progression patterns. Some micro-attributes may be hidden from players and may be observed indirectly by one or more non-linear or abnormal player behavior patterns.
[0064] As previously mentioned, prize earned and level achieved may be considered as two exemplary micro-attributes that may be used to measure the progress of a game player. There are many other types of micro-attributes for different games and applications under specific game and application contexts. Examples of micro- attributes may comprise the knowledge, strategies, and basic skills required to accomphsh different types of tasks. Tasks, by way of example, may include selecting a weapon and taking action steps for killing different types of monsters, navigating through different paths to collect treasures and obtaining prizes, building different virtual structures with proper types of tools and resources, and learning the rules and steps to solve a puzzle, for example, a Rubik's cube.
[0065] Since users may gain skills and knowledge on one or more micro- attributes at different paces, the relative progress of a user's proficiency level observed from one or more micro-attributes is likely to differ and may change over time when using different reference groups. For most of the mobile applications and games that have a relatively short lifecycle, the progress of users modeled by the micro-attributes may be faster than traditional athletic games, for example, basketball or baseball games which require years of training. Therefore, efficient methods for tracking and detecting the relatively faster progression patterns present another challenging problem to address.
[0066] Furthermore, defining, detecting and triggering effective encouragement actions and feedback requires a deep understanding of both a game or apphcation context and a user's proficiency level for one or more micro-attributes against reference models. Real-time encouragement and feedback may also require different kinds of messages or actions designed for different stages or phases of a game or apphcation task, for example, passing a monster cave. Examples of encouragement types may include actions for avoiding frustration at the beginning of a session, keeping intermediate one or more users motivated to achieve higher levels, improving effectiveness of user retention, and recommending appropriate coaching for improving user performance at different skill levels.
[0067] Disclosed herein are efficient methods and systems for providing an application independent event pattern processing engine for game or application developers to specify, track, analyze, and detect game or application dependent event patterns based on detailed player behavior micro- attributes that are defined for tasks and/or a sub-division of tasks for individuals and groups of users. The player behavior micro- attributes may be defined by game developers and/or third party service providers. The proposed system may support multiple types of statistical analysis methods including machine learning algorithms and data mining processes to discover one or more micro-attributes in real-time or by using batch processes. The disclosed methods and systems may also support rapid creation of effective encouragement actions based on one or more micro-attributes for one or more users in real-time. On detecting a micro-attribute event pattern, for example, when one or more micro-attributes are greater than one or more predefined thresholds, or when the one or more micro-attributes exhibit nonlinear behavior or abnormal behaviors, the proposed system may trigger the execution of encouragement service actions defined by the developers in an automatic fashion.
[0068] In addition, the disclosed system may analyze one or more micro- attributes from a selected group of users on one or more tasks or subtasks to generate one or more models for use as a "yardstick" in assessing the proficiency level of one or more micro-attributes of each individual user against the models. The proficiency assessment of a user with respect to one or more specific application tasks, and/or sub-tasks, may comprise scores or rankings of one or more micro-attributes against the models derived from one or more users grouped by criteria. Criteria may comprise by way of example, cumulative engagement time, session frequency, and/or achievement scores.
[0069] The disclosed proficiency level assessment method may comprise one or more proficiency indicators, each representing the scores, ranking, or classification of one or more micro-attributes. For example, a micro-attribute kill rate may be defined based the number of enemies killed divided by a unit of time. The unit of time may be specified per game, per session of the game, or per hour. The proficiency level indicator may be defined based on the percentile ranking of the kill rate against a statistical distribution model for a set of players. The average and standard distribution of a normal distribution model may be used to calculate the rank of the proficiency level indicator. The proficiency level of the kill rate may also depend on two proficiency indicators derived from the micro-attributes; two examples include speed and shooting accuracy. The speed proficiency of a player may be assessed by one micro- attribute: reaction time or number of clicks per minute when encountering an enemy. The accuracy proficiency may be assessed by two micro-attributes: a number of bullets fired to kill one or more enemies and a number of bullets which miss the one or more enemies.
[0070] The disclosed system may support real-time and batch processing of one or more machine learning and data mining processes to optimize the models and scoring methods. A game developer may choose to also define kill rate and/or death rate as well as score or game level as micro-attributes. Some high level attributes may be dependent on one or more low level attributes. The proficiency level may provide the percentile ranking for both high level and low level attributes. For example, a proficiency indicator such as kill rate for a first person shooting game may comprise two micro-attributes such as accuracy and speed. Each micro-attribute may have a statistical distribution for players with different levels of experience or play time. When a player's kill rate has not improved as much as other players, the system may identify the specific micro-attribute, for example, accuracy or speed, that may have hindered the player's kill rate. At the same time, the game developer may also identify attributes, for example, accuracy, speed, or other attributes such as navigation, that the player has made good progress on but was not necessarily aware of.
[0071] Furthermore, the disclosed system may track the progression of the micro-attributes and proficiency indicators to observe the learning curves of individual users on one or more micro-attributes. By observing and analyzing the progression pattern of proficiency indicators of individual users and groups of users, the disclosed system may discover hidden, for example, latent clues on the uneven or abnormal progression patterns with respect to different groups of users in one or more stages or phases of one or more tasks. The proposed system may support real-time and batch processing of one or more machine learning and data mining processes to discover one or more optimized models for one or more sub-divided progression stages of one or more tasks.
[0072] After a period of initial analysis, the disclosed system may have collected and discovered a set of proficiency progression models from different groups of users. The proposed system may then score the micro-attribute inputs against one or more selected distribution models to provide the relative progression patterns of each user against different models for different tasks in real-time. Using this insightful information, effective encouragement actions may be provided to users to accelerate the learning curve of one or more micro-attributes associated with specific accomplishments related to the current stage of task, in real-time, and suggest strategies to achieve better performance on subsequent tasks. [0073] The disclosed method and system may be comprised of service functional interfaces as shown in FIG. 2. FIG. 2 illustrates a micro-attribute event pattern detection and action service architecture 200. Each numeric label shown in the figure provides an indication of an example of an operation. In step I, a developer 202 may design and deploy an application to a game/application server 204. In steps 2a and 2b, users 206 may use a personal computer (PC) or one or more mobile devices to interact with the game/application server 204. In an embodiment, there may be a first user 214 and a second user 216 accessing the application from various devices. In steps 3a and 3b, the users 206 may interact with social network servers 208. In step 4, a micro-attribute profiling and event pattern detection and action service server ("service server") 210 may provide an easy to use GUI template as well as APIs, for example, a web service interface, for the game developer 202 to define micro-attributes and proficiency indicators as well as event pattern detections and one or more action parameters. The game developer 202 may share the definition of the micro-attributes and proficiency indicators to third party service providers 212. In step 5, third party service providers 212 may use a GUI template to enter one or more micro-attribute definitions, event pattern detection rules and actions that may send encouragement messages and/or invoke API calls. In step 6, the game server 204 may report game events in real-time or in batch. In step 7, the service server 210 may also collect game/application data from users 206 and user 206 devices and provide encouragement messages or actions directly.
[0074] Referring now to FIG. 3, a workflow diagram of the micro- attribute event pattern detection and action service is shown. In step 1, the game or application providers, for example, game developers 202, may create, deploy and maintain games in one or more game servers 204. In step 2, the game developer 202 may define micro-attributes, proficiency indicator and models, event pattern triggers, and actions using a GUI template stored using a web service API to the repository of the service server 210. For example, a first person shooting game may have speed and accuracy defined as micro- attributes. In steps 3 and 4, the interaction between the first user 214 and the game server 204 may be recorded and sent from the game server 204 to the service server 210 as game events. In steps 5 and 6, the interaction between the second user 216 and the game server 204 may be recorded and sent from the game server 204 to the service server 210 as game events. The game events may contain information on the state of the one or more users 206, for example, the first user 214 and the second user 216. One or more events may be sent to the service server 210 in real-time or as a batch to report the evolution of a state of the one or more micro-attributes for each user 206. In step 7, the event reporting by the game server 204 to the service server 210 may be repeated for one or more game sessions. The game developer 202 may also disable or filter the amount of data reported to the service server 210 to prevent network congestion.
[0075] In step 8, the service server 210 may analyze the micro-attribute evolution over time across multiple users 206 and user groups. Each user group may segmented by one or more criteria that may be defined by the game developer 202. For example, one criterion may be based on play score. Other criteria may be based on combination of play score and play time. Based on the distribution of the micro-attributes, proficiency indicators may be generated to represent the normalized percentage ranking of each micro- attribute and high level attributes that may be depended on one or more combination of micro-attributes.
[0076] In step 9, with the multiple percentile rankings obtained from multiple reported micro-attribute events, the service server 210 may detect progression patterns for combinations of proficiency indicators and triggers action alerts. The action alerts may be processed based on game developer 202 and/or third party 212 provided APIs.
[0077] In step 10, the service server 210 210 may use the APIs to generate one or more in-game action request, for example, for the first user 214, containing detected event patterns and the state of micro- attributes and proficiency indicators to be provided to the game server 204.
[0078] In step 11, the game server 204 may activate and send the specific encouragement actions for the first user 214. Alternatively or additionally, in step 12, the service server 204 may directly send an encouragement message to the second user 216.
[0079] The disclosed methods and systems provide templates for game developers 202 and/or third party service providers 212 to define micro- attributes and specify event patterns on one or more micro-attributes. For example, to support a smart device (e.g., the Apple iWatch) and an enabled gamification application, such as training an athlete (e.g., a runner, swimmer, or martial artist), the disclosed embodiments may track and provide instant encouragement based on multiple micro-attributes of the athlete. In the case of a runner, heart rate at different exercise intensities, strength and durability of different muscle groups, and other specific factors may be critical to the success of a specific training method.
[0080] To observe a behavior pattern, a task may be divided, for example, the 100 meter dash, into a number of sub-tasks, similar to the micro- attributes, based on "tipping points", "milestones", or "phases" that are used for determining the overall outcome for this task. For example, in the 100 meter dash, there may be three phases: start, mid-race, and finish. Usually the first 40 meters cover the start phase in which racers accelerate to their maximum speed. In the mid-race phase, for example, 40 meters to 80 meters, racers try to hold their maximum speed. In the last 20 meters which is the finish phase, racers may make extra effort to complete the race.
[0081] The performance at the end of each phase, the tipping point, largely affects a racer's final result of the whole race. Therefore, in addition to attributes that measure user performance at the task level, micro-attribute may be defined for measuring finer scale performance metrics at each distinct task phase. In the 100 meter dash, for example, the encouragement action may pin point the specific exercise for specific muscle groups that may improve the first 40 meters or the effort required to improve the durability of the last 20 meters. While this example is given in the context of a 100 meter dash, the concepts of tipping points and phases may be applied to a broad set of tasks and/or challenges. [0082] Furthermore, the disclosed system may support automated encouragement generation using default criteria. The default criteria may comprise praising users with fast improving or higher than average micro- attributes or providing help to users with degrading or lower than average micro-attributes. Upon detection of the specified micro -attribute based event patterns, the disclosed system may generate default encouragement triggers with additional context information. Examples of context information comprise trigger conditions and thresholds settings that may be used by the developers to select and provide effective encouragement to users. For example, when detecting deceleration patterns of one or more micro-attributes of a user that are worse than other users, the disclosed system may provide encouragements to users to make extra efforts.
[0083] Referring now to FIG. 4, a functional diagram of the service server 210 (as shown in FIG. 2) is shown. In an embodiment, the service server 210 may comprise a micro -attribute profiler 402, event pattern detection engine 404, encouragement action services 406 and a data repository 408 implementing one or more of the functions described herein. In an embodiment, the service server 210 may be interfaced with one or more social networks servers 208 and may include a social activity profiler 410. The social activity profiler 410 may provide encouragement actions based on a user's 206 social network, which is described detail below.
[0084] The micro-attribute profiler 402 may obtain micro-attribute and model definition templates provided by game developers 202 and stored in the data repository 408 for one or more games/applications. The micro-attribute profiler 402 may additionally collect selected micro-attributes from game event inputs reported by the game server for each user 206 in real-time or in batch and analyze the micro-attributes and build distribution models for one or more micro-attributes. Furthermore, the micro-attribute profiler 402 may score, rank, or classify micro-attributes from input events in real-time against one or more distribution models to obtain "proficiency indicators" for one or more micro-attributes. The micro-attribute profiler 402 may record the micro- attributes and proficiency indicators in the data repository 408. [0085] The event pattern detection engine 404 may detect patterns using proficiency indicators, micro-attributes, and other user events. For example, the event pattern detection engine 404 may detect a user 206 is having difficulties passing a level or having a high death rate and low proficiency in a kill rate. The event pattern detection engine 404 may also trigger actions to send alert messages or invoke actions. For example, a game provider or game developer 202 may specify the rule by filling templates in advance for triggering encouragement such as, "if a player fails for 3 consecutive times", then do "encouragement action". Then the event pattern detection engine 404 may count the number of consecutive failure events from the user 206 and trigger one or more encouragement actions when the count equals three. Furthermore, the event pattern detection engine 404 may record the matched event patterns and actions in a data repository for tracking the progress of one or more micro-attributes and for addition of one or more new event patterns.
[0086] The action processing done in, for example, the encouragement and action services 406, may include processing triggered actions to send encouragement messages, feedback, or some other content to user devices directly or through proxies, mediators, or external services. For example, the encouragement and action services 406 may identify the specific micro- attributes that cause the difficulties in accomplishing a current task as well as micro-attributes that may be useful for future tasks.
[0087] The action processing may also include processing triggered actions to invoke game or application related functions using API interfaces provided by game or application developers 202 or third party service providers 212. For example, triggered actions may be used to call function interfaces to boost the power, for example, speed, force, or shield, of an avatar or weapon. Other on-line help functions may additionally be invoked to improve a user's 206 performance or trigger a practice session to support the user 206 in progressing their performance, for example, honing one or more skills for a particular challenge. The action processing may support activation and utilizing the result of real-time and batch processing of machine learning and data mining processes developed by game developers or third party service providers.
[0088] A detailed processing between the function modules is shown in
FIG. 4. Micro-attributes may be defined by developers 202 or third party service providers 212 and stored in the data repository 408. Event pattern matching templates may be provided for developers 202 or administrators to define micro-attributes for each application task. The templates may also contain threshold control parameters for each micro -attribute. When the event pattern detection engine 404 detects micro -attribute inputs exceeding the threshold, predefined actions may be triggered to invoke corresponding encouragement actions, by the encouragement action services 406, to users 206. For example, an event pattern may be specified to detect a user who spent an excessive amount of time collecting treasures or wandering in a game world but does not know which weapon to use or have adequate battle skills required to advance beyond a monster cave. Another exemplary event pattern may be a user attempting to solve a Rubik's cube without making sufficient progress.
[0089] On detecting such behavior patterns, the service server 210 may send encouragement actions, which may be defined by the game or application developers 202 in a provided template. For example, for a user 206 who is stuck at a specific game level but has collected many prizes, the detection rule may encourage the player to use some of the collected prizes to buy a better weapon in order to advance by, in one example, killing a monster. On the other hand, for a player who focuses on completing game levels but does not collect the appropriate weapons or shields that may be required to pass an advanced game level, the service server 210 may suggest collection of the required weapons or shields.
[0090] The triggered encouragement events may comprise detailed context information about a task, thresholds on the micro-attributes required for the task, and a sequence of actions taken by the user 206. For example, for users 206 who cannot solve a puzzle or navigate through difficult courses, the disclosed system may provide a progressive pattern triggered recording to save the sequence of steps executed by a player who solved the puzzle and navigated through the track faster and more efficiently than other players. These triggering patterns and corresponding recorded sequences of actions may be retrieved and provided as "success examples" to users 206 who have deficient micro-attributes required to solve the puzzle or complete the track even before the players have actually encountered problems. Such information, which may have originally been hidden from the user 206, may enable the user 206 to complete a specific task and, at the same time, may help the user 206 to learn the "right" methods or the "path" to success.
[0091] In addition to the event pattern detection functions, the disclosed system may also provide progressive proficiency indicator profiling and tracking functions to assess the learning curve of micro-attributes. The strength and weakness of a user 206 through the whole game or application lifecycle may be observed by the progression of proficiency indicators for one or more micro-attributes, which may be extracted from the event parameters defined and instrumented by the game developer 202, a community of players, or a third party service provider 212. The variation of proficiency indicators over time may represent the learning curve of each user 206 on each task for one or more micro-attributes. With the fine grained learning curve assessment stored in the data repository 408, users 206 and/or coaches may obtain such information to provide effective coaching and encouragements.
[0092] The micro- attributes may be extracted from input events and provided as inputs to the micro-attribute profiler 402 to build statistical distribution models. The models may be used for assessing, for example, classification, scoring, and ranking, one or more micro-attributes of a user 206 against models built upon the historical data from one or more users 206. For the types of micro-attributes that support quantifiable numerical values, a set of proficiency indicators may be defined by game developers 202 or one or more third party service providers 212. Proficiency indicators may also be used for profiling micro-attribute behaviors relative to models built from the user 206 or one or more groups of users 206. These proficiency indicators may include, for example, average, beginner, and expert levels. The micro- attribute profiler 402 may track the proficiency profile over the full application or game lifecycle.
[0093] The encouragement action services 406 may include interfaces to accept triggered actions from the event pattern detection engine 404 and service interfaces for game engines in both game servers 204 and/or users 206 or user devices 206. This may be different from the typical in-game "power-up" or "bonus" mechanisms designed for users 206 to gain instant benefits of various kinds and to boost their in-game performance. The encouragement action services 406 may enable additional value-added functions to be provided to users 206 after the game has been designed and deployed. Game developers 202 may design and deploy new encouragement actions based on real-time data that may provide insights on user behavior in progression at different granularities modeled by one or more micro-attributes. Developers 202 may have the flexibility to define corrective compensation and adjust the difficulty level for users 206 to improve the game experience. Furthermore, the developer 202 or third party service providers 212 may offer encouragement actions of different kinds to motivate users 206 and keep them engaged.
[0094] Methods and systems for micro-attribute profiling and event pattern detection are further disclosed herein.
[0095] Referring now to FIG. 5, filters and rules that may be used with micro-attribute monitoring and encouragement actions are shown. In an embodiment, game developers 202 and/or third party service providers 212 may use the GUI template and web service API provided by the service server 210 to create, read, update, and delete micro-attributes and parameters in the illustrated GUI template. The GUI template may be used to segment one or more users into multiple groups based on progression models of micro- attributes for each application/game context such as game task or game level. The application context may also include specific tasks or challenges, for example, a difficult turn of a race track or battle with a boss, as defined by the game developer 202. One or more developers 202 may enter the micro- attributes and parameters for segmentation filters and submit the template to the service server 210 for each application/game using web services and/or HTML scripts and data repository backend functions.
[0096] The service server 210 may record the templates in the data repository 408. In an embodiment, a first application (App l) may include micro-attributes (MAs) such as {MAI: score/kill rate, MA2: prize/points} for all levels. For levels 3-5, only part of the MAs such as {MA3: accuracy, MA4: speed} may be filtered and for levels 2-7, {MA5: hiding, MA6: discovery} may be filtered. The micro- attributes may be encoded using attribute-value pairs. The micro- attribute profiler 402, event pattern detection engine 404, and encouragement action services 406 may use the attribute-value pair definition entered by the game developers 202 as a data model to process the game event inputs. The third party service providers 212 may have access to the template based on the attribute-value pair definition.
[0097] These micro-attributes (e.g., accuracy, speed, prize earned, level passed, scores etc.) may be filtered and extracted from a large number of possible input events from the applications or games. The filters may also partition the data into segments or bands based on a statistical distribution. The population filter may segment users 206 based on skill level, using for example, scores or prize earned, or spending level (e.g., VIP or casual freemium user). The progression, for example, evolving filter may segment the users 206 based on time and progression criteria such as cumulated play time or play frequency. The micro-attribute profiler 402 may use the segmented models to score or rank the micro-attributes of each user 206 to calculate proficiency indicators.
[0098] A proficiency indictor of a micro-attribute such as kill rate may also be dependent on one or more proficiency indicators for other micro- attributes such as accuracy and speed. Proficiency indicators may be normalized such that a weighted average and threshold may be set without knowledge of absolute scales that may be highly diverse and game dependent. An additional clustering model may be built using one or more proficiency indicators calculated using the segmented population and progression filter band. The clustering model provides a multi-dimensional grouping of progressive behavior paths for different groups of users as a reference model for identifying the progression of deficiency and strength of a user's 206 micro- attributes.
[0099] Once the micro-attributes, parameters for model segmentation filters, and the model are defined, event pattern detection rules may be specified by the game developers 202 and third party service providers 212. The event pattern detection template, also shown in FIG. 5, may comprise fields for developers 202 to specify the rule ID and patterns (e.g., Boolean expressions) on proficiency indicators of micro-attributes. A developer 202 may submit the template to the service server 210 and the template may be stored in the data repository 408. One or more third party service providers 212 may also submit the event detection and action template to the service server 210. In an embodiment, developers 202 may specify three rules to provide different levels of encouragement to users 206.
[0100] A first rule, for example, "If player X failed to pass level 3 for 3 times and Proficiency(MAl)<60% and Proficiency(MAl)<70% Proficiency (MA2)" may indicate a frustrating event for player X who has failed 3 times at level 3. The player may not know the reason for failing the level. The first rule, however, may detect that the player was doing well in earning the prize but has a problem with kill rate, which may be a micro-attribute. In this case, the system may provide a first level encouragement message, "Praise player- X: "You did well in MA2 by earning a prize that will be useful for the next level. Focus on MAI, kill rate, to pass level 3."
[0101] A second rule may provide more detailed information when detecting that player X is doing poorly on "accuracy" but doing well in "speed," which may be micro-attributes. When the second rule is triggered, a more specific encouragement message may be provided to the player-X: "In order to improve MAI, kill rate, focus on MA4, accuracy." This level of detail may provide a specific area for improvement that may be hidden from the players. A third rule may combine the first rule, use multiple MAs, for example, prizes earned, hiding, discovery, and suggest a revenue generating encouragement action, invoke special weapon promotion link and provide a message: "You are doing great in collecting prize(s), you may use points to buy weapon shield Z to pass level 3. Try to hide in the corner and use the shield when the Big Boss appears."
[0102] The templates stored in the data repository 408 may be managed by the service server 210 and may be accessible by the micro-attribute profiler 402, event pattern detection engine 404 and encouragement action services 406. The micro-attribute and model filters may be used by the micro-attribute profiler 402 to generate proficiency indicators for each of one or more attributes. A combination of one or more proficiency indicators representing one or more micro-indicators may be for higher level proficiency indicators. Some proficiency indicators are derived from higher level micro-attributes, for example, a cumulative score or kill rate. These higher level micro-attributes may have a dependency on lower level micro-attributes such as accuracy and speed. Proficiency indicators may be updated in memory and in the data repository 408 that may be accessed by the event pattern detection engine 404 in real-time. On detecting event patterns, either an encouragement message may be sent or an action may be invoked to interact with a selected user 206, for example, player X, from the action interface as described in the workflow diagram illustrated in FIG. 3.
[0103] Automated micro -attribute progression analysis and tracking methods and systems are disclosed herein. The disclosed system may support automated encouragement actions based on progression of proficiency indicators of one or more micro-attributes, as well as the contexts, including the sequence of actions that generated the micro- attributes and proficiency indictors. The sequence of actions may be stored in an event repository and organized by various dimensions, including tasks and user groups, for example, average and expert user groups.
[0104] Methods and systems for multi-model multi-attribute progression detection and recommendation are disclosed herein. The disclosed system detects progression of proficiency level of micro- attributes and recommends when to issue guidance to encourage and prepare a player with a proficiency level lower than the required minimal thresholds provisioned by a game designer for each task.
[0105] Method and systems for providing a graphical user interface
(GUI) and tools to provision and track the proficiency indicators for all the users 206 in real-time are disclosed herein. The content of the GUI template described in FIG. 5 may be encoded as attribute-value pairs that may be incorporated into a GUI form in hypertext markup language (HTML) or sent over a web service interface. The create, read, update and delete (CRUD) function on each of the attribute values supports manipulation of attribute- value pairs needed for a developer 202 to adjust micro-attribute thresholds and encourage messages rapidly after a game or apphcation has been deployed.
[0106] On detecting slow progression of one or more proficiency indicators and/or micro-attributes, context information may be provided on the user 206. Task, proficiency indicators, micro -attributes, and threshold values may be used in the detection patterns to activate encouragement actions (EA).
[0107] Users 206 may be praised based on defined criteria including, for example, when a proficiency indicator for micro-attribute X is higher than average proficiency indicators of a user 206 in a similar experience band and the proficiency indicator is not critical for an immediate task but it will be of benefit in future tasks. Another example includes making a determination of acceleration and de-acceleration patterns of proficiency indicators, whereby one or more micro-attributes are determined to be worse than expected. If one or more successful past patterns exist, one or more of these patterns may be used as exemplary patterns to comfort the one or more users and provide an incentive for user improvement.
[0108] One or more experts' proficiency indicator progression paths may be identified for a set of tasks. The proficiency indicators may be normalized to suggest the priority for improvements that may benefit multiple anticipated tasks. One or more users 206 may be encouraged to take a path that matches proficiency indicator profile automatically. In other words, there may be a number of paths to achieve a certain objective, and the user 206 may be encouraged to choose the path which is consistent with their proficiency.
[0109] Multiple encouragement methods may be provided for retaining users 206 effectively. Actions for comforting users 206 by providing positive feedback may be provided. Actions for helping users 206 to identify the weakness by insufficient proficiency indicators may be further provided. Instructions may be provided for enhancing user 206 proficiency or rearranging difficulty level. One or more actions may be used for encouraging users 206 to try lower difficulty level game modes for distracting users 206 from current failures and to help them develop the skills needed to progress beyond their current roadblock. One or more actions for pre-showing users 206 the hidden game contents for increasing users' 206 expectation are further disclosed. Alternatively or in combination, one or more actions for dynamically boosting low performance users 206 may include adjusting the in-game control parameters.
[0110] The micro-attribute profiler 402 may collect and generate the proficiency indicator model as one or more yardsticks to score input micro- attributes such as the resources collected by a player (e.g., prizes, weapons, and shields for explorer types of players) or achievement scores (e.g., kill rates or scores for aggressive type of players). The following example illustrates two micro-attributes; one is based on price earned and the other is based on achievement level. The micro-attribute profiler 402 may observe the two micro-attributes and may generate proficiency indicators (Pis) that may be used as inputs to an event pattern detection rule template to detect the progression pattern of a user 206 with respect to other users 206 on one or more micro-attributes. For example, the proficiency indicator data model may comprise a list of Pis, with a unique identifier (ID), PI. ID, and usage time (UT) category, PI.UT, for each task X, from one or more players:
PI : {PUD, Pl.TaskID : X, PI.UserlD : Y, Pl.Path : {PIPath}} Equation (1) [0111] The PIPath may comprise a sequence of proficiency indicator profile metrics for users in multiple experience bands, for example, cumulative usage time. In an embodiment, the following PI progression path data model of a user 206 comprises the progression sequences of two dimensional proficiency indicators PI.V, for example, an achievement score PI.V1 and total earned prizes PI.V2, for 5 categories of cumulative usage time (UT). A UT, for example, may be 1 to 5 weeks:
PIPath : {PI.UT: 1, PI.V: (0.12, 0.1)}, {PI.UT: 2, PI.V: (0.2, 0.22)},
{PI.UT: 5, PI.V: (0.36, 0.7)} Equation (2)
[0112] As an example, PI.V may be defined as a normalized percentile ranking of the micro-attributes prize earned or kill rate. It may also be used to define detailed micro-attributes such as accuracy and speed.
[0113] After the system has collected a sufficient amount of micro- attributes, the system may cluster the user 206 into groups, for example, experts, average, and below-average laggers. Well known unsupervised machine learning techniques may be used to cluster performing group users 206. These machine learning techniques may include by way of example, K- Means and Hierarchical clustering. The progression pattern of micro- attributes and the corresponding proficiency indicators in each group may provide the detailed information of each user's 206 learning curves on one or more micro-attributes. Some users 206 may achieve higher proficiency with respect to one micro -attribute faster than other users 206.
[0114] FIG. 6 illustrates an embodiment in which three different PI paths are used for tracking the progressions of proficiency indicators for expert users 206, average users 206, and a specific user 206, respectively. The proficiency indicators of the expert group may be used as role model reference for comparing the proficiency indicators of other groups of users 206.
[0115] Using the expert group as the role model has the advantage of informing the user 206 about the progression of micro-attributes of experts as role models. This may aid in the identification of areas of micro-attributes for improvement for multiple types of games automatically. It may also provide insight for users 206 and coaches to learn and design effective encouragement for users 206 at different proficiency levels. The expert group may be defined based on application specific criteria, for example, the virtual resource purchased, the numbers of followers in social network, fastest recovery, or weight lost. For example, to encourage aggressive and competitive behavior, the PI path of a group of aggressive and fast paced achievers may be used as the basis to guide the beginners interested in winning a competition. On the other hand, to encourage players to purchase virtual goods, the progression path for the top 10% of revenue generating customers may be selected as the basis to encourage other players.
[0116] Based on the PI path pattern of a user 206, different types of encouragement messages may be dehvered to the users 206. It may be more effective to encourage the user 206 with specific information about how the user 206 is doing with respect to different proficiency indicators of different micro-attributes. As illustrated in FIG. 6, the average users 206 may have made slower progress than the user 206 in the expert group. The average user 206 of the game may initially make more progress in micro-attribute V.2 (navigating and collecting prizes) than V.1 (attacking an enemy or overcoming obstacles to pass a level) when compared to the corresponding proficiency indicators, V.1 and V.2 of the expert group in each experience band. In this case, the encouragement messages may be provided to average users 206 to pay more attention to improve proficiency indicator V.l so that the user 206 may be more likely to achieve better proficiency and achievement when compared to the experts. If a user 206 (e.g., user number 3) is making good progress with regard to V.l but slow progress with regard to micro-attribute V.2, the system may "praise" the progress with regard to V. l and provide help, for example, with a hint or guidance with regard to V.2. With a sufficiently large number of micro-attributes, the dimension of the overall space of micro- attributes becomes large. This in turn may increase the likelihood that any particular user 206 will exceed the mean in one of those dimensions. This may enable the system to determine encouraging feedback for the user 206.
[0117] Adaptive control of proficiency boosting control parameters are disclosed herein. As an extension to the micro -attribute progression detection and encouragement actions, the disclosed system may support in-game user 206 capability boosting by integrating control parameters that adaptively impact the observable behavior micro-attributes with the progressive proficiency path model and proficiency indicators of each player in real-time. It should be noted that this is in contrast to game specific "power-up" mechanisms, which are a set of performance or experience boosting control parameters for in-game characters which may be adjusted and offered transparently to the player after the game is deployed.
[0118] The encouragement action services 406 may provide methods for the game developer 202 to define game control parameters which may affect the user 206 behavior micro-attributes. These micro-attributes may be important performance indicators of a user 206. For example, running and jumping control parameters may affect the navigation efficiency of explorers in an adventure game. Magnification and vision range control parameters may affect the accuracy and alertness of aggressive users 206 in shooting game. Additionally, temporal modifications may be performed that take into account the user's 206 reaction time, which may be characterized as a micro- attribute. For example, when faced with an insurmountably fast moving target, the speed of the target may be adjusted to be within range of the user's 206 reaction time. These in-game parameters may be included in the templates for provisioning the encouragement actions. For example, the running and jumping control parameters may be included in the API for a game developer 202 to define rules to invoke and pass one or more suitable parameter values that are dependent on the real-time behavior (e.g., if a proficiency indicator "running" is determined to be 20% below the average). The game developer may only need to power up a specific capability of the avatar, for example, running speed by 10% to 20%.
[0119] Adjusting the control parameters in encouragement actions may provide new capabilities for a game developer 202 to improve the gaming experience. For example, when detecting a user 206 has a slow learning curve on navigating the game world, the developer 202 may define rules to increase the control parameters to boost running and jumping capabilities or to make visible certain previously obscured regions of a world map. Similarly, the developer 202 may also define rules to boost a magnification ratio or vision range control parameters for beginner users 206.
[0120] Disclosed herein is an embodiment which may be employed to create the effect of a faster than actual learning pace and may actually improve the user's 206 learning curve by allowing the user 206 to acquire more knowledge and experience or more effective fighting capabilities.
[0121] FIG. 7 is a flowchart which illustrates a method of adaptive proficiency boosting control parameter adjustments. In step 702, the proficiency path of micro-attributes of different levels of details (e.g., kill rate, shield level, accuracy, navigation skills, puzzle solved, and prizes earned) and character control parameters (e.g., speed, acceleration, jumping ability, magnifying glass, number of bullets, and power of punch, etc.) that may boost the proficiency level for one or more micro- attributes may be observed.
[0122] In step 704, users 206 may be profiled into multiple user 206 types (e.g., aggressor or explorer) for each experience band and models may be built based on the user types and micro-attributes.
[0123] In step 706, proficiency indicators (e.g., scores and percentiles) of one or more micro-attribute may be tracked for the users 206 and compared to the generated models. In step 708, users 206 with deficient, slow improving, or un-balanced proficiency levels may be identified using the tracking procedure.
[0124] In step 710, one or more control parameters may be incrementally boosted for deficient micro-attributes to enable the users 206 to gain experience in achieving a higher proficiency level. In an embodiment, this may include increasing the users 206 performance in one or more micro- attributes, such as, for example, improving a user's 206 accuracy or speed.
[0125] In step 712, a user's 206 proficiency level may be measured to determine if it approaches a determined percentage of the proficiency of an average user 206 of the same type in the same experience band. In step 714 if the user's 206 proficiency level is above the determined percentage, a gradual reduction of the "boosting" control parameters may be employed.
[0126] In step 716, if the user's 206 proficiency degradation is determined to be lower than the average by a defined threshold, the reduction in the boost of control parameters may be stopped at step 720. In an embodiment, if the user's 206 proficiency degradation is later determined to be lower than the average by a defined threshold, a reduction in the boost may be employed. This boost power reduction is expected to induce more of an effort by the user 206 to keep up with the previously established high proficiency experiences at the same time the user 206 observes the effort or skill to obtain the proficiency level.
[0127] In step 718, if the user's 206 proficiency level is below the determined percentage, and it is also below another determined percentage of the average proficiency after the control parameters have been boosted a certain amount of times, the boosting process may be stopped at step 720.
[0128] The disclosed methods may be introduced periodically to different sets of users 206 or may be triggered by certain event patterns. Based on the change of a proficiency indicator, the system may select the most effective adjustment increments and period of time. The event pattern detection engine 404 may support flexible and application specific patterns. Disclosed herein are use cases which illustrate examples of encouragement patterns which may be implemented rapidly by defining detection rules and encouragement actions.
[0129] Methods and system for encouragement action automation including encouragement actions are disclosed herein. The disclosed system may provide encouragement actions automatically for retaining users 206. In order to provide effective encouragement, the scenarios in which users 206 are likely to give up on may be carefully analyzed. Based on that analysis, four possible action categories are disclosed for encouraging users 206 in different ways.
[0130] An action for comforting users 206 is disclosed. This may be the most direct action which comforts users 206 when they find difficulty in continuing the game. Methods and systems are disclosed for using comforting actions as positive feedback when users 206 fail to pass a level or complete a task. The disclosed system may provide four kinds of positive feedback based on the actual user 206 performance. [0131] In an embodiment, the system may provide information on micro- attributes that the user 206 is doing well on relative to other micro-attributes if a player fails one or more sessions. The system may provide the average failure rate or the number of users 206 that encounter similar problems in the current session. The system may provide performance improvement information on one or more micro-attributes in comparison historical sessions of the user 206 or other users 206. The system may provide words of encouragement to comfort the user 206 who performs poorly across all the micro-attributes in order to help build the user's 206 confidence.
[0132] Actions for identifying users 206 weaknesses are disclosed herein. These actions may encourage users 206 by letting them know specific gaming skill weaknesses for improvement. The weaknesses may be identified through the use of proficiency indicators. Since proficiency indicators may evaluate the unique micro- attribute against reference models, weaknesses may be determined by calculating and identifying proficiency indicators lower than that of other users 206. Once the weaknesses are identified, the system may provide multiple instructions for users 206, such as encouraging users 206 to try suitable sessions or lower difficulty level.
[0133] By calculating a user's 206 proficiency indicator for each session, the historical micro-attributes of users 206 may be monitored. If negative trends on users' 206 proficiency indicators are discovered, the proficiency indicators which have insufficient performance may be identified.
[0134] By collecting the proficiency indicator differences between users
206 and the same group of users 206, the insufficient proficiency indicators of users 206 may be identified by measuring the negative distance between users 206 and group averages. The group a user 206 belongs to may be defined in various ways, one of them may be based on similar playing frequency and gaming lifetime.
[0135] Alternatively or in combination, the encouragement system may bias the feedback in the areas specific to the user's 206 weaknesses in order to help them build up confidence in themselves and enable them to ultimately improve their performance. [0136] Actions for suggesting different playing modes are disclosed herein. These types of actions may encourage user's 206 to try different modes of a game. Different modes usually have different conditions for winning. Adapting to new winning conditions may help to distract users 206 from previous failure frustration.
[0137] A good use case is Fruit Ninja, developed and published by
Halfbrick Studios, a popular game for use on both iOS and Android smartphones. There are four modes in this game which include classic, zen, arcade, and multiplayer. Although the modes have the same objective, slicing fruits to earn points, each mode has different rules for winning. In the classic mode, users 206 are allowed to miss at most three emerged fruits. At the same time, users 206 may not touch a bomb mixed in emerging fruits or the user 206 will fail. In zen mode, there is no missed fruit restriction and no bombs. However, the time is limited for users 206 to earn points. In arcade mode, there are both time limits and bombs mixed in with the fruit. Users 206 are required to avoid bombs and earn points in the limited time. In multiplayer mode, users 206 play against real users 206 instead of AIs. Users 206 are allowed to slice their own fruits and are required to avoid an enemy's fruits.
[0138] For these four playing modes, users 206 have different requirements and winning conditions. If a user 206 keeps failing in one mode, the system may discover the failure and encourage him to try other modes, such as a move from the multiplayer mode to the classic mode or from the classic mode to the zen mode. This action may help to distract users 206 from frustrations caused by previous failures and to make them adapt to new modes for a longer gaming lifetime. Also, the characterization of the user's 206 micro-attributes may enhance the recommended alternate game mode. For example, if the user 206 is determined to have one or more slow reaction times, the non-time modes of play may be encouraged.
[0139] Actions for showing higher level or premium game content to users 206 are disclosed herein. These actions may use previews of currently unavailable game content to motivate users 206 to overcome the current difficulties. It is well known that users 206 explore the game content of different levels due to the time they invest in game play. For example, a beginner may only play limited virtual items such as cars and have many objects, modes, or levels which have yet to be unlocked. At this early stage, there are many game contents which are not available to the user 206. If a user 206 has a high frustration at a beginner level, he may abandon the game before finding more interesting content. Showing the higher level game content to users 206 may help to encourage them to continue anticipating more content. Higher level game content may be defined as the game content which is not available for users' 206 current levels or sessions. Examples of higher level game contents may include but are not limited to, the rewards on efforts or progress made on a failed session that may be valued or useful for accomplishing new tasks in future sessions; new virtual gear, places or backgrounds in future sessions; and new challenges in future sessions.
[0140] Actions for dynamically boosting low performance users 206 by adjusting in-game control parameters are disclosed herein. These actions may automatically and dynamically tune the difficulty level without the awareness of poor performing users 206. For example, in the game, Temple Run, published by Imangi Studios, users 206 may randomly collect power-up items to boost the character forward an extra distance which enables users 206 to earn more points. Systems may automatically boost the performance of the user 206, which may have the same effect as collecting the power-up items virtually. The system may alternatively or in combination, identify specific power-up items that may help the user 206 the most and offer it to the user 206 automatically. Another example may be shown using the game Fruit Ninja. In Fruit Ninja, beginners may find that fruit emerges and leaves the screen too fast. The system may automatically slow the motion of the fruit in order to give users 206 more time to slice the fruit. Once the user's 206 performance reaches the expected progress, the system may automatically remove the boosting preference from the user 206.
[0141] Referring now to FIG. 8, a flow chart illustrating a method of performing automated encouragement action recommendation 800 is shown. In step 802, micro-attributes for encouraging players may be gathered and input into the event pattern detection engine 404. The micro-attributes of users 206 may be compared to determined expert level standards and indicators of insufficient proficiency may be generated through the use of analytics as described above. In step 804, the users' 206 status and proficiency levels may be processed by an action generation service and encouragement actions may be generated. The action generation service may be a function of the encouragement action services 406. In step 806, a series of encouragement action recommendations may be determined and may be sent to the users 206 based on the users' 206 status and proficiency levels. In step 808, the users 206 may receive the encouragement actions.
[0142] The users' 206 statuses are mainly the monitoring of their performances or gaming results. At the same time, users 206 may react to the encouragement recommendations provided by action generation service 804. Based on users' 206 reaction, the action generation service 804 may dynamically change action categories for adapting players 206. The possible encouragement actions are then recommended to the users 206.
[0143] For different types of users 206, there may be a reference group in which the micro-attributes of expert users 206 are recorded. The indicators of insufficient proficiency of a user 206 may be located by referring to expert users' 206 proficiency indicators. Therefore, each time a user 206 experiences a failure, the system may be able to provide a list that ranks the indicators of insufficient proficiency for analyzing the reasons of failure. For the top-K indicators of insufficient proficiency, the system may provide the feedback to improve users' 206 performance. On each failed attempt after the initial failure, the system may keep showing the feedback. If a user 206 still cannot improve performance after N attempts, the system may start to recommend frustration relief actions.
[0144] One frustration relief action may include playing mode switching.
The system may encourage the user 206 to try another playing mode and provide extra rewards for motivating the user 206. If the user 206 switches the mode, the system may return to step 802. If not, may continue to step 806. If the users 206 insist on re-playing the failed rounds, the system may encourage the user 206 to lower the difficulty level and provide extra rewards at first. If the user 206 insists on the original difficulty level, the system may recommend the action of previewing the premium game content to provide additional incentives for the user 206 to overcome the current failure. At the same time, the system may provide dynamic user 206 boosting action without the user's 206 awareness, in an effort to improve their performance.
[0145] Referring now to FIG. 9, a diagram illustrating automatic recommendation of encouragement actions and automated encouragement control methods and systems is shown. The system may automatically control whether or not to recommend encouragement actions to players. Normally, players may have encouragement actions by default, however, they may stop receiving encouragement in some cases.
[0146] In an embodiment, encouragement may be stopped by the system. If a user 206 historically disliked encouragement actions, the system may learn this preference and stop providing encouragement actions. If a user 206 has been recommended all the encouragement actions and still cannot win, the encouragement actions may be stopped.
[0147] In an embodiment, encouragement may be stopped by users 206.
In the encouragement action recommending process, the users 206 may have right to accept or reject specific encouragements. Also, users 206 may have the right to stop encouragement or block notification of encouragement messages at any time. Additionally, users 206 may have the ability to turn off specific types of encouragement actions, such as action number 4 which means that users 206 do not want to preview premium game contents.
[0148] Referring now to FIG. 10, a diagram illustrating a method for performing context and proficiency aware player encouragement to users of an application is shown. In an embodiment, the method may be performed by the service server 210, which may include on or more circuits, integrated circuits, and/or processors.
[0149] In step 1002, the service server 210 may receive event data from a plurality of users. The event data may correspond to user behavior events of the plurality of users. [0150] In step 1004, the service server 210 may define and collect one or more micro-attributes (MAs) from the received event data. The one or more MAs may be defined based on user behavior events related to a specific application and used to improve user experience.
[0151] In step 1006, the service server 210 may determine proficiency indicators for the one or more MAs. The proficiency indicators may be determined by scoring, ranking, and classifying MAs for different event data in real-time against one or more models derived from one or more users grouped together based on behavior events.
[0152] In step 1008, the service server 210 may detect patterns using the one or more MAs and proficiency indicators in real-time and may record the patterns in a data repository, The patterns may be used to detect new patterns and track the progression pattern of MAs and proficiency indicators of the one or more users to observe the learning curves.
[0153] In step 1010, the service server 210 may determine encouragement action configuration parameters using the MAs, proficiency indicators, and detected patterns.
[0154] In step 1012, the service server may provide context aware encouragement actions to a user of the application in real-time based on the determined encouragement action configuration parameters.
[0155] Exemplary use cases are described herein. The disclosed methods and systems support disclosed use case examples by defining and tracking proficiency indicators to decide when to offer effective encouragements.
[0156] In a first exemplary use case, encouraging users 206 with specific action coaching may be provided. This use case may comprise identifying unique characteristics of a user 206 against other users 206 in the group and praising the user 206 with particular actions or a sequence of actions that the user 206 did well with when compared to other users 206 or the user's 206 past history. This use case may include improving users' 206 performance by observing micro-attributes from users 206 and providing specific feedback or hints. For example, in a puzzle game such as a Rubik's cube game, when compared to expert level users 206, low performance users 206 usually take more action steps to solve the same stage or state of the puzzle. Also, in a car racing game, when compared to expert users 206, low performance users 206 usually are starting late in the first lap or the last to pass the final lap. In these cases, low performance users 206 may do poorly in a different stage or in sub-sessions of a game round. If a method exists such that they may obtain feedback or hints to selectively improve or optimize one or more sub-division of a game round, their final results may be improved.
[0157] In an embodiment, each game round may be divided into sub- sessions or stages. For example, a round of a Rubik's cube game may be divided into a different color distribution between random patterns and regular patterns with a different number of elements that are misaligned by color. Car racing games may be divided into laps. These sub-divisions of sessions, steps, or stages may be game dependent and may be designed by game developer.
[0158] Micro-attributes may collected for each subdivision by the micro- attribute profiler 402. The input event data may include the input template illustrated in FIG. 5, and may define an Application ID (AppID), Task ID and sub-division ID. The input template may define micro-attributes affecting the performance of the player for the sub-division, shown as micro-attribute {MA}. Reference group model selection criteria may be defined through users 206 with an achievement score in a given percentile, for example, users 206 in the 20% to 80% percentile. Progression intervals may comprise, for example, 5 experience bands obtained from early adopters of the game. These may be continuously adjusted based on reference group model. Clustering methods may also be used to decide the experience band based on multiple selected micro-attributes.
[0159] At the same time, users' 206 micro-attributes may be compared with reference groups which represent the standard of expert users 206 based on sub-division level. Based on the comparison results, the exact places where the user 206 performance decreases may be known. For example, in the Rubik's cube game example, each action may be followed by an optimal action based on the state of the color pattern in the cube. Low performance users 206 may find it difficult to find optimal next actions or adopt useless or even counterproductive next steps. In this case, the system may provide hints for optimal next steps or provide feedback about bad actions at the end of one or more rounds.
[0160] In an embodiment, a set of rules may be implemented to detect event patterns and to provide effective encouragement actions. If the user 206 has made 50% or more actions and has not completed a sub-division of a game task, the system may extract the micro- attributes of the user 206 defined for the sub-division. For example, a sequence of actions may be determined and compared the sequence of one or more users 206 from an expert group or a sequence defined by the game designer. Encouragement actions may be provided by rolling back the action steps to the first mistakes and suggesting the correct or a better action made by the user 206 group which has completed the puzzle with higher scores or in a shorter period of time.
[0161] An acceleration pattern or a de-acceleration pattern may be detected, for example, in the first and the last 20 meters of a 100 meter race, that is worse than average. A determination may be made that the user 206 has been not been engaged in activities that may help improve the user's 206 conditioning. This determination may be made, for example, on a lack of weight training or conditioning training activities required to improve the performances of the first or the last 20 meters, for the last 2 weeks of training.
[0162] Each user 206 may have a unique play style. For example, in
World of Warcraft (WoW), combat and avatar sequences of the actions may be unique under different situations. The unique user 206 style may be modeled by the proficiency indicators of micro-attributes when compared to reference models. For example, an aggressive user 206 may have a higher proficiency level in a kill rate and may spend less time on exploring different parts of a game world or looking for treasure. An explorer may collect more prizes and try to run away from adversarial situations more often than the aggressors.
[0163] An avatar and/or weapon used by a user 206 may also provide insight into that user's 206 behavior. The game developer 202 may provide micro-attributes based on the type and frequency each avatar or weapon is used for different sub-divisions of game tasks. Based on the correlation between avatar and weapon usage pattern and user 206 achievement, the system may encourage users 206 to select an avatar and weapon before engaging in different sub-divisions of tasks.
[0164] In an alternative use case, encouragement may be provided to users 206 making minimal or no progress. When a situation is encountered whereby a user 206 makes minimal or no progress in most or all micro- attributes, the disclosed system may provide "encouragements" based on relative progress among the micro-attributes as well as a relative amount of effort that may be quantified in the encouragement message. These encouragement messages may not indicate the actual progress of the user since this information may further discourage the user 206. However, these encouragements may be based on facts in one or more rare cases which a user 206 did indeed improve after following the encouragement message.
[0165] The disclosed system may track and keep performance record of all the poor performers and/or performances and may record the effect of any signaled encouragement messages. The system may then select micro- attributes from a set of poor performers as facts to encourage the user 206.
[0166] In an embodiment, an encouragement message may be defined such that if the user 206 performs poorly in most or all micro-attributes, the encouragement message may be, "Among all the -micro-attributes, you are doing well in attribute X. Please keep up the good work. There are Y number of users who have a similar situation like you but after they improved micro- attribute X, they made good progress."
[0167] In an embodiment, an encouragement message may be defined which considers if a user 206 has not spent as much time as other users. An example encouragement message may be, "Given the small amount of time or practice you have, you have made good progress compared to some of the other users and you are better than 30% of the other user."
[0168] In an embodiment, an encouragement message may be defined which considers if the user 206 did not spend an appropriate amount of time and did not make any progress, and if improving the micro-attribute X is most important attribute related to making progress, the encouragement message may be, "There are bonus and reward available after you make effort to work on micro-attribute X." The system may record all these encouragement messages and apply the messages to poor performers.
[0169] In an alternative use case, encouragement may be provided to a user 206 by utilizing social network aspects of the game. In an embodiment, a wall of accomplishments for social purposes may be used. For example, the wall of accomplishments may comprise an in-game ranking list of a user's 206 friends. The ranking may be based on daily progress or based on resource collection. In this use case, a subgroup of users 206 may be selected based on proficiency progression patterns of micro-attributes of a particular task or subtask to support a context aware experience, for example, complaint or glory sharing.
[0170] This use case may include providing an encouragement action based on social network functions. Today, many games have in-game social networks or online communities. In-game social network includes the friendship system in which users 206 socialize or collaborate inside the game. Users 206 may build or create in-game friendships by making real-time friendship invitations or importing an email or social network, for example Facebook, contact list. The online community may include online forums in which users 206 may ask questions and share experiences outside of the game. Users 206 may follow other players in a community in order to receive good posts. Both social network functions reflect users' 206 social behaviors and preferences and are able to form users' 206 skills and understanding. Based on social resources of a game, the system is able to provide encouragement actions by influencing users 206 from social networks.
[0171] In the in-game social network scenario, users 206 may be encouraged directly while gaming. Rare achievements may be compared and shared among friends. For example, in multiplayer online games, if a user 206 accomplishes an achievement which is difficult, the system may compare this achievement with the achievements of others, such as "only 10 out of your 100 friends made this achievement.'' This news may be shared among his friends. [0172] In addition, the information about performance may be compared and shared among friends as well. For example, in multiplayer online games, several users 206 may form a team for challenging monsters or completing quests together. If a user 206 performs the best in the team by providing the largest contribution, his performance statistics may be compared with others by "Player A's firepower made 40% of the total damage which is the largest contribution in the team." This information may be shared with one or more connections.
[0173] Another disclosed encouraging action may be recommending experienced users 206. For example, in multiplayer online games, if a user 206 has difficulty finishing a quest, the system may suggest a list of current online users 206 who have experience in completing this quest in a short period of time. The proposed system may recommend the user 206 to invite experienced users 206 as teammates. In this case, a good user 206 may be any user 206 who has above average proficiency levels on the micro-attributes defined by the subdivision of task of the game.
[0174] In the online community scenario, users 206 may be encouraged indirectly by learning experiences or getting answers outside the game. For users 206 who have a poor performance, the system may suggest expert users 206 that should be followed. For example, the system may suggest several expert users 206 who are active in the online forum. Usually these expert users 206 are willing to share their experiences, virtual gear configurations, and answer questions. By suggesting the expert users 206, the users 206 with poor performance may be provided with a good resource to learn and observe the strategy and actions of good users 206. By following good users 206, other users 206 may find the tricks to complete the task and improve their skills quickly.
[0175] For users 206 who find difficulties in some specific quests or monsters, the system may suggest good posts in an online forum for specific questions. For example, for a user 206 who has failed to achieve a quest several times, the system may recommend a post in which an experienced user 206 demonstrates very detailed strategy and steps for finishing the same quest.
[0176] In the meantime, the system may suggest that the user 206 post questions about difficulties on the forum. For example, if a user 206 has failed several times on the same quest, the system may automatically prepare the specific performance, important actions, and failure characteristics of the user 206 in the quests and suggest the user 206 to post on the forum. If the question is posted, other experienced users 206 may view it and provide personalized advice for the failed user 206 to help him overcome the quest.
[0177] Although features and elements are described above in particular combinations, one of ordinary skill in the art will appreciate that each feature or element can be used alone or in any combination with the other features and elements. In addition, the methods described herein may be implemented in a computer program, software, or firmware incorporated in a computer- readable medium for execution by a computer or processor. Examples of computer-readable media include electronic signals (transmitted over wired or wireless connections) and computer-readable storage media. Examples of computer-readable storage media include, but are not limited to, a read only memory (ROM), a random access memory (RAM), a register, cache memory, semiconductor memory devices, magnetic media such as internal hard disks and removable disks, magneto-optical media, and optical media such as CD- ROM disks, and digital versatile disks (DVDs). A processor in association with software may be used to implement a radio frequency transceiver for use in a WTRU, UE, terminal, base station, RNC, or any host computer.
k - -k

Claims

CLAIMS What is claimed is:
1. A method for performing context and proficiency aware player encouragement to users of an application, the method comprising:
receiving, by at least one processor, event data from a plurahty of users, wherein the event data corresponds to user behavior events of the plurality of users;
defining and collecting, by the at least one processor, one or more micro- attributes (MAs) from the received event data, wherein the one or more MAs are defined based on user behavior events related to a specific application and used to improve user experience;
determining, by the at least one processor, proficiency indicators for the one or more MAs, wherein the proficiency indicators are determined by scoring, ranking, and classifying MAs for different event data in real-time against one or more models derived from one or more users grouped together based on behavior events;
detecting, by the at least one processor, patterns using the one or more MAs and proficiency indicators in real-time and recording the patterns in a data repository, wherein the patterns are used to detect new patterns and track the progression pattern of MAs and proficiency indicators of the one or more users to observe the learning curves;
determining, by the at least one processor, encouragement action configuration parameters using the MAs, proficiency indicators, and detected patterns; and
providing, by the at least one processor, context aware encouragement actions to a user of the application in real-time based on the determined encouragement action configuration parameters.
2. The method of claim 1, wherein the one or more MAs are unrelated to a tangible score and are not readily known to the plurality of users.
3. The method of claim 1, wherein the one or more MAs are provided by developers or third parties using a graphic user interface (GUI) template.
4. The method of claim 1, wherein the proficiency indicators are normalized against the plurality of users such that the determined encouragement action configuration parameters are set without using absolute scales.
5. The method of claim 1, wherein a proficiency indicator for one of the one or more MAs is based on one or more other proficiency indicators for one or more other MAs.
6. The method of claim 1, further comprising:
grouping, by the at least one processor, the plurality of users according to proficiency level based on the one or more MAs; and
using, by the at least one processor, a group of the plurality of users having a high proficiency level as an example when providing the context aware encouragement actions to a group of the plurality of users having a low proficiency level.
7. The method of claim 1, further comprising:
tracking, by the at least one processor, the proficiency indicators of the plurality of users over time to generate a proficiency indicator path comprising a learning curve on the one or more MAs.
8. The method of claim 7, further comprising:
adjusting, by the at least one processor, the context aware encouragement actions over time based on the proficiency indicator path.
9. The method of claim 1 further comprising adjusting, by the at least one processor, the context aware encouragement actions based on an effectiveness measurement.
10. A server for performing context and proficiency aware player encouragement to users of an application, the server comprising:
at least one processor configured to receive event data from a plurality of users, wherein the event data corresponds to user behavior events of the plurality of users;
the at least one processor further configured to define and collect one or more micro-attributes (MAs) from the received event data, wherein the one or more MAs are defined based on user behavior events related to a specific application and used to improve user experience;
the at least one processor further configured to determine proficiency indicators for the one or more MAs, wherein the proficiency indicators are determined by scoring, ranking, and classifying MAs for different event data in real-time against one or more models derived from one or more users grouped together based on behavior events;
the at least one processor further configured to detect patterns using the one or more MAs and proficiency indicators in real-time and recording the patterns in a data repository, wherein the patterns are used to detect new patterns and track the progression pattern of MAs and proficiency indicators of the one or more users to observe the learning curves;
the at least one processor further configured to determine encouragement action configuration parameters using the MAs, proficiency indicators, and detected patterns; and
the at least one processor further configured to provide context aware encouragement actions to a user of the application in real-time based on the determined encouragement action configuration parameters.
11. The server of claim 10, wherein the one or more MAs are unrelated to a tangible score and are not readily known to the plurality of users.
12. The server of claim 10, wherein the one or more MAs are provided by developers or third parties using a graphic user interface (GUI) template.
13. The server of claim 10, wherein the proficiency indicators are normalized against the plurality of users such that the determined encouragement action configuration parameters are set without using absolute scales.
14. The server of claim 10, further comprising:
the at least one processor further configured to group the plurality of users according to proficiency level based on the one or more MAs; and
the at least one processor further configured to use a group of the plurality of users having a high proficiency level as an example when providing the context aware encouragement actions to a group of the plurality of users having a low proficiency level.
15. The server of claim 10, further comprising:
the at least one processor further configured to track the proficiency indicators of the plurahty of users over time to generate a proficiency indicator path comprising a learning curve on the one or more MAs.
16. The server of claim 15, further comprising:
the at least one processor further configured to adjust the context aware encouragement actions over time based on the proficiency indicator path.
17. The server of claim 10, further comprising: the at least one processor further configured to adjust the context aware encouragement actions based on an effectiveness measurement.
18. A method for performing context and proficiency aware player encouragement to users of an application, the method comprising:
defining a plurality of micro-attributes relevant to user progress toward completing a task in the application;
receiving user behavior data from a plurahty of users of the application, wherein the user behavior data comprises the micro- attributes of the plurality of users;
comparing the micro-attributes of one of the plurality of users to one or more models derived from the user behavior data of one or more of the plurality of users grouped together based on similar user behavior data;
generating micro -attribute progression patterns for the micro-attributes of the one of the plurality of users based on the comparison, wherein the micro-attribute progression patterns indicate progress toward completion of the task; and
providing an encouragement action to the one of the plurahty of users, wherein the encouragement action is selected from a plurality of encouragement actions based on the micro-attribute progression patterns.
19. The method of claim 18, wherein the application is a game and the task is completion of a level in the game.
20. The method of claim 18, wherein the micro-attributes include at least one of speed of the user, accuracy of the user, and objects collected by the user.
PCT/US2016/048539 2015-09-02 2016-08-25 Context and proficiency aware player encouragement WO2017040167A1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201562213403P 2015-09-02 2015-09-02
US62/213,403 2015-09-02
US201562216104P 2015-09-09 2015-09-09
US62/216,104 2015-09-09

Publications (1)

Publication Number Publication Date
WO2017040167A1 true WO2017040167A1 (en) 2017-03-09

Family

ID=56852428

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2016/048539 WO2017040167A1 (en) 2015-09-02 2016-08-25 Context and proficiency aware player encouragement

Country Status (1)

Country Link
WO (1) WO2017040167A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019090268A1 (en) * 2017-11-03 2019-05-09 Drishti Technologies, Inc. Contextual training systems and methods
US10632387B2 (en) 2017-11-15 2020-04-28 International Business Machines Corporation Cognitive user experience optimization
US11074555B2 (en) * 2015-10-26 2021-07-27 Ajit S. Shah Systems and methods for implementing structured asynchronous and synchronous group interaction with automatic assistance over user selected media

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080113809A1 (en) * 2006-11-15 2008-05-15 Microsoft Corporation Achievement incentives within a console-based gaming environment

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080113809A1 (en) * 2006-11-15 2008-05-15 Microsoft Corporation Achievement incentives within a console-based gaming environment

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11074555B2 (en) * 2015-10-26 2021-07-27 Ajit S. Shah Systems and methods for implementing structured asynchronous and synchronous group interaction with automatic assistance over user selected media
WO2019090268A1 (en) * 2017-11-03 2019-05-09 Drishti Technologies, Inc. Contextual training systems and methods
US10890898B2 (en) 2017-11-03 2021-01-12 Drishti Technologies, Inc. Traceability systems and methods
US11054811B2 (en) 2017-11-03 2021-07-06 Drishti Technologies, Inc. Systems and methods for line balancing
US11175650B2 (en) 2017-11-03 2021-11-16 Drishti Technologies, Inc. Product knitting systems and methods
US11619927B2 (en) 2017-11-03 2023-04-04 Drishti Technologies, Inc. Automatic analysis of real time conditions in an activity space
US10632387B2 (en) 2017-11-15 2020-04-28 International Business Machines Corporation Cognitive user experience optimization
US11185781B2 (en) 2017-11-15 2021-11-30 International Business Machines Corporation Cognitive user experience optimization

Similar Documents

Publication Publication Date Title
US11727756B2 (en) Dynamically variable advertising incentive rewards in online games
US11562626B2 (en) Guild-dependent variation of player capabilities in a computer-implemented game
US10118101B2 (en) Systems and methods for crowd-sourced game strategy
US9101834B2 (en) Methods and systems for generating tailored game challenges
US10375135B2 (en) Method and system for event pattern guided mobile content services
CN110337319B (en) User analysis system and method
KR102397187B1 (en) System for managing direct challenges between users in fantasy sports and other games
US20180213058A1 (en) Dynamic adjustment of user profiles for bundled applications
US10449454B2 (en) System and method for determining events of interest in a multi-player online game
US20180165914A1 (en) Method and system for facilitating the transfer of game or virtual reality state information
JP2018514241A (en) Method and apparatus for discriminating misconduct in a dart game and server
US20210308587A1 (en) Automated coaching for online gaming
JP7383151B2 (en) Server-based individual play time estimation for game activity
WO2017040167A1 (en) Context and proficiency aware player encouragement
US20230116322A1 (en) Dynamic Event-Based Ranking Methods and Systems
KR101190497B1 (en) Method and server of preventing automatic play of on-line game service
JP2015054021A (en) Application content change device, application content change method, and program

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16759942

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

DPE1 Request for preliminary examination filed after expiration of 19th month from priority date (pct application filed from 20040101)
122 Ep: pct application non-entry in european phase

Ref document number: 16759942

Country of ref document: EP

Kind code of ref document: A1