Online Market Game System

An online market game system is disclosed. According to an aspect of the invention, there is provided a market based game of skill run on a server machine and played online by a plurality of players, wherein each player buys points, the players compete to buy the most points, each player is provided with deficient points information, and the deficient points information is a delayed and smoothed response of the combined total number of points bought by all the players.

Skip to: Description  ·  Claims  · Patent History  ·  Patent History
Description
TECHNICAL FIELD

The invention relates to an online multiplayer game and a method of processing data. More specifically, the invention relates to a market based game of skill run on a server machine and played online by a plurality of players, and a method of processing and multicasting information deficient data.

BACKGROUND

An online game is played by players over a computer network. The computer network may be an intranet, an internet, a private or public network, and is typically the Internet. Computer networks can support from a single online player up to hundreds of thousands of online players.

Online multiplayer games may be funded by a number of methods—sponsorship arrangements, advertising to players, subscriptions from players, profit sharing with players, etc. Different types of online games may be defined by the involvement with money which the player of the game takes. The definitions include, amongst others, games of chance, traditional market activities, games of skill and social media games.

Games of chance include traditional casino games, such as roulette and poker, and betting on human or animal sports. In these games of chance, the outcome of the game is strongly influenced by at least one random event—a horse, a dog, or a boxer in sports bets are but a few examples.

Traditional market activities (and their variations) include the online trading of capital stock on a stock/equity market, commodities on a commodity market, or currency on a foreign exchange market. Each transaction on any such market has at least two parties and there is competition between the at least two parties and possibly a number of third parties also bidding for the transaction. Traditional market activities also include traditional online auctions of which there are numerous well known and long established online auction houses. Bidding fee auctions, also known as penny auctions, are also often performed online and earn an auctioneer money as any bidder pays a non-refundable fee to purchase a bid.

Games of skill, such as backgammon and chess, may be played online and also for money. Websites exist to provide a service to match players and also hold any wager placed by the players.

Social media games often have a different funding mechanism to the above-mentioned games. A player of a game that allows interaction with other players is able to purchase additional functionality, such as a new level, or an advantage in the game, such as a skill or a weapon, using real money.

SUMMARY

According to a first aspect of the invention, there is provided a market based game of skill run on a server machine and played online by a plurality of players, wherein each player buys points, the players compete to buy the most points, each player is provided with deficient points information, and the deficient points information is a delayed and smoothed response of the combined total number of points bought by all the players.

Each player, having the deficient points information cannot realise the current behaviour of the other player(s). Competing to have the most points is a skillful pursuit if the number of points held by the players is not up to date information. Any large purchase of points by one or more players is disguised by the smoothing of the total points response, thus requiring more skill to successfully play the game by the players. The players may play over the Internet allowing them to play against geographically dispersed opponents, but with no player having a related advantage or disadvantage.

In an example, a player is unable to calculate a value for the combined total number of points bought by all the players by analysing a set of previous deficient points information.

A player has to make skillful assumptions to predict the behaviour of his fellow players as the bought points information is sufficiently deficient such that the player cannot identify the points information and thereby calculate the total number of points. Without a definite total number of points, a player can only estimate the points score of the other players using the deficient points information and behavioural characteristics of the other players.

In an embodiment, the game comprises a first round and a second round and the deficient points information is the combined total number of points bought by all the players in a single round. The division of the game into distinct rounds allows further complexity in the game to be provided. The cost of a point may be greater in the first round than the second round. This encourages different spending behaviours for buying points in different rounds. The behaviour can be manipulated to shape the players spending on points and also increase the enjoyment of the game to a player. The cost of a point in a single round may be above a predetermined lower limit and below a predetermined upper limit. This feature allows the points buying behaviour to be further controlled and the game becomes more tactical both inter and intra rounds. The cost of a point may increase as the number of points bought during the whole game, in a single round, or in a single purchase increases. These features discourage a player buying a large number of points at any time in the game. The features are not mutually exclusive.

In an embodiment, the game is won by a first player having most points at an end of the game and the number of points of the first player is within a predetermined number of points above the number of points of a second player with a next highest score. This feature discourages a player from outbidding his opponents by a large margin to win the game. When juxtaposed with the deficient information feature where the highest score of the players is not known, the combined features require special skill and understanding to play the game.

The individual point score of all the players, except the leading point scorer, may be displayed at the end of a round. This provides some context for each of the players encouraging them to play more as they have more information to base their decisions on. In an example, the point score up to or above the leading scorer is shown to a player if, in a following round, they increase their individual point score above that of the leading point score at the end of the previous round. This removes the extra advantage provided to the leader over the player at the end of the previous round.

In an example, a winning player receives a monetary prize and the size of the monetary prize increases as the combined total number of points bought by all the players increases and each player is provided with deficient information of the size of the monetary prize. The players are encouraged to play and are also made aware of a quantitative size of the available prize, however, the players cannot use the prize size to deduce information about the total number of points bought, which isn't already provided by the deficient points information.

The game may also allow a player to sell a point to another player. This internal game market provides a further way to gain or use points. Selling points is a way to recoup points expenditure if a player is not likely to win, or for a player leading by a too large margin to reduce their lead.

There may be two types of points available in the game. The aforementioned points are a first type of point. A player may earn a second type of point by playing the game. The second type of point may be converted into the first type of point by a player during the game. The second type of points encourage repeat games to be played as a player's advantage over other players will increase because the player may utilise these second type of points unavailable to the other players, or not available in a same quantity. In an example, the number of points converted is dependent upon the deficient points information. The player does not dictate the number of the second type of points that are converted into the first type of points as this is dependent upon the deficient points information displayed to the player. In another example, the player may convert a number of the second type of point into the first type of point and the number of points converted provides the player with a point score to match the second highest individual point score being displayed (the score of the player at the end of the previous round who was in second place at the end of the previous round). This provides the player with the converted points with a known position at a previous point in the game. The other players may, however, have increased or decreased their individual points score since the previous point in the game. The player is therefore rewarded for his investment in previous games.

