IP Library Granted Patent US 8,100,755
Granted Patent B2
US 8,100,755 · App. 12/463,462 · Granted Jan 24, 2012

Method, apparatus, and program product for distributing random number generation on a gaming network

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,100,755
App. No.
12/463,462
Granted
Jan 24, 2012
Kind
B2
Abstract

Methods, apparatus, and program products are disclosed for providing distributed RNG calculation capability. Generally, gaming machines cooperate on a gaming network to calculate a result for a RNG algorithm. A preferred system uses peer machines to perform partial RNG calculations, but server machines may also be used. One method calculates a first partial RNG calculation at a first peer machine using a seed value. The first peer machine transmits results of the first partial calculation to a second peer machine, which completes the RNG calculation. Some algorithms may include a step of combining partial results from two or more gaming machines. A preferred system uses a RNG state tracker and a seed tracker operating on a RNG master machine. This machine initializes a partial RNG with a seed value, and then tracks the state of the partial RNG using results from the completed calculation obtained over the network.

Claims (40)

1. A method comprising:

calculating, at a first one of multiple peer machines on a gaming network, a first partial calculation of a pseudo-random number generating algorithm, the first partial calculation including a use of a seed value to calculate at least one intermediate value;

transmitting a first result of the first partial calculation to a second one of the multiple peer machines;

calculating, at the second one of the multiple peer machines, a second partial calculation of the pseudo-random number generating algorithm and transmitting a second result of the second partial calculation to a requesting machine;

combining results of the two partial calculations of the pseudo-random number generating algorithm to generate a random number;

using the random number to affect a game outcome; and

causing the game outcome to be conveyed to a player.

2. The method of claim 1 in which the second partial calculation further comprises use of a second seed value.

3. The method of claim 1 in which the first partial calculation comprises calculating outputs of one or more cellular automata-based random number generator (RNG) cells.

4. The method of claim 2 in which the first partial calculation further comprises receiving a seed value and initiating the first partial calculation of the pseudo-random number generating algorithm using the seed value.

5. The method of claim 1 in which the random number affects the game by identifying a graphic element to convey the game outcome.

6. The method of claim 1 further comprising storing state information for a partial random number generator (RNG) calculator.

7. A method comprising:

transmitting a request for a random number to one or more of multiple peer machines on a gaming network;

calculating, at a first one of the multiple peer machines, a first partial calculation of a pseudo-random number generating algorithm and transmitting a first result of the first partial calculation to a second one of the multiple peer machines;

calculating, at the second one of the multiple peer machines, a second partial calculation of the pseudo-random number generating algorithm and transmitting a second result of the second partial calculation to a requesting machine;

combining results of the two partial calculations of the pseudo-random number generating algorithm to generate the random number; and

using the random number, identifying a game outcome in a game outcome table;

causing the game outcome to be displayed to a player.

8. The method of claim 7 wherein the first partial calculation includes calculating employing a seed value, the seed value tracked by a seed tracking software module on the first peer machine.

9. The method of claim 7 wherein the first partial calculation includes using previous random number generator (RNG) state data, the previous RNG state data tracked by a RNG state tracking software module on the first one of the multiple peer machines.

10. The method of claim 7 wherein the first partial calculation includes calculating an output for a cellular automata (CA)-based random number generator cell.

11. The method of claim 7 further comprising storing state information for a partial random number generator (RNG) calculator.

12. A gaming system comprising:

a display device arrangement on a gaming machine;

a player input device arrangement on the gaming machine;

a game controller for responding to a game activation at the player input device arrangement to display a game result to a player at the display device arrangement; and

a random number generator (RNG) client software module running on the gaming machine for providing RNG values to the game controller, the RNG client software module further for communicating with a selected first partial RNG calculator module running on the gaming machine, or on a first networked machine, the selected first partial RNG calculator module operable to calculate an intermediate value for a random number generator algorithm and then communicate the intermediate value to a selected second partial RNG calculator module running on the gaming machine, the first networked machine, or a second networked machine, but not on the same gaming machine as the selected first partial RNG calculator module.

13. The gaming system of claim 12 wherein the selected second partial RNG calculator module is further operable to send a completed partial RNG calculation value to the gaming machine.

14. The gaming system of claim 12 wherein the selected second partial RNG calculator module is further operable to send a completed partial RNG calculation value to a RNG client controlling the selected first partial RNG calculator module.

15. The gaming system of claim 12 wherein the selected second partial RNG calculator module is further operable to exchange a second intermediate RNG calculation value with the selected first partial RNG calculator module.

16. The gaming system of claim 12 wherein the selected first partial RNG calculator module is further operable to use previous RNG state data, the previous RNG state data tracked by a RNG state tracking software module on the gaming machine with the selected first partial RNG calculator module.

17. The gaming system of claim 12 further comprising a RNG state tracking software module installed on the gaming machine or on the first networked machine, and executable track to state information for a partial RNG calculator.

18. A program product embodied in one or more non-transitory computer readable media, the program product including:

first game program code executable to respond to a game activation input and operate a game play round;

game display program code executable to display results of the game play round to a player; and

random number generator (RNG) client program code executable to provide RNG values to the first game program code, the RNG client program code further executable for communicating with a selected first partial RNG calculator program code running on a requesting gaming machine, or on a first networked machine, the selected first partial RNG calculator program code executable to calculate an intermediate value for a random number generator algorithm and then communicate the intermediate value to a selected second partial RNG calculator program code running on the gaming machine, the first networked machine, or a second networked machine, but not on the same gaming machine as the selected first partial RNG calculator program code.

