Giter VIP home page Giter VIP logo

ultimate_tictactoe's Introduction

ultimate_tictactoe's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

ultimate_tictactoe's Issues

Undo last move

It'd be neat if there were a button to undo your last move. Sometimes I click on the wrong square.

What licence is it under?

I want to do a clojurescript AI for it but want to steal some of your canvas stuff so I dont have to spend long making it pretty, would be nice to know under what conditions I can do that.

Min Max AI

I just started this today, should have it finished tonight or tomorrow. only have to write the evalue funtion()

Too much randomness...?

I'm not sure if this is a feature or a bug. But my initial impression is that the game should force you to play 9 separate tic tac toe games at once, randomly switching between them.

The problem comes from how the random switching works. For example, when it's X's turn to play, it picks one of 9 games randomly, rather than limiting the random game choice only to games where it's X's turn. This leads to the winner being partly determined by random luck rather than tic tac toe skill.

For example, here's the game I played against myself:
screen shot 2013-06-19 at 11 16 58

The top right corner game is the worst offender, O had 4 plays, and X and only 1.

If this is intended behavior though, please ignore me :)

Rule variant

The Orlin Gambit destroys this fine game -- to salvage, there is a rule variant where sending a player to an already won board is a free play..

Player 1 can play the center eight times.

ABC
DEF
GHI

So Player 1 plays EE, AE, BE, CE ... whatever order Player 2 plays the E board. The last one Player 1 plays "double", so if Player 2 finishes on EI, Player 1 continues with II. Player 1 has two goals here: win the opposite, in this case A square and play I. So player 1 plays AI, BI, CI... unless player 2 plays IE (it eventually needs to). IE is a free play to Player 1 -- it will place an A stone whenever given the chance. So Player 1 will be sent from I to A twice, once by Player 2 playing IE, once by IA, first it will put down AI (keeping Player 2 in the I board) then AA. At this point player 1 wins the A board. After this win, Player 2 will have a chance to put stones in the A board as well as the I board -- but both are already won so it doesn't matter for Player 2.

Aside from the A win, while Player 2 is pinned in I and A it needs send Player 1 to B, C, D, F, G and H twice. Player 1 wins before that finishes. The longest Player 2 can hold out is if it sends Player 1 to B, D, F, H twice and C and G once -- 20 rounds (8 rounds where player 2 played E stones, then the special IE, IA rounds and then IB,ID,IF,IH,AB,AD,AF,AH,AC,AG for example in any order). There are variants of this pattern but the number of rouns is the same.

There is no difference if Player 2 finishes the "center round" on a side one, say EF. Player 1 will strive for the opposite, the D board, with the same tactic: Player 2 needs to play FD and FE which gives two chances to play on D, so Player 1 plays DF and then DD for the win.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.