According to a second aspect of the invention, there is provided a market based game of skill run on a server machine and played using a plurality of client machines, wherein a client machine instructs the server machine that a player of the game is increasing their point score; the server machine updates an internal points register from a first value to a second value using the client machine instruction; the server machine calculates an external points register value between the first value and the second value; and the server machine transmits the external points register value to the client machine; whereby the external points register value is a delayed and smoothed response of internal points register.

According to a third aspect of the invention, there is provided a method of processing and multicasting information deficient data. The method comprises a server receiving real time data from a first client and a second client, the server processing the received data set to provide a transmit data set, and the transmit data set is multicast by the server to the first client and the second client. In the method, the transmit data set varies to converge with the received data set within a preset length of time, and the first and second clients are unable to calculate a current value for the received data set or predict a future value for the received data set using the transmit data set.

The method provides the client systems with partial information relating to the received data set. The server calculation is performed prior to sending of information to any client system, therefore, any interception of the transmit data set will not allow a third party to gain information relating to the received data set, thus acquiring an advantage over a client of the server. The player has the information that the transmit data set is attempting to converge with the received data set and also the transmit data set information. Together a client can infer information about the received data set, but because of the unknown variable of the length of time in which the data sets will converge, the transmit data set cannot be used to predict the received data set.

In an embodiment, the server processing step comprises identifying the difference between a current received data set value and a current transmit data set value, calculating a rate of increase to apply to the current transmit data set value for the value to reach the current received data set value within a predetermined range of time, and calculating a step value to increase each subsequent transmit data set value by. The stepping method allows an efficient algorithm for controlling the current transmit data set value and thereby form the transmit data set. The rate of increase may be above a predetermined minimum rate. This further reduces the amount of information provided by the transmit data set and also enables an easier implementation of method.

The minimum rate of increase may be varied after a first predetermined time period. The altering of this variable further restricts the ability of a client or party to calculate a present or future received data set value using the transmit data set. Also, the characteristics of the transmit data set response to a received data set input will change with a different minimum rate of increase. The rate of increase may be one of a predetermined number of discrete rates of increase. Discrete rates of increase will further hide or disguise the received data value. The predetermined length of time may be varied after a second predetermined time period. This further disguises or hides the received data set. The first predetermined time period may be equal to the second predetermined time period. The altering of multiple variables at one time will disguise the effect that each variable has in shaping the transmitted data set.

The server and the first and second clients may communicate over a public network. The nature of the method is adapted for such a communications system as the interception of the transmit data set does not provide a received data set or value.

The method may further comprise a feedback system in which the transmit data multicast to the first and second clients affects the data received by the server from the first and second clients. This allows for a system where the clients independently affect the transmit data, thus one client can affect the data received by the server from the other client.

The method may be used in a game played by a first player and a second player, where the real time data relates to points used to play the game, the received data set is a received points data set, the transmit data set is a transmit points data set, the first client is operated by the first player of the game, the second client is operated by the second player of the game and the first and second clients can buy points during the game; and the method further comprising the transmit points data being displayed by the first and second clients to the respective first and second players.

This game provides a market based game run on a server machine and played online by a plurality of players using clients, wherein each player buys points, the players compete to buy the most points, each player is provided with deficient points information, and the deficient points information relating to the combined total number of points bought by all the players.

According to a fourth aspect of the invention, there is provided a system operable to run a market based game of skill on a server machine. The game is playable online by a plurality of players. The server machine is configured to enable each player to buy points, enable the players to compete to buy the most points, and provide each player with deficient points information. The deficient points information is a delayed and smoothed response of the combined total number of points bought by all the players.

According to a fifth aspect of the invention, there is provided a system operable to run a market based game of skill on a server machine. The game is playable online using a plurality of client machines. The server machine is configured to receive an instruction from a client machine to indicate that a player of the game is increasing their point score, update an internal points register from a first value to a second value using the client machine instruction, calculate an external points register value between the first value and the second value, and transmit the external points register value to the client machine. The external points register value is a delayed and smoothed response of internal points register.

According to a sixth aspect of the invention, there is provided a system operable to process and multicast information deficient data. A server is operable to receive real time data from a first client and a second client, process the received data set to provide a transmit data set, and multicast the transmit data set to the first client and the second client. The transmit data set will vary to converge with the received data set within a predetermined length of time, and the first and second clients are not able to calculate a current value for the received data set or predict a future value for the received data set using the transmit data set.

This document refers to points. It should be understood that a point is a label that refers to an entity being traded, whatever that entity may be, or may be called.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention will now be described, by way of example only, with reference to the accompanying drawings, in which:

FIG. 1 is a view of a graphical user interface (GUI) of an embodiment of the game;

FIG. 2 is a view of a GUI of another embodiment of the game;

FIG. 3 is another view of the GUI of the embodiment of FIG. 2;

FIG. 4 is a view of a GUI of a further embodiment of the game;

FIG. 5 is another view of the GUI of the embodiment of FIG. 4;

FIG. 6 is a view of a GUI of another further embodiment of the game;

FIG. 7 is another view of the GUI of the embodiment of FIG. 6;

FIG. 8 is another view of the GUI of the embodiment of FIG. 7;

FIG. 9 is another view of the GUI of the embodiment of FIG. 8;

FIG. 10 is a view of a GUI of yet another further embodiment of the game;

FIG. 11 is another view of the GUI of the embodiment of FIG. 10;

FIG. 12 is a flow diagram of a method of the game;

FIG. 13 is a flow diagram of a further method of the game;

FIG. 14 is a system diagram of a client and server arrangement of a first embodiment;

FIG. 15 is a system diagram of the server of FIG. 14; and

FIG. 16 is a system diagram of a client terminal of FIG. 14.

In the drawings, like parts are denoted by like reference numerals.

DETAILED DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a view of the graphical user interface (GUI) of a game playable by a number of players. The GUI is an example view of a player and comprises six boxes 1, 2, 3, 4, 5, 6. The player is playing against other players. Each box groups information, and/or interactive elements of different features corresponding to one or more embodiments of the invention.

