Giter Site home page Giter Site logo

pentago's Introduction

Pentago

Pentago is two-player board game which is played on a 6x6 board divided into four 3x3 quadrants. Like this:

 ---------+---------
| .  .  . | .  .  . |
| .  Q1 . | .  Q2 . |
| .  .  . | .  .  . |
 ---------+---------
| .  .  . | .  W  . |
| .  Q3 . | .  Q4 . |
| .  .  . | .  .  . |
 ---------+---------

You can player with 2 players or a player and a bot

Each turn every player must

  • place a marble in one of the empty spaces on board
  • rotate one of the quadrants by 90 degrees clockwise or anti-clockwise

for W marble on top board the input is:

4/2 3R
# 2nd place on 4th quadrant and turn 3rd quadrant clockwise

players win if they get five of their marbles in a vertical, horizontal or diagonal row (before or after the rotation).

More information about the game can be found on its wikipedia page.

Algorithm

Bot uses Minmax and Alpha-Beta Puring algorithms for decision making. Wikipedia

Alpha-Beta puring is a optimization of the minmax algorithm that decreases the number of nodes that are evaluated by the minimax algorithm in its search tree and therefore it runs much faster and allows us to go into deeper levels in the game tree.

License

This project is licensed under the MIT License.

pentago's People

Contributors

parsa-mz avatar

Watchers

 avatar

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.