A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent disclosure, as it appears in the Patent and Trademark Office patent files or records, but otherwise reserves all copyright rights whatsoever. Copyright 2023, LNW Gaming, Inc.
The present invention relates generally to apparatus and methods for gaming machine configuration and reset due to fault conditions.
Currently, if a fault occurs on a gaming machine (e.g., via a bug in the code, via a power surge, via a random error, etc.), to recover the gaming machine from the fault an operator must perform, according to current gaming industry procedures, a time-intensive manual process. During this process, if the gaming machine is in an unrecoverable fault state, an operator attendant must access a physical cabinet of the gaming machine and clear (i.e., erase) an entire non-volatile random-access memory (NVRAM) associated with the gaming machine. Further, the attendant reconfigures (e.g., rewrites) the entire gaming machine NVRAM to a default operational state, which full rewrite and reconfiguration process can be lengthy (e.g., well over 15 minutes). Furthermore, during the current fault-condition recovery procedure, an attendant performs various interactions with a patron (e.g., regarding potential disputes and/or payments), as well as with any security staff and/or equipment to determine whether the patron had made a bet on the interrupted game and to determine or verify the physical amount of the bet (e.g., via monitoring of video cameras, etc.). Furthermore, the attendant must interact with any regulatory entity that is present (e.g., in the case of some jurisdictions that require it) to monitor the repayment and/or accounting procedures of the restored machine. Furthermore, in cases of a patron dispute, a patron must also await the slow fault-recovery procedure as part of the dispute resolution process.
Thus, current fault-condition recovery procedures are extensive in their levels of manual data erasure, and intensive regarding physical interactions with people and/or machine hardware. This time-consuming process results in the gaming machine being kept out of commission for a significant amount of time while the machine is being recovered from the unrecoverable fault state. This prevents the gaming machine from being used for gaming purposes.
It would be beneficial for an innovation that can quickly and easily recover a gaming machine from a fault condition to an operable condition, and which avoids the challenges associated with the current fault-condition recovery procedures.
According to an embodiment of the present disclosure, a system and/or method(s) to perform operations for storing gaming data in a non-volatile random-access memory (NVRAM) of a gaming machine and detecting, after the storing, an unrecoverable fault of the gaming machine. The operations further include determining, in response to detecting the unrecoverable fault, that criteria are satisfied for authorization of a partial deletion of the gaming data from the NVRAM. The operations further include determining, in response to determining that the criteria are satisfied, a first portion of the gaming data to retain on the NVRAM, and deleting, after determining the first portion of the gaming data to retain, a second portion of the gaming data without deleting the first portion of the gaming data. The operations can further include booting a game of the gaming machine to a default operational state using at least some of the first portion of the gaming data.
Additional aspects of the invention will be apparent to those of ordinary skill in the art in view of the detailed description of various embodiments, which is made with reference to the drawings, a brief description of which is provided below.
While the invention is susceptible to various modifications and alternative forms, specific embodiments have been shown by way of example in the drawings and will be described in detail herein. It should be understood, however, that the invention is not intended to be limited to the particular forms disclosed. Rather, the invention is to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the invention as defined by the appended claims.
While this invention is susceptible of embodiment in many different forms, there is shown in the drawings, and will herein be described in detail, at least some embodiments with the understanding that the present disclosure is to be considered as an exemplification of the principles of the invention and is not intended to limit the broad aspect of the invention to the embodiments illustrated. For purposes of the present detailed description, the singular includes the plural and vice versa (unless specifically disclaimed); the words “and” and “or” shall be both conjunctive and disjunctive; the word “all” means “any and all”; the word “any” means “any and all”; and the word “including” means “including without limitation.”
The gaming machine 110 includes (but is not limited to) a fault recovery controller 111, physical security devices 112, a non-volatile random-access memory (NVRAM 113), input and/or output devices 114 (e.g., display 401, primary presentation device 718, secondary presentation device 720, etc.) and an external system interface 115 (e.g., see also external system interface 858), connected via a bus 105. The NVRAM 113 includes a first portion of NVRAM data (first portion of data 117) that is not for a current game state of the gaming machine 110. The first portion of data 117 includes configuration data for the gaming machine 110 as well as information about credits (e.g., accounting information), game play history, events, etc. associated with game play cycles that have occurred prior to the game cycle for the most recent (i.e., last played) game cycle in which the fault occurred. The configuration data, from the first portion of data 117, is data that allows the gaming machine to function, such as configuration settings, installation instructions, etc. The game play history, events, accounting data, etc., are data that can be used for reference, audit, etc. for the gaming machine 110. In some embodiments, the first portion of data 117 may be specifically authorized for potential retention according to a jurisdictional setting (e.g., a limit, restriction, rule, etc.) related to the gaming machine 110. For example, the first portion of data 117 may be authorized according to jurisdictional setting(s) 152 stored on the gaming machine 110. The jurisdictional setting(s) 152 may specify one or more jurisdictional rules related to a geographic location of the gaming machine 110. In some embodiments, the jurisdictional setting(s) 152 may specify (according to the one or more jurisdictional rules) one or more categories or types of data authorized for retention.
The fault recovery controller 111 tracks and categorizes the first portion of data 117 in a logical fashion (e.g., into specific file folders, with specific labels or tags, etc.). For example, initial configuration data may be stored in a specific file folder and/or data files may be named with a specific identifier which can be read, searched, sorted, etc. for selective retention. The fault recovery controller 111 further stores a second portion of data 118, which includes gaming data related to a game state of a current game cycle that caused the fault, which can be selectively erased from the NVRAM 113 (e.g., via a game state reset feature, see
In some embodiments, the fault recovery controller 111 provides an option to perform either a full reset (e.g., a complete erasure of the NVRAM 113) or a game state reset (e.g., a partial erasure of the NVRAM 113, which erases the second portion of data 118 and retains the first portion of data 117). The fault recovery controller 111 can provide the option in response to determining that certain criteria is/are satisfied, such as, but not limited to, one or more of the following: whether the jurisdictional setting(s) 152 authorize input and/or output devices 114, whether accounting meters of the gaming machine are in a balanced state, whether a logic box door is securely accessed (e.g., in an open state), etc. In addition, the fault recovery controller 111 can increment specific meters of the gaming machine 110 in response to performance of the game state reset. Furthermore, the fault recovery controller 111 stores one or more event records of the game state reset and presents notifications related to occurrence of the game state reset (e.g., notifications to an attendant about the fault, screen notifications related to a wager amount of an unfinished game, notifications sent to the accounting system 170, etc.).
Furthermore,
In
In
In
In
The flow continues at processing block 208, where the processor determines whether specific criteria is satisfied that permits a game state reset. The criteria can include one or more specific criteria. For example, one criterion can include detecting a trigger signal from a memory protection unit (MPU), such as a signal from a sensor (e.g., of the physical security devices 112) of a logic-box door (“logic door”). The signal is generated, by the sensor, to indicate that the logic door has been securely accessed (e.g., a sensor on the door indicates that the door is in an open state). If the signal indicates that the logic door is securely accessed (i.e., opened), then at least one criterion (of the criteria for processing block 208) is satisfied, and the flow 200 may continue to processing block 210 (given other required criteria is also satisfied). Otherwise, the flow continues at processing block 214.
Another example criterion can include determining whether jurisdictional settings related to the location of the gaming machine (e.g., jurisdictional rules, location settings, etc.), indicate whether a partial deletion (or partial retention) of gaming data from the NVRAM (e.g., as in the game state reset procedure) is authorized or permissible. In some embodiments, the processor can determine whether a jurisdictional setting (e.g., rule) permits the retention of certain kinds of data, such as of certain data types, certain classifications/categories of data, data related to a specific function or purpose, etc. For example, in
Another example criterion includes determining whether accounting meters of the gaming machine are balanced. Accounting meters are used for tracking the credit flow in the gaming system. In one embodiment, the accounting meters include meters for credits in, credits out, wins, wagered amounts and a current balance. During a balanced state of the meters, the total credits in plus a total amount won, should be equal to sum of total credits out, total wager and current balance (i.e., Total credits in +Total wins=Total credits out+Total wager+Current balance). The “Total credits in +Total wins” may be referred to herein as a first meter-subtotal value. The “Total credits out+Total wager+Current balance” may be referred to herein as a second meter-subtotal value. To verify the balanced state of meters, the processor (e.g., fault recover controller 111) performs a self-audit check to determine whether the first meter-subtotal value equates to the second meter-subtotal value. If the gaming machine power is interrupted while the meters are being updated (e.g., if the unrecoverable fault occurs during an intermediate state of a game), the set of meters could have been interrupted in a partially updated state, thus causing the unbalanced state. If a game state reset is performed at this stage, the meters update cannot be continued from where it was left before power interruption and the meters will remain in an unbalanced state. Consequently, if the accounting meters are balanced, then at least one criterion (of the criteria for processing block 208) is satisfied, and the flow 200 may continue to processing block 210 (given any other required criteria is also satisfied). Otherwise, if the accounting meters are not balanced, then the flow continues at processing block 214.
In
Referring again to
In
In
Referring again to
Referring again to
Still referring to
In
Referring to
The gaming machine 710 illustrated in
The input devices, output devices, and input/output devices are disposed on, and securely coupled to, the cabinet 712. By way of example, the output devices include a primary presentation device 718, a secondary presentation device 720, and one or more audio speakers 722. The primary presentation device 718 or the secondary presentation device 720 may be a mechanical-reel display device, a video display device, or a combination thereof. In one such combination disclosed in U.S. Pat. No. 6,517,433, a transmissive video display is disposed in front of the mechanical-reel display to portray a video image superimposed upon electro-mechanical reels. In another combination disclosed in U.S. Pat. No. 7,654,899, a projector projects video images onto stationary or moving surfaces. In yet another combination disclosed in U.S. Pat. No. 7,452,276, miniature video displays are mounted to electro-mechanical reels and portray video symbols for the game. In a further combination disclosed in U.S. Pat. No. 8,591,330, flexible displays such as OLED or e-paper displays are affixed to electro-mechanical reels. The aforementioned U.S. Pat. Nos. 6,517,433, 7,654,899, 7,452,276, and 8,591,330 are incorporated herein by reference in their entireties.
The presentation devices 718, 720, the audio speakers 722, lighting assemblies, and/or other devices associated with presentation are collectively referred to as a “presentation assembly” of the gaming machine 710. The presentation assembly may include one presentation device (e.g., the primary presentation device 718), some of the presentation devices of the gaming machine 710, or all of the presentation devices of the gaming machine 710. The presentation assembly may be configured to present a unified presentation sequence formed by visual, audio, tactile, and/or other suitable presentation means, or the devices of the presentation assembly may be configured to present respective presentation sequences or respective information.
The presentation assembly, and more particularly the primary presentation device 718 and/or the secondary presentation device 720, variously presents information associated with wagering games, non-wagering games, community games, progressives, advertisements, services, premium entertainment, text messaging, emails, alerts, announcements, broadcast information, subscription information, etc. appropriate to the particular mode(s) of operation of the gaming machine 710. The gaming machine 710 may include a touch screen(s) 724 mounted over the primary or secondary presentation devices, buttons 726 on a button panel, a bill/ticket acceptor 728, a card reader/writer 730, a ticket dispenser 732, and player-accessible ports (e.g., audio output jack for headphones, video headset jack, USB port, wireless transmitter/receiver, etc.). It should be understood that numerous other peripheral devices and other elements exist and are readily utilizable in any number of combinations to create various forms of a gaming machine in accord with the present concepts.
The player input devices, such as the touch screen(s) 724, buttons 726, a mouse, a joystick, a gesture-sensing device, a voice-recognition device, and a virtual-input device, accept player inputs and transform the player inputs to electronic data signals indicative of the player inputs, which correspond to an enabled feature for such inputs at a time of activation (e.g., pressing a “Max Bet” button or soft key to indicate a player's desire to place a maximum wager to play the wagering game). The inputs, once transformed into electronic data signals, are output to game-logic circuitry for processing. The electronic data signals are selected from a group consisting essentially of an electrical current, an electrical voltage, an electrical charge, an optical signal, an optical element, a magnetic signal, and a magnetic element.
The gaming machine 710 includes one or more value input/payment devices and value output/payout devices. In order to deposit cash or credits onto the gaming machine 710, the value input devices are configured to detect a physical item associated with a monetary value that establishes a credit balance on a credit meter such as a “credits” meter (e.g., see credit meter 420 in
Turning now to
The game-logic circuitry 840 is also connected to an input/output (I/O) bus 848, which can include any suitable bus technologies, such as an AGTL+ frontside bus and a PCI backside bus. The I/O bus 848 is connected to various input devices 850, output devices 852, and input/output devices 854, such as those discussed above in connection with
The external system(s) 860 includes, in various aspects, a gaming network (e.g., casino network 160), other gaming machines or terminals, a gaming server, a remote controller, communications hardware, or a variety of other interfaced systems or components, in any combination. In yet other aspects, the external system(s) 860 comprises a player's portable electronic device (e.g., cellular phone, electronic wallet, etc.) and the external-system interface 858 is configured to facilitate wireless communication and data transfer between the portable electronic device and the gaming machine 810, such as by a near-field communication path operating via magnetic-field induction or a frequency-hopping spread spectrum RF signals (e.g., Bluetooth, etc.).
The gaming machine 810 optionally communicates with the external system(s) 860 such that the gaming machine 810 operates as a thin, thick, or intermediate client. The game-logic circuitry 840—whether located within (“thick client”), external to (“thin client”), or distributed both within and external to (“intermediate client”) the gaming machine 810-is utilized to provide a wagering game on the gaming machine 810. In general, the main memory 844 stores programming for a random number generator (RNG), game-outcome logic, and game assets (e.g., art, sound, etc.)-all of which obtained regulatory approval from a gaming control board or commission and are verified by a trusted authentication program in the main memory 844 prior to game execution. The authentication program generates a live authentication code (e.g., digital signature or hash) from the memory contents and compares it to a trusted code stored in the main memory 844. If the codes match, authentication is deemed a success and the game is permitted to execute. If, however, the codes do not match, authentication is deemed a failure that must be corrected prior to game execution. Without this predictable and repeatable authentication, the gaming machine 810, external system(s) 860, or both are not allowed to perform or execute the RNG programming or game-outcome logic in a regulatory-approved manner and are therefore unacceptable for commercial use. In other words, through the use of the authentication program, the game-logic circuitry facilitates operation of the game in a way that a person making calculations or computations could not.
When a wagering-game instance is executed, the CPU 842 (comprising one or more processors or controllers) executes the RNG programming to generate one or more pseudo-random numbers. The pseudo-random numbers are divided into different ranges, and each range is associated with a respective game outcome. Accordingly, the pseudo-random numbers are utilized by the CPU 842 when executing the game-outcome logic to determine a resultant outcome for that instance of the wagering game. The resultant outcome is then presented to a player of the gaming machine 810 by accessing the associated game assets, required for the resultant outcome, from the main memory 844. The CPU 842 causes the game assets to be presented to the player as outputs from the gaming machine 810 (e.g., audio and video presentations). Instead of a pseudo-RNG, the game outcome may be derived from random numbers generated by a physical RNG that measures some physical phenomenon that is expected to be random and then compensates for possible biases in the measurement process. Whether the RNG is a pseudo-RNG or physical RNG, the RNG uses a seeding process that relies upon an unpredictable factor (e.g., human interaction of turning a key) and cycles continuously in the background between games and during game play at a speed that cannot be timed by the player. Accordingly, the RNG cannot be carried out manually by a human and is integral to operating the game.
The gaming machine 810 may be used to play central determination games, such as electronic pull-tab and bingo games. In an electronic pull-tab game, the RNG is used to randomize the distribution of outcomes in a pool and/or to select which outcome is drawn from the pool of outcomes when the player requests to play the game. In an electronic bingo game, the RNG is used to randomly draw numbers that players match against numbers printed on their electronic bingo card.
The gaming machine 810 may include additional peripheral devices or more than one of each component shown in
In accord with various methods of conducting a wagering game on a gaming system in accord with the present concepts, the wagering game includes a game sequence in which a player makes a wager and a wagering-game outcome is provided or displayed in response to the wager being received or detected. The wagering game outcome, for that particular wagering game instance, is then revealed to the player in due course following initiation of the wagering game. The method comprises the acts of conducting the wagering game using a gaming apparatus, such as the gaming machine 710 depicted in
In the aforementioned method, for each data signal, the game-logic circuitry 840 is configured to process the electronic data signal, to interpret the data signal (e.g., data signals corresponding to a wager input), and to cause further actions associated with the interpretation of the signal in accord with stored instructions relating to such further actions executed by the controller. As one example, the CPU 842 causes the recording of a digital representation of the wager in one or more storage media (e.g., storage unit 856), the CPU 842, in accord with associated stored instructions, causes the changing of a state of the storage media from a first state to a second state. This change in state is, for example, effected by changing a magnetization pattern on a magnetically coated surface of a magnetic storage media or changing a magnetic state of a ferromagnetic surface of a magneto-optical disc storage media, a change in state of transistors or capacitors in a volatile or a non-volatile semiconductor memory (e.g., DRAM, etc.). The noted second state of the data storage media comprises storage in the storage media of data representing the electronic data signal from the CPU 842 (e.g., the wager in the present example). As another example, the CPU 842 further, in accord with the execution of the stored instructions relating to the wagering game, causes the primary presentation device 718, other presentation device, or other output device (e.g., speakers, lights, communication device, etc.) to change from a first state to at least a second state, wherein the second state of the primary presentation device comprises a visual representation of the physical player input (e.g., an acknowledgement to a player), information relating to the physical player input (e.g., an indication of the wager amount), a game sequence, an outcome of the game sequence, or any combination thereof, wherein the game sequence in accord with the present concepts comprises acts described herein. The aforementioned executing of the stored instructions relating to the wagering game is further conducted in accord with a random outcome (e.g., determined by the RNG) that is used by the game-logic circuitry 840 to determine the outcome of the wagering-game instance. In at least some aspects, the game-logic circuitry 840 is configured to determine an outcome of the wagering-game instance at least partially in response to the random parameter.
In one embodiment, the gaming machine 810 and, additionally or alternatively, the external system(s) 860 (e.g., a gaming server), means gaming equipment that meets the hardware and software requirements for fairness, security, and predictability as established by at least one state's gaming control board or commission. Prior to commercial deployment, the gaming machine 810, the external system(s) 860, or both and the casino wagering game played thereon may need to satisfy minimum technical standards and require regulatory approval from a gaming control board or commission (e.g., the Nevada Gaming Commission, Alderney Gambling Control Commission, National Indian Gaming Commission, etc.) charged with regulating casino and other types of gaming in a defined geographical area, such as a state. By way of non-limiting example, a gaming machine in Nevada means a device as set forth in NRS 463.0155, 463.0191, and all other relevant provisions of the Nevada Gaming Control Act, and the gaming machine cannot be deployed for play in Nevada unless it meets the minimum standards set forth in, for example, Technical Standards 1 and 2 and Regulations 5 and 14 issued pursuant to the Nevada Gaming Control Act. Additionally, the gaming machine and the casino wagering game must be approved by the commission pursuant to various provisions in Regulation 14. Comparable statutes, regulations, and technical standards exist in or are used in other gaming jurisdictions, including for example GLI Standard #11 of Gaming Laboratories International (which defines a gaming device in Section 1.5) and N.J.S.A 5:12-23, 5:12-45, and all other relevant provisions of the New Jersey Casino Control Act. As can be seen from the description herein, the gaming machine 710 may be implemented with hardware and software architectures, circuitry, and other special features that differentiate it from general-purpose computers (e.g., desktop PCs, laptops, and tablets).
The storage device 948 is any non-transitory computer-readable storage medium, such as a hard drive, a compact disc read-only memory (CD-ROM), a DVD, or a solid-state memory device (e.g., a flash drive). The memory 946 holds instructions and data used by the processor 942. The pointing device 954 may be a mouse, a track pad, a track ball, or another type of pointing device, and it is used in combination with the keyboard 950 to input data into the computer system 900. The graphics adapter 952 displays images and other information on the display 958. The network adapter 956 couples the computer system 900 to a local or wide area network.
As is known in the art, the computer system 900 can have different and/or other components than those shown in
The network adapter 956 (may also be referred to herein as a communication device) may include one or more devices for communicating using one or more of the communication media and protocols discussed above with respect to
In addition, some or all of the components of this general computer system 900 of
In some embodiments, a gaming system may comprise several such computer systems 900. The gaming system may include load balancers, firewalls, and various other components for assisting the gaming system to provide services to a variety of user devices.
The computer system 900 is adapted to execute computer program modules for providing functionality described herein. As used herein, the term “module” refers to computer program logic utilized to provide the specified functionality. Thus, a module can be implemented in hardware, firmware, and/or software. In one embodiment, program modules are stored on the storage device 948, loaded into the memory 946, and executed by the processor 942.
Any component of any embodiment described herein may include hardware, software, or any combination thereof.
Further, the operations described herein can be performed in any sensible order. Any operations not required for proper operation can be optional. Further, all methods described herein can also be stored as instructions on a computer readable storage medium, which instructions are operable by a computer processor. All variations and features described herein can be combined with any other features described herein without limitation. All features in all documents incorporated by reference herein can be combined with any feature(s) described herein, and also with all other features in all other documents incorporated by reference, without limitation.
Each of these embodiments and obvious variations thereof is contemplated as falling within the spirit and scope of the claimed invention, which is set forth in the following claims. Moreover, the present concepts expressly include any and all combinations and sub-combinations of the preceding elements and aspects.
This patent application claims priority benefit to U.S. Provisional Patent Application No. 63/433,283 filed Dec. 16, 2022. The 63/433,283 Application is hereby incorporated by reference herein in its entirety.
Number | Date | Country | |
---|---|---|---|
63433283 | Dec 2022 | US |