The game info box 1 contains information relating to a game being played, the game control box 2 provides information outside the context of the game, the points box 3 provides a method to increase and decrease points by trading them with the gaming system (the house), the game status box 4 displays status information of the players of the game, the market box 5 provides a second method to increase and decrease points by trading them with other players, and the chat box 6 displays both private and public messages between the game, the player and the other players.

Each player of the game has different information, specific to them, being displayed on their own GUI.

A game timer 11 is shown in the game info box 1. The game timer 11 displays a timer for the game being played. Game time markers 13, in minutes and seconds, are provided above the game timer 11. The game timer 11 represents time as a scale running from left to right along the timer. The total game time is divided into several discrete periods of time, referred to as rounds, which are represented on the game timer 11. This embodiment of the invention has an initial period of time for players to join the game (Join) followed by three further rounds (Round 1, Round 2 and Round 3). The name of a round is displayed below each period of time associated with the round.

The game timer 11 displays the game time by use of a shaded section 16. The shaded section 16 expands from left of the game timer 11 to right to reflect the current game time. The right most extent of the shaded section corresponds to current game time in the same scale as the game time marker 13.

Information is displayed within each round section of the game timer 11 relating to a price or price range 15 for that round. The monetary values displayed inside each section of the game timer 11 indicate the price or price range that a “point” purchased from the house within that round will cost. For example, FIG. 1 shows an embodiment in which Round 1 is associated with a price range 15 in pounds sterling of “5 p-15 p” (five pence to fifteen pence). A point purchased from the house during Round 1 will cost from 5 pence up to 15 pence.

The price paid per point 35 increases from the lower value of the price range 15 to the upper value of the price range 15 as the number of points selected 33 increases.

A displayed current win value 17 is displayed within the game info box 1. The displayed current win value 17 reflects the amount of money a winning player of the game will receive once the game ends providing no player purchases any additional points. The value 17 reflects (but is not necessarily equal to) the total amount of money spent by all the players during the course of the game. The displayed current win value 17 is not an actual current win value (not shown in FIG. 1). Instead, the displayed current win value 17 is delayed with respect to the actual current win value. The delaying of the value 17 is intentionally performed to increase the difficulty that any player faces in calculating the number of points that the other players (their opponents) have purchased.

In the embodiment shown in FIG. 1, Round 1 begins when time equals 1 minute 30 seconds and ends when time equals 2 minutes 15 seconds. The game timer 11 shows a game end time of 3 minutes and 45 seconds as this is the end time of the final round (Round 3). The shaded section 16 of the game timer 11 is entirely in the game timer first section, which illustrates that the game is in the “Join” phase.

The game control box 2 provides information outside the context of the game being played and provides controls relating to the game being played. The game control box 2 displays the name of a current player 21, the balance 22 of the account belonging to the player, a button 23 enabling the player to exit the system between games, a game announcements display 24, and a number of other buttons to provide general help about the game, access to an account section of the player and to a home screen of the player.

The points box 3 is a first interface enabling a player to increase or decrease points. The box 3 has two tabs—“Buy Points” 30 and “Dump Points” 70—each providing a separate interface. In FIG. 1 the “Buy Points” tab is selected and a Buy Points interface is shown in the points box 3.

The Buy Points interface comprises a movable slider 32 on a points scale 31. The scale 31 represents a number of points which may be bought by the player from the house and the slider represents the number of points the player has selected to buy. The number of points selected 33 is displayed in a numerical format above the slider 32. Below the slider 32 the total amount to be paid 34 for the selected number of points is displayed. The price paid per point 35 is displayed.

In the “Join” round the Buy Points interface also displays two buttons: “Leave” 37 and “Alter stake” 36. The “Leave” button 37 enables the player to leave the game. The “Alter stake” button 36 is operable to set the stake (the amount the player initially pays to play a game) to whatever value is set by the slider 32 when the button 36 is pressed.

FIG. 1 shows an embodiment of a game in the “Join” round. In this round a player may purchase points to start the game with, change the number of points purchased to start the game with, or leave the game and receive a full refund for any points purchased.

The Buy Points interface is different in subsequent rounds to that of the Join Round. To purchase points in the Join Round a player selects a value on the points scale 31 using the slider 32 and clicks ‘Alter stake’ 36. The player's personal points total 42 will match the number of points purchased. For example, if the player selects twenty-five points with the slider and clicks ‘Alter stake’ 36, any previous transaction the player made in the Join round is cancelled (and refunded) and the player purchases twenty-five points.

The game status box 4 has three sub-groups of information: a player personal status group 40, game status group 80 and a displayed round points indicator 49.

The player personal status group 40 displays the player identity 41, a current personal points total 42, and the current total price 43 (the amount the player has paid for points).

The game status group 80 lists the players of the game and ranks them in descending points order. Each row of the list comprises the player identity 81, any actions 82 which the player has performed in the game, and information relating to the number of points 83 the player holds. The game status group 80 utilises a scroll bar (not shown) should the number of opponents be too great for their information to fit in the game status group 80.

In the embodiment of FIG. 1 three players are displayed: “Oddjob”, “Bond”, and “jmike”. A number of points 83 have been bought by the players 81, thus the displayed total round indicator 49 has begun to increase.

The displayed round points indicator 49 shows partial information relating to the total number of points all the players have purchased during the instant round of the game. At the end of each round, displayed round points indicator 49 is halted and reset to zero. The indicator 49 operates on a delay whereby each player only gains an indication of the total number of points bought during whichever round is being played, but is not given information sufficiently up to date for each player to establish the exact total of total points purchased during the round. In this embodiment, the total round points indicator 49 is represented by a two dimensional scrolling counter. In other embodiments other presentations may be possible. One important aspect, however, is that the information in the total round points indicator is deficient, in that it is not up to date.

The chat box 6 comprises a chat window 61 where messages from other players are displayed and also where system messages received from the game are displayed. The chat box 6 also includes an interactive text input box 62 in which players may enter text to send to other players and a send button 63 to send the entered message.

FIG. 2 shows an embodiment of a game in Round 2. The game timer 11 shows that the game is near the end of Round 2. If no more points are purchased from the house, the winning player will receive at least £8.07, as shown by the displayed current win value 17. Should the displayed current win value 17 be delayed at the end of the round, the winning player will receive more than the displayed value.

