UCThello - UCThello - a board game demonstrator (Othello variant) with computer AI using Monte Carlo Tree Search (MCTS) with UCB (Upper Confidence Bounds) applied to trees (UCT in short)

  •        45

UCThello is a board game using Monte-Carlo Tree Search (MCTS) with UCB (Upper Confidence Bounds) applied to trees (UCT in short) for the computer player AI. The board game used for demonstration purposes of the UCT algorithm is close to a game named Othello depending on selected options. In fact it can be played depending on your configuration following the official tournament rules of the WOF - World Othello Federation - if intended [WOF14]. Other rule settings to play variants are available, too. Per design decision the playing strength is limited for pleasure and fun level. Thus it is kept at a moderate to quite strong level on purpose due to the target environment, device platform, and audience expectations. This is done e.g. by limitation of the maximum AI response time and using a single execution thread for AI only plus just a second independent execution thread for a responsive user interface to avoid battery drains if full CPU and GPU core support would be implemented leading to bad user experience. Other possible but at least currently postponed improvements could be done by simple usage of a well-known and available game opening book. Although such simple modifications could improve the playing strength these features are not implemented in the current version yet. Othello is a derivative of the board game Reversi which can be played by UCThello as well. Reversi is claimed to be invented by either Lewis Waterman or John W. Mollett. Predecessor of Reversi created by Mollett is The game of Annexation, also called Annex back in 19th century.

http://omerkel.github.io/UCThello/html5/src
https://github.com/OMerkel/UCThello

Tags
Implementation
License
Platform

   




Related Projects

alpha-zero-general - A clean implementation based on AlphaZero for any game in any framework + tutorial + Othello/Gobang/TicTacToe/Connect4

  •    Python

A simplified, highly flexible, commented and (hopefully) easy to understand implementation of self-play based reinforcement learning based on the AlphaGo Zero paper (Silver et al). It is designed to be easy to adopt for any two-player turn-based adversarial game and any deep learning framework of your choice. A sample implementation has been provided for the game of Othello in PyTorch, Keras and TensorFlow. An accompanying tutorial can be found here. We also have implementations for GoBang and TicTacToe. To use a game of your choice, subclass the classes in Game.py and NeuralNet.py and implement their functions. Example implementations for Othello can be found in othello/OthelloGame.py and othello/{pytorch,keras,tensorflow}/NNet.py.

easyAI - Python artificial intelligence framework for games

  •    Python

EasyAI (full documentation here) is a pure-Python artificial intelligence framework for two-players abstract games such as Tic Tac Toe, Connect 4, Reversi, etc. It makes it easy to define the mechanisms of a game, and play against the computer or solve the game. Under the hood, the AI is a Negamax algorithm with alpha-beta pruning and transposition tables as described on Wikipedia. Additionnally you will need to install Numpy to be able to run some of the examples.

bwapi - Brood War API

  •    C++

The Brood War Application Programming Interface (BWAPI) is a free and open source C++ framework that is used to interact with the popular Real Time Strategy (RTS) game Starcraft: Broodwar. Using BWAPI, students, researchers, and hobbyists can create Artificial Intelligence (AI) agents that play the game. BWAPI only reveals the visible parts of the game state to AI modules by default. Information on units that have gone back into the fog of war is denied to the AI. This enables programmers to write competitive non-cheating AIs that must plan and operate under partial information conditions. BWAPI also denies user input by default, ensuring the user cannot take control of game units while the AI is playing. These defaults can be changed for flexibility, unless enforced by a Tournament Module (game referee for AI tournaments). Changed defaults will be advertised when the match begins.

AIND-Isolation

  •    Python

In this project, students will develop an adversarial search agent to play the game "Isolation". Isolation is a deterministic, two-player game of perfect information in which the players alternate turns moving a single piece from one cell to another on a board. Whenever either player occupies a cell, that cell becomes blocked for the remainder of the game. The first player with no remaining legal moves loses, and the opponent is declared the winner. These rules are implemented in the isolation.Board class provided in the repository. This project uses a version of Isolation where each agent is restricted to L-shaped movements (like a knight in chess) on a rectangular grid (like a chess or checkerboard). The agents can move to any open cell on the board that is 2-rows and 1-column or 2-columns and 1-row away from their current position on the board. Movements are blocked at the edges of the board (the board does not wrap around), however, the player can "jump" blocked or occupied spaces (just like a knight in chess).

clashX - A rule based custom proxy with GUI for Mac base on clash.

  •    Swift

Clash of Clans is a freemium mobile strategy video game developed and published by Finnish game developer Supercell. The game was released for iOS platforms on August 2, 2012, and on Google Play for Android on October 7, 2013. The game is set in a fantasy-themed persistent world where the player is a chief of a village. Clash of Clans tasks players to build their own town using the resources gained from attacking other players through the game's fighting features. The main resources are gold, elixir and dark elixir. Players can conjoin to create clans, groups of up to fifty people who can then participate in Clan Wars together, donate and receive troops, and chat with each other.


godot-steering-ai-framework - A complete framework for Godot to create beautiful and complex AI motion

  •    GDScript

