返回作品列表

项目笔记 / 2D ADVENTURE

2D Adventure
勇士传说学习实践.

这是我跟随 M Studio《勇士传说》教程完成的 Unity 2D 横版动作游戏练习。玩家在森林与洞穴中探索、与敌人战斗,并与宝箱、存档点和传送点交互;这是教程学习项目,而非独立原创游戏。

立即试玩
我的参与
跟随教程完成与练习
项目背景
M Studio《勇士传说》教程
技术主题
Unity 2022.3.62f3c1 · 2D 动作 · WebGL

从操作到跨场景体验。

  1. 01

    移动与战斗

    地面与墙体检测、攻击动画命中窗口、伤害与受击反馈

  2. 02

    敌人行为

    野猪巡逻与追击、蜜蜂空中追踪、蜗牛缩壳与无敌

  3. 03

    场景与存档

    事件通道、Addressables 叠加加载、存档点状态恢复

将输入与动画、敌人行为、场景和存档连接起来,是这份学习项目的主要练习。

01 / 玩法与操作

在森林与洞穴中探索。

可以奔跑、慢走、下蹲、跳跃、贴墙下滑、蹬墙跳,以及在地面近战攻击。地面滑铲消耗会自动恢复的能量;受击后有击退和短暂无敌。传送点连接森林与洞穴,屏幕上的设置按钮可暂停游戏并调整音量。

操作 键盘 手柄
左右移动 A / D 或左 / 右方向键 左摇杆
地面下蹲 S 或下方向键 左摇杆向下
跳跃 / 蹬墙跳 Space 下侧面键
地面慢走 按住 Left Shift 按住左扳机
地面攻击 J 左侧面键
地面滑铲 K 左肩键
附近交互 E 右侧面键
读取存档(脚本快捷键) L 未绑定

手柄按键以位置描述。宝箱只切换开启外观,没有背包或掉落系统;读档前应先激活洞穴中的存档点。试玩建议使用桌面浏览器和键盘,不提供触屏虚拟按键。

02 / 学习收获

练习系统之间的连接。

输入、动画与攻击时序

通过 Input System 接收地面攻击输入,用 Animator 组织三段攻击动画;动画在命中窗口激活攻击区域,触发器将接触转交角色组件处理扣血、无敌和受击/死亡事件,退出动画状态时清除攻击标记。练习的是输入、动画、判定框与反馈的配合,而非按键直接扣血。

敌人有限状态机

敌人将逻辑与物理更新交给状态对象,切换时调用退出和进入回调。野猪用 BoxCast 从巡逻进入追击,并在丢失目标一段时间后返回;蜜蜂用圆形感知和空中追击;蜗牛技能状态处理缩壳与无敌。练习分离通用感知、移动、计时与物种行为。

事件通道与场景生命周期

ScriptableObject 事件通道传递场景、生命值、音频和淡入淡出通知。场景加载器协调 Addressables 引用、淡入淡出、卸载、叠加加载和玩家重定位;加载期间禁用玩法输入,地点场景完成后恢复输入并刷新相机边界。

存档点与持久化

存档点发出事件,数据管理器收集已注册的 ISaveable 对象,以 Newtonsoft JSON 写入 persistentDataPath 下的 SAVEDATA/data.sav。角色 ID 索引位置、生命值和能量,场景加载器保存当前场景;这不是完整的世界快照。

其他实践包括 Tilemap 碰撞、地面/墙体物理检测、URP 2D 光照与后处理、Cinemachine 边界与震屏、生命值/能量 UI、AudioMixer 音量控制和 DOTween 淡入淡出。

03 / 来源与范围

教程学习,而非原创声明。

学习来源是 M Studio 的 Unity《勇士传说》教程。项目事实与键位依据 Unity 项目的中英文 README;本站加载现有 WebGL 导出包,不重新构建 Unity 源码,也不承诺完整世界存档或触屏支持。

音效 Casual Game Sounds U6 来自 Dustyroom,随附授权为 CC0;DOTween 来自 Demigiant / Daniele Giardini。美术 Generic-Character、Legacy-Fantasy-High Forest、音乐 FREE CASUAL MUSIC PACK 和字体 SmileySans-Oblique 的作者/来源与再分发条款未在本地完整记录。第三方资源遵循各自条款,公开部署或重新分发前需核实授权。

回到首页,继续探索