The game status window 80 shows what the point total of each player was at the end of the previous round with exception of the player who had the most points at the end of the previous round. The points score of the player who had most points at the end of the previous round is obscured (by a lock icon in this embodiment) and is only revealed to a player if the player's personal points total 42 matches or exceeds the score of the player at the end of the previous round who had the most points at the end of the previous round.

The game status window 80 displays an icon in the player actions 82 column to represent the number of times that each player buys points in any round.

In FIG. 2, the player identified in the GUI as ‘jmike’ has set the point purchase slider 32 to buy twenty-five points which will cost £4.54 (34). The sale will complete when the ‘Buy’ button 39 is clicked. The player already has a total of 30 points at a total cost of £2.84 (43). Three other players are identified in the game status group: Oddjob, Blofeld, and Bond. Each other player is shown to have purchased points once during the instant round (Round 2). The displayed points bought in round indicator 49 indicates that the total of these three purchases by the other players is at least 30 points. The displayed points bought in round indicator 49 does not show how many of those points were purchased by each other player, nor actual instant total number of points that have been purchased during the round.

Further embodiments (not shown) may have different rules for the buying of points from the house. As example, any of the following rules may apply: the price to buy points from the house is different for one or more players compared to one or more other players at predetermined times during a game; the average price for buying points from the house is the same on average for each player throughout a complete game; different players pay different amounts for different types of house points throughout the game and a first player buys only a first type of points from the house and a second player buys only a second type of points from the house, wherein sets of one type of points, for example “red”, cost a fraction, for example ½, of sets of another type of points, for example “green”; in games with different types of point, the price paid per point differs for different point types dependent upon the fraction of the total points in the game represented by the type of point being purchased in a transaction, how the fraction has changed as a result of a previous number of transactions, what fraction of a player's point total is represented by the type of point in the transaction, and/or how this fraction has changed during a preceding amount of time; and/or the price for purchasing points from the house is dependent upon the number of points in that transaction, the total number of points owned by all players of the game, how recently a given player last purchased points from the house, how recently any player last purchased points from the house, and/or whether a transaction of a player would be for more or fewer points than the player's previous transaction.

FIG. 3 illustrates a possible event leading from the game shown in FIG. 2. The game is in Round 3, which is the final round.

In this example a constraint is applied that it is not possible for a player to win the game, and therefore the pot, by simply buying more points than any other player can afford. To enforce this constraint a parameter called a win limit 18 is shown in the game info box. The win limit 18 is the maximum difference between the highest and second-highest players' totals at the end of the final round that will allow the player with the highest total to win. If the difference in points exceeds the win limit, the player with the highest point total at the end of the game will not receive the win value 17.

A player can discard any points which were bought during a round before the round ends. The discarded points are returned to the house for no refund. A dump points interface is accessible via the “Dump Points” tab 70 of the points box 3. A movable slider on a sliding scale is operable by the user to select the amount of points to be dumped. The number of points that are selected to be dumped are displayed above the movable slider. The total number of points which may be dumped 71 is shown by the dump points interface. Once a player selects a suitable value, he presses the “Dump!” button 71 on the dump points interface and the selected number of points are dumped.

The player GUI of jmike shown in FIG. 3 illustrates that the player known as jmike purchased seventy-five points during Round 3. The entry in the player actions column 82 shows that the player has completed two separate purchases and the displayed round points indicator 49 shows that seventy-five points were bought in the round.

Jmike's points total exceeds the previous round leader's total at the end of the previous round enabling jmike to see the exact total that the leader (Blofeld) had at the end of the previous round (Round 2) shown in the points column of the game status group 80. From the available information, the player known as jmike is able to conclude that his total number of points is greater than the win limit 18 above the second highest scoring player. Jmike will not win any of the pot if this points difference continues until the end of the game. Jmike has the option of dumping some or all of the points which he purchased during the round (Round 3), i.e. dumping between 1 and 75 points, in an attempt to bring his own points total down to a value of no more than 30 points (the win limit 18) above the second-place player's points total.

In a further embodiment, a minimum and/or maximum number of points that a player may dump in any transaction is set.

The chat window 61 of the chat box 6 displays messages sent from two players to all of the players (player public messages), and also status messages sent by the game to only the chat window 61 of the jmike player (game private messages).

FIGS. 4 and 5 illustrate that the price-per-point 35 of a transaction differs during a single round based on the number of points 33 that form the transaction. The price of each point bought from the house increases as the number of points bought from the house increases. In one embodiment, the price of points varies depending on the number of points bought in any single transaction. For example, if the price-per-point in a round is shown as 10 p-25 p, a player could buy 1 point for 10 pence, or 20 points at 25 p apiece for 5 pounds (500 pence).

Both FIG. 4 and FIG. 5 show the game timer 11 in Round 1. Also, both figures indicate that the price-per-point 35 to purchase points from the house during Round 1 will be in the range between 5 pence and 15 pence (15). FIG. 4 shows the user selecting to buy one point 33 from the house at 5.00 pence each 35 costing a total of 0.05 pounds 34 (5 pence). FIG. 5 shows the user selecting to buy fifty points 33 from the house at 14.98 pence each 35 costing a total of 7.49 pounds 34 (7 pounds and 49 pence).

A player may buy/sell points from/to other players using the market box 5. In a particular embodiment of the invention, a player may only sell points using the market in a round in which they were bought. In a different embodiment of the invention, a player may sell points regardless of the round in which the points were bought. Further details of the ability of a player to sell points to another player are described below.

FIG. 6 shows the market box 5 of a player. A field 50 in the market box 5 displays the number of points that the player has which he can sell. To sell points on the market, the player enters a number of points up to the maximum of the number of points available to be sold 50 in a “Sell” field 51. The player also enters an amount for the sale in a price field 52. The GUI will display a price-per-point-sold 53. To offer the points on the market, the player must confirm the sale by pressing a sell button 54. The player jmike has typed ‘5’ in the Sell field 51, and ‘0.40’ in the price field 52 to sell 5 points for a total of 40 p to any other player. The Sell button has not yet been clicked to commit sale. The market box 5 displays a calculated price-per-point-sold 53 to be 8 pence.

