# US 2021/0241567 A1 · General gaming engine

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2021/0241567 A1
- Document ID: US20210241567A1
- Status: Published application
- Kind: A1
- Application number: 17/234,345
- Filed: 2021-04-19
- Published: 2021-08-05
- Earliest claimed: 2007-08-01
- Assignees: Cfph, LLC
- Applicants: Cfph, LLC
- Inventors: Geoffrey M. Gelman
- Web page: https://patentgrep.com/patent/US20210241567A1

## CPC

- G07F 17/326: {Game play aspects of gaming systems}
- G07F 17/32: for games, toys, sports, or amusements
- G07F 17/3223: {Architectural aspects of a gaming system, e.g. internal configuration, leader-follower, wireless communication}
- G07F 17/3237: {about the players, e.g. profiling, responsible gaming, strategy/behavior of players, location of players}
- G07F 17/3286: {Type of games}
- G07F 17/3293: {Card games, e.g. poker, canasta, black jack}
- G07F 17/34: depending on the stopping of moving members {in a mechanical slot machine}, e.g. "fruit" machines
- G07F: COIN-FREED OR LIKE APPARATUS (coin sorting G07D3/00; coin testing G07D5/00; {handling coins or paper currencies apart from payment activated apparatus G07D; payment architectures, schemes or protocols G06Q20/00})

## Abstract

An apparatus for implementing a game having a deterministic component and a non-deterministic component wherein a player uses the game through at least one player interface unit. Each player interface unit generates a player record indicating player-initiated events. A random number generator provides a series of pseudo-random numbers and a rules library stores indexed rules for one or more games. An interface registry stores mapping records where the mapping records are used to associate the player-initiated events to pre-selected rules in the rules library. A control means is coupled to the player interface to receive the output of the player interface unit, coupled to the interface registry, the rules library, and the random number generator. The control means processes the player record and returns an output record to the player interface unit where the output record is determined by executing the game's rules with reference to the pseudo-random numbers and predefined combinatorial algorithms for selecting sets of the pseudo-random numbers. In various embodiments, random numbers may be generated for use in a particular game or set of games, but not for use in all games.

## Claims

### Claim 1

(canceled)

### Claim 2

A method comprising:
controlling, by at least one processor:
receiving, from a computing device via a communications network, a selection of one game of a plurality of different games, wherein the selection of the one game of the plurality of different games is from a display of the computing device;
generating a set of random numbers;
receiving, via the communications network from the computing device, a request for one or more random numbers as called for by game rules for the one game;
storing the request in a request queue in a memory;
determining whether to process the request in the request queue;
responsive to determining to process the request in the request queue, retrieving the request from the request queue and updating the request queue to indicate that the request was processed;
responsive to retrieving the request from the request queue, obtaining one or more random numbers from the set of random numbers;
transmitting, via the communications network to the computing device, the one or more random numbers, wherein the computing device uses the one or more random numbers in accordance with the game rules to determine a game outcome;
generating a server outcome based on execution of a game using the game rules by the at least one processor;
receiving, via the communications network from the computing device, a player outcome based on execution of the game using the game rules by a player at the computing device; and
determining whether to disable the computing device based on a comparison of the server outcome with the player outcome.

### Claim 3 (depends on 2)

The method of claim 2, wherein:
generating the set of random numbers and obtaining the one or more random numbers comprises:
generating a first set of random numbers for use in a first subset of the plurality of different games;
generating a second set of random numbers for use in a second subset of the plurality of different games;
determining that the one game is one of the first subset of the plurality of different games; and
obtaining the one or more random numbers from the first set of random numbers.

### Claim 4 (depends on 3)

The method of claim 3, in which the first subset of the plurality of different games includes card games.

### Claim 5 (depends on 4)

The method of claim 4, in which generating a first set of random numbers includes generating a first set of random numbers in a range of 1 to 52 for use in the first subset of the plurality of different games.

### Claim 6 (depends on 3)

The method of claim 3, in which the first subset of the plurality of different games includes video poker games.

### Claim 7 (depends on 6)

The method of claim 6, in which determining that the one game is one of the first subset of the plurality of different games includes determining that the one game is a video poker game.

### Claim 8 (depends on 3)

The method of claim 3, in which generating the first set of random numbers includes generating a first set of random numbers for use in a first game of the plurality of different games.

### Claim 9 (depends on 3)

