Recent Forum Topics ![]() | ![]() | ![]() |
As many of you have seen, JavaBBowl shows a number in the titlebar called Luck. As with any statistical figures, it is very important to understand exactly what they represent.
The luck value is a semi-statistical figure that represents the outcome of your rolls compared to the statistically expected average.
Please take a moment to re-read what you just read, and consider what it really means. Given that the value is based on the dice rolls made by the player in question, there is no proper way of comparing the luck values of the two players involved in the game.
As the luck value is not carried over between games (or even reloads), the value is highly inaccurate for the first few rolls that are being made for a player. This is evident by the highly erratic behaviour of the value in the first few turns of a game. The number of rolls required before the luck value has stabilized varies a bit depending on the difficulty level of the rolls being made. A player that attempts a lot of very difficult or a lot of very easy dice rolls will need more rolls to make the value stabilize than if the player had made rolls with a 50% success rate.
Each dice roll is categorised into one of three possibilities:
For each dice roll made, the probabilities of each of these outcomes is calculated. Let's call these pSuccess, pNeutral and pFailure. Note that the sum of these numbers is always exactly 1.0 (or 100%) but that one or more of them can individually be 0.
In order to get a luck value between 0 and 100%, a simple division is made:
Luck = Nominator / Denominator
The Nominator and Denominator values are updated for each dice roll outcome as follows:
Success
Nominator is increased by 1 / (pSuccess + pNeutral / 2)
Denominator is increased by 1 / (pSuccess + pNeutral / 2)
This will increase the luck value, but never take it above 1.0.
Failure
Nominator is unchanged.
Denominator is increased by 1 / (pFailure + pNeutral / 2)
This will decrease the luck value, but never take it below 0.
Neutral
Nominator is increased by 1 / (2 * pSuccess + pNeutral)
Denominator is increased by 1 / (2 * pSuccess + pNeutral) + 1 / (2 * pFailure + pNeutral)
This will make the luck value strive towards 0.5.
The outcomes of the rolls are categorised as follows:
Armour rolls
Block
Catch
Dauntless
Dodge
Going for it
Injury Rolls
Pass
Pickup
In addition to these actions, there is a standard "d6" roll which covers the rest of the actions, such as shadowing. Naturally, a successful roll is considered a success and a failed roll is considered a failure in these cases.
The luck formula has the following characteristics:
Note: The actual implementation in the JavaBBowl client is slightly modified based on this explanation. A few actions have been added, but this covers the basics and is the version that Christer sent to SkiJunkie? for inclusion in the client.