FIG. 7 shows an embodiment of the invention where a player has put points on the market by pressing the sell button 54. The offer appears in the market window 5 of the player offering the sale in an offer-from-player line 55 containing the player name, the number of points on offer, the price for the points, and a button to allow the player who made the offer (the offeror) to withdraw the offer. In the other players market window 5, there is displayed a line corresponding to the offer-from-player line 55, but instead of a button to withdraw the offer, the other players will have a button to accept the offer and buy the points.

In FIG. 7, jmike has clicked the Sell button 54 and points are offered to the other players. His offer appears in his market window 5 with a button allowing him to withdraw the offer.

FIG. 8 shows one embodiment of the invention when a player has accepted an offer to buy points from another player. The view is from the offeror. The offer-from-player line 55 of FIG. 7 is replaced by an offer-accepted line 56. The offer-accepted line 56 contains the player name, the number of points bought, the price paid for the points, and a “Sold” notification. The player actions column 82 has an icon against the buyer player name to indicate that the player has bought points and another icon against the seller player name to indicate that the player has sold points. The player actions 82 column displays icons against a player when the player buys, sells, or dumps points. The player actions 82 column also displays an icon against a player when the player uses dog points, as described below.

In FIG. 8, the player known as Bond has bought points from jmike. The market offer-accepted line 56 shows that Bond purchased the points, a buy indicator shows on Bond's row in the game status group 80, a sell indicator shows on jmike's row in the game status group 80, and jmike's point total 42 is reduced. The player jmike's has sold points on the market (only possible in game rounds, and not in the join round) and the amount of money that he received for his sales is shown in the player personal status group 40.

FIG. 9 shows a finished game. The game is shown to be finished by the game timer 11, the game announcement display 24, and the chat window 61. In the game status group 80, each player is listed against their final point total, the amount of money made from point sales and the amount that they won.

The game info box displays a “Rolldown” feature. Specifically, the rolldown feature comprises an integer displayed to a player. The rolldown is a consolation prize to the highest non-winning score(s) of (a) player(s). A rolldown pot is provided as a fraction of the total amount of money spent by all the players during the course of the game. The fraction of the pot that will be awarded and the number of runners-up who will share in the pot is determined by the game parameters. The players share in the rolldown pot as a fraction of their individual points totals. For example, if there are ten players in a game, the winner will get 60% of the total prize, while 30% will go into the rolldown to the next two players. If the top-scoring three players were player A with 101 points, player B with 100 points, and player C with 50 points, player A would get 60% of the pot for being the winner, player B would get 20% (⅔ of the rolldown) for being in second place with 100 points, and player C would get 10% (⅓ of the rolldown) for being in third place with 50 points.

FIGS. 10 and 11 illustrate the use of dog points. The points box 3 contains a variable called Dog Points 310. Dog points are awarded to each player after each game as a percentage of the total number of points the player purchased from the house during the game.

The percentage is usually between 1 and 10%.

Dog points belonging to a player may be used to increase the total number of points of the player when a players total is less than the current highest player total displayed to all on the leaderboard. In some circumstances, the leader's total is visible to all (e.g. when two players are jointly in the lead, or when the original leader dumps or sells points to reduce his total to below that of the second-place player). The game will add the player's dog points onto his current score up to the point at which the player's points are increased to match the current highest player total displayed to all players on the leaderboard. In some cases, this can put the player in joint first position. The player's Dog Points total 310 is decremented by the number of points which were added to their previous current game score. If the player does not have enough dog points to match the current highest player total displayed to all players on the leaderboard, the player's total game score is incremented by his Dog Points total 310 and the Dog Points total is set to zero.

Dog points may be used by a player only once per game. Dog points are used when the player presses a “Stake it!” button 311. This button 311 is only available to be pressed when the player is in a position to use it.

FIG. 10 shows that jmike currently owns 56 dog points, which have been earned during previous games, and the fact that the “Stake it!” button 311 is active shows that jmike is allowed to stake his dog points at this point in the game. FIG. 11 shows jmike after clicking the “Stake it!” button. 22 points are added to his current point total to put him into a tie for second place. Also, a dog icon appears to show the other players that he has done so, and his new points total is displayed to all players. 22 points are subtracted from his dog points 310, and the “Stake it!” button 311 is deactivated for the rest of the game.

In another embodiment of the invention (not illustrated) one or more players can stake one or more of their dog points as often as they wish within a game so long as they have a suitable position in the game at a suitable point in the game, as described above. If, after a player has staked one or more dog points, a player again is in a suitable position within a game to stake dog points, the “Stake it!” button 311 is re-enabled and the player can stake more dog points.

Other embodiments of the invention provide different numbers and timing of rounds, prices paid per point in each round, however, the values shown in FIG. 1 have proven particularly popular.

A maximum and minimum number of players may vary for embodiments different games. The maximum and minimum number of points that may be bought from the house in a single transaction, and the price per point (in an example, but not necessarily, a non-decreasing function of the number of points in the transaction) may also vary.

The ability of players to offer to sell points to other players may also vary, as may the minimum and maximum number of points making up any offer, and also the maximum number of offers a player may have outstanding at one time.

The “win limit”, or maximum difference between the highest and second-highest players' totals that will allow the player with the highest total to win, should not be considered to be limited to any embodiment shown by the Figures.

In a further embodiment, a brief time delay (of variable length) is enforced between player actions.

In yet another embodiment, a player has the option to auction points on the market to other players. A reserve may be put on the points and the time for the auction may either be a fixed period or an amount of time configurable by the player.

A different embodiment provides that a player has the option to auction an amount of money using a reverse auction. The auction may include a minimum number of points purchased, with either a fixed or configurable amount of time allowed for the other players to offer points for the amount of money.

A further different embodiment provides that a player has the option to make one purchase of any amount of points, at a special fixed rate, during the joining round. The player using this option is not able to take further game actions until the game is over.

Different and/or additional features are possible in different specific embodiments. Such features are described below.

