It is not yet but the game is still under active development and bots have been requested. If you’re interested in getting updates on development, the discord (linked on the site) has been gaining some traction. I’ll be posting updates there.
The time control implemented currently is that you start with a base amount of time and get additional time for each move. I believe it’s referred to as Fischer time which makes me think it’s related to chess, but I’m unsure how prevalent it is in chess or go.
The D20 was the first die shape I tried and I ended up just sticking with it. My reasoning was basically the same as yours - 5% intervals look better.
Agreed that 6 sided dice would not detract from the amount of strategy in the game. I think it could be cool to try a physical version of the game where you shuffle premade tiles and place them in the grid - maybe a fun game to teach kids probability :)
I can't edit my original comment but I have updated the game with "Impossible" difficulty mode as implemented by Louis.
Based on a suggestion from a sister comment, I have also added a "Tutor" mode. When hovering over a square in tutor mode, it shows the probability of winning the game given that you a) select that square and b) continue to play optimally for the rest of the game. Both of these options are in the settings menu in the top right of the game.
Finally, I've added a little writeup to the bottom comparing the strengths of the two AI implementations. Enjoy!
Hey all, I'm the author of Probabilistic Tic-Tac-Toe. I'm currently working with Louis to integrate this solver into the game itself so that people can play against it. I'm hoping to have it released by EOD and will update this comment when it's ready.
MaxNeutralChances and MinGoodChances are both set to 6 in the release build. Note that one chance is equal to one face of the die, so 5%. Also, this overload of Random.Range() has an inclusive min value but an exclusive max value.
I guess I didn't include ties in that little blurb I wrote up, but the real results of my 10k trials were around 5:1:11.5 (lose:tie:win) for the AI vs random actor.
Would love to see your AI when it's done! Please shoot me an email if you want. My email is in my profile / in the site footer.
Yes, the AI mostly just looks for plays that have high certainty and are connected to other potential winning squares (for either team). Then it weights plays positively or negatively based on whether or not the "bad" chance outweighs "good"
Agreed that 3D is overkill. I'm fastest at prototyping in Unity though and this was only a couple day project, so I'm unlikely to port it to anything else.
Probabilities are mostly randomized during board generation but skewed in a way to make gameplay feel a bit better. There's a cap on the likelihood of the neutral event, and a bias towards the good event rather than a bad one.
I love this website - such a great repository of knowledge that presumably would've been lost to time otherwise. Although I don't remember there being so many ads last time I visited the site.
His wife, Harriet Fell, was one of my Computer Science professors at Northeastern. I really regret that I never took the time to talk to her about Sheldon. It always crossed my mind but never seemed like the right time.
Nope, I definitely do not have human calculator abilities. I'd solve your example problem with long multiplication, and would likely be unable to do so without pen and paper. The only difference is that each single digit multiplication or addition would be done with shapes. The shapes and their interactions seem to be more of a memory recall aid for things I already know (small addition and multiplication tables), rather than tools for solving problems I haven't seen before.
Negatives are the same shape as their positive counterpart, but the inverse. So where there would normally be a shape for the number, there's instead a void or impression that wants to be filled.
No color associations for me. In fact, I mostly "feel" the shapes I describe in the article rather than seeing them constantly. The pictures I ended up drawing are what the shapes would look like if you could drag them out into the real world and shine a light on them, but otherwise they're generally invisible in my head.
My visualizations are definitely heavily base-10-centric. I did some experiments with visualizing numbers in other bases while doing this writeup, and I've come to the conclusion that I just convert each digit to its base 10 equivalent and add. My mental representation for 0x6a, for example, takes on the same shape as (6 * 16) + 10 in my head.
Some low primes above ten are slightly pointier than I'd expect them to be (not sure where that expectation is coming from...), but that trend doesn't continue for very long - stops way before triple digits. I think it's likely a characteristic I've assigned to those numbers after repeatedly encountering them in a context where I needed to know they were prime, rather than some innate sense I have for detecting which numbers are prime or not.
Thank you! I didn't include them because there aren't many, but I can expand a bit here.
Beyond 10, it's mostly classes of numbers that have unique forms, rather than the numbers themselves. So 15, 25, and 35 to some extent are somewhat of a stair pattern made of three squares, and they want to interlock nicely with each other. Things like powers of two also take on these sorts of interlocking forms, so maybe it's just numbers where I've memorized their doubled versions over time.
Low multiples of three from around 18 through 27 take on a sort of blobby trefoil shape and want to be divided into three parts. Higher, obvious multiples of three like 333 or 666 are similarly tri-lobed, but each lobe is a bit spikier in a way. I don't really have any strong associations with operations for these apart from splitting them into three. Again, I wonder if this is a sort of learned association from multiples of three that I encounter a lot.
https://csun.io