Forums/ The 7th Continent/ General18 posts
Posted
Recently I decided to learn how to calculate the chance table in the manual and it's harder than it looks. It can be brute forced but it feels like a cop-out. When I began I was convinced that there was an elegant way to get the probability to get X Stars from Y Draws, and there kinda is: Multivariate Hypergeometric Distribution.
But even with this there is 58 combinations of symbols that get you at least a Star with 2 Draws. Not only it's a ungodly number of probabilities I still don't know if I can just add together, it dosen't look good for 3, 4, 5, etc, Draws.
Anyone knows how to do this or has made a similar attempt?
Thanks.
Posted
I can't answer you and I don't have enought time to translate the following french topic, but you'll maybe check some links :
[French forum] Study about success
:resource_fire: Firebird :resource_fire: (Phoenixeux sur TT)
[DV :icon_curse::icon_curse::icon_succes:] [OG :icon_curse::icon_curse::icon_curse:*:icon_succes:] [LG :icon_succes:] [CD+SI :icon_curse::icon_curse:] [SI :icon_curse:] [CD :icon_curse::icon_success-left: :icon_success-right:**]
*[Histoire-T7C :icon_succes_7:] **[Pénitence :icon_curse:+Funéraille:icon_success-left:]
Posted
I know you say brute force seems like cheating, but I think this problem is a perfect candidate for monte carlo estimation.

The actual probability calculations to solve this problem are way beyond me, but I could whip up a program to simulate a deck of 7C cards and draw a thousand sample results a second in just a few hours. Perhaps I will attempt that today.

For the general use of anyone trying this kind of problem, some very useful information:


Distribution of basic actions:

:icon_succes: x7

:icon_succes::icon_succes: x2

:icon_succes::icon_succes::icon_succes: x1

:icon_success-right::icon_succes: x8

:icon_succes::icon_success-left: x5

:icon_success-right: x4

:icon_success-left: x4

:7::icon_succes::icon_success-left: x1

:icon_success-right::7: x1

:7::icon_success-left: x2

:icon_curse: x4 (plus named curses, which there should always be at least one of.)




Distribution of a character kit (this is the same for all characters, so you can multiply this by the party size):

:icon_success-right::icon_success-left: x1

:icon_success-right::icon_succes: x1

:icon_succes::icon_success-left: x1

:icon_success-left: x1

:icon_success-right::7: x1





Distribution of advanced skills in the base game:

:icon_succes::icon_succes: x1

:7::7: x1

:7::icon_succes: x10

:icon_success-right::7::icon_succes::icon_success-left: x2

:icon_success-right::7::icon_succes: x4

:7::icon_succes::icon_success-left: x1

:icon_success-right::7::icon_success-left: x6

:icon_success-right::7: x7

:7::icon_success-left: x8
Posted
Thank you very much for both answers, it was quicker than I expected.


Good to know someone already did all the work on this one. I'll try to glimpse something out of that French.

brisingre wrote:
I know you say brute force seems like cheating, but I think this problem is a perfect candidate for monte carlo estimation.

I'll study the monte carlo estimation, but for 1 to 7 draws it's only 54 million combinations. Even repeating to calculate 0 to 6 :icon_succes_7: it won't take 10 seconds. If I can get a handle on it I'll try crazy draw sizes.
Posted
I've begun work on an odds calculator program for The Seventh Continent.

A WIP of the distribution screen:

Posted
Yeah, that looks a lot better than my command line, output to txt code. When you are done, you mind sharing the code?
Posted
Of course!

I'll put the code on github tonight and post the exe here and on bgg once it's a little more usable. There's a lot I still want to do...
Posted - Edited
Nothing ever gets done quite as fast as I want it to but here's some progress.

Github as promised, late as usual: https://github.com/brisingre/TheSeventhCalculator



Rederived the goat table by monte carlo estimation. These numbers are for a 2-player 1-curse run, with no advanced skills in the deck.

Not sure if the slight differences between this table and the one in the rulebook are