In one embodiment, instead of an indicator displaying the number of points bought in a present round 49, the indicator displays: a delayed counter showing the amount of money being spent on points by all the players, a measure of the current rate of point purchase by all players, and/or all the player's total point score (including the top points scorer's score) with a configurable time delay.

In another embodiment, an additional delayed points counters is displayed showing the total number of points purchased by the players who were among a top scoring group of players in the previous round.

In a further embodiment, two players have an option to merge their points to provide a single player with a point total equal to the sum of the two players' point totals, but the combined point total has an upper limit of a current highest publicly displayed points total on the game status group 80.

In a different embodiment, the player who started with more points than the other is the one who takes further actions on the part of the merged player, and payouts will be returned to the two players based on a function of the number of points they each had before the merger.

In a yet further embodiment, a player may switch, once per round, between the point counter showing everyone and the point counter only showing a top scoring group of players.

In yet another embodiment, the GUI may present the features of the game in any manner in order for them to be readable and/or interactable with a player.

Various modifications will be apparent to those skilled in the art.

The delayed total points counter is important as it provides feedback to the players of the game regarding the general movement in points in the game. The delayed aspect ensures that a player cannot calculate the score of the leading point scorer, thus depriving them of information and making the game more challenging.

FIG. 12 shows a first method of calculating a value to display to the players of the delayed total points bought in a round. When a new round begins, variables used to calculate the displayed total points are set S.12.1 and a display point total (DPT) counter and an actual point total (APT) counter are reset to zero S.12.2 as no points may have been bought by any players of the game at this point in the round. The set variables are the delay step time (DTIME), minimum ramp time (RAMPmin), maximum ramp time (RAMPmax), minimum increment per delay step (INCmin) and maximum increment per delay step (INCmax).

A delay period (S.12.3) is complete and then the number of points bought from the house during the round by the players is updated.

A maximum step value (STEPmax) is calculated S.12.5


STEPmax=(APT−DPT)*RAMPmin/DTIME   Eqn. 1

to add to the current display point total.

The STEPmax is calculated to ensure that the displayed point total does not increase too quickly and therefore converge with the actual point total too soon, which would make the display point total too accurate and less effective for the game.

The STEPmax is checked to ensure it is above a minimum value set by one of the previously entered variables (INCmin) S.12.6. If the STEPmax is too low, the display point total is set to the smallest of either the actual point total, or the current display point total plus a minimum increment value (one of the previously entered variables) S.12.7. The method begins again at the beginning of the delay period S.12.3.

A minimum step value (STEPmin) is calculated S.12.8


STEPmIN=(APT−DPT)*RAMPmax/DTIME   Eqn. 2

to add to the current display point total. The STEPmin is calculated to ensure that the displayed point total does not increase too slowly and therefore converge with the actual point total too late, if at all. If the STEPmin is too small, the displayed point total may increase too slowly and, at worst, diverge from the current point total, which would make the display point total too inaccurate for the game to be played properly.

The STEPmin is checked S.12.9 to ensure it is below a maximum value set by one of the previously entered variables (INCmax). If the STEPmin is too high, the display point total is set to a value between the current displayed point total plus maximum increment value (one of the previously entered variables), and the actual point total minus a minimum value calculated from the previously entered variables S.12.10. The method begins again at the beginning of the delay period S.12.3.

The algorithm used to choose the new value of DPT S.12.10 may vary. In one embodiment, the value of DPT is incremented by the smallest number in the sequence 1, 2, 4, 8, 16, 32, etc., i.e. 2n, such that the new value of DPT is greater than or equal to (DPT+INCmax) and less than or equal to (APT−(RAMPmin*INCmin/DTIME)). If no number in the sequence satisfies these constraints, the value of APT−(RAMPmin*INCmin/DTIME)) is used.

If the STEPmax is above a predetermined maximum increment per delay value S.12.11 (one of the previously entered variables), it is set to the predetermined maximum increment per delay value S.12.12.

If the STEPmin is below a predetermined minimum increment per delay value (one of the previously entered variables), it is set to the predetermined minimum increment per delay value S.12.14.

The DPT is then incremented S.12.15 by a value between STEPmin and STEPmax. The algorithm used to choose the integer value S.12.15 may vary. In a specific embodiment, a number of discrete values between STEPmax and STEPmin are selected. One of the discrete values is chosen based on the current difference between the APT and DPT. For example, if STEPmin is 1 and STEPmax is 10, the DPT is incremented by a value of 1 if the difference between APT and DPT is 5 or less, a value of 3 if the difference between APT and DPT is between 6 and 40, a value of 6 if the difference between APT and DPT is between 41 and 99, and to a value of 10 if the difference between APT and DPT is 100 or greater.

The method begins again at the beginning of the delay period and continues until the round being played ends.

The above described first method of calculating a value to display to the players is set out below in pseudo-code.

1. Set values for parameters: delay step time (DTIME) minimum ramp time (RAMPmin) maximum ramp time (RAMPmax) minimum increment per delay step (INCmin) maximum increment per delay step (INCmax) 2. Set the actual point total (APT) to zero and the displayed point total (DPT) to zero 3. Wait DTIME 4. APT = APT + number of points all players have bought from the house during this period of time 5. STEPmax = (APT − DPT) * RAMPmin/DTIME If STEPmax is less than INCmin, set DPT to the smaller of APT and (DPT + INCmin) and skip to step (10) 6. STEPmin = (APT − DPT) * RAMPmax/DTIME If STEPmin is greater than INCmax, set DPT to some integer value between (DPT + INCmax) and (APT − (RAMPmin * INCmin/ DTIME)), and skip to step (10) 7. Set STEPmax to the smaller of STEPmax and INCmax 8. Set STEPmin to the greater of STEPmin and INCmin 9. Choose an integer value between STEPmin and STEPmax inclusive, and increment DPT by this value 10. Go to step (3)

FIG. 13 shows a second method for calculating a points value to display to a player of the game.

The Get Points Counter Value step S.13.1 calculates the number of points bought during a round being played. The Get Display Value step S.13.2 gets the current points value being displayed to players.

A path is the difference between the actual points bought in a round and the points value being displayed to the players, i.e. the points counter value minus the display value. This is calculated at the Calculate Path step S.13.3.


