Gaming tournaments for various types of games such as online, offline, skill-based, games of chance, and games of mixed skill and chance are a continued source of entertainment to game players, and are often a source of great revenue for gaming companies. Accordingly, there is a desire to provide players with increasingly newer, more interesting, engaging, or entertaining games.
An understanding of embodiments described herein and many of the attendant advantages thereof may be readily obtained by reference to the following detailed description when considered with the accompanying drawings, wherein:
Embodiments presented herein are descriptive of systems, apparatus, methods, and articles of manufacture for game-streak triggered bonuses that may be utilized to alter play of a primary game and/or modifiers that allow leader boards to be altered.
Throughout the description that follows and unless otherwise specified, the following terms may include and/or encompass the example meanings provided in this section. These terms and illustrative example meanings are provided to clarify the language selected to describe embodiments both in the specification and in the appended claims, and accordingly, are not intended to be generally limiting. While not generally limiting and while not limiting for all described embodiments, in some embodiments, the terms are specifically limited to the example definitions and/or examples provided. Other terms are defined throughout the present description.
A “game”, as the term is used herein (unless specified otherwise), may generally comprise any game (e.g., wagering or non-wagering, electronically playable over a network) playable by one or more players in accordance with specified rules. A game may be playable on a Personal Computer (PC) online in web browsers, on a game console and/or on a mobile device such as a smart-phone or tablet computer. “Gaming” thus generally refers to play of a game.
A “casual game”, as the term is used herein (unless specified otherwise), may generally comprise a game with simple rules with little or no time commitment on the time of a player to play. A casual game may feature, for example, very simple game play such as a puzzle or Scrabble™ game, may allow for short bursts of play (e.g., during work breaks), an ability to quickly reach a final stage and/or continuous play without a need to save the game.
A “social network game”, as used herein (unless specified otherwise), generally refers to a type of online game that is played through a social network, and in some embodiments may feature multiplayer and asynchronous game play mechanics. A “social network” may refer to an online service, online community, platform, or site that focuses on facilitating the building of social networks or social relations among people. A social network service may, for example, consist of a representation of each user (often a profile), his/her social links, and a variety of additional services. A social network may be web-based and provide means for users to interact over the Internet, such as e-mail and instant messaging. A social network game may in some embodiments be implemented as a browser game, but can also be implemented on other platforms such as mobile devices.
A “wagering game”, as the term is used herein (unless specified otherwise), may generally comprise a game on which a player can risk a wager or other consideration, such as, but not limited to: slot games, poker games, blackjack, baccarat, craps, roulette, lottery, bingo, keno, casino war, etc. A wager may comprise a monetary wager in the form of an amount of currency or any other tangible or intangible article having some value which may be risked on an outcome of a wagering game. “Gambling” or “wagering” generally refers to play of a wagering game.
The term “game provider”, as used herein (unless specified otherwise), generally refers to an entity or system of components which provides games for play and facilitates play of such game by use of a network such as the Internet or a proprietary or closed networks (e.g., an intranet or wide area network). For example, a game provider may operate a website which provides games in a digital format over the Internet. In some embodiments in which a game comprising a wagering game is provided, a game provider may operate a gambling website over which wagers are accepted and results of wagering games are provided.
As utilized herein, the term “player” may generally refer to any type, quantity, and or manner of entity associated with the play of a game. In some embodiments, a player may comprise an entity conducting play of an online game, for example, may comprise an entity that desires to play a game (e.g., an entity registered and/or scheduled to play and/or an entity having expressed interest in the play of the game—e.g., a spectator) and/or may comprise an entity that configures, manages, and/or conducts a game. A player may be currently playing a game or have previously played the game, or may not yet have initiated play—i.e., a “player” may comprise a “potential player” (e.g., in general and/or with respect to a specific game). In some embodiments, a player may comprise a user of an interface (e.g., whether or not such a player participates in a game or seeks to participate in the game). In some embodiments, a player may comprise an individual (or group) that enters, joins, logs into, registers for, and/or otherwise access an online game room, session, server, and/or other particular instance and/or segmentation of an online game.
Some embodiments described herein are associated with a “player device” or a “network device”. As used herein, a “player device” is a subset of a “network device”. The “network device”, for example, may generally refer to any device that can communicate via a network, while the “player device” may comprise a network device that is owned and/or operated by or otherwise associated with a player. Examples of player and/or network devices may include, but are not limited to: a Personal Computer (PC), a computer workstation, a computer server, a printer, a scanner, a facsimile machine, a copier, a Personal Digital Assistant (PDA), a storage device (e.g., a disk drive), a hub, a router, a switch, and a modem, a video game console, or a wireless or cellular telephone. Player and/or network devices may, in some embodiments, comprise one or more network components.
As used herein, the term “network component” may refer to a player or network device, or a component, piece, portion, or combination of player or network devices. Examples of network components may include a Static Random Access Memory (SRAM) device or module, a network processor, and a network communication path, connection, port, or cable.
In addition, some embodiments are associated with a “network” or a “communication network.” As used herein, the terms “network” and “communication network” may be used interchangeably and may refer to any object, entity, component, device, and/or any combination thereof that permits, facilitates, and/or otherwise contributes to or is associated with the transmission of messages, packets, signals, and/or other forms of information between and/or within one or more network devices. Networks may be or include a plurality of interconnected network devices. In some embodiments, networks may be hard-wired, wireless, virtual, neural, and/or any other configuration or type that is or becomes known. Communication networks may include, for example, devices that communicate directly or indirectly, via a wired or wireless medium such as the Internet, intranet, a Local Area Network (LAN), a Wide Area Network (WAN), a cellular telephone network, a Bluetooth® network, a Near-Field Communication (NFC) network, a Radio Frequency (RF) network, a Virtual Private Network (VPN), Ethernet (or IEEE 802.3), Token Ring, or via any appropriate communications means or combination of communications means. Exemplary protocols include but are not limited to: Bluetooth™, Time Division Multiple Access (TDMA), Code Division Multiple Access (CDMA), Global System for Mobile communications (GSM), Enhanced Data rates for GSM Evolution (EDGE), General Packet Radio Service (GPRS), Wideband CDMA (WCDMA), Advanced Mobile Phone System (AMPS), Digital AMPS (D-AMPS), IEEE 802.11 (WI-FI), IEEE 802.3, SAP, the best of breed (BOB), and/or system to system (S2S).
As used herein, the terms “information” and “data” may be used interchangeably and may refer to any data, text, voice, video, image, message, bit, packet, pulse, tone, waveform, and/or other type or configuration of signal and/or information. Information may comprise information packets transmitted, for example, in accordance with the Internet Protocol Version 6 (IPv6) standard. Information may, according to some embodiments, be compressed, encoded, encrypted, and/or otherwise packaged or manipulated in accordance with any method that is or becomes known or practicable.
The term “indication”, as used herein (unless specified otherwise), may generally refer to any indicia and/or other information indicative of or associated with a subject, item, entity, and/or other object and/or idea. As used herein, the phrases “information indicative of” and “indicia” may be used to refer to any information that represents, describes, and/or is otherwise associated with a related entity, subject, or object. Indicia of information may include, for example, a code, a reference, a link, a signal, an identifier, and/or any combination thereof and/or any other informative representation associated with the information. In some embodiments, indicia of information (or indicative of the information) may be or include the information itself and/or any portion or component of the information. In some embodiments, an indication may include a request, a solicitation, a broadcast, and/or any other form of information gathering and/or dissemination.
A “session”, as the term is used herein (unless indicated otherwise), may generally comprise a period of time spanning a plurality of event instances or turns of the game, the session having a defined start and defined end. An event instance or turn is triggered upon an initiation of, or request for, at least one result of the game by a player, such as an actuation of a “start” or “spin” mechanism, which initiation causes an outcome to be determined or generated (e.g., a random number generator is contacted or communicated with to identify, generate or determine a random number to be used to determine a result for the event instance).
As used herein, the terms “outcome” and “result” should be differentiated in the present description in that an “outcome” is generally a representation of a “result”, typically comprising one or more game elements or game symbols. For example, in a “fruit themed” game, a winning outcome (i.e., an outcome corresponding to some kind of award, prize or payout) may comprise a combination of three “cherry” symbols. The “result” of this outcome may be a payout of X credits awarded to the player associated with the game. In another example, in a game in which a character moves along a game interface from a starting position to a finish position, an “outcome” of the game may comprise a symbol representing one or more movements along the interface and the “result” corresponding to this outcome may be the particular number and direction of the character's movement (e.g., three (3) spaces backwards such that the character ends up further away from the finish line). In a session embodiment, a session result may comprise a binary result (e.g., a player or game character wins or loses the session) and/or the particular award (or magnitude of award) won or earned by the player based on the session (e.g., the number of credits awarded to the player). It should be noted that the embodiments described herein encompass awards, prizes and payouts which are monetary, non-monetary, tangible or intangible.
As used herein, the term “virtual currency” may generally refer to an in-game currency that may be used as part of a game or one or more games provided by a game provider as (i) currency for making wagers, and/or (ii) to purchase or access various in-game items, features or powers.
A “credit balance”, as the term is used herein (unless indicated otherwise), may generally refer to (i) a balance of currency, whether virtual currency and/or real currency, usable for making wagers in a game and/or (ii) another tracking mechanism for tracking a player's success or advancement in a game by deducting there from points or value for unsuccessful attempts at advancement and adding thereto points or value for successful attempts at advancement.
Turning first to
According to some embodiments, any or all of the components 102a-n, 104, 110, 140 of the system 100 may be similar in configuration and/or functionality to any similarly named and/or numbered components described herein. Fewer or more components 102a-n, 104, 110, 140 (and/or portions thereof) and/or various configurations of the components 102a-n, 104, 110, 140 may be included in the system 100 without deviating from the scope of embodiments described herein. While multiple instances of some components 102a-n are depicted and while single instances of other components 104, 110, 140 are depicted, for example, any component 102a-n, 104, 110, 140 depicted in the system 100 may comprise a single device, a combination of devices and/or components 102a-n, 104, 110, 140, and/or a plurality of devices, as is or becomes desirable and/or practicable. Similarly, in some embodiments, one or more of the various components 102a-n, 104, 110, 140 may not be needed and/or desired in the system 100.
The player devices 102a-n, in some embodiments, may comprise any type or configuration of electronic, mobile electronic, and or other network and/or communication devices (or combinations thereof) that are or become known or practicable. A first player device 102a may, for example, comprise one or more PC devices, computer workstations (e.g., game consoles and/or gaming computers), tablet computers, such as an iPad® manufactured by Apple®, Inc. of Cupertino, Calif., and/or cellular and/or wireless telephones such as an iPhone® (also manufactured by Apple®, Inc.) or an Optimus™ S smart phone manufactured by LG® Electronics, Inc. of San Diego, Calif., and running the Android® operating system from Google®, Inc. of Mountain View, Calif. In some embodiments, one or more of the player devices 102a-n may be specifically utilized and/or configured (e.g., via specially-programmed and/or stored instructions such as may define or comprise a software application) to communicate with the game server 110 (e.g., via the network 104).
The network 104 may, according to some embodiments, comprise a LAN, WAN, cellular telephone network, Bluetooth® network, NFC network, and/or RF network with communication links between the player devices 102a-n, the game server 110, and/or the database 140. In some embodiments, the network 104 may comprise direct communications links between any or all of the components 102a-n, 110, 140 of the system 100. The game server 110 may, for example, be directly interfaced or connected to the database 140 via one or more wires, cables, wireless links, and/or other network components, such network components (e.g., communication links) comprising portions of the network 104. In some embodiments, the network 104 may comprise one or many other links or network components other than those depicted in
While the network 104 is depicted in
According to some embodiments, the game server 110 may comprise a device (and/or system) owned and/or operated by or on behalf of or for the benefit of a gaming entity (not explicitly shown). The gaming entity may utilize player and/or game information or instructions (e.g., stored by the database 140), in some embodiments, to host, manage, analyze, design, define, price, conduct, and/or otherwise provide (or cause to be provided) one or more games such as online multiplayer games. In some embodiments, the gaming entity (and/or a third-party; not explicitly shown) may provide an interface (not shown in
In some embodiments, the database 140 may comprise any type, configuration, and/or quantity of data storage devices that are or become known or practicable. The database 140 may, for example, comprise an array of optical and/or solid-state hard drives configured to store player and/or game data, and/or various operating instructions, drivers, etc. While the database 140 is depicted as a stand-alone component of the system 100 in
Referring now to
According to some embodiments, any or all of the components 202a-n, 204, 206, 210a-n, 220, 222, 224, 226, 228, 240a-f of the system 200 may be similar in configuration and/or functionality to any similarly named and/or numbered components described herein. Fewer or more components 202a-n, 204, 206, 210a-n, 220, 222, 224, 226, 228, 240a-f (and/or portions thereof) and/or various configurations of the components 202a-n, 204, 206, 210a-n, 220, 222, 224, 226, 228, 240a-f may be included in the system 200 without deviating from the scope of embodiments described herein. While multiple instances of some components 202a-n, 210a-n, 240a-f are depicted and while single instances of other components 204, 206, 220, 222, 224, 226, 228 are depicted, for example, any component 202a-n, 204, 206, 210a-n, 220, 222, 224, 226, 228, 240a-f depicted in the system 200 may comprise a single device, a combination of devices and/or components 202a-n, 204, 206, 210a-n, 220, 222, 224, 226, 228, 240a-f, and/or a plurality of devices, as is or becomes desirable and/or practicable. Similarly, in some embodiments, one or more of the various components 202a-n, 204, 206, 210a-n, 220, 222, 224, 226, 228, 240a-f may not be needed and/or desired in the system 200.
According to some embodiments, the player devices 202a-n may be utilized to access (e.g., via the Internet 204 and/or one or more other networks not explicitly shown) content provided by the game server cluster 210. The game server cluster 210 may, for example, provide, manage, host, and/or conduct various online and/or otherwise electronic games such as online bingo, slots, poker, and/or other games of chance, skill, and/or combinations thereof. In some embodiments, the various game servers 210a-n (virtual and/or physical) of the game server cluster 210 may be configured to provide, manage, host, and/or conduct individual instances and/or sessions of available game types. A first game server 210a, for example, may host a first particular session of an online bingo game (or tournament), a second game server 210c may host a second particular session of an online bingo game (or tournament), a third game server 210c may facilitate an online poker tournament (e.g., and a corresponding plurality of game sessions that comprise the tournament), and/or a fourth game server 210d may provide an online slots game (e.g., by hosting one or more slot game sessions).
In some embodiments, the player devices 202a-n may comprise various components (hardware, firmware, and/or software; not explicitly shown) that facilitate game play and/or interaction with the game server cluster 210. The player device 202a-n may, for example, comprise a gaming client such as a software application programmed in Adobe® Flash® and/or HTML 5 that is configured to send requests to, and receive responses from, one or more of the game servers 210a-n of the game server cluster 210. In some embodiments, such an application operating on and/or via the player devices 202a-n may be configured in Model-View-Controller (MVC) architecture with a communication manager layer responsible for managing the requests to/responses from the game server cluster 210. In some embodiments, one or more of the game servers 210a-n may also or alternatively be configured in a MVC architecture with a communication manager and/or communications management layer (not explicitly shown in
According to some embodiments, communications between the player devices 202a-n and the game server cluster 210 may be managed and/or facilitated by the load balancer 206. The load balancer 206 may, for example, route communications from player devices 202a-n to one or more of the specific game servers 210a-n depending upon various attributes and/or variables such as bandwidth availability (e.g., traffic management/volumetric load balancing), server load (e.g., processing load balancing), server functionality (e.g., contextual awareness/availability), and/or player-server history (e.g., session awareness/“stickiness”). In some embodiments, the load balancer 206 may comprise one or more devices and/or services provided by a third-party (not separately shown in
In some embodiments, the load balancer 206 and/or the Internet 204 may comprise one or more proxy servers and/or devices (not shown in
According to some embodiments, for specific game types such as bingo, the game server cluster 210 may provide game results (such as a full set of drawn bingo numbers and/or bonus metrics) to a controller device (not separately shown in
In some embodiments, the game server cluster 210 (and/or one or more of the game servers 210a-n thereof) may be in communication with the dynamic DB 240a. According to some embodiments, the dynamic DB 240a may comprise a dynamically-scalable database service such as the DyanmoDB™ service provided by Amazon® Web Services, LLC. The dynamic DB 240a may, for example, store information specific to one or more certain game types (e.g., slots) provided by the game server cluster 210 such as to allow, permit, and/or facilitate reporting and/or analysis of such information.
According to some embodiments, the game server cluster 210 (and/or one or more of the game servers 210a-n thereof) may be in communication with the cloud-based cache cluster 240b. Game state information from the game server cluster 210 may be stored in the game state cache 240b-1, for example, slot state (e.g., slot-game specific state) data may be stored in the slot state cache 240b-2, and/or other game and/or player information (e.g., progressive data, referral data, player rankings, audit data) may be stored in the hydra cache 240b-3. In some embodiments, the cache persistor 220 may move and/or copy data stored in the cloud-based cache cluster 240b to the non-relational DB 240c. The non-relational DB 240c may, for example, comprise a SimpleDB™ service provided by Amazon® Wed Services, LLC. According to some embodiments, the game server cluster 210 may generally access the cloud-based cache cluster 240b as-needed to store and/or retrieve game-related information. The data stored in the cloud-based cache cluster 240b may generally comprise a subset of the newest or freshest data, while the cache persistior 220 may archive and/or store or move such data to the non-relational DB 240c as it ages and/or becomes less relevant (e.g., once a player logs-off, once a game session and/or tournament ends). The game server cluster 210 may, in accordance with some embodiments, have access to the non-relational DB 240c as-needed and/or desired. The game servers 210a-n may, for example, be initialized with data from the non-relational DB 240c and/or may store and/or retrieve low frequency and/or low priority data via the non-relational DB 240c.
In some embodiments, the SQS device 222 may queue and/or otherwise manage requests, messages, events, and/or other tasks or calls to and/or from the server cluster 210. The SQS device 222 may, for example, prioritize and/or route requests between the game server cluster 210 and the task scheduler 224. In some embodiments, the SQS device 222 may provide mini-game and/or tournament information to the server cluster 210. According to some embodiments, the task scheduler 224 may initiate communications with the SQS device 222, the e-mail service provider 226 (e.g., providing e-mail lists), the remote DB service 240d (e.g., providing inserts and/or updates), and/or the persistence DB 240e (e.g., providing and/or updating game, player, and/or other reporting data), e.g., in accordance with one or more schedules.
According to some embodiments, the persistence DB 240e may comprise a data store of live environment game and/or player data. The game server cluster 210 and/or the task scheduler 224 or SQS device 222 may, for example, store game and/or player data to the persistence DB 240e and/or may pull and/or retrieve data from the persistence DB 240e, as-needed and/or desired. The server cluster 210 may, according to some embodiments, provide and/or retrieve spin and/or other game event info and/or configuration information via the persistence DB 240e.
In some embodiments, the reporting DB 240f may be created and/or populated based on the persistence DB 240e. On a scheduled and/or other basis, for example, a data transformation and/or mapping program may be utilized to pull data from the live environment (e.g., the persistence DB 240e) into the reporting DB 240f. The query service 228 may then be utilized, for example, to query the reporting DB 240f, without taxing the live environment and/or production system directly accessible by the game server cluster 210.
Turning now to
According to some embodiments, any or all of the components 302a-b, 304a-b, 306a-b, 308a-b, 310a-g, 322 of the system 300 may be similar in configuration and/or functionality to any similarly named and/or numbered components described herein. Fewer or more components 302a-b, 304a-b, 306a-b, 308a-b, 310a-g, 322 (and/or portions thereof) and/or various configurations of the components 302a-b, 304a-b, 306a-b, 308a-b, 310a-g, 322 may be included in the system 300 without deviating from the scope of embodiments described herein. While multiple instances of some components 302a-b, 304a-b, 306a-b, 308a-b, 310a-g are depicted and while single instances of other components 322 are depicted, for example, any component 302a-b, 304a-b, 306a-b, 308a-b, 310a-g, 322 depicted in the system 300 may comprise a single device, a combination of devices and/or components 302a-b, 304a-b, 306a-b, 308a-b, 310a-g, 322, and/or a plurality of devices, as is or becomes desirable and/or practicable. Similarly, in some embodiments, one or more of the various components 302a-b, 304a-b, 306a-b, 308a-b, 310a-g, 322 may not be needed and/or desired in the system 300.
In some embodiments, a first user device 304a may comprise an electronic device owned and/or operated by a player of an online game (not explicitly shown) and/or by an entity that otherwise accesses online game content and/or services externally (e.g., requiring external login and/or access credentials and/or procedures). The first user device 304a may, for example, be utilized to access content provided by and/or via the application delivery controller cluster 322. In some embodiments, the first user device 304a may interface with and/or connect to the production network 304c via the primary service provider network 304a and/or the secondary service provider network 304b. The primary service provider network 304a and the secondary service provider network 304b may, for example, load balance and/or provide redundant coverage for outage recovery by utilization of a first primary service provider network router 306a-1, a second primary service provider network router 306a-2, a first secondary service provider network router 306b-1, and/or a second secondary service provider network router 306b-2.
According to some embodiments, the application delivery controller cluster 322 may be insulated and/or protected from the production network 304c by an external firewall cluster 308a. The first user device 304a may, for example, be required to provide credentials to and/or otherwise access the application delivery controller cluster 322 via the external firewall cluster 308a.
In some embodiments, the application delivery controller cluster 322 may receive via and/or from the external firewall cluster 308a and/or the production network 304c, one or more requests, calls, transmissions, and//or commands from the first user device 304a. The first user device 304a may, for example, submit a call for an online gaming interface to the application delivery controller cluster 322. In some embodiments, the application delivery controller cluster 322 may comprise one or more hardware, software, and/or firmware devices and/or modules configured (e.g., specially-programmed) to route events and/or responses between the first user device 304a and one or more of the servers 310a-g. In the case that the first user device 304a is utilized to access an online gaming interface for example, one or more of the web servers 310a (e.g., that may provide graphical and/or rendering elements for an interface and/or other web services) and/or the application servers 310b (e.g., that may provide rule and/or logic-based programming routines, elements, and/or functions—e.g., game play engines) may be called and/or managed by the application delivery controller cluster 322.
In some embodiments, the messaging broker servers 310c may receive and/or retrieve messages from the first user device 304a (and/or from one or more of the other servers 310a-b, 310d-g) and perform one or more inter-application processes in relation thereto. The messaging broker servers 310c may, for example, route, transform, consolidate, aggregate, store, augment, and/or otherwise process one or more requests in connection with provision of online gaming services to the first user device 304a (e.g., facilitating a decoupling of services provided by various applications on and/or from the various servers 310a-b, 310d-g). According to some embodiments, the game broadcaster servers 310d may provide scheduled releases of information descriptive of an online game. The game broadcaster servers 310d may, for example, provide a broadcast feed of bingo numbers, slot and/or other random (and/or pseudo-random) number results that may be accessed by (and/or transmitted to) the first user device 304a (e.g., in connection with the play of an online bingo, slots, and/or other game for which broadcast information may be utilized). In some embodiments, the chat servers 310e may provide, manage, and/or facilitate communications between the first user device 304a (and/or first user thereof) and one or more other player/user devices (such as a second user device 302b and/or other player/user devices not shown in
According to some embodiments, the second user device 304b may generally comprise an electronic device owned and/or operated by a user (not shown) closely affiliated with an entity that operates the system 300 (such entity also not shown). An employee (e.g., programmer and/or Customer Service Representative (CSR)), contractor, and/or other agent of an online gaming company may, for example, utilize the second user device 304b to interface with the privately-accessible VPN 304d. The VPN 304d may, for example, provide direct access to the application servers 310b, the database servers 310f, the management and monitoring servers 310g, and/or the application delivery controller cluster 322. In some embodiments (as depicted in
In some embodiments, the database servers 310f may provide access to one or more databases and/or data stores (e.g., not shown in
Utilization of the term “server” with respect to the servers 310a-g of the system 300 of
Referring now to
According to some embodiments, any or all of the components 402, 404a-j, 406b-d, 408e-g, 408i-j, 410e-f, 422a, 422e-f, 422i-j, 424f, 430i-j, 452e-f of the system 400 may be similar in configuration and/or functionality to any similarly named and/or numbered components described herein. Fewer or more components 402, 404a-j, 406b-d, 408e-g, 408i-j, 410e-f, 422a, 422e-f, 422i-j, 424f, 430i-j, 452e-f (and/or portions thereof) and/or various configurations of the components 402, 404a-j, 406b-d, 408e-g, 408i-j, 410e-f, 422a, 422e-f, 422i-j, 424f, 430i-j, 452e-f may be included in the system 400 without deviating from the scope of embodiments described herein. While multiple instances of some components 404a-j, 406b-d, 408e-g, 408i-j, 410e-f, 422a, 422e-f, 422i-j, 430i-j, 452e-f are depicted and while single instances of other components 402, 424f are depicted, for example, any component 402, 404a-j, 406b-d, 408e-g, 408i-j, 410e-f, 422a, 422e-f, 422i-j, 424f, 430i-j, 452e-f depicted in the system 400 may comprise a single device, a combination of devices and/or components 402, 404a-j, 406b-d, 408e-g, 408i-j, 410e-f, 422a, 422e-f, 422i-j, 424f, 430i-j, 452e-f, and/or a plurality of devices, as is or becomes desirable and/or practicable. Similarly, in some embodiments, one or more of the various components 402, 404a-j, 406b-d, 408e-g, 408i-j, 410e-f, 422a, 422e-f, 422i-j, 424f, 430i-j, 452e-f may not be needed and/or desired in the system 400.
In some embodiments, the user device 402 may be utilized to access one or more of the PP environment 404e, the live environment 404f, and/or the backend environment 404h via the Internet 404a. In some embodiments, the user device 402 may be utilized to access the backend environment 404h and/or the PP hydra service 430i via the PP backend layer 404i. A PP backend switch device 422i and/or a PP backend firewall device 408i may, for example, gate and/or control access to the backend environment 404h and/or the PP hydra service 430i, via the PP backend layer 404i. In some embodiments, the user device 402 may be utilized to access the backend environment 404h and/or the live hydra service 430j via the live backend layer 404j. A live backend switch device 422j and/or a live backend firewall device 408j may, for example, gate and/or control access to the backend environment 404h and/or the live hydra service 430j, via the live backend layer 404j.
According to some embodiments, any communications (e.g., requests, calls, and/or messages) from the user device 402 may be passed through the DDoS protection layer 404b. The DDoS protection layer 404b may, for example, monitor and/or facilitate protection against various forms of cyber attacks including, but not limited to, DDoS attacks. In some embodiments, the DDoS protection layer 404b may comprise and/or be in communication with a plurality of DDoS router devices 406b-1, 406b-2, 406b-3, 406b-4 that may be utilized to route and/or direct incoming communications (e.g., from the user device 402) to appropriate portions of the system 400.
In some embodiments, the DDoS protection layer 404b and/or a first DDoS router device 406b-1 may route communications from the user device 402 through and/or via a first switch device 422a-1 and/or to, through, and/or via a first primary transit provider router device 406c-1. In some embodiments, the first switch device 422a-1 may comprise a device utilized for security switching such as may implement communications in accordance with the Generic Routing Encapsulation (GRE) communications tunneling protocol described in RFC 2784 “Generic Routing Encapsulation (GRE)” published by the Network Working Group (NWG) in March, 2000. The first primary transit provider router device 406c-1 may, for example, provide access to the PP environment 404e and/or the PP server cluster 410e thereof, such as via one or more PP firewall devices 408e-1, 408e-2 and/or one or more PP switch devices 422e-1, 422e-2. According to some embodiments, the PP switch devices 422e-1, 422e-2 may comprise content switching devices that process and route data (e.g., in the data link layer) based on data content. In some embodiments, the first primary transit provider router device 406c-1 may direct communications to, through, and/or via a PP LAN switch device 422e-3 that provides and/or facilitates access to the LAN 404g. The LAN 404g may, for example, provide private access to and/or between the PP environment 404e, the live environment 404f, and/or the backend environment 404h. In some embodiments, the first primary transit provider router device 406c-1 and/or the PP LAN switch device 422e-3 may direct communications to, through, and/or via a LAN firewall device 408g that provides direct access to either or both of the PP server cluster 410e and the live server cluster 410f.
According to some embodiments, the DDoS protection layer 404b and/or a second DDoS router device 406b-2 may route communications from the user device 402 through and/or via a second switch device 422a-2 and/or to, through, and/or via a first secondary transit provider router device 406d-1. In some embodiments, the second switch device 422a-2 may comprise a device utilized for security switching such as may implement communications in accordance with the GRE communications tunneling protocol described in RFC 2784 “Generic Routing Encapsulation (GRE)” published by the Network Working Group (NWG) in March, 2000. The first secondary transit provider router device 406d-1 may, for example, provide access to the live environment 404f and/or the live server cluster 410f thereof, such as via one or more live firewall devices 408f-1, 408f-2 and/or one or more live switch devices 422f-1, 422f-2. According to some embodiments, the live switch devices 422f-1, 422f-2 may comprise content switching devices that process and route data (e.g., in the data link layer) based on data content. In some embodiments, the first secondary transit provider router device 406d-1 may direct communications to, through, and/or via a live LAN switch device 422f-3 that provides and/or facilitates access to the LAN 404g. In some embodiments, the first secondary transit provider router device 406d-1 and/or the live LAN switch device 422f-3 may direct communications to, through, and/or via the LAN firewall device 408g that provides direct access to either or both of the PP server cluster 410e and the live server cluster 410f.
In some embodiments, the DDoS protection layer 404b and/or one or more of a third DDoS router device 406b-3 and/or a fourth DDoS router device 406b-4 may route communications from the user device 402 through and/or via one or more of the primary transit provider layer 404c and/or the secondary transit provider layer 404d. In some embodiments, a transit provider switch device 422a-3 may direct, swap, route, and/or manage communications between the primary transit provider layer 404c and the secondary transit provider layer 404d. According to some embodiments, the transit provider switch device 422a-3 may comprise a switching device that operates in accordance with an Exterior Border Gateway Protocol (EBGP)—e.g., the transit provider switch device 422a-3 may comprise one or more edge or border routers. In some embodiments, the first primary transit provider router device 406c-1, the first secondary transit provider router device 406d-1, a second primary transit provider router device 406c-2, and/or a second secondary transit provider router device 406d-2 may be utilized to route and/or direct communications between (i) the primary transit provider layer 404c and/or the secondary transit provider layer 404d and (ii) the PP environment 404e and/or the live environment 404f.
According to some embodiments, the PP server cluster 410e and/or the PP environment 404e may comprise various hardware, software, and/or firmware that permits a user (e.g., of the user device 402) to program, edit, manage, and/or otherwise interface with PP game elements and/or interfaces (e.g., for development and/or testing purposes). In some embodiments, the PDU devices 452e-1, 452e-2 may generally provide power distribution, supply, management, backup, and/or conditioning services (e.g., to the PP server cluster 410e) as is or becomes desired. According to some embodiments, additional switch devices 422e-4, 422e-5 may be utilized to distribute, balance, manage and/or control communications to, from, and/or within the PP server cluster 410e.
In some embodiments, the live server cluster 410f and/or the live environment 404f may comprise various hardware, software, and/or firmware that permits a user (e.g., of the user device 402) to program, edit, manage, and/or otherwise interface with live game elements and/or interfaces (e.g., for troubleshooting, corrective, and/or live environment management purposes). In some embodiments, the PDU devices 452f-1, 452f-2 may generally provide power distribution, supply, management, backup, and/or conditioning services (e.g., to the live server cluster 410f) as is or becomes desired. According to some embodiments, additional switch devices 422f-4, 422f-5 may be utilized to distribute, balance, manage and/or control communications to, from, and/or within the live server cluster 410f. In some embodiments, the TC device 424f may be utilized to manage communications from a variety of data sources such as by providing communication capability between various communications channels (not separately depicted in
Turning to
According to some embodiments, any or all of the components 502, 504a-l, 506, 508a-b, 510a-j, 522a-d, 524, 540, 552 of the system 500 may be similar in configuration and/or functionality to any similarly named and/or numbered components described herein. Fewer or more components 502, 504a-g, 506, 508a-b, 510a-j, 522a-d, 524, 540, 552 (and/or portions thereof) and/or various configurations of the components 502, 504a-l, 506, 508a-b, 510a-j, 522a-d, 524, 540, 552 may be included in the system 500 without deviating from the scope of embodiments described herein. While multiple instances of some components 504a-l, 508a-b, 510a-j, 522a-d are depicted and while single instances of other components 502, 506, 524, 540, 552 are depicted, for example, any component 502, 504a-l, 506, 508a-b, 510a-j, 522a-d, 524, 540, 552 depicted in the system 500 may comprise a single device, a combination of devices and/or components 502, 504a-l, 506, 508a-b, 510a-j, 522a-d, 524, 540, 552, and/or a plurality of devices, as is or becomes desirable and/or practicable. Similarly, in some embodiments, one or more of the various components 502, 504a-l, 506, 508a-b, 510a-j, 522a-d, 524, 540, 552 may not be needed and/or desired in the system 500.
In some embodiments, the user device 502 may be utilized to access and/or interface with one or more of the servers 510a-j via the Internet 504a. In some embodiments, the Internet 502a may be linked to the ISP 504b via multiple (e.g., redundant) connectivity paths 504b-1, 504b-2 (e.g., for load balancing, security, and/or failure recovery). According to some embodiments, the ISP 504b may be in communication with (and/or comprise) the external router cluster 506. The external router cluster 506 may route certain requests, calls, and/or transmissions (and/or users—e.g., based on credentials and/or other information) through the EXTFW-RTR VLAN 504c and/or through the external firewall cluster 508a, for example, and/or may route certain requests, calls, and/or transmissions (and/or users—e.g., based on credentials and/or other information) through the Internet VLAN 504d and/or through the internal firewall cluster 508b.
In the case that a user (not shown) of the user device 502 comprises an online game player, consumer, and/or other member of the public, for example, the external router cluster 506 may direct communications through the EXTFW-RTR VLAN 504c and/or through the external firewall cluster 508a. In the case that the user of the user device 502 comprises a programmer, tester, employee, and/or other agent of an entity that operates the system 500, for example, the external router cluster 506 may direct communications through the Internet VLAN 504d and/or through the internal firewall cluster 508b. In some embodiments, access via either or both of the external firewall cluster 508a and/or the internal firewall cluster 508b may permit the user device 502 to communicate via the INT-EXT VLAN 504e. The INT-EXT VLAN 504e may, for example, provide access to the content switches 522a which may, in some embodiments, serve content from any or all of the servers 510a-j to the user device 502, as is or becomes appropriate or desired. In some embodiments, the content switches 522a may communicate with the first spare server pool 510b via the web LAN 504f.
According to some embodiments, private and/or other specialized access to the system 500 via the internal firewall cluster 508b may permit the user device 502 to communicate via one or more of the database VLAN 504g, the application VLAN 504h, and/or the admin VLAN 504i. The database VLAN 504g may be utilized, for example, to access and/or communicate with the database servers 510d. In some embodiments, the application VLAN 504h may be utilized to access and/or communicate with any or all of the hydra servers 510e, the game controllers 510f, and/or the ruby servers 510g.
The admin VLAN 504i may allow, promote, conduct, facilitate, and/or manage a wide variety of communications within the system 500. The admin VLAN 504i may, for example, communicatively connect and/or couple any or all of the firewalls 508a-b, the servers 510a-j, the switches 522a-d, the TC device 524, the SAN storage 540, and/or the PDU devices 552. The user device 502 may be utilized, in conjunction with the admin servers 510h and/or via the admin VLAN 504i for example, to define, edit, adjust, manage, and/or otherwise access settings (and/or data) of the firewalls 508a-b, any or all of the switches 522a-d, the TC device 524, and/or the PDU devices 552. In some embodiments, the user device 502 (and/or the admin servers 510h) may be utilized to manage and/or access content, rules, settings, and/or performance characteristics or preferences for any or all of the servers 510a-j.
In some embodiments, the server cluster 510a may comprise one or more servers and/or other electronic controller devices (e.g., blade servers) configured to provide online gaming data (e.g., interfaces and/or results) to the user device 502. According to some embodiments, the first spare server pool 510b and/or the second spare server pool 510c may comprise one or more server and/or other electronic controller devices configured to supplement and/or replace the server cluster 510a as needed and/or desired (e.g., to manage load and/or error recovery situations). In some embodiments, the database servers 510c may provide and/or manage access to stored data such as data stored in and/or by the SAN storage device 540. In some embodiments, the hydra servers 510e and/or the game controllers 510f may provide online game information such as interfaces, results, graphics, sounds, and/or other media to the user device 502 (e.g., via the application VLAN 504h). In some embodiments, the ruby servers 510g may comprise one or more processing devices configured to provide access to one or more programming languages (e.g., “Ruby”) and/or Application Programming Interface (API) mechanisms via which the servers 510a-j and/or other portions of the system 500 may be configured to operate (e.g., in accordance with specially and/or pre-programmed instructions written in the programming language and/or developed by the API provided by the ruby servers 510g). According to some embodiments, the admin servers 510h, the monitoring servers 510i, and/or the logging servers 510j may be utilized and/or configured to provide administrative, parameter and/or metric monitoring and/or reporting, and/or data logging and/or audit services, respectively.
Referring now to
In some embodiments, the game play 602 of the primary game 610 may be facilitated, caused, and/or effectuated by one or more of the systems 100, 200, 300, 400, 500 of
According to some embodiments, the game play 602 of the primary game 612 may result in the loss streak 612. The loss streak 612 and/or the progression thereof and/or thereto may, for example, be indicated to a player by a meter and/or other interface indicator and/or output (not shown in
In some embodiments, the loss streak 612 may cause and/or trigger a first bonus game 620a. The first bonus game 620a may comprise any type and/or configuration of secondary game that is or becomes known or practicable. During the game play 602 of the first bonus game 620a the primary game 610 may continue, may become paused, suspended, or even be terminated. As depicted in
According to some embodiments, return of game play 602 to the primary game 610 and/or termination or suspension of the first bonus game 620a may cause, in accordance with any modifier earned as a result of the first modifier win 622a, a first modified primary game 630a. In some embodiments, the modifier may be automatically applied to the primary game 610 to alter one or more settings and/or attributes thereof, thereby defining and/or creating the first modified primary game 630a. In some embodiments, the modifier may be applied upon a request being received from the player and/or upon an occurrence of a triggering event (such as may occur in the primary game 610).
In some embodiments, continued game play 602 of the primary game 610 and/or of the first modified primary game 630a may result in the win streak 614. The win streak 614 and/or the progression thereof and/or thereto may be output to the player such as via a meter, altered game graphics, etc. In some embodiments, the win streak 614 may cause, trigger, and/or otherwise be associated with initiation of a second bonus game 620b. In some embodiments, the second bonus game 620b may comprise a continuation of the first bonus game 620a. In some embodiments, the second bonus game 620b may comprise a different game than the first bonus game 620a. The second bonus game 620b may, for example, be different than the first bonus game 620a due to the first bonus game 620a being triggered by and/or associated with the loss streak 612, while the second bonus game 620b is triggered by and/or associated with the win streak 614.
According to some embodiments, game play 602 of the second bonus game 620b may result in a second modifier win 622b. The second modifier win 622b may then, for example, be applied to the game play 602 of the primary game 610 and/or of the first modified primary game 630a to define, create, and/or initiate a second modified primary game 630b. In some embodiments, such as depicted in
In some embodiments, a modifier may comprise a multiplayer tournament feature that modifies the players' experience as a group or as individuals based upon certain triggering events during a tournament and/or game play 602. Modifiers earned and/or acquired in one or more of the bonus games 620a-b and operable to cause an alteration of the game play 602 of the primary game 610 may comprise, but are not limited to, modifiers that:
In some embodiments, a player having obtained and/or earned a modifier (such as a tournament modifier) may choose how and/or when to apply such a modifier. In the case that the modifier allows the player to demote, advance/promote, and/or otherwise alter a standing of one or more players on the leader board, for example, the player may choose one or more players who's standing(s) are to be so altered.
Turning to
The modifier 710 may be applied (e.g., automatically upon acquisition or upon a triggering event or manually due to a player request of application), for example, to a primary game to modify a first leader board 702a. In some embodiments, such as depicted in
According to some embodiments, the alteration of the first leader board 702a and/or the effect thereon by the modifier 710 may cause the second leader board 702b to be determined by one or more rules that are different than one or more rules utilized to derive and/or govern the first leader board 702a. The modifier 710 may, in effect, allow a player to alter the rules via which leader boards 702a-b are determined and/or defined (such as for a primary game and/or based on the modifier 710 being acquired in a secondary and/or bonus game associated with the primary game).
Referring now to
The process and/or flow diagrams described herein do not necessarily imply a fixed order to any depicted actions, steps, and/or procedures, and embodiments may generally be performed in any order that is practicable unless otherwise and specifically noted. Any of the processes and/or methods described herein may be performed and/or facilitated by hardware, software (including microcode), firmware, or any combination thereof. For example, a storage medium (e.g., a hard disk, Universal Serial Bus (USB) mass storage device, and/or Digital Video Disk (DVD)) may store thereon instructions that when executed by a machine (such as a computerized processing device) result in performance according to any one or more of the embodiments described herein.
In some embodiments, the method 800 may comprise determining a plurality of players of an online tournament, at 802. While an online tournament is described for exemplary purposes, other types of tournaments may, in some embodiments, be utilized. According to some embodiments, the players may be determined based on player identifiers associated with players signed-up for, logged-in to, currently playing in, and/or otherwise associated with the tournament (or other multiplayer game play). Players logged-in to a particular game session, instance, and/or room, for example, may be identified.
According to some embodiments, the method 800 may comprise determining a leader board of the plurality of players, the leader board being determined by a first rule, at 804. In typical games and/or tournaments, for example, a leader board of players currently playing in the game/tournament is often based on player scores/credit balances/winnings. The higher the score, the higher the player ranks on the leader board for the game, session, tournament, etc. (e.g., the first rule may be that the players on the leader board are ranked based on current score, in descending order). In some embodiments, a player's position on the leader board (and/or score) may allow or unlock enhanced abilities and/or otherwise alter the game play for the player. According to some embodiments, an indication of the leader board (e.g., standings and/or ranks) and/or an indication of the first rule may be output to one or more of the players.
In some embodiments, the method 800 may comprise determining that a first player has obtained a tournament modifier, at 806. The first player may, for example, earn, win, and/or purchase (e.g., “freemium”) a modifier—such as via the bonus game 620a-b modifier wins 622a-b of
According to some embodiments, the method 800 may comprise determining an updated leader board utilizing a second rule based on the tournament modifier, at 808. In the case that the modifier is configured to cause an alteration in the manner in which leader boards are determined, for example, the leader board of one or more games (e.g., the game/tournament for which the plurality of players is determined at 802) may be altered, reconfigured, and/or otherwise modified based on an application of the modifier. In some embodiments, the application of the modifier may be automatic (e.g., upon the first player acquiring the modifier and/or at some other pre-determined time and/or manner—such as based on one or more game-play triggering conditions) or manual (e.g., upon receipt of an indication or command from the first player that the first player desires the modifier to be applied). According to some embodiments, the first player may provide (and/or the game system may receive) an indication defining when and/or how the modifier is to be applied. The first player may, for example, request that the modifier be applied at the current time, define and/or select a game-play and/or time-based triggering condition that governs when the modifier is to be applied, and/or define and/or select how the modifier is to be applied.
In the case that the modifier allow the first player to freeze or demote another player on the leader board, for example (e.g., irrespective of the first rule for determining the leader board), the first player may select and/or define (and/or the system may receive an indication of such a selection and/or definition) which of the plurality of players to apply the modifier to. In some embodiments, the first player may choose to apply the modifier to the first player. In the case that the modifier freezes a leader board position and the first player is currently ranked first, for example, the first player may freeze the first player's top-ranked position (e.g., for some period of time and/or until one or more game-play triggers occur—in accordance with the specific details and functionality of the particular modifier applied). Another example (for illustrative purposes only—not limiting) is the case where the modifier allows the first player to select which game variable/parameter governs leader board rankings. While the first rule may define the leader board based on player scores/credit balance/winnings, for example, the second rule (defined by the modifier) may instead rank players based on the number of lives remaining, number of particular objects acquired in the game (primary and/or secondary), speed of play, etc.
Referring now to
In some embodiments, the method 900 may comprise determining a play streak of a player in a primary game, at 902. It may be determined, for example, that the player has won or lost a certain number of spins, hands, sessions, and/or games in a row and/or during a particular time period, won or lost a certain amount of score, credit, wager in a row and/or during a particular time period, and/or achieved or failed to achieve one or more other game objectives in a number of consecutive plays and/or during a particular time period. In some embodiments, the play streak may be relative to another player or players (e.g., a group or team of players). In the case that the player outperforms or underperforms a team-mate and/or opponent in excess of a certain threshold number or amount, for example, the play streak may be determined (and/or defined). In some embodiments, the play streak may be based on a threshold level of achievement being met. In such a case and in accordance with some embodiments, the play streak may be determined once the player achieves the threshold (e.g., whether or not the achievement spans consecutive spins/hands/sessions).
According to some embodiments, the method 900 may comprise providing a bonus game to the player, at 904. The bonus game may be provided, for example, in response to the determining of the play streak at 902. In some embodiments, the bonus game may comprise and/or define a secondary game. In some embodiments, the particular bonus game may be selected from a plurality of available bonus games based on the details and/or type of the play streak. A first bonus game may be provided in the case that the play streak comprises a win streak, for example, while a second bonus game may be provided in the case that the play streak comprises a losing streak. According to some embodiments, the bonus game may be provided via the same system and/or device as the primary game. In some embodiments, the bonus game may be provided via a different system, website, and/or device (e.g., the player may be switched from a PC device to a mobile device, or vice versa). According to some embodiments, the primary game may be paused, may continue simultaneously with the bonus game, and/or may be terminated by initiation of the bonus game.
In some embodiments, the method 900 may comprise determining a tournament modifier obtained by the first player in the bonus game, at 906. The tournament modifier may, for example, be achieved and/or obtained by the first player by collection of one or more symbols or types of symbols (e.g., in a slot-style game), by obtaining certain combinations of cards (e.g., in a poker and/or other card-style game), by achieving certain patterns and/or coverage of play tiles (e.g., in a bingo-style game), and/or by achieving one or more score, wager, win, loss, game speed, and/or other game attribute and/or parameter thresholds. While the achievement of the modifier in the bonus game is utilized as an example of how the achievement may occur, in some embodiments the achievement of certain types of modifiers may be conducted in the primary game. In some embodiments, the achievement of the modifier may be dictated by player in-game achievements or randomly. In some embodiments, the type, value, and/or functionality of the modifier may also be determined. In some embodiments, a combination of elements/attributes/achievements from the primary and bonus game may define the modifier and/or the functionality thereof.
According to some embodiments, the method 900 may comprise applying the tournament modifier to the primary game, at 908. The modifier determined at 906 may, for example, be utilized to alter game play of the primary game (e.g., a primary game session, instance, tournament, etc.) such as by modifying how a leader board of the primary game is determined, altering a speed of the primary game, altering a payout, odds, or pay table of the primary game, reversing a direction of game play in the primary game, activating a special bonus round and/or game, etc. In some embodiments, the application of the modifier may be automatic either upon determination or upon an occurrence of a triggering event. A triggering event for modifier application may be pre-determined by the system and/or defined or selected by the first player (or another player—such as by applying a modifier that allows a second player to determine how and/or when the first player may apply their modifier(s)). According to some embodiments, the application may comprise causing the primary game to switch from a first software and/or application or program to a second software, application, and/or program (either made known to the first player (and/or other players) or conducted with little or no game-play disruption—e.g., secretly or otherwise on the backend). In some embodiments, the application of the modifier may alter or set a value in the primary game (effectively altering the game without switching or changing software, applications, and/or programs).
Turning to
According to some embodiments, the processing device 1012 may be or include any type, quantity, and/or configuration of electronic and/or computerized processor that is or becomes known. The processing device 1012 may comprise, for example, an Intel® IXP 2800 network processor or an Intel® XEON™ Processor coupled with an Intel® E7501 chipset. In some embodiments, the processing device 1012 may comprise multiple inter-connected processors, microprocessors, and/or micro-engines. According to some embodiments, the processing device 1012 (and/or the apparatus 1000 and/or portions thereof) may be supplied power via a power supply (not shown) such as a battery, an Alternating Current (AC) source, a Direct Current (DC) source, an AC/DC adapter, solar cells, and/or an inertial generator. In the case that the apparatus 1000 comprises a server such as a blade server, necessary power may be supplied via a standard AC outlet, power strip, surge protector, a PDU, and/or Uninterruptible Power Supply (UPS) device.
In some embodiments, the input device 1014 and/or the output device 1016 are communicatively coupled to the processing device 1012 (e.g., via wired and/or wireless connections and/or pathways) and they may generally comprise any types or configurations of input and output components and/or devices that are or become known, respectively. The input device 1014 may comprise, for example, a keyboard that allows an operator of the apparatus 1000 to interface with the apparatus 1000 (e.g., by a player, such as to participate in an online game session as described herein). In some embodiments, the input device 1014 may comprise a sensor configured to provide information such as player relationships to the apparatus 1000 and/or the processing device 1012. The output device 1016 may, according to some embodiments, comprise a display screen and/or other practicable output component and/or device. The output device 1016 may, for example, provide a game interface (not explicitly shown in
In some embodiments, the communication device 1018 may comprise any type or configuration of communication device that is or becomes known or practicable. The communication device 1018 may, for example, comprise a network interface card (NIC), a telephonic device, a cellular network device, a router, a hub, a modem, and/or a communications port or cable. In some embodiments, the communication device 1018 may be coupled to provide data to a player device (not shown in
The memory device 1040 may comprise any appropriate information storage device that is or becomes known or available, including, but not limited to, units and/or combinations of magnetic storage devices (e.g., a hard disk drive), optical storage devices, and/or semiconductor memory devices such as RAM devices, Read Only Memory (ROM) devices, Single Data Rate Random Access Memory (SDR-RAM), Double Data Rate Random Access Memory (DDR-RAM), and/or Programmable Read Only Memory (PROM). The memory device 1040 may, according to some embodiments, store one or more of game instructions 1042-1 and/or interface instructions 1042-2. In some embodiments, the game instructions 1042-1 and/or the interface instructions 1042-2 may be utilized by the processing device 1012 to provide output information via the output device 1016 and/or the communication device 1018.
According to some embodiments, the game instructions 1042-1 may be operable to cause the processing device 1012 to process player data 1044-1, game data 1044-2, tournament data 1044-3, and/or prize data 1044-4. Player data 1044-1, game data 1044-2, tournament data 1044-3, and/or prize data 1044-4 received via the input device 1014 and/or the communication device 1018 may, for example, be analyzed, sorted, filtered, decoded, decompressed, ranked, scored, plotted, and/or otherwise processed by the processing device 1012 in accordance with the game instructions 1042-1. In some embodiments, player data 1044-1, game data 1044-2, tournament data 1044-3, and/or prize data 1044-4 may be fed by the processing device 1012 through one or more mathematical and/or statistical formulas and/or models in accordance with the game instructions 1042-1 to provide online game sessions, provide tournament and/or primary game modifiers in bonus and/or secondary games, and/or to allow players (e.g., having acquired certain modifiers) to alter how leader boards are determined, defined, and/or depicted, in accordance with embodiments described herein.
In some embodiments, the interface instructions 1042-2 may be operable to cause the processing device 1012 to process player data 1044-1, game data 1044-2, tournament data 1044-3, and/or prize data 1044-4. Player data 1044-1, game data 1044-2, tournament data 1044-3, and/or prize data 1044-4 received via the input device 1014 and/or the communication device 1018 may, for example, be analyzed, sorted, filtered, decoded, decompressed, ranked, scored, plotted, and/or otherwise processed by the processing device 1012 in accordance with the interface instructions 1042-2. In some embodiments, player data 1044-1, game data 1044-2, tournament data 1044-3, and/or prize data 1044-4 may be fed by the processing device 1012 through one or more mathematical and/or statistical formulas and/or models in accordance with the interface instructions 1042-2 to provide one or more game interfaces such as to provide tournament modifiers, in accordance with embodiments described herein.
Any or all of the exemplary instructions and data types described herein and other practicable types of data may be stored in any number, type, and/or configuration of memory devices that is or becomes known. The memory device 1040 may, for example, comprise one or more data tables or files, databases, table spaces, registers, and/or other storage structures. In some embodiments, multiple databases and/or storage structures (and/or multiple memory devices 1040) may be utilized to store information associated with the apparatus 1000. According to some embodiments, the memory device 1040 may be incorporated into and/or otherwise coupled to the apparatus 1000 (e.g., as shown) or may simply be accessible to the apparatus 1000 (e.g., externally located and/or situated).
In some embodiments, the apparatus 1000 may comprise a cooling device 1050. According to some embodiments, the cooling device 1050 may be coupled (physically, thermally, and/or electrically) to the processing device 1012 and/or to the memory device 1040. The cooling device 1050 may, for example, comprise a fan, heat sink, heat pipe, radiator, cold plate, and/or other cooling component or device or combinations thereof, configured to remove heat from portions or components of the apparatus 1000.
Referring now to
According to some embodiments, the first data storage device 1140a may comprise a CD, CD-ROM, DVD, Blu-Ray™ Disc, and/or other type of optically-encoded disk and/or other computer-readable storage medium that is or becomes know or practicable. In some embodiments, the second data storage device 1140b may comprise a USB keyfob, dongle, and/or other type of flash memory data storage device that is or becomes know or practicable. According to some embodiments, the third data storage device 1140c may comprise RAM of any type, quantity, and/or configuration that is or becomes practicable and/or desirable. In some embodiments, the third data storage device 1140c may comprise an off-chip cache such as a Level 2 (L2) or Level 3 (L3) cache memory device. According to some embodiments, the fourth data storage device 740d may comprise an on-chip memory device such as a Level 1 (L1) cache memory device.
The data storage devices 1140a-d may generally store program instructions, code, and/or modules that, when executed by an electronic and/or computerized processing device cause a particular machine to function in accordance with embodiments described herein. In some embodiments, the data storage devices 1140a-d depicted in
The terms “computer-readable medium” and “computer-readable memory” refer to any medium that participates in providing data (e.g., instructions) that may be read by a computer and/or a processor. Such a medium may take many forms, including but not limited to non-volatile media, volatile media, and other specific types of transmission media. Non-volatile media include, for example, optical or magnetic disks and other persistent memory. Volatile media include DRAM, which typically constitutes the main memory. Other types of transmission media include coaxial cables, copper wire, and fiber optics, including the wires that comprise a system bus coupled to the processor.
Common forms of computer-readable media include, for example, a floppy disk, a flexible disk, hard disk, magnetic tape, any other magnetic medium, a CD-ROM, Digital Video Disc (DVD), any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, a RAM, a PROM, an EPROM, a FLASH-EEPROM, a USB memory stick, a dongle, any other memory chip or cartridge, a carrier wave, or any other medium from which a computer can read. The terms “computer-readable medium” and/or “tangible media” specifically exclude signals, waves, and wave forms or other intangible or transitory media that may nevertheless be readable by a computer.
Various forms of computer-readable media may be involved in carrying sequences of instructions to a processor. For example, sequences of instruction (i) may be delivered from RAM to a processor, (ii) may be carried over a wireless transmission medium, and/or (iii) may be formatted according to numerous formats, standards or protocols. For a more exhaustive list of protocols, the term “network” is defined above and includes many exemplary protocols that are also applicable here.
In some embodiments, one or more specialized machines such as a computerized processing device, a server, a remote terminal, and/or a customer device may implement the various practices described herein. A computer system of an gaming entity may, for example, comprise various specialized computers that interact to provide for online games as described herein
The present disclosure provides, to one of ordinary skill in the art, an enabling description of several embodiments and/or inventions. Some of these embodiments and/or inventions may not be claimed in the present application, but may nevertheless be claimed in one or more continuing applications that claim the benefit of priority of the present application. Applicants intend to file additional applications to pursue patents for subject matter that has been disclosed and enabled but not claimed in the present application.
Number | Date | Country | |
---|---|---|---|
61658147 | Jun 2012 | US | |
61780963 | Mar 2013 | US |