- the randomness of the monte carlo estimation (there's always some degree of error, and for values sufficiently close to 0.5 it can make the difference in which way they round. Running more simulations reduces but does not eliminate this error, at the cost of calculations taking longer.)

- stylistic choices in the table in the rulebook (they round everything down to 99% to show that you can technically fail almost anything. I just do whatever C#'s default rounding behavior is)

-small errors in the table in the rulebook (I know nothing about how it was derived and rounded, so I just have to trust their math)

- slight differences in the number of players used to calculate (the rulebook says it doesn't make a difference but it makes at least a small one I think)

- some tiny pernicious bug in my star counting code that makes it sometimes off by 1% or so.



This is the difference one :icon_succes_7: makes. This is what activating Mary's skill ability at the start of the game, without advanced skills, gives you. 10% on small checks, less on big ones.



This is the impact of Lovecraft's curse ability. It's a little worse than mary's in terms of raw odd when you need lots of successes from few cards and a little better when you need only a few successes from a lot of cards, which sort of makes sense-- hers makes cards that already have stars better, so you're more likely to get a few in a small space. His makes the worst cards better, so it's doing the most work when all you're worrying about is drawing a bunch of curses. It kinda makes sense.

Of course, draw odds doesn't accurately depict the power gulf between those two abilities, because you use Mary's before you draw and Lovecraft's after you see if it's going to work...
Posted
Monte Carlo aka "brute force" is definitely not cheating. Not too long ago I read about a monte carlo simulation for Chutes and Ladders, and it was fascinating. Good luck determining the probability of landing on one of the 100 possible spaces, but if you run a monte carlo simulation (and limit the run to prevent infinite loops), you can fairly quickly get a darn good estimate. Would be near impossible to determine those values any other way; simple rules can lead to complex behavior.

@brisingre, it might be worth rounding down the 100% to indicate a difference between possible and impossible. It is possible to draw 5 cards and get zero stars (though very very unlikely), however it is impossible to draw 1 card and get 10 stars. Great job with the table either way!
Posted
Because it's a monte carlo simulator, I can never say with 100% certainty that something is possible or impossible. I can only say if it happened or not in this random set of data. Technically speaking, I don't know if it could happen or not.

Figuring out the best and worst possible result from a given size draw for a given deck doesn't seem like a hard problem to do separately, but, right now it isn't one that I'm doing. Until I do that, 100% won't mean it can't fail, just that it went ~100,000 shuffles without failing.

You occasionally see a 0% or 100% that's a slightly off-shade, that's actually a 0.000001-0.5% or a 99.5-99.99999%. The color spectrum doesn't have any rounding.

I think you're right though, that if there's even 1 pass it should round up to 1% and if there's even one fail it should round down to 99%. That'd also get rid of those off-color 0s and 100s.
Posted
So, I ran the number on 1 to 9 :card_blue:, with 0 to 7 :icon_succes_7: for 1 to 4 players.
The 7th Continent Draw Results.

I wanted to get to 10 draws but it just takes too long, maybe if there is enough interest. I hope it's useful to check your estimates.
I understand trying to differentiate the impossible from the unlikely, but some results have chances of 11 in 14 billion, it's too far removed from 1% or even 0,01%. It's not impossible, but only barely.
Posted
That'll be useful I think. Thanks for sharing your results.
Posted
There is a mistake in my numbers for 4 Players. I was using int and it's not enough. It takes 3 hours to run so I'll wait for Saturday to run again. Sorry about this.
Posted
Wow, you actually overflowed an int? Exponents get big, man.

Anyway there's an active thread on BGG about exactly this problem. Including the interesting observation that the goat chart's odds, at least for 1:card_blue:/1:icon_succes: seem pretty badly off. (In fact, that one's pretty close at 3 and 4 and farther off at 1 and 2.)

https://boardgamegeek.com/article/31076659#31076659
Posted
As promised, the revised table.
The 7th Continent Draw Results.
Posted
brisingre wrote:
Of course!

I'll put the code on github tonight and post the exe here and on bgg once it's a little more usable. There's a lot I still want to do...

Did you finish this? :)
Posted
Nope. :pouty:


I should though. There's not that much more to do.
Posted
would be lovely :)
Forums/ The 7th Continent/ General18 posts