path=actual points−display value   Eqn. 3

The Calculate Appropriate Rate step S.13.4 calculates an appropriate rate for the display value to increase at to ensure the display value will reach the actual points value within a predetermined range of time. The Calculate Appropriate Rate step method is set out below.

A minimum target time is a minimum amount of time, 5 seconds for example, that the displayed points value can take to reach the actual points value, while a maximum target time is a maximum amount of time, 15 seconds for example, that the displayed points value can take to reach the actual points value.

A minimal step is the minimum rate that the displayed points indicator should increase by, for example 1 point per second.

A speed coefficient, k, is calculated:


k=maximum target time÷minimum target time   Eqn. 4

The rate, v, may be calculated using the formula:


v=minimal step×direction×kn   Eqn. 5

where the direction is either +1 or −1 dependent upon the polarity of the path and corresponds to the direction that a display counter will turn if it is implemented as a revolving counter; and n is a speed index.

The speed index n, is calculated using either an iteration method or a logarithmic equation. The iteration method starts with a speed index of 0 and increments the index until the calculated reach time is less than the maximum target time, i.e. until


path÷v>maximum target time   Eqn. 6

The Calculate Arrival Time step S.13.5 calculates the amount of time that it will take for the delayed value to reach the counter value at the calculated appropriate rate, where


arrival time=path÷v   Eqn. 7

If the arrival time has elapsed since the display value was last set, the display value is updated S.13.7 to be the actual points value of the number of points bought during the round being played. If not, an Update Display Value step S.13.8 is implemented:


display value=actual points value   Eqn. 8

The Update Display Value step S.13.8 calculates and updates the display value to be the calculated appropriate rate multiplied by the time elapsed since the display value was set, plus the last set display value.


display value=last set display value+[appropriate rate (v)×time elapsed since display value set]  Eqn. 9

The methods of FIGS. 12 and 13 are run on a server. The methods are designed so that the delayed points total is calculated on the server side rather than a client side and any person who may examine the client-side code and communications between the server and client, and vice versa, cannot gain any playing advantage over another person who does not.

The displayed points total is designed to change the displayed points total at a standardised set of rates when the displayed points total approaches the actual points total. The above methods ensure that the rate at which the displayed points total converges with the actual points total does not allow the actual points total to be calculated. Also the methods ensure that the displayed points total does converge with the actual points total in a predetermined amount of time.

The above methods provide a displayed points value that disguises the actual points value due to, in a first method, an arbitrary selection of an increment of the displayed points and, in the example second method, having a set of standardised rates at which the displayed points value increases.

FIG. 14 shows an arrangement comprising a server 14.1 and two client terminals 14.2, 14.3 arranged to communicate over the Internet 14.4. Not shown are any routers or firewalls, which may also be included. The client terminals 14.2, 14.3 communicate over the Internet 14.4 with the server 14.1. Data sent over the internet is not inherently secure, however, data may be encrypted prior to sending and decrypted when received to provide secure transmission. The game may be played over the Internet in the manner shown in FIG. 14. The game being run on a server 14.1 and players connecting to the server using client terminals 14.2, 14.3.

FIG. 15 shows a system diagram of a server 15.1 for carrying out the server side of an embodiment of the invention. The server 15.1 is an exemplary server of the type shown in FIG. 14. The system comprises a number of modules that communicate over a data bus 15.2. Data passes along the data bus to 15.2 and from modules connected to the data bus. An I/O device 15.3 is connected to the data bus 15.2 and provides a means for a user to interact with the modules of the system. The I/O device 15.3 may be a mouse, keyboard or similar. The network interface module 15.4 allows the system to send and receive data over a network (not shown). Such networks are LANs, WANs, the Internet or similar. The display 15.5 provides means for the user to view information regarding the system. A processor 15.6, or central processing unit, carries out instruction of a computer program to perform the basic arithmetical and logical operations. A storage module 15.7 is a non-volatile memory, a hard drive for example. The computer program may be stored in the storage module 15.7. The memory 15.8, usually volatile memory, can load computer programs from a storage module 15.7. The memory 15.8 also holds parameters and variables which are operated on by the processor module 15.6 under instruction from the computer program. The memory module 15.8 contains sub-modules. The software module 15.8.1 represents a computer program in a computer system's memory. The timer module 15.8.2 represents a timer implemented in the computer's memory. Also present in the computer's memory are preset variables 15.8.3 and calculated variables 15.8.4. The variables and timer information can be used by a computer program. The software 15.8.1 can use data received by the network interface 15.4 which was communicated to the memory 15.8 via the data bus 15.2. In a reverse manner, a computer program may transmit data over a network. The game may be run from the software 15.8.1 on the server 15.1 in the memory 15.8. The timer 15.8.2 is used to time games, rounds, etc. and the preset variables 15.8.3 are used by the software in its calculations. The points values 15.8.4 sub-module comprise a number of memory locations storing data related to each player's points, etc.

FIG. 16 shows a system diagram of a client terminal 16.1 for carrying out the client side of an embodiment of the invention. The client 16.1 an exemplary client of the type shown in FIG. 14 labelled as Client 1 and Client 2. The client 16.1 has a number of corresponding features with similar functions to the server of FIG. 15. The client terminal 16.1 is shown running an operating system 16.8.1 in the client memory 16.8. The additional computer program 16.8.2 shown running in the memory 16.8 is software for the game. The computer program 16.8.2 enables a user of the client terminal to perform functions both locally on the client terminal, such as interacting with settings of the game, and publically over a network via the network interface 16.4, such as interacting with a server running the game software. The game running on the client machine 16.1 may send data to a server, such as that shown in FIG. 15, over a network, such as the Internet. An embodiment of this arrangement is shown in FIG. 14.

