GithubHelp home page GithubHelp logo

dpv927 / tic-tac-toe Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 1.0 2.98 MB

Tic-tac-toe game made with System V semaphores syncronization

License: GNU General Public License v2.0

C 93.04% Makefile 6.96%
c linux tic-tac-toe solver ai

tic-tac-toe's Introduction

Tic-tac-toe (ttt)

Features

  • Only for Linux!
  • No dependencies
  • Best move finder
  • Multiplayer game
    • Players turns syncronization with API System V
    • Linux API System V Semaphores
    • Linux API System V Shared Memory
  • Blazingly fast AI
  • Easy to understand documentation

About

This application is dedicated to playing games between humans and machines. The available options in the application are:

Argument Description
--versus Create a new 1vs1 game. By default, both players are humans.
--p1-type Specifies the player type for 'player1' at a game created with --versus
--p2-type Same as --p1-type but for 'player2'
--depth-Ai1 Sets the maximum depth node at the seach tree for player1 if it's type is Ai
--depth-Ai2 Same as --depth-Ai1 but for player2
--bestmove Searches for the best move from a given state of a game
--search-depth Sets the maximum depth node at the seach tree for the --bestmove mode
--version Show installed ttt version information.
--help Show an advanced guide for the parameters

Compiling ttt

The compilation process is only available on Linux due to the use of System V semaphores and shared memory API. A custom makefile has been created, and you can compile the program using the following command:

cd tic-tac-toe/src
make clean all

Note If wou want to modify any value or see more compilation commands, just check the makefile or the file named 'makefile_opts.txt' at tic-tac-toe/src/about/. This files are well documented, so everything should be very easy to understand to a basic C or Linux user.

If you want to do a quick check to the Make options, you can use the next command;

make help

Installing ttt

The installation is pretty simple:

cd tic-tac-toe/src
make install

If you want to uninstall:

make uninstall

License

The entire ttt project is licensed under the GNU General Public License v2.0. Please make sure to read the requirements before making any changes to this project.

tic-tac-toe's People

Contributors

dpv927 avatar filipondios avatar

Watchers

 avatar

Forkers

filipondios

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.