Files
SectSimulator/README.md
T

151 lines
6.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 模拟宗门
基于 Godot 4.7GDScript)的宗门经营模拟游戏。
## 项目结构
```
模拟宗门/
├── Doc/ # 设计文档
│ ├── 修仙宗门设计文档.md
│ ├── 宗门行政体系.md
│ ├── 宗门礼仪建筑.md
│ ├── 游戏模块总览.md
│ └── 存档界面UI设计.md
├── addons/ # Godot 插件
├── assets/ # 资源文件
│ ├── sprites/ # 精灵图
│ │ ├── buildings/
│ │ ├── characters/
│ │ ├── icons/
│ │ └── ui/
│ ├── audio/ # 音频
│ │ ├── bgm/
│ │ └── sfx/
│ └── fonts/ # 字体(中文字体已导入)
├── resources/ # 配置数据 (.tres / .res)
│ ├── settings/
│ ├── buildings/
│ ├── characters/
│ ├── skills/
│ ├── items/
│ └── events/
├── src/ # 源码 + 场景(.gd 与 .tscn 同目录)
│ │
│ ├── Core/ # 核心框架
│ │ ├── MainGame.gd # [已实现] 主游戏入口,按 GameState 参数区分新游戏/读档
│ │ ├── MainGame.tscn
│ │ └── GameState.gd # [已实现] Autoload 单例,场景间参数传递
│ │
│ ├── Data/ # 数据层
│ │ ├── Models/
│ │ └── SO/
│ │
│ ├── Sect/ # 宗门管理(规划)
│ │ ├── buildings/
│ │ │ └── buildings/
│ │ │ ├── admin/ # 行政类
│ │ │ ├── education/ # 教育类
│ │ │ ├── workshop/ # 工坊类
│ │ │ ├── storage/ # 物资类
│ │ │ ├── resource/ # 资源类
│ │ │ ├── living/ # 生活类
│ │ │ ├── ritual/ # 礼仪类
│ │ │ └── utility/ # 功能类
│ │ ├── halls/ # 各堂管理
│ │ └── panels/
│ │
│ ├── Character/ # 角色系统(规划)
│ │ └── AI/
│ │
│ ├── Production/ # 生产制造(规划)
│ │
│ ├── Combat/ # 战斗系统(规划)
│ │ └── enemies/
│ │
│ ├── World/ # 世界/地图(规划)
│ │
│ ├── Events/ # 事件/叙事(规划)
│ │
│ ├── UI/ # 用户界面
│ │ ├── HUD/ # [已实现] 顶部信息栏(灵石/时间/返回主菜单)
│ │ │ ├── TopBarHUD.tscn
│ │ │ └── top_bar_hud.gd
│ │ └── Panels/ # 功能面板
│ │ ├── MainMenu/ # [已实现] 主菜单(新游戏/读取存档/设置/退出)
│ │ ├── SavePanel.gd # [已实现] 存档选择面板(动态生成槽位)
│ │ ├── SavePanel.tscn
│ │ ├── SaveSlot.gd # [已实现] 存档槽位(载入/删除/新建)
│ │ └── SaveSlot.tscn
│ │
│ └── Utils/ # 工具类
├── icon.svg
└── project.godot
```
> `[已实现]` = 当前已有代码/场景;未标注目录为规划结构,随开发逐步填充。
## 当前功能进度
| 功能 | 状态 | 说明 |
| ---- | ---- | ---- |
| 主菜单 | 已完成 | 新游戏/读取存档/设置/退出,中文字体 |
| 场景切换 | 已完成 | MainMenu ↔ MainGame,经 GameState 传参 |
| 存档界面 | 已完成 | 动态槽位 + 空槽新建,信号驱动 |
| 顶部 HUD | 已完成 | 灵石/时间显示,返回主菜单 |
| 画面质量 | 已完成 | 1920x1080 视口,MSAA 2D/3D + TAA,文字抗锯齿 |
| 宗门经营 | 规划中 | 见 Doc/修仙宗门设计文档.md |
## 开发计划
### 下一步:核心循环闭环(P1
目标:跑通"时间推进 → 资源产出 → 弟子修炼"最小循环,让游戏可玩。
| # | 任务 | 说明 | 依赖 |
| - | ---- | ---- | ---- |
| 1 | TimeSystem | 天/月/年推进,挂载 GameState,UI 显示当前日期 | — |
| 2 | 宗门数据模型 | SectManager 单例:灵石/灵气浓度/声望/建筑列表 | — |
| 3 | 建筑系统基础 | 建筑放置、建造/升级耗时、基础产出(灵石/药材) | 1,2 |
| 4 | 弟子系统基础 | 弟子生成(资质/灵根)、入宗分流(亲传/内门/外门/杂役) | 2 |
| 5 | 修炼循环 | 弟子按资质/灵气浓度自动修炼涨修为,境界突破 | 3,4 |
| 6 | 存档接入 | SaveSystem 序列化宗门/弟子/时间数据,替换 SavePanel 测试数据 | 全部 |
### 之后(P2
| 任务 | 说明 |
| ---- | ---- |
| 财政经济 | 收支明细、俸禄发放、市场价格 |
| 任务系统 | 宗门任务发布、贡献值、兑换 |
| 生产制造 | 炼丹/炼器/符箓工坊 |
| 战斗系统 | 弟子组队、外敌入侵事件 |
### 里程碑
- **M1(P1 完成)**:新游戏 → 招弟子 → 挂机产出 → 存档读档,完整闭环
- **M2(P2 完成)**:可体验宗门经营的丰富玩法
- **M3**:战斗/秘境/外交,正式版本
## 运行方式
1. 用 Godot 4.7 打开 `project.godot`
2. F5 运行,主场景为 `MainMenu.tscn`
3. "新游戏"直接进入;"读取存档"在存档面板中选择
## 命名规范
| 类别 | 格式 | 示例 |
| -------- | ---------- | ------------------- |
| GDScript | snake_case | `top_bar_hud.gd` |
| 场景文件 | PascalCase | `MainGame.tscn` |
| 信号 | snake_case | `back_pressed` |
| 回调方法 | `_on_` 前缀 | `_on_button_pressed` |
| 资源文件 | snake_case | `iron_sword.tres` |
| 精灵图 | snake_case | `bg1.png` |