19. The program product of claim 18 wherein the selected second partial RNG calculator program code is further executable to send a completed partial RNG calculation value to the requesting gaming machine.

20. The program product of claim 18 wherein the selected second partial RNG calculator program code is further executable to exchange a second intermediate RNG calculation value with the selected first partial RNG calculator program code.

21. The program product of claim 18 wherein the selected first partial RNG calculator program code is further operable to use previous RNG state data, the previous RNG state data tracked by a RNG state tracking software module on a host machine of the first partial RNG calculator program code.

Assignments (17)
SECURITY AGREEMENT Recorded Jul 3, 2025
From: EVERI GAMES INC.; EVERI PAYMENTS INC.
To: DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT
Reel/Frame 071827/0315 →
TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT RECORDED AT REEL 058948, FRAME 0265 Recorded Jul 1, 2025
From: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
To: EVERI HOLDINGS INC.
Reel/Frame 071791/0236 →
PATENT SECURITY AGREEMENT (SHORT-FORM) Recorded Feb 2, 2022
From: EVERI HOLDINGS INC.
To: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 058948/0265 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNOR'S NAME AND THE FIRST ASSIGNEE'S NAME PREVIOUSLY RECORDED AT REEL: 057111 FRAME: 0001. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Aug 13, 2021
From: JEFFERIES FINANCE LLC
To: EVERI PAYMENTS INC.; EVERI HOLDINGS INC.; EVERI GAMES HOLDING INC.; GCA MTL, LLC; CENTRAL CREDIT, LLC; EVERI INTERACTIVE LLC; EVERI GAMES INC.
Reel/Frame 057184/0244 →
RELEASE OF SECURITY INTEREST Recorded Aug 6, 2021
From: JEFFERIES FINANCE LLC
To: EVERI PAYMENTS INC.; EVERI GAMES INC.; WESTERN MONEY SYSTEMS
Reel/Frame 057112/0843 →
RELEASE OF SECURITY INTEREST Recorded Aug 6, 2021
From: JEFFERIES FIANANCE LLC
To: EVERY PAYMENTS INC.; EVERI HOLDINGS INC.; EVERI GAMES HOLDING INC.; GCA MTL, LLC; CENTRAL CREDIT, LLC; EVERI INTERACTIVE LLC; EVERI GAMES INC.
Reel/Frame 057111/0001 →
PATENT SECURITY AGREEMENT Recorded Apr 24, 2020
From: EVERI HOLDINGS INC.; EVERI PAYMENTS INC.; GCA MTL, LLC; CENTRAL CREDIT, LLC; EVERI GAMES INC.; EVERI GAMES HOLDING INC.; EVERI INTERACTIVE LLC
To: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 052494/0463 →
PATENT SECURITY AGREEMENT Recorded May 11, 2017
From: EVERI GAMES INC.; EVERI PAYMENTS INC.; GLOBAL PAYMENTS, INC.; JACKPOT DIGITAL INC.; MULTIMEDIA GAMES, INC., N/K/A EVERI GAMES INC.; WESTERN MONEY SYSTEMS
To: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 042484/0715 →
RELEASE OF SECURITY INTEREST Recorded May 10, 2017
From: BANK OF AMERICA, N.A.
To: EVERI PAYMENTS INC. (F/K/A GLOBAL CASH ACCESS, INC.); EVERI GAMES INC. (F/K/A MULTIMEDIA GAMES, INC.)
Reel/Frame 042438/0640 →
RELEASE OF SECURITY INTEREST Recorded May 10, 2017
From: BANK OF AMERICA, N.A.
To: EVERI PAYMENTS INC. (F/K/A GLOBAL CASH ACCESS, INC.); EVERI GAMES INC. (F/K/A MULTIMEDIA GAMES, INC.)
Reel/Frame 042440/0076 →
RELEASE OF SECURITY INTEREST Recorded May 9, 2017
From: DEUTSCHE BANK TRUST COMPANY AMERICAS, AS COLLATERAL AGENT
To: EVERI PAYMENTS INC.; EVERI GAMES INC.
Reel/Frame 042434/0006 →
CHANGE OF NAME Recorded Aug 27, 2015
From: MULTIMEDIA GAMES, INC.
To: EVERI GAMES INC.
Reel/Frame 036502/0092 →
SECURITY INTEREST Recorded Dec 23, 2014
From: GLOBAL CASH ACCESS, INC.; MULTIMEDIA GAMES, INC.
To: DEUTSCHE BANK TRUST COMPANY AMERICAS, AS COLLATERAL AGENT
Reel/Frame 034699/0393 →
SECURITY INTEREST Recorded Dec 22, 2014
From: GLOBAL CASH ACCESS, INC.; MULTIMEDIA GAMES, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 034692/0667 →
RELEASE OF SECURITY INTEREST Recorded Dec 19, 2014
From: COMERICA BANK
To: MULTIMEDIA GAMES, INC.; MULTIMEDIA GAMES HOLDING COMPANY, INC.; MEGABINGO INTERNATIONAL, LLC; MGAM TECHNOLOGIES, LLC
Reel/Frame 034680/0086 →
SECURITY AGREEMENT Recorded Aug 9, 2011
From: MULTIMEDIA GAMES, INC. AND MULTIMEDIA GAMES HOLDING COMPANY, INC.
To: COMERICA BANK, A TEXAS BANKING ASSOCIATION
Reel/Frame 026719/0259 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 11, 2009
From: ENZMINGER, JOSEPH R.
To: MULTIMEDIA GAMES, INC.
Reel/Frame 022662/0242 →