The method of claim 3, in which generating the first set of random numbers includes generating the first set of random numbers for use in a particular slot machine game of the plurality of different games.

### Claim 10 (depends on 3)

The method of claim 3, further including:
controlling, by the at least one processor:
storing the first set of random numbers in a first buffer; and
storing the second set of random numbers in a second buffer.

### Claim 11 (depends on 3)

The method of claim 3, in which each number in the first set of random numbers is generated to fall within a first range and in which each number in the second set of random numbers is generated to fall within a second range, in which the first range is different from the second range.

### Claim 12 (depends on 2)

The method of claim 2, in which the computing device comprises at least one of: (a) a cellular phone; (b) a personal digital assistant; (c) a personal data assistant; (d) a portable music player; (e) a laptop computer; (f) a pager; or (g) a wireless device.

### Claim 13 (depends on 2)

The method of claim 2, wherein:
generating the set of random numbers and obtaining the one or more random numbers comprises:
generating a plurality of random bits;
determining a quantity, in which the quantity represents a quantity of bits required by the game rules; and
obtaining from the plurality of random bits the quantity of bits, wherein the quantity of bits map to a random number.

### Claim 14 (depends on 13)

The method of claim 13, further including controlling, by the at least one processor, storing the plurality of random bits in a buffer.

### Claim 15 (depends on 14)

The method of claim 14, in which obtaining includes obtaining the quantity of bits from the buffer.

### Claim 16 (depends on 15)

The method of claim 15, further including controlling, by the at least one processor,
removing the quantity of bits from the buffer.

### Claim 17 (depends on 13)

The method of claim 13, in which determining the quantity includes:
determining a range, in which the range sets boundaries on values of a random number required by the game rules; and
determining a quantity, in which the quantity of bits can be mapped to any number within the range.

### Claim 18 (depends on 13)

The method of claim 13, in which generating the plurality of random bits includes generating a plurality of independent random bits.

### Claim 19

A system comprising:
at least one processor configured to control:
receiving, from a computing device via a communications network, a selection of one game of a plurality of different games, wherein the selection of the one game of the plurality of different games is from a display of the computing device;
generating a set of random numbers;
receiving, via the communications network from the computing device, a request for one or more random numbers as called for by game rules for the one game;
storing the request in a request queue in a memory;
determining whether to process the request in the request queue;
responsive to determining to process the request in the request queue, retrieving the request from the request queue and updating the request queue to indicate that the request was processed;
responsive to retrieving the request from the request queue, obtaining one or more random numbers from the set of random numbers;
transmitting, via the communications network to the computing device, the one or more random numbers, wherein the computing device uses the one or more random numbers in accordance with the game rules to determine a game outcome;
generating, a server outcome based on execution of a game using the game rules by the at least one processor;
receiving, via the communications network from the computing device, a player outcome based on execution of the game using the game rules by a player at the computing device; and
determining whether to disable the computing device based on a comparison of the server outcome with the player outcome.

### Claim 20 (depends on 19)

The system of claim 19, wherein
generating the set of random numbers and obtaining the one or more random numbers comprises to:
generating a first set of random numbers for use in a first subset of the plurality of different games;
generating a second set of random numbers for use in a second subset of the plurality of different games;
determining that the one game is one of the first subset of the plurality of different games; and
obtaining the one or more random numbers from the first set of random numbers.

### Claim 21

A non-transitory machine-readable medium configured to store instructions which, when executed by at least one processor, control:
receiving, from a computing device via a communications network, a selection of one game of a plurality of different games, wherein the selection of the one game of the plurality of different games is from a display of the computing device;
generating a set of random numbers;
receiving, via the communications network from the computing device, a request for one or more random numbers as called for by game rules for the one game;
storing the request in a request queue in a memory;
determining whether to process the request in the request queue;
responsive to determining to process the request in the request queue, retrieving the request from the request queue and updating the request queue to indicate that the request was processed;
responsive to retrieving the request from the request queue, obtaining one or more random numbers from the set of random numbers;
transmitting, via the communications network to the computing device, the one or more random numbers, wherein the computing device uses the one or more random numbers in accordance with the game rules to determine a game outcome;
generating a server outcome based on execution of a game using the game rules by the at least one processor;
receiving, via the communications network from the computing device, a player outcome based on execution of the game using the game rules by a player at the computing device; and
determining whether to disable the computing device based on a comparison of the server outcome with the player outcome.
