Office Action 1: Non-Final Rejection (2025-03-26)
Rejection types: 102 - Lack of Novelty, 103 - Obviousness

CLAIMS:
CLAIMS

WHAT IS CLAIMED IS:

1\. A system for just-in-time (JIT) game development and gameplay, the system comprising:a game engine;
an oracle comprising one or more Al models, wherein the oracle is called by the game engine during JIT game development and JIT gameplay; and
a data store that is in network communication with the game engine and configured to store data field entries in encyclopedias that are associated with JIT game worlds for respective players at their respective user devices,
wherein the game engine is configured to perform a process comprising:
receiving user input from a user device of a player;
providing the JIT gameplay to the user device for presentation in one or more user interfaces (UIs) based on processing, by the oracle, the user input; andgenerating, simultaneously or in parallel, updates to the data field entries in an encyclopedia associated with the JIT game world for the player based on processing, by the oracle, the user input and the JIT gameplay.
2\. The system of claim 1, wherein the updates to the data field entries in the encyclopedia associated with the JIT game world are generated in parallel with providing the JIT gameplay to the player at the user device.

3\. The system of claim 1, wherein the updates to the data field entries in the encyclopedia associated with the JIT game world are generated as background processes while providing the JIT gameplay to the player at the user device.
4\. The system of claim 1, wherein the oracle comprises one or more large pre-trained Al models or systems.

5\. The system of claim 1, wherein providing the JIT gameplay to the user device for presentation comprises providing instructions to the user device to cause the user device to visualize the JIT game world in the UIs.
6\. The system of claim 5, wherein the process further comprises simultaneously or in parallel to transmitting, to the user device, the instructions for visualizing the JIT game world, updating one or more of the data field entries in the encyclopedia associated with the JIT gameplay based on the user input.
7\. The system of claim 5, wherein the process further comprises:
simultaneously or in parallel to transmitting the instructions for visualizing the JIT game world, trimming, using the oracle, a context of the JIT gameplay; and
transmitting a transitional message for presentation at the user device.
8\. The system of claim 1, wherein the data field entries in the encyclopedia associated with the JIT gameplay comprise at least one of a game environment data, player data, nonplayer character data, game events data, game locations data, plot hooks data, or narrative state data.
9\. The system of claim 1, wherein providing the JIT gameplay to the user device for presentation comprises:
checking whether a transition between game modes is required; and
in response to checking that the transition between the game modes is required, changing one or more system behaviors.

10\. The system of claim 9, wherein the game modes comprise one or more from a group consisting of: a game setting setup mode, a character creation mode, a narrative gameplay mode, and a combat mode.

11\. The system of claim 1, wherein generating the updates to the data field entries in the encyclopedia associated with the JIT game world comprises:

looping through one or more of the data field entries in the encyclopedia that is stored in the data store;
populating, by the oracle and based on the looping, one or more basic fields in the encyclopedia;
upserting, by the oracle, one or more well-defined objects in the encyclopedia;
processing, by the oracle and based on the looping, hash-table data structures to update one or more entries in the encyclopedia;
processing, by the oracle and based on the looping, a list to update one or more indexed data entry fields in the list; and
returning information about the one or more data entry fields.

12\. The system of claim 11, wherein processing, by the oracle and based on the looping, the hash-table data structures comprises:checking for existing keys;
checking for new keys; and
looping through the existing keys or the new keys to update one or more data entry fields associated with the existing keys or the new keys.

13\. The system of claim 11, wherein processing, by the oracle and based on the looping, the list comprises:establishing a change plan;
looping through the change plan; and
processing each of the one or more indexed data entry fields in the list/array based on the change plan.

14\. The system of claim 1, wherein providing the JIT gameplay to the user device comprises:receiving user input about rolling dice; and
in response to the user input, initiating, by the oracle, a corresponding roll request.

15\. The system of claim 14, wherein the oracle is configured to identify whether a game master (GM), a player, or a non-player character (NPC) is rolling the dice.

16\. The system of claim 15, wherein based on identifying that the GM or the NPC is rolling the dice, the game engine is configured to automatically roll the dice.

