From 3dd8a86807c7c990391090040fc9506a39dd3ab0 Mon Sep 17 00:00:00 2001 From: zhenyan121 <3367366583@qq.com> Date: Thu, 5 Feb 2026 16:57:27 +0800 Subject: [PATCH] feat: add gameplay instructions --- README.md | 40 +++++++++++++++++++++++++++++++++++++--- 1 file changed, 37 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index cdf5b2e..1b8a4af 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,41 @@ +# SporeBG-Conid 一个棋类游戏,与孢子分裂有关,本为**cpp重构版**,游戏核心主要玩法由**cold1840**制定的,可以看他的[python版本](https://github.com/cold1840/SporeBG),这个版本旨在用**cpp**完全重写这个游戏,**注意本项目并未使用到里面的代码,核心逻辑实现是不一样的**,且本项目打算加入许多功能,**整体玩法也是完全不一样的**,同时**cold1840**也在一定程度上参与项目的开发与维护 +## 玩法介绍 + +回合制,双人人对战 + +初始的时候双方玩家都会拥有两个自己的孢子 + +玩家可以通过点击孢子来切换行动模式 + +### 属性 + +- `HP`: 生命值 +- `ATK`: 攻击力 + +### 行动模式 + +- **GROW:** 玩家可以令孢子生长获得一个新的孢子,选择生长的孢子`HP`减半,`ATK`增加2,新生长出的孢子为变化完属性的母孢子的属性,无法在非空格子`GROW`,`GROW`有效范围是一格 +- **MOVE:** 玩家可以移动一个孢子,移动距离为一格,如果移动的目标是对方孢子,则会进行一次`攻击` +- **攻击:** `攻击`通过`MOVE`触发,攻击对象为非己方孢子,攻击对方造成孢子`ATK`的伤害,自身会受到对方`ATK`一半的伤害,如果对方死亡则会移动到对方位置 +- **SPORE:** 玩家可以使一个孢子移动2格,只能是空格子,无法`攻击`,孢子会扣除两点`HP` + +### GROUP介绍 + +同一玩家的孢子会自动和上下左右的孢子构成一个`GROUP`,每回合每一个`GROUP`的孢子只能有一次行动机会,除`SPORE`外,`GROW`和`MOVE`的范围是一个`GROUP`所有孢子可以行动的范围 + +### 补充说明 + +- 每一个玩家操作结束,所有孢子的`HP`加2 + ## 构建指南 -**mingw老版本有重大问题,导致asio内部状态损坏,引起段错误,如果是mingw请使用最新版本** + +**如果是mingw请使用最新版本,否则可能会构建失败** + 确保电脑安装了`cmake`和`ninja`,使用`gcc`与`g++`: + ```bash git clone https://github.com/zhenyan121/SporeBG-Conid.git mkdir build @@ -13,18 +45,19 @@ ninja ``` ## 目前更新计划 + - 完善网络对战结束处理 - 整改输入和事件分发系统 - 添加glm库,改用vec2记录二维坐标 - ## 待添加玩法 -- 生命值 + - 道具(直接消灭一个孢子之类的) - 技能(将孢子发射出去,不断碰撞掉血) - 随机事件(例如:小于多少的孢子会死亡) ## 项目结构 + ```bash SporeBG-Conid/ ├── src/ @@ -44,4 +77,5 @@ SporeBG-Conid/ ``` ## 一些想说的 + 这是我第一次用cpp写的项目,想写个比较完整的出来,但是遇到了一堆问题,只能说**路漫漫其修远兮,吾将上下而求索**,如果你有好的建议也是可以提出来的 \ No newline at end of file