ObsidianNotes/WorldTreeModule.md

97 lines
3.2 KiB
Markdown

#worldtree
## 模块划分
- 流程模块(状态机)
- 游戏初始化
- 存档配置流程
- 游戏时间流程
- 资源模块(读写模块)
- 读取指定路径下的场景文件
- 保存到执行路径下的对应文件位置
- 存档模块(对存档进行 增删改查)
- 游戏设置存档结构 (分辨率,画质,特效等级 etc...)
- 游戏存档结构
- 角色信息
- 任务信息
- 时间信息
- 大地图信息
- 读取存档后, 对存档进行处理
- 写入存档时, 对存档进行处理
- 场景模块(对场景进行切换)
- 加载场景
- 删除场景
- 切换场景(删除与加载同时进行)
- 场景分级 (对场景树进行管理)
- 标签模块
- 角色标签,技能标签,效果标签等标签 (主要是字符串)
- 标签需要可以进行检测判断(包含,不包含,必须包含,必须不包含)
- 标签需要方便配置(标签的配置工具)
- 标签需要方便在脚本中使用 (标签配置导出标签常量类 方便调用)
- 游戏时间模块
- 现实 总时间 统计
- 现实 战斗时间 统计
- 游戏 时间 累加
- 游戏 战斗回合 累加
- 任务模块
- 接任务
- 交任务
- 任务链(任务依赖)
- 任务监听
- 大地图模块
- 配置模块, 后期可以把配置表导出成文本方便调试与修改
- 角色与摄像机大地图移动功能(碰撞与层级与检测)
- 大地图动态(增删改查)
- 基于游戏时间进行动态变更
- 区域配置
- 画区域
- 配置区域类型
- 地形
- 森林 移速-0.3
- 丘陵 移速-0.5
- 山脉 移速-0.5 + 需要天赋才能移动
- 多个事件,每个事件都有自己的概率
- 如果事件可能包含战斗,那么从怪物区域中取得对应的怪物数据, 如果当前不在怪物区域,那么说明配置有误
- Tag:陆地/海洋, 战斗/探索/奇遇
- 名字+描述+备注
- n*选项
- 消耗
- 多个不同的结果
- 每个结果有自己的概率
- 怪物区域
- 名称+等级+n*种类
- 战斗模块
- 角色
- 属性
- 常用方法
- 能力
- 能力的脚本继承, 能力功能实现 (触发特效 或 特殊判断条件)
- 配置能力属性(CD, 消耗等)
- 对指定角色添加与删除效果 (添加灼伤buff等)
- 效果
- 效果的脚本继承,状态功能实现 (修改属性或触发特效)
- 配置效果属性(持续时间, 间隔时间等)
- 对角色产生效果的常用方法(添加血量上限等)
- 战斗数据
- 战斗网格
- 战斗角色
- 战斗回合切换
- 回合匹配
- AI模块(敌人AI)
- blackboard数据
- AI行为树
- 行为树配置功能
- 角色配置模块 (配置基础属性, 能力, 掉落ID)
- NPC
- 敌人
- 自身
- 掉落模块(ID 关联, 有嵌套)
- 常量配置表
- 资源路径配置(UI路径, 场景路径, 角色路径, 技能路径, 效果路径)
- 全局事件模块
- 全局的各种事件触发 (玩家选择角色, 玩家选择地面, 进入战斗事件等)
- UI模块
- 监听游戏中不同数据的变化
- 打开与关闭UI
- 触发不同特效
- 本地化模块
- 翻译功能(表)