17\. The system of claim 15, wherein based on identifying that the player is rolling the dice, the game engine is configured to transmit the roll request to the user device that causes the user device to present, in the one or more UIs, information about a specific dice roll.

18\. The system of claim 17, wherein the roll request includes a title and description of the dice roll to contextualize the request to the player at the user device.

19\. The system of claim 14, wherein the game engine is configured to automatically link an outcome from the dice roll with one or more of the data entry fields in the encyclopedia.

20\. The system of claim 19, wherein the one or more data entry fields correspond to one or more of an ability, an effect, and an item in the JIT game world.

21\. The system of claim 1, wherein the game engine is further configured to:annotate entities in the JIT game world with universally unique identifiers (uuids); and
link the uuids to a database or a knowledge graph to establish data connections between actions in the JIT game world during the JIT gameplay, the entities in the JIT game world, and the user input.

22\. The system of claim 1, wherein the game engine is further configured to establish a game marketplace for publishers and the players to produce encyclopedia game states, wherein the encyclopedia game states are traded, shared, sold, and provided to the players in the marketplace.

23\. The system of claim 1, wherein the encyclopedia comprises a game representation for the JIT game world.

24\. The system of claim 1, wherein the process further comprises:receiving a document comprising information for establishing the encyclopedia;
converting the document into a markdown representation;
populating the data field entries in the encyclopedia based on the markdown representation; and
plugging the markdown representation into an architecture of the game engine to be played by the player at the user device.

25\. The system of claim 1, wherein the process further comprises:providing the JIT gameplay to a plurality of user devices, the plurality of user devices including the user device; and
attributing actions and inputs to players of the plurality of user devices to enforce narrative consistency during the JIT gameplay in the JIT game world for the players of the plurality of user devices.

26\. A method for just-in-time (JIT) game development and gameplay, the method comprising:receiving user input from a user device;
providing JIT gameplay to the user device for presentation in one or more user interfaces (UIs) based on processing, by an oracle, the user input; and
generating, simultaneously or in parallel, updates to a JIT game world based on processing, by the oracle, the user input and the JIT gameplay.

27\. The method of claim 26, wherein generating the updates to the JIT game world comprises updating one or more data field entries in an encyclopedia that is associated with the JIT game world.

28\. The method of claim 26, wherein providing the JIT gameplay to the user device for presentation comprises:identifying a current game mode in the JIT gameplay;
checking whether a transition is required between the current game mode and a next game mode; and
in response to determining that the transition is required, transmitting a notification for presentation at the user device indicating that the transition will occur while providing the JIT gameplay to the user device for presentation.

29\. The method of claim 26, wherein generating the updates to the JIT game world comprises:looping through one or more data entry fields in an encyclopedia;
populating, based on the looping, one or more basic fields in the encyclopedia;
upserting one or more well-defined objects in the encyclopedia;
processing, based on the looping, hash-table data structures to update one or more entries in the encyclopedia;
processing, based on the looping, a list to update one or more indexed data entry fields in the list; and
returning information about the one or more data entry fields.

30\. The method of claim 26, further comprising:providing the JIT gameplay to a plurality of user devices, the plurality of user devices including the user device; and
attributing actions and inputs to players of the plurality of user devices to enforce narrative consistency during the JIT gameplay in the JIT game world for the players of the plurality of user devices.

