d71529b030fc601ed66d9a5e562f16c666908bf1
hexo
Учебный проект. Игра, клон https://www.gamedesign.jp/games/dicewars/
Запуск игры
npm run serve # Запустить веб-сервер (http://localhost:8080)
npm test # Запустить тесты
npm start # Консольная версия карты
Настройки игры
При запуске можно выбрать:
- Количество игроков: 2-4
- Тип каждого игрока: Человек (Human) или AI бот
Правила игры
1. Карта
- Гексагональная сетка 20×20 ячеек
- Каждая ячейка может быть:
- Проходима (пустая или принадлежит игроку)
- Непроходима (заблокирована)
2. Игровые единицы
- Кубик: 6-гранный, значения 1-6
- На поле может быть до 8 кубиков
- Сила юнита:
F = (cnt-1)*6 + current_dicecnt— количество кубиковcurrent_dice— значение верхнего кубика
3. Ход игры
Перемещение/Атака
- Можно ходить, если сила > 1
- На целевую клетку переходит
сила-1, на исходной остаётся 1 - При атаке оба игрока бросают кости:
- Атакующий:
attack_roll = rnd(1..сила-1) - Защищающийся:
defense_roll = rnd(1..сила)
- Атакующий:
Результат боя
- Если
attack_roll > defense_roll:- Атакующий побеждает, занимает клетку с
attack_roll-1 - На исходной клетке остаётся 1
- Атакующий побеждает, занимает клетку с
- Если
attack_roll <= defense_roll:- Атака отбита, атакующий уменьшается до 1
- Защитник остаётся с
defense_roll - attack_roll(мин. 1)
Снабжение
- После хода игрок получает снабжение
- Снабжение = размер наибольшей непрерывной территории
- Непрерывная территория — связанные между собой клетки игрока
- Если территория разорвана врагом — считается только largest кусок
- Снабжение распределяется по 1 единице случайным клеткам (не максимальным)
- Максимум на клетке: 48 (8 кубиков × 6)
4. Победа
- Последний игрок, оставшийся с клетками на карте
Управление
- Клик на свою клетку → выбор
- Клик на соседнюю вражескую/пустую → атака
- Cancel → отмена выбора
- End Turn → завершить ход
Description
Languages
JavaScript
87.4%
CSS
7.8%
HTML
4.8%