开发日志
Exocave » Devlog


游戏开发进度报告
04/02修改:开发日志的原文请点击链接到GitHub上查看,由于md格式在网页端实在不可读,所以我把内容喂给豆包让他转换为word提交了。我重新审视了这篇开发日志,并以“(补充:***)”的形式添加了一些补充,就当作后日谈了。
一、3 月 28 日
(一)初步思路
- 设计一款重力翻转的解密游戏。玩家先在正常平台跑到指定点,进行翻转后再返回,过程中需考虑不同视角下的行动。
(二)主题扩展
- 将 “洞穴之喻” 融入游戏,翻转永无止境,洞穴之外更加复杂。
- 体现 3 与 4 的争论永存。
- 翻转能解决常规无法解决的问题,洞穴之外既复杂又精彩。
- 翻转过头会陷入虚无。(补充:原本想的是一个陷阱的设定,就是掉出地图外的情况)
(三)初步命名
- 游戏命名为 Exocave。
(四)进一步思路整理
- 主题:洞穴之喻。
- 理念:3 与 4 的争论永存,翻转视角可帮助走出一个洞穴,但洞穴永无止境。
- 设定--“虚无”:玩家一直受翻转重力影响,无法接触地面,只能 “上坠”。
- 目标:离开洞穴。
- 玩法:解密。
- 核心机制:重力翻转。
- 待明确问题:重力翻转采用主动还是被动方式。主动方式不利于谜题设计,若主动设计困难,考虑采用被动方式,因其并非核心问题。
- 下一步计划:于 3 月 29 日早上实现核心机制 —— 重力翻转。
二、3 月 29 日早上
(一)素材
- 使用 kenney 素材。
(二)实现
- 实现重力翻转,在固定点可触发。
- 实现推箱子功能,参考建造系统demo 中的推箱子实现方式
- 设计受重力影响的道具,如箱子,翻转后箱子会向 “上” 掉落。
(三)谜题设计
- 谜题 1:翻转后可走出。
- 谜题 2:需考虑箱子的运用。
(四)可能的扩展
- 设计不同类型的箱子。
- 设置陷阱,避免玩家在不该翻转的地方翻转。(补充:后续几乎没有陷阱的设计,只在关卡五右下方有个虚空的设计,掉下去后会死亡重置关卡。因为设计多了太复杂,考虑不过来。)
- 使地图规模逐渐增大,模拟洞穴越来越大的效果。
(五)下一步计划
- 实现关卡切换,思考关卡包含的内容及优雅的切换方式,实现视角和地图逐渐变大的功能。
三、3 月 29 日下午
(一)地图变大功能实现
- 通过相机缩放实现地图变大,初步设想第一关缩放 2 倍,第 2、3 关缩放 1 倍,第 4 关缩放 0.5 倍,后续再进行扩大。后修正为:第 1 关缩放2倍;第 2 关缩放 1.5 倍;第 3 关缩放 1.0 倍;第 4 关缩放 0.75 倍;第 5 关缩放 0.5 倍;第 6 关缩放 0.25 倍。
(二)关卡实现
- 内容:包含实体、玩家、物品(翻转触发器、胜利触发器、箱子)、相机、地图。
- 重新开始 UI:直接重新加载。
- 切换关卡:使用切换场景单例保存关卡数据,实现具体切换。
(三)扩展谜题与机制
- 引入横向重力。
- 考虑将翻转改为主动,并添加次数记录或限制。(补充:当时谜题设计的太痛苦了,所以想要改设定。改为主动并记录次数可以让玩家一定能通关但不一定高分。)
- 设计陷阱、单向平台。
四、3 月 29 日晚上
(一)关卡四设计
- 机制设计:原计划加入横向重力,后改为单向平台。
- 关卡四主题:单向通道。
- 设计方向:融入错误路径,融合多种机制。
(二)音效与音乐准备
收集音乐音效素材,尚未构思出关卡四的设计思路。初步规划关卡四采用单向平台,关卡五采用横向重力,关卡六进行综合设计,关卡七进行剧情演出。
(三)下一步计划
次日早上搭建基础系统,完成音乐音效设置,暂不清理美术素材,留作备用。
五、3 月 30 日早上
(一)关卡设计优化
需深入挖掘核心机制 —— 重力翻转的玩法,单向平台并非核心机制。参考 ibb - obb 的谜题设计完成关卡四,并在关卡过程中暗示关卡解法。(补充:这个游戏我上周周一才和朋友一起玩过,虽然没玩太久。感谢kat!)
(二)场景切换 bug 修复
- 问题:场景切换存在 bug,关卡三被跳过,疑似同帧多次调用导致索引值异常。
- 解决方案:通过一个字典映射对应 scene - manager 中具体关卡,避免切换到错误场景。此方法虽配置较为麻烦,但可解决问题,且因场景较小,性能不受影响。(补充:试过在单例中声明枚举,在其他地方调用。这会报错!我猜是因为赋值在单例初始化之前。)
(三)下午目标
- 设计关卡 5。
- 提升场景颜值,尤其是规模逐渐增大的场景。
- 选择音频资源,实现音频系统。
六、3 月 30 日下午
(一)关卡设计优化
- 优化关卡节点组织和设计(补充:当初关卡结构不稳定,加上要快速开发,所以直接使用事件总线完成通信;稳定后发现没啥信号有必要通过总线,就取消了事件总线设计)
- 考虑将关卡四的单向平台朝向随机化(所有平台朝向保持一致),设计两条路线。实施后发现关卡过于简单。
(二)主界面与音乐设计
- 采用乌鸦的音乐作为游戏音乐,因关卡较短,每关结束时不再重新播放音乐。
- 添加像素字体。
- 通过抄一个单例实现音乐播放,并添加淡入效果。
(三)素材收集
- 收集星空 shader 作为主界面背景,留存动态进度条 shader 备用。
七、3 月 30 日晚上
(一)游戏优化
- 调整文件架构,优化关卡界面效果,降低音乐默认音量。
- 思考是否启动其他物理引擎插件优化表现,经评估暂不必要。
(二)音效设计
- 为 UI 添加点击音效、进入按钮音效。
- 为重力翻转、胜利等事件添加音效。因在物理体上添加音效存在困难,故不在物理体上添加音效。添加音效后,游戏初始化时可能存在几秒音效播放不出来的问题,但不影响整体。(补充:这是因为之前加了一个默认1s的淡入效果,后续修复了)
八、3 月 31 日早上及下午
(一)提示牌优化
- 提示牌内描边在不同相机缩放下表现不一致,因可能与相机缩放有关,难以完全修复。
(二)关卡五设计
- 主题:3 == 4。(补充:其实有点想改为“勇气”)
- 要求:设计正面和反面两条可通过的路线,构建更大的地图。本关卡不再新增横向重力,直接设计为综合关卡,将横向重力留给关卡六用于演出。
- 优化过程
- 优化 01:
- 取消中间线路,因其复杂且无意义;
- 尝试添加单向平台,融合竞速玩法,但时间设置过短,后续需调整刚体等设置;
- 添加速度限制器,在玩家首次移出地图外时降低速度,使其缓慢返回,也可考虑直接冻结 player 一段时间。
- (补充:这个“移出地图外”是误打误撞搞来的。当初测试跳出地图时,由于我的重力是通过area2d覆盖实现的,所以从上面跳出地图后会掉回来。由此在设计时刻意让往上跳的路线都不能直接跳过去,往下跳的路线能过但有点艰难。)
- 优化 02:
- 优化速度限制,通过合理设置重力区域大小,控制返回时间在 6S 左右;
- 优化路线设计,避免路线交叉影响;添加半误导性质的提示箱子。
- 取消竞速玩法,但发现原本加入的单向平台有其他作用。
- 优化 03:降低踩箱子环节的难度,优化路线交叉部分。
- 优化 01:
九、3 月 31 日晚上
(一)项目收尾
- 取消结局关卡演出,因无法及时实现满意的美术效果,改为通过 UI 结束游戏。
- 研究扩展关卡,改变部分机制,添加横向重力。(补充:很快就扩展了三关,是个填充内容的好方法。)
- 清理孤立资源,进行测试与最后优化,上交项目。
十、4月1日早上
- 优化开发日志
Files
web.zip Play in browser
7 days ago
Exocave.console.zip 48 MB
7 days ago
Get Exocave
Download NowName your own price
Comments
Log in with itch.io to leave a comment.
不错的游戏,虽然我经常因为操作搞得火大,也许可以让碰撞体比实际体积看起来小一些。
我目前看到最完善的开发日志,甚至应该作为范例!
感谢游玩!
以及其实已经小了一些了(1px)(狗头.jpg)
我之后再优化一下日志吧,就当一个后日谈。交的急没咋看,哈哈。