更新记录
1.0(2026-10-08) 下载此版本
具备了基本的所有生存类游戏的功能。 人物基础属性、扩展属性、装备背包、外出地图、攻击打怪、搜索物资、庇护所建造升级等功能全部完成。 后续内容可自行扩展升级或修改。 作者V:150+47+83+43+47可联系作者要完整的项目,可随意自行修改,扩展完善。
平台兼容性
末世求生(msqs)
末世主题图文生存游戏(类似《荒野日记》)。技术栈:uni-app(Vue 3),可打包为 Android App / H5 / 小程序。
一、玩法与页面
| 页面 | 说明 |
|---|---|
pages/index 首页 |
开始新游戏 / 继续游戏(显示存档摘要),新游戏必经背景故事环节 |
pages/story 背景故事 |
章节式图文介绍(第三次世界大战 → 核冬天 → 变异 → 秩序崩塌 → 你醒来),点击翻页,可跳过 |
pages/shelter 庇护所 |
出生点:幸福公寓 3 楼 301 室。属性面板 + 行动网格(睡觉/小憩/翻找物资/喝水/进食/包扎/观察窗外/外出)+ 背包/日志/存档 |
pages/map 外出地图 |
预留占位页,数据结构已定义好,探索玩法后续开发 |
二、目录结构与模块化设计
msqs/
├── App.vue / main.js / pages.json / manifest.json / uni.scss # uni-app 工程配置
├── common/
│ ├── data/ # ★ 数据层:所有可扩展、可修改的配置(未来接数据库的映射层)
│ │ ├── index.js # 数据注册表(统一导出,DataManager 按 key 读取)
│ │ ├── gameConfig.js # 游戏元信息 / 存档键 / UI 文案
│ │ ├── world.js # 世界观:时间线 / 地区 / 威胁 / 势力
│ │ ├── story.js # 背景故事章节(图文数据)
│ │ ├── attributes.js # 属性定义与数值规则
│ │ ├── items.js # 物品表
│ │ ├── actions.js # 行动配置表(含掉落表)
│ │ ├── shelter.js # 庇护所(公寓楼)设定
│ │ ├── map.js # 外出地图配置(预留)
│ │ ├── climate.js # 天气系统配置
│ │ └── player.js # 初始角色数据
│ ├── core/ # ★ 核心层:不依赖页面的引擎
│ │ ├── DataManager.js # 数据管理器(预留 loadRemote 接数据库)
│ │ ├── SaveManager.js # 存档管理器(新建/保存/读取/迁移)
│ │ ├── EventBus.js # 事件总线(模块解耦)
│ │ └── Game.js # 游戏门面(页面唯一入口)
│ ├── systems/ # ★ 系统层:纯玩法逻辑
│ │ ├── AttributeSystem.js # 属性增减/衰减/危险扣血/状态标签
│ │ ├── TimeSystem.js # 时间推进/天气变化
│ │ ├── InventorySystem.js # 背包增删查
│ │ └── ActionSystem.js # 行动执行流水线(outcome 钩子扩展点)
│ ├── storage.js # 跨平台持久化(App 写文件 / 其他端写 storage)
│ └── utils/format.js # 工具函数
├── components/ # ★ 展示组件(属性条/背包/日志)
├── pages/ # ★ 页面层(只做渲染与交互,不写死数据)
└── static/images/ # 图文素材
分层原则(数据 → 核心 → 系统 → 页面):
- 页面 只通过
game门面交互(game.runAction/game.saveGame),通过game.data.get("xxx")读取配置; - 页面不写死任何数值/文案/物品,全部来自
common/data; - 系统层 只认配置不认页面,新玩法 = 新配置 + 可选新系统;
- 核心层 与页面解耦,未来可整体迁移到后端。
三、如何扩展
1. 新增物品
在 common/data/items.js 追加一条记录(id/name/icon/desc/effect),
掉落表、初始背包、行动配方直接引用 id 即可,页面自动渲染。
2. 新增行动
在 common/data/actions.js 追加一条配置(time/cost/effects/item/loot)。
如需特殊结算(如"观察窗外"),在 common/systems/ActionSystem.js 的 _outcomes 注册钩子。
3. 修改数值
所有属性衰减、行动消耗、掉落概率、天气概率均在 common/data/*.js 中调整,无需改代码。
4. 新增背景故事章节
在 common/data/story.js 的 chapters 追加 { id, title, image, paragraphs }。
5. 开发外出地图
在 common/data/map.js 的 regions 填充地点数据,然后在 pages/map/map.vue 按 regions 渲染。
6. 接入数据库(远期)
common/core/DataManager.js 已预留 loadRemote(source):后端就绪后,
将配置以 { items, actions, ... } 结构下发,dataManager.loadRemote(...) 即可,
所有页面与系统代码无需改动。
四、如何运行
使用 HBuilderX 打开本项目根目录(D:\mygame\msqs):
- 菜单:运行 → 运行到浏览器 → 选择浏览器(H5 预览)
- 或:运行 → 运行到手机或模拟器
- 打包:发行 → 原生 App-云打包
也可在项目根目录执行
npm install后使用 uni-app CLI(npm run dev:h5/npm run build:h5)。
五、存档说明
- 单机本地存档(App 端写入应用私有目录
_doc/,卸载才清除;H5 端存入浏览器 storage)。 - 新游戏 → 背景故事 → 结束后自动创建存档 → 进入庇护所;
- 庇护所每次行动自动存档,底部导航可手动存档;
- 死亡后清除存档并返回首页。

收藏人数:
下载插件并导入HBuilderX
下载插件ZIP
下载 1
赞赏 0
下载 12657945
赞赏 1955
赞赏
京公网安备:11010802035340号