This project is a framework to code complex and smooth AI movement in the Godot game engine, in GDScript, using steering behaviors. It works in both 2D and 3D games. ➡ Follow us on Twitter and YouTube for free game creation tutorials, tips, and news! Get one of our Godot game creation courses to support our work on Free Software.

freeciv-web - Freeciv-web is an Open Source strategy game implemented in HTML5 and WebGL, which can be played online against other players, or in single player mode against AI opponents

  •    Javascript

Freeciv-web is an open-source turn-based strategy game. It can be played in any HTML5 capable web-browser and features in-depth game-play and a wide variety of game modes and options. Your goal is to build cities, collect resources, organize your government, and build an army, with the ultimate goal of creating the best civilization. You can play online against other players (multiplayer) or play by yourself against the computer. There is both a HTML5 2D version with isometric graphics and a 3D WebGL version of Freeciv-web. Freeciv-web is free and open source software. The Freeciv C server is released under the GNU General Public License, while the Freeciv-web client is released under the GNU Affero General Public License. See License for the full license document.

gdx-ai - Artificial Intelligence framework for games based on libGDX or not

  •    Java

An artificial intelligence framework, entirely written in Java, for game development with libGDX.The gdxAI project is a libGDX extension living under the libGDX umbrella. However it does not force you to use that specific framework if you do not wish to do so. The libGDX jar remains an essential requirement, mostly due to the use of libGDX collections which are optimized for mobile platforms by limiting garbage creation and supporting primitive types directly, so avoiding boxing and unboxing.

godot-2d-space-game - A 2D space exploration and mining game made with Godot and our AI framework

  •    GDScript

Harvester is a Free and Open-Source top-down space mining game made with the Godot game engine. Control your spaceship in forays into an asteroid belt, gather iron, and bring it back to base. Spend them on upgrading your ship's speed and maneuverability and cargo space. But beware, as you are not alone out here. Pirate miners are out there and want to monopolize the business.

TripleA

  •    Java

An online multiplayer turn based strategy game and board game engine.

fheroes2 - Free Heroes of Might and Magic II (fheroes2) is a recreation of HoMM2 game engine.

  •    C++

Free Heroes of Might and Magic II (fheroes2) is a recreation of HoMM2 game engine. This open source multiplatform project, written from scratch, is designed to reproduce the original game with significant improvements in the gameplay, graphics and logic (including support for high-resolution graphics, improved AI, numerous fixes and UI improvements), breathing new life into one of the most addictive turn-based strategies.

behaviac - behaviac is a framework of the game AI development, and it also can be used as a rapid game prototype design tool

  •    CSharp

behaviac is a framework of the game AI development, and it also can be used as a rapid game prototype design tool. behaviac supports the behavior tree, finite state machine and hierarchical task network(BT, FSM, HTN)

warriorjs - 🏰 An exciting game of programming and Artificial Intelligence

  •    Javascript

In WarriorJS, you are a warrior climbing a tall tower to reach The JavaScript Sword at the top level. Legend has it that the sword bearer becomes enlightened in the JavaScript language, but be warned: the journey will not be easy. On each floor, you need to write JavaScript to instruct the warrior to battle enemies, rescue captives, and reach the stairs alive... Although there is some in-game documentation, at some point you may want to visit the official docs.

lichess - Online Chess Game Server

  •    Scala

Lila (li[chess in sca]la) is a free online chess game server focused on realtime gameplay and ease of use. It features a search engine, computer analysis distributed with fishnet, tournaments, simuls, forums, teams, tactic trainer, a mobile app, and a shared analysis board. The UI is available in more than 80 languages thanks to the community.

Intelligent Thought Entertainment

  •    C++

Educational game framework supporting board games, strategy games, and other grid-based game boards. Currently uses Python/wxPython as the application language/library. C++ libs included to help create AI for the various games.

phaser - Phaser is a fun, free and fast 2D game framework for making HTML5 games for desktop and mobile web browsers, supporting Canvas and WebGL rendering

  •    Javascript

Phaser is a fast, free, and fun open source HTML5 game framework that offers WebGL and Canvas rendering across desktop and mobile web browsers. Games can be compiled to iOS, Android and native apps by using 3rd party tools. You can use JavaScript or TypeScript for development. Phaser is available in two versions: Phaser 3 and Phaser CE - The Community Edition. Phaser CE is a community-lead continuation of the Phaser 2 codebase and is hosted on a separate repo. Phaser 3 is the next generation of Phaser.

five-three-two card game

  •    

card game 5-3-2 is a famous card game, we used to play as kids, growing up in india. > it is a 3 player game, you can play with 2 AI opponents. > developed for the awesome windows phone series, Xbox & the windows OS. > the rules of the game will be part of the game pub...

Flying Colors Assistant

  •    Python

An assistant tool for the wargame 'Flying Colors'

Hpylos

  •    

Hpylos is an AI of Pylos, a board strategy game for two players. Written in Haskell, uses OpenGL and provides with couple algorithms. User interface allows playing a game against computer, observing two algorithms playing or two humans play.

The Pacman

  •    CSharp

A simple single player game similar to Pacman. Developed using XNA game framework and C#. Game demonstrates usage of fuzzy logic for controlling the AI ghosts. This game is developed to test the effect of fuzzy logic AI in Pacman game.






We have large collection of open source products. Follow the tags from Tag Cloud >>


Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.