GithubHelp home page GithubHelp logo

basher0303 / windmill Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 70 KB

Реализация логической настольной игры "Мельница". Бот реализован с помощью алгоритма "Минимакс"

C++ 98.25% C 1.75%

windmill's Introduction

Windmill

Правила игры

Доска представляет собой сетку с двадцатью четырьмя точками. У каждого игрока есть девять фигур (так называемых «человечков»). Цель игры – формировать «мельницы». Мельница образуется, когда три фигуры выстраиваются в одну линию (горизонтально или вертикально). Образование мельницы позволяет убрать одну фигуру соперника с доски. Игрок побеждает, если сократит количество фигур противника до двух или оставит его без возможных ходов.

Игра проходит в три фазы:

  1. Размещение: игроки поочередно размещают свои фигуры на пустых точках.
  2. Перемещение: игроки перемещают фигуры на соседние точки.

Размещение

Игра начинается с пустой доски. Игроки по очереди размещают свои фигуры на пустых точках. Если игрок выстраивает три свои фигуры в одну линию (вертикально или горизонтально), он образует мельницу и может убрать одну фигуру соперника с доски. Для удаления можно выбрать любую фигуру, но предпочтительно фигуру, не являющуюся частью мельницы соперника.

Перемещение

Игроки продолжают чередовать ходы, перемещая свои фигуры на соседние точки. Фигуры не могут «перепрыгивать» через другие фигуры. Игроки стараются сформировать мельницы и убрать фигуры соперника так же, как в фазе размещения. Игрок может «сломать» мельницу, переместив фигуру из нее, а затем вернуть фигуру обратно, чтобы снова образовать ту же мельницу и убрать еще одну фигуру соперника. Это действие иногда называют «ударом». Когда у одного из игроков остается три фигуры, начинается третья фаза.


Сборка и запуск

Требования

Для компиляции проекта требуется:

  • Компилятор g++;
  • ОС Linux.

В директории находится уже скомпилированный файл main

Компиляция

Чтобы скомпилировать проект, необходимо ввести команду:

g++ main.cpp -o main

Запуск

Чтобы запустить программу, необходимо сначала скомпилировать проект, затем ввести команду:

./main

windmill's People

Contributors

basher0303 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.