OFFICE ACTION:
Notice of Pre-AIA  or AIA  Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
The following is a quotation of 35 U.S.C. 112(b):
(b)  CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.
The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
Claims 4 and 7 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA  35 U.S.C. 112, the applicant), regards as the invention.
The term “large” in claim 4 is a relative term which renders the claim indefinite. The term “large” is not defined by the claim, the specification does not provide a standard for ascertaining the requisite degree, and one of ordinary skill in the art would not be reasonably apprised of the scope of the invention.
In claim 7, it is unknown what “trimming” is meant in this context, and it is unknown what a “transitional” message is.  The term “trim(ming)” and “transitional” only appear once within the specification at paragraph [0006] which sheds no further light on this terminology.
Claim Rejections - 35 USC § 102
In the event the determination of the status of the application as subject to AIA  35 U.S.C. 102 and 103 (or as subject to pre-AIA  35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA  to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention.
Claim(s) 1-10, 23-28, and 30 is/are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Ignatchenko (US 20240390801).
In claims 1, 26, and 27 Ignatchenko discloses
A game engine (paragraph 5 “a simulator configured to modify a simulator state and a published state based on input”)
An oracle comprising one or more AI models, wherein the oracle is called by the game engine during JIT game development and JIT gameplay (it is noted by examiner that the BRI of an oracle is just an AI module.  Paragraph 44 discloses player-supporting AI third-party code)
A data store that is in network communication with the game engine and configured to store data field entries in encyclopedias that are associated with the JIT game worlds for respective players at their respective user devices (it is noted by examiner that the BRI of “a data store…configured to store data field entries in encyclopedias” is just any sort of data related to the game, as the encyclopedias and data store would just be read on by whatever storage solution is used.  Paragraph 44 discloses “game state data” which would be data associated with the JIT game worlds for respective players at their respective user devices)
Wherein the game engine is configured to perform a process comprising: receiving user input from a user device of a player (paragraph 44 “receive player input from communicator 215”)
Providing the JIT gameplay to the user device for presentation in one or more user interfaces (UIs) based on processing, by the oracle, the user input; and (paragraph 5 discloses that the programming can use a JIT compiler and/or programming language. paragraph 44 discloses that supporting AI third party code is processing and augmenting player inputs, including changing the gameplay such as by taking evasive actions.)
Generating, simultaneously or in parallel, updates to the data field entries in an encyclopedia associated with the JIT game world for the player based on processing, by the oracle, the user input and the JIT gameplay (paragraph 44 discloses game state data, and the game stat is updated and generated based on processing by the supporting AI third party code, paragraph 50 discloses storing the current game state into a database)
In claim 2, Ignatchenko discloses the updates to the data field entries in the encyclopedia associated with the JIT game world are generated in parallel with providing the JIT gameplay to the player at the user device (paragraph 50 discloses storing the current game state into a database, which would mean the gameplay and the database are in parallel)
In claim 3, Ignatchenko discloses the updates to the data field entries in the encyclopedia associated with the JIT game world are generated as background processes while providing the JIT gameplay to the player at the user device (It is noted by examiner that “background processes” is broad terminology that may encompass a wide variety of possible embodiments.  Paragraph 50 discloses “an entity responsible for gathering current game states”, which would mean that this is a background process under BRI)
In claim 4, Ignatchenko discloses the oracle comprises one or more large pre-trained AI models or systems (paragraph 61)
In claim 5, Ignatchenko discloses providing the JIT gameplay to the user device for presentation comprises providing instructions to the user device to cause the user device to visualize the JIT game world in the UI (paragraph 8)
In claim 6, Ignatchenko discloses simultaneously or in parallel to transmitting, to the user device, the instructions for visualizing the JIT game world, updating one or more of the data field entries in the encyclopedia associated with the JIT gameplay based on the user input  (paragraph 50 discloses storing the current game state into a database, which would mean the gameplay, and the display of the gameplay, and the database are in parallel)
In claim 7, Ignatchenko discloses simultaneously, or in parallel to transmitting the instructions for visualizing the JIT game world, trimming, using the oracle, a context of the JIT gameplay, and transmitting a transitional message for presentation at the user device (it is unknown what this means, but paragraph 26 discloses processing messages.  Alternatively, paragraph 47 discloses “a special disconnect AI which may, for example, make PC to end its conversation and then to walk out of the room”, this conversation would be a message, and it would be transitional, as it is transitional for the disconnection)
In claim 8, Ignatchenko discloses the data field entries in the encyclopedia associated with the JIT gameplay comprise at least one of a game environment, data, player, data, non-player character data, game events data, game location data, plot hooks data, or narrative data (paragraph 50)
In claims 9 and 28, Ignatchenko discloses checking whether a transition between game modes is required, and in response to checking that the transition between the game modes is required, changing one or more system behaviors (paragraph 47 discloses “a special disconnect AI which may, for example, make PC to end its conversation and then to walk out of the room”, this conversation would be a message, and it would be transitional, as it is transitional for the disconnection)
In claim 10, Ignatchenko discloses the game modes comprise one or more from a group consisting of: a narrative gameplay mode (paragraph 47, a conversation would be narrative gameplay)
In claim 23, Ignatchenko discloses the encyclopedia comprises a game representation of the JIT game world (paragraph 50)
In claim 24, Ignatchenko discloses receiving a document comprising information for establishing the encyclopedia (the programming would be a “document”), converting the document into a markdown representation, populating the data field entries into the encyclopedia based on the markdown representation, and plugging the markdown representation into an architecture of the game engine to be played by the player at the user device (it is noted by examiner that the term “markdown representation” is a broad term, which may be given the BRI of basically any sort of data which performs the tasks describes.  As such, the entity responsible for gathering the current game state would be the markdown representation, which is populating the data field entries, and is plugged into an architecture of the game engine)
In claims 25 and 30, Ignatchekno discloses providing the JIT gameplay to a plurality of user devices, the plurality of user devices including the user device, and attributing actions and inputs the players of the plurality of user devices to enforce narrative consistency during the JIT gameplay in the JIT game world for the player of the plurality of user devices (paragraph 19 discloses 1 or more users, paragraph 50 describes there as being one game state, which would be consistent among users for narrative consistency)
Claim Rejections - 35 USC § 103
Claim(s) 11-13, 21, 22, and 29 is/are rejected under 35 U.S.C. 103 as being unpatentable over Ignatchenko
In claims 11 and 29, Ignatchenko discloses looping through one or more of the data field entries in the encyclopedia that is stored in the data store, populating by the oracle and based on the looping, one or more basic fields in the encyclopedia, upserting, by the oracle, one or more well defined objects in the encyclopedia, (this entire section is simply describing inserting data into the database.  Paragraph 50 which stores a wide variety of data including basic fields and well defined objects)  Ignatchenko fails to explicitly disclose processing, by the oracle and based on the looping, hash-table data structures to update one or more entries in the encyclopedia, and returning information about the one or more data entry fields, however Ignatchenko paragraph 35 discloses JavaScript and python which both have built in hash table data structures, and paragraph 50 discloses use of persistent storage database, which would typically use hash functions as well.  As such, Official notice is taken that it would have been notoriously well known to one of ordinary skill in the art before the effective filing date of the invention to allow for a use of hash functions within the data storage solution, and it would have been obvious to combine Ignatchenko with this well known technique in order to improve synchronization and efficiency.
In claim 12, Official notice is taken that the user of existing and new keys for updates to data entry within a hash function was notoriously well known before the effective filing date of the invention to combine Ignatchenko with this well known technique in order to use a standard hash function in its typical functioning.
In claim 13, Ignatchenko discloses establishing a change plan, looping through the change plan, and processing each of the one or more indexed data entry fields in the list/array based on the change plan (Paragraph 50.  it is noted by examiner that the term “change plan” is extremely broad, and however Ignatchenko changes the data would read upon the “change plan” inherently, as the data is being changed, and a plan would need to be in place, as a computer can only function with programming, which is a “plan”.  Further, as the data is stored in the database, this would mean that the data entry fields needed to be changed would be changed)
In claim 21, Ignatchenko discloses establish data connections between actions in the JIT game world during the JIT gameplay, the entities in the JIT game world, and the user input (paragraph 50).  Ignatchenko discloses the claimed invention except for annotate entries in the JIT game world with UUITs, and link the UUITs do a database however Official notice is taken that UUIDs were notoriously well known before the effective filing date of the invention, and it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to combine Ignatchenko with this well known technique in order to allow for use of a standardized format for identifying objects in a database.
In claim 22, Ignatchenko discloses the claimed invention except for a game marketplace for publishers and the players to produce encyclopedia game states, wherein the encyclopedia game states are traded, shared, sold, and provided to the players in the marketplace, however Official notice is taken that allowing for anything to be traded, shared sold, or provided to people was notoriously well known before the effective filing date of the invention, and it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to combine Ignatchenko with this well-known technique in order to allow for players to more freely gain access to data that a user is interested in.
Claim(s) 14-20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Ignatchenko in view of Arnone (US 20190362589)
In claim 14, Ignatchenko fails to disclose receiving user input about rolling dice and in response to the user input, initiating, by the oracle, a corresponding roll request, however Arnone discloses  receiving user input about rolling dice and in response to the user input, initiating, by the oracle, a corresponding roll request (paragraph 62), it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to combine Ignatchenko with Arnone in order to allow for the invention of Ignatchenko to be used in different game environments
In claim 15, Arnone discloses the oracle is configured to identify whether a game master, a player, or a non-player character is rolling the dice (paragraph 62, it is the player)
In claim 16, Ignatchenko in view of Arnone fails to disclose that based on identifying that the NPC is rolling the dice, the game environment is configured to automatically roll the dice, however Official notice is taken that it was notoriously well known before the effective filing date of the invention to automatically perform NPC actions.  It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to combine Igantchenko in view of Arnone with this well known technique in order to allow for the NPC to act more autonomously
In claim 17, Arnone discloses based on identifying that the player is rolling the dice, the game engine is configured to transmit the roll request to the user device that causes the user device to present in the one or more UIs, information about  a specific dice roll (paragraph 62)
In claim 18, Arnone discloses the roll request includes a title and description of the dice roll to contextualize the request to the player at the user device (paragraph 62-64, various contexts such as a player losing health, or swinging a sword is described)
In claim 19, Arnone discloses the game engine is configured to automatically link an outcome from the dice roll with one or more of the data entry fields in the encyclopedia (paragraph 62-64 discloses contexts such as “a result of {1, 2} will cause the health points of the opponent to be reduced while a result of {3, 4, 5 or 6} will not lead to a change in the opponent's health points.”)
In claim 20, Arnone discloses the one or more data entry fields correspond to one or more of an ability, an effect, and an item in the JIT game world (paragraphs 62-64)
Conclusion


NEXT OFFICE ACTION: Notice of Pre-AIA  or AIA  Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Reasons for Allowance
Claims 1-30 are allowed.  Applicant’s amendments and arguments overcome the prior art of record.  Particularly, see applicants arguments pages 13 and 14, and the new claim language of “updating the new JIT game world and the corresponding JIT gameplay based on processing, by the oracle and based on the data field entries in the encyclopedia associated with the new JIT game world for the player that is maintained in the data store, the continuously received user input, and the JIT gameplay” as well as “linking the uuids to one or more of the data field entries in the encyclopedia to establish data connections between the entities in the new JIT game world and the continuously received user input and generating, responsive to the continuously received user input and based on the data connections, actions ion the new JIT game world”.  In combination with the other elements, this would mean that the JIT game world would not simply be updated based on the user input but also based upon the connections identified in the data field and the links between them, so as to create a cohesive game.  As such the claims are allowable over the prior art of record including Ignatchenko and Arnone.
Conclusion

CITED REFERENCE SUMMARIES: Ref US20190362589A1: Claims:
A system for coincident gambling hybrid gaming having coincident gambling events and game events provided on a computing device, comprising: an entertainment engine connected to a game world engine, wherein the entertainment engine is configured to: execute an entertainment game on the computing device, including receiving an input and determining an action event in the entertainment game from the input; provide to the game world engine the action event; receive from the game world engine a change to a set of game variables; and incorporate the change to the set of game variables into the entertainment game; a real world engine connected to the game world engine, wherein the real world engine is constructed to: receive a request from the game world engine to determine an outcome of a gambling event; determine a random outcome using a random number generator; determine the outcome of the gambling event using the random outcome and a paytable; resolve a wager of the gambling event based on the outcome of the gambling event; manage real world credits of a player based on the wager; and provide to the game world engine the random outcome of the gambling event; and the game world engine connected to the entertainment engine and connected to the real world engine, wherein the game world engine is constructed to: receive from the entertainment engine the action event; determine whether the action event is associated with the gambling event; provide to the real world engine the request to determine the outcome of the gambling event; receive from the real world engine the random outcome; determine the change in the set of game variables based on the random outcome; and provide to the entertainment engine the change in the set of game variables.
an entertainment engine connected to a game world engine, wherein the entertainment engine is configured to: execute an entertainment game on the computing device, including receiving an input and determining an action event in the entertainment game from the input; provide to the game world engine the action event; receive from the game world engine a change to a set of game variables; and incorporate the change to the set of game variables into the entertainment game;
execute an entertainment game on the computing device, including receiving an input and determining an action event in the entertainment game from the input;
provide to the game world engine the action event;
receive from the game world engine a change to a set of game variables; and
incorporate the change to the set of game variables into the entertainment game;
a real world engine connected to the game world engine, wherein the real world engine is constructed to: receive a request from the game world engine to determine an outcome of a gambling event; determine a random outcome using a random number generator; determine the outcome of the gambling event using the random outcome and a paytable; resolve a wager of the gambling event based on the outcome of the gambling event; manage real world credits of a player based on the wager; and provide to the game world engine the random outcome of the gambling event; and
receive a request from the game world engine to determine an outcome of a gambling event;
determine a random outcome using a random number generator;
determine the outcome of the gambling event using the random outcome and a paytable;
resolve a wager of the gambling event based on the outcome of the gambling event;
manage real world credits of a player based on the wager; and
provide to the game world engine the random outcome of the gambling event; and
the game world engine connected to the entertainment engine and connected to the real world engine, wherein the game world engine is constructed to: receive from the entertainment engine the action event; determine whether the action event is associated with the gambling event; provide to the real world engine the request to determine the outcome of the gambling event; receive from the real world engine the random outcome; determine the change in the set of game variables based on the random outcome; and provide to the entertainment engine the change in the set of game variables.
receive from the entertainment engine the action event;
determine whether the action event is associated with the gambling event;
provide to the real world engine the request to determine the outcome of the gambling event;
receive from the real world engine the random outcome;
determine the change in the set of game variables based on the random outcome; and
provide to the entertainment engine the change in the set of game variables.
The system for coincident gambling hybrid gaming having coincident gambling events and game events provided on a computing device of claim 1 wherein the game world engine is further constructed to determine the gambling event associated with the action event from the action event and a previous random outcome from the random number generator of the real world engine.
The system for coincident gambling hybrid gaming having coincident gambling events and game events provided on a computing device of claim 2 wherein the game world engine is further constructed to store the random outcome from the random number generator of the gambling event received from the real world engine in a database for use in determining a gambling event associated with an action event.
The system for coincident gambling hybrid gaming having coincident gambling events and game events provided on a computing device of claim 2 wherein the real world engine is further constructed to store the random outcome from the random number generator in a database accessible by the game world engine for use in determining a gambling event associated with an action event.
The system for coincident gambling hybrid gaming having coincident gambling events and game events provided on a computing device of claim 2 wherein the random number generator uses a pseudo number generation process to generate the random outcome.
The system for coincident gambling hybrid gaming having coincident gambling events and game events provided on a computing device of claim 1 wherein the real world engine selects one random number generator from a plurality of random number generators to generate the random number information based on the gambling event.
The system for coincident gambling hybrid gaming having coincident gambling events and game events provided on a computing device of claim 1 wherein the real world engine determines a pay table to use to resolve the wager of the gambling event based upon the gambling event.
A system for coincident gambling hybrid gaming having coincident gambling events and game events, comprising: at least one processor; and a memory coupled to the processor, wherein the memory stores executable instructions that when executed by the processor cause the processor to: execute an entertainment game; receive a player input; determine an action event in the entertainment game from the input; determine whether the action event is associated with a gambling event; and when the action event is associated with the gambling event, perform the following: determine a random outcome using a random number generator; determine an outcome of a gambling event using the random outcome and a paytable; resolve a wager of the gambling event based on the outcome of the gambling event; manage real world credits of a player based on the wager; determine a change in a set of game variables based on the random outcome; and incorporate the change to the set of game variables into the entertainment game.
at least one processor; and
a memory coupled to the processor, wherein the memory stores executable instructions that when executed by the processor cause the processor to: execute an entertainment game; receive a player input; determine an action event in the entertainment game from the input; determine whether the action event is associated with a gambling event; and when the action event is associated with the gambling event, perform the following: determine a random outcome using a random number generator; determine an outcome of a gambling event using the random outcome and a paytable; resolve a wager of the gambling event based on the outcome of the gambling event; manage real world credits of a player based on the wager; determine a change in a set of game variables based on the random outcome; and incorporate the change to the set of game variables into the entertainment game.
execute an entertainment game;
receive a player input;
determine an action event in the entertainment game from the input;
determine whether the action event is associated with a gambling event; and
when the action event is associated with the gambling event, perform the following: determine a random outcome using a random number generator; determine an outcome of a gambling event using the random outcome and a paytable; resolve a wager of the gambling event based on the outcome of the gambling event; manage real world credits of a player based on the wager; determine a change in a set of game variables based on the random outcome; and incorporate the change to the set of game variables into the entertainment game.
determine an outcome of a gambling event using the random outcome and a paytable;
manage real world credits of a player based on the wager;
determine a change in a set of game variables based on the random outcome; and
incorporate the change to the set of game variables into the entertainment game.
The system for coincident gambling hybrid gaming having coincident gambling events and game events provided on a computing device of claim 8 wherein the executable instructions when executed by the processor further cause the processor to determine the gambling event associated with the action event from the action event and a previous random outcome from the random number generator of the real world engine.
The system for coincident gambling hybrid gaming having coincident gambling events and game events provided on a computing device of claim 9 wherein the executable instructions when executed by the processor further cause the processor to store the random outcome from the random number generator of the gambling event received from the real world engine in a database for use in determining a gambling event associated with an action event.
The system for coincident gambling hybrid gaming having coincident gambling events and game events provided on a computing device of claim 9 wherein the executable instructions when executed by the processor further cause the processor to store the random outcome from the random number generator in a database accessible by the game world engine for use in determining a gambling event associated with an action event.
The system for coincident gambling hybrid gaming having coincident gambling events and game events provided on a computing device of claim 8 wherein the random number generator uses a pseudo number generation process to generate the random outcome.
The system for coincident gambling hybrid gaming having coincident gambling events and game events provided on a computing device of claim 8 wherein the executable instructions when executed by the processor further cause the processor to select one random number generator from a plurality of random number generators to generate the random number information based on the gambling event.
The system for coincident gambling hybrid gaming having coincident gambling events and game events provided on a computing device of claim 8 wherein the executable instructions when executed by the processor further cause the processor to determine a pay table to use to resolve the wager of the gambling event based upon the gambling event.
Ref US20240390801A1: Claims:
A game server for providing updates related to an online game, wherein the game server is configured to sandbox potentially malicious event-driven code, the game server comprising: a simulator configured to modify a simulator state and a published state based on input received or as a result of time passing; and one or more nodes each comprising a sandbox responsible for running third-party code within the game server, wherein the third-party code is event-driven in that it may only receive and react to events, and wherein the third party-code may only manipulate an external state via an application programming interface (API).
a simulator configured to modify a simulator state and a published state based on input received or as a result of time passing; and
one or more nodes each comprising a sandbox responsible for running third-party code within the game server, wherein the third-party code is event-driven in that it may only receive and react to events, and wherein the third party-code may only manipulate an external state via an application programming interface (API).
The game server of claim 1 , wherein a sandbox of a first node of the one or more nodes is configured to run at least two pieces of third-party code, wherein the sandbox of the first node is configured to run one of the at least two pieces of third-party code at a time with a next piece of code running after a previous piece of code is completed.
The game server of claim 2 , wherein each of the at least two pieces of third-party code uses a different external state.
The game server of claim 1 , wherein the third-party code is run by a programming language engine.
The game server of claim 4 , wherein the programming language engine comprises a Web Assembly (Wasm) engine.
The game server of claim 4 , wherein the programming language engine comprises an interpreter or Just-in-time (JIT) compiler of a programming language.
The game server of claim 6 , wherein the interpreter or Just-in-time (JIT) compiler is run within a virtual machine or other container.
The game server of claim 7 , wherein the virtual machine or other container includes an intrusion detector configured to detect unusual activity within the virtual machine or other container.
The game server of claim 8 , wherein the intrusion detector is configured to take corrective action in response to detecting unusual activity within the virtual machine or other container, wherein the corrective action comprises terminating the virtual machine or other container.
The game server of claim 1 , wherein the third-party code run on the game server includes base assets corresponding to a version of an online game provided by a publisher of the online game and one or more overridden assets that comprise base assets that have been modified by a user, wherein the game server runs a modified version of the online game when running using the one or more overridden assets.
- 48 . (canceled)
Ref US20240390801: Claims:
1. A game server for providing updates related to an online game, wherein the game server is configured to sandbox potentially malicious event-driven code, the game server comprising:
a simulator configured to modify a simulator state and a published state based on input received or as a result of time passing; and one or more nodes each comprising a sandbox responsible for running third-party code within the game server, wherein the third-party code is event-driven in that it may only receive and react to events, and wherein the third party-code may only manipulate an external state via an application programming interface (API).
2. The game server of claim 1, wherein a sandbox of a first node of the one or more nodes is configured to run at least two pieces of third-party code, wherein the sandbox of the first node is configured to run one of the at least two pieces of third-party code at a time with a next piece of code running after a previous piece of code is completed.
3. The game server of claim 2, wherein each of the at least two pieces of third-party code uses a different external state.
4. The game server of claim 1, wherein the third-party code is run by a programming language engine.
5. The game server of claim 4, wherein the programming language engine comprises a Web Assembly (Wasm) engine.
6. The game server of claim 4, wherein the programming language engine comprises an interpreter or Just-in-time (JIT) compiler of a programming language.
7. The game server of claim 6, wherein the interpreter or Just-in-time (JIT) compiler is run within a virtual machine or other container.
8. The game server of claim 7, wherein the virtual machine or other container includes an intrusion detector configured to detect unusual activity within the virtual machine or other container.
9. The game server of claim 8, wherein the intrusion detector is configured to take corrective action in response to detecting unusual activity within the virtual machine or other container, wherein the corrective action comprises terminating the virtual machine or other container.
10. The game server of claim 1, wherein the third-party code run on the game server includes base assets corresponding to a version of an online game provided by a publisher of the online game and one or more overridden assets that comprise base assets that have been modified by a user, wherein the game server runs a modified version of the online game when running using the one or more overridden assets.
11-48. (canceled)
Ref US20190362589: Claims:
1. A system for coincident gambling hybrid gaming having coincident gambling events and game events provided on a computing device, comprising:
an entertainment engine connected to a game world engine, wherein the entertainment engine is configured to:
execute an entertainment game on the computing device, including receiving an input and determining an action event in the entertainment game from the input;
provide to the game world engine the action event;
receive from the game world engine a change to a set of game variables; and
incorporate the change to the set of game variables into the entertainment game;
 a real world engine connected to the game world engine, wherein the real world engine is constructed to:
receive a request from the game world engine to determine an outcome of a gambling event;
determine a random outcome using a random number generator;
determine the outcome of the gambling event using the random outcome and a paytable;
resolve a wager of the gambling event based on the outcome of the gambling event;
manage real world credits of a player based on the wager; and
provide to the game world engine the random outcome of the gambling event; and
 the game world engine connected to the entertainment engine and connected to the real world engine, wherein the game world engine is constructed to:
receive from the entertainment engine the action event;
determine whether the action event is associated with the gambling event;
provide to the real world engine the request to determine the outcome of the gambling event;
receive from the real world engine the random outcome;
determine the change in the set of game variables based on the random outcome; and
provide to the entertainment engine the change in the set of game variables.
2. The system for coincident gambling hybrid gaming having coincident gambling events and game events provided on a computing device of claim 1 wherein the game world engine is further constructed to determine the gambling event associated with the action event from the action event and a previous random outcome from the random number generator of the real world engine.
3. The system for coincident gambling hybrid gaming having coincident gambling events and game events provided on a computing device of claim 2 wherein the game world engine is further constructed to store the random outcome from the random number generator of the gambling event received from the real world engine in a database for use in determining a gambling event associated with an action event.
4. The system for coincident g
[Truncated to input limit]