The various techniques described herein may be implemented with hardware or software or, where appropriate, with a combination of both. Thus, the methods and apparatus of the disclosed embodiments, or certain aspects or portions thereof, may take the form of program code (i.e., instructions) embodied in tangible media, such as floppy diskettes, CD-ROMs, hard drives, or any other machine-readable storage medium, wherein, when the program code is loaded into and executed by a machine, such as a computer, the machine becomes an apparatus for practicing the presently disclosed invention. In the case of program code execution on programmable computers, the computer will generally include a processor, a storage medium readable by the processor (including volatile and non-volatile memory and/or storage elements), at least one input device and at least one output device. One or more programs may be implemented in a high level procedural or object oriented programming language to communicate with a computer system. However, the program(s) can be implemented in assembly or machine language, if desired. In any case, the language may be a compiled or interpreted language, and combined with hardware implementations.

The described methods and apparatus may also be embodied in the form of program code that is transmitted over some transmission medium, such as over electrical wiring or cabling, through fiber optics, or via any other form of transmission, wherein, when the program code is received and loaded into and executed by a machine, such as an EPROM, a gate array, a programmable logic device (PLD), a client computer, a video recorder or the like, the machine becomes an apparatus for practicing the presently disclosed invention. When implemented on a general-purpose processor, the program code combines with the processor to provide a unique apparatus that operates to perform the processing of the presently disclosed invention.

Features from one embodiment or aspect may be combined with features from any other embodiment or aspect in any appropriate combination. For example, any individual or collective features of method aspects or embodiments may be applied to apparatus, system, product, or component aspects of embodiments and vice versa.

While the embodiments have been described in connection with the various embodiments of the various figures, it is to be understood that other similar embodiments may be used or modifications and additions may be made to the described embodiment for performing the same function without deviating therefrom. Therefore, the disclosed embodiments should not be limited to any single embodiment, but rather should be construed in breadth and scope in accordance with the appended claims.

Claims

1. A market based game of skill run on a server machine and played online by a plurality of players, wherein the server machine is configured to:

enable each player to buy points;
enable the players to compete to buy the most points;
provide each player with deficient points information; and
wherein the deficient points information is a delayed and smoothed response of the combined total number of points bought by all the players.

2. The market based game according to claim 1, wherein a player is unable to calculate a value for the combined total number of points bought by all the players by analysing a set of previous deficient points information.

3. The market based game according to claim 1, wherein the game comprises a first round and a second round.

4. The market based game according to claim 3, wherein the deficient points information is the combined total number of points bought by all the players in a single round.

5. The market based game according to claim 4, wherein the cost of a point is greater in the first round than the second round.

6. The market based game according to claim 5, wherein the cost of a point in a single round is above a predetermined lower limit and below a predetermined upper limit.

7. The market based game according to claim 6, wherein the cost of a point increases as the number of points bought during the whole game, in a single round, or in a single purchase increases.

8. The market based game according to claim 7, wherein the game is won by a first player having most points at an end of the game; and the number of points of the first player is within a predetermined number of points above the number of points of a second player with a next highest score.

9. The market based game according to claim 8, wherein the individual point score of all the players, except the leading point scorer, are displayed at the end of a round.

10. The market based game according to claim 9, wherein the point score of the leading scorer is shown to a player if, in a following round, they increase their individual point score above that of the leading point score at the end of the previous round.

11. The market based game according to claim 10, wherein a winning player receives a monetary prize and the size of the monetary prize increases as the combined total number of points bought by all the players increases; and

each player is provided with deficient information of the size of the monetary prize.

12. The market based game according to claim 11, wherein a player sells a point to another player.

13. The market based game according to claim 12, wherein the points are a first type of point; and

a player earns a second type of point by playing the game.

14. The market based game according to claim 13, wherein the second type of point is converted into the first type of point by a player.

15. The market based game according to claim 14, wherein the player converts a number of the second type of point into the first type of point; and

the number of points converted is dependent upon the deficient points information.

16. A market based game of skill run on a server machine and played using a plurality of client machines, wherein the server machine is configured to:

receive an instruction from a client machine to indicate that a player of the game is increasing their point score;
update an internal points register from a first value to a second value using the client machine instruction;
calculate an external points register value between the first value and the second value; and
transmit the external points register value to the client machine; whereby
the external points register value is a delayed and smoothed response of internal points register.

17. A method of processing and multicasting information deficient data, the method comprising:

at a server:
receiving real time data from a first client and a second client;
processing the received data set to provide a transmit data set; and
multicasting the transmit data set to the first client and the second client; wherein
the transmit data set varies to converge with the received data set within a predetermined length of time, and
the first and second clients are unable to calculate a current value for the received data set or predict a future value for the received data set using the transmit data set.

18. The method of claim 17, further comprising, at the server:

identifying the difference between a current received data set value and a current transmit data set value;
calculating a rate of increase to apply to the current transmit data set value for the value to reach the current received data set value within a predetermined range of time; and
calculating a step value to increase each subsequent transmit data set value by.

19. The method of claim 18, wherein the rate of increase is above a predetermined minimum rate.

20. The method of claim 19, further comprising varying the minimum rate of increase after a first predetermined time period.

21. The method of claim 20, wherein the rate of increase is one of a predetermined number of discrete rates of increase.

22. The method of claim 21, further comprising varying the predetermined length of time after a second predetermined time period.

23. The method of claim 22, wherein the first predetermined time period is equal to the second predetermined time period.

24. The method of claim 23, wherein the real time data from the first and second clients comprise discrete values which are summed to provide the received data set.

25. The method of claim 24, wherein the server and the first and second clients communicate over a public network.

26. The method of claim 25, further comprising providing a feedback system, wherein the transmit data multicast to the first and second clients affects the data received by the server from the first and second clients.

27. The method of claim 26, further comprising using steps of the method in a game played by a first player and a second player;

the real time data relates to points used to play the game;
the received data set is a received points data set;
the transmit data set is a transmit points data set;
the first client is operated by the first player of the game;
the second client is operated by the second player of the game; and
the first and second clients can buy points during the game; and
wherein the method further comprising displaying the transmit points data by the first and second clients to the respective first and second players.
Patent History
Publication number: 20130137494
Type: Application
Filed: Nov 30, 2011
Publication Date: May 30, 2013
Applicant: SMD LEISURE, LTD. (Lancaster)
Inventors: Ryan Carroll (Lancaster), James Michael Hammond (Carlisle, MA)
Application Number: 13/308,491
Classifications