ks561/cold-hot 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

ks561/cold-hot

Composer 安装命令:

composer create-project ks561/cold-hot

包简介

Implementation of the game "Cold-hot"

README 文档

README

Описание проекта

Проект "Cold-Hot" представляет собой игру, в которой игрок должен найти спрятанный объект, используя подсказки о его местоположении. Игра разработана с использованием языка PHP и базы данных SQLite для хранения результатов и истории игр. Цель игры — найти объект как можно быстрее, следуя указаниям "тепло" и "холодно", которые даются в зависимости от того, насколько близко игрок к объекту.

Цель игры "Cold-Hot" — найти спрятанный объект на игровом поле как можно быстрее, используя подсказки о близости к объекту. Игрок стремится минимизировать количество ходов и время, необходимое для нахождения объекта.

Правила игры

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

  • "Холодно": Ни одна цифра не отгадана.
  • "Тепло": Одна цифра отгадана, но её позиция неверна.
  • "Горячо": Одна цифра и её позиция отгаданы.

Требования

  • Сохранение данных: Информация о датах и исходах всех партий, а также о всех попытках, сделанных во время игры, должна сохраняться в базе данных.
  • Хранение данных: Для каждой игры в базе данных должна храниться следующая информация:
  • Дата игры
  • Имя игрока
  • Загаданное компьютером число
  • Исход игры (угадал/не угадал)
  • Запись попыток в формате: номер попытки | предложенное число | результат
  • Режимы игры:
  • Новая игра
  • Вывод списка всех сохраненных партий
  • Повтор любой сохраненной партии (воспроизведение всех ходов из этой партии)

Дополнительные возможности

Определение сложности: Возможность выбора уровня сложности, который определяет размер поля и количество попыток. Система рейтинга: Игроки могут соревноваться по количеству успешных игр и времени, затраченному на нахождение объекта. Поддержка нескольких пользователей: Игра хранит данные для разных игроков, позволяя каждому просматривать свои игры и результаты.

Настройка окружения

  1. PHP:

    • Версия: 7.4 или выше.
    • Настройки в php.ini:
      • Включите SQLite (extension=sqlite3).
      • Убедитесь, что настройки отображения ошибок (display_errors) включены в режиме разработки.
  2. SQLite:

    • Версия: 3.x.
    • Проверьте наличие прав записи в каталоге, где находятся файлы баз данных.
  3. Composer:

    • Composer должен быть установлен глобально.
    • Используйте команду composer для управления зависимостями.
    • Для установки Composer следуйте официальной документации.

Игровой процесс

Ввод данных

  1. Координаты ячеек игрового поля:

    • Вводите целые числа для угадывания спрятанного объекта.
    • Каждое число должно быть в пределах от 1 до 100.
    • После ввода, система выдаст вам подсказку (насколько близко или далеко вы от цели).
  2. Параметры перед началом игры:

    • Перед началом партии вам необходимо задать размер игрового поля.
    • Вводите значения, которые определяют размер поля, и система генерирует случайное число, которое необходимо угадать.

Пример игрового процесса:

  1. Запустите игру.
  2. Введите число для угадывания.
  3. Получите подсказку о том, насколько близко или далеко вы находитесь от спрятанного числа.
    • Примеры подсказок:
      • "Очень холодно" (если вы далеко от цели),
      • "Тепло" (если вы ближе к цели),
      • "Горячо" (если вы очень близко).
  4. Продолжайте угадывать до тех пор, пока не найдете точное число.
  5. Система отобразит количество попыток и время, потраченное на игру.

Установка и запуск проекта

  1. Склонируйте репозиторий:

    git clone https://github.com/shuryginaKN/cold-hot.git
  2. Перейдите в каталог проекта:

    cd C:\...\cold-hot
  3. Установите зависимости через Composer:

    composer install
  4. Запуск игры: Выполните команду для запуска игры:

    php bin/cold-hot.php
    • Или если ваш пакет опубликован на Packagist, установите его глобально:
    composer global require ks561/cold-hot
    • И затем выполните команду:
    cold-hot

Сохранение данных в базу данных

Игра сохраняет информацию о каждой партии в базе данных SQLite (файл data/cold-hot.db). Сохраняются следующие данные:

  • Имя игрока
  • Размер поля
  • Спрятанное число
  • Время начала и окончания игры
  • Количество попыток
  • Результат игры (победа или поражение)

Просмотр сохраненных игр

Пользователь сможет совершить следующие действия:

  • Сыграть и сохранить данную игру в базу данных. Реализуется путем ввода команды --new (-n) или по умолчанию.
  • Просмотреть список сохраненных игр, в котором будут указаны дата игры, имя игрока и исход. Реализуется путем ввода команды --list (-l).
  • Повторить ранее сыгранную партию, вводя номер соответствующей игры из списка. Реализуется путем ввода команды --replay id (-r id). Заместо id нужно ввести номер интересующей игры.
  • Получить справку по работе программы. Реализуется путем ввода команды --help (-h).

Воспроизведение сохраненных игр

Вы можете выбрать ID игры из списка и воспроизвести ее. Игра покажет вам все ваши ходы, включая координаты, которые вы вводили, и подсказки, которые вы получали.

Примечания

Ссылки на пакеты

ks561/cold-hot 适用场景与选型建议

ks561/cold-hot 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 3 次下载、GitHub Stars 达 0, 最近一次更新时间为 2024 年 10 月 05 日, 在 PHP 生态内属于活跃度较高的组件。

我们在过去多个企业项目中使用过 ks561/cold-hot 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 ks561/cold-hot 我们能提供哪些服务?
定制开发 / 二次开发

基于 ks561/cold-hot 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 3
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 13
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: Unknown
  • 更新时间: 2024-10-05