godot

46 篇文章

godot05-19
阅读

第二十四部分:对话选项与分支系统:购买、聊天、任务、条件对话、任务状态分支

这一部分开始升级对话系统。 前面我们的 NPC 已经可以: 但目前交互还是比较直线: 现在我们要做成更像 RPG 的形式: 这就是对话选项系统。 1\. 为什么需要对话选项 没有选项时,NPC 只能做一件事。 比如商人 NPC: 但真实 RPG 里,商人可能有多个功能: 任务 NPC 也可能有多个状态: 所以对话选项系统要解决的是: 而不是 NPC 自己直接决定全部流程。 2\. 第一版对话选项要做什么 第一版建议做这些: 先不要做:...

#学习
godot05-19
阅读

第二十部分:地图状态保存:宝箱已打开、Boss 已击败、机关已触发、采集点刷新

上一部分我们已经能做到: 但现在还有一个大问题: 这就是“地图状态保存”要解决的问题。 1\. 什么是地图状态 地图状态就是: 比如: 这些状态和玩家背包、等级不一样。 玩家数据属于: 地图变化属于: 也就是: 2\. 第一版地图状态先保存什么 第一版建议先做这几类: 先不要做: 普通小怪可以切地图刷新。 普通掉落物也可以切地图消失。 第一版重点保存“重要且不可重复领取”的东西。 3\. 为什么每个地图对象都需要 persistent...

#学习
godot05-19
阅读

第二部分:Godot 的运行结构:SceneTree、节点生命周期、脚本、信号

这一部分很重要。你后面做 RPG、地图、角色移动、天气、四季、怪物、交互、UI,都会不断碰到这几个概念: Node 节点 Scene 场景 SceneTree 场景树 Script 脚本 Signal 信号 可以先把 Godot 理解成: 一个游戏 = 一棵正在运行的树 树上的每个对象 = Node 一组节点保存成文件 = Scene 场景运行后挂到总树上 = SceneTree 节点之间通过 Signal 通信 Godot 官方文档也...

#学习
godot05-19
阅读

第五部分:Camera2D、地图边界、玩家出生点、场景组织

这一部分会让你的 RPG 场景从“角色能在地图上走”变成“像一个真正的游戏画面”。 现在我们要解决这些问题: 1\. Camera2D 是什么 就是 2D 游戏里的相机。 它决定玩家在屏幕上看到哪一块世界。 如果没有相机,Godot 也会显示默认视图,但你没法很好地控制: RPG 里最常见的做法是: 把 作为 Player 的子节点。 这样 Player 移动时,Camera2D 会跟着 Player 一起移动。 这就是最简单的镜头跟随...

#学习
godot05-19
阅读

第八部分:状态机 State Machine:让 Player.gd 不再变成一锅粥

状态机 State Machine,这一部分很重要 你现在的 Player.gd 里已经开始有这些东西了: 接下来还会继续加: 如果所有逻辑都写在一个 里,很快就会变成这样: 这还只是开始,后面再加动画、音效、冷却、输入锁定,代码会逐渐变成野生藤蔓,哪哪都缠着。 状态机就是为了解决这个问题。 1\. 状态机是什么 状态机,全称通常叫: 也就是有限状态机。 简单理解: 比如玩家可以有这些状态: 同一时间,玩家通常不会既在攻击、又在死亡、又...

#学习
godot05-19
阅读

第六部分:Area2D、交互检测、NPC、门、宝箱

这一部分开始,游戏就不只是“能走”了,而是开始“能互动”。 RPG 最基础的交互包括: 这些功能背后,经常会用到一个核心节点: 1\. Area2D 是什么 可以理解成一个“检测区域”。 它本身不是墙,不是角色,也不是普通图片。 它的主要作用是: Godot 官方文档里说, 是一个由 或 定义的 2D 区域,它可以检测其他 进入、离开,并能追踪还在区域里的对象。( ) 你可以把它类比成前端里的“不可见触发区域”: 玩家进入这个区域后,就...

#学习
godot05-19
阅读

第十一部分:NavigationAgent2D 和地图寻路:让怪物绕过墙追玩家

上一部分的怪物 AI 已经能做到: 但它有一个明显问题: 这就需要寻路。 这一部分我们讲: 1\. 寻路要解决什么问题 先看直线追击: 这段代码的意思是: 如果中间没有障碍,很好用。 但如果地图是这样: 怪物会直接撞墙。 因为它根本不知道: 寻路系统就是告诉怪物: 2\. Godot 2D Navigation 的核心组件 Godot 2D 寻路常见组件有: 你现在先重点掌握两个: 官方文档里说,Godot 提供了多种 2D 导航和寻路...

#学习
godot05-19
阅读

第十七部分:经验值与等级系统:击杀怪物获得经验、升级、属性成长、等级 UI

这一部分开始做 RPG 里非常核心的成长系统。 前面我们已经有了: 现在要继续加: 这样玩家打怪就不只是为了掉落物,也会有长期成长反馈。 1\. 经验值系统要解决什么 经验系统的核心是: 比如: 这就是 RPG 最基础的成长闭环。 2\. 第一版经验系统先做什么 第一阶段先做: 先不要做: 这些都后面再说。 第一版目标非常简单: 3\. Player 需要哪些经验字段 Player.gd 里加: 含义: 比如: 表示: 4\. 为什么要...

#学习
godot05-19
阅读

第十三部分:背包与物品系统:Item Resource、拾取物、药水、金币、掉落物

这一部分开始做 RPG 里非常关键的“奖励系统”。 前面我们已经有: 现在要接上: 这会让战斗和探索开始有“收益感”。 1\. 物品系统的核心目标 第一阶段不要做复杂装备、词条、品质、合成。 先做最小闭环: 先让系统能跑。 后面再扩展: 2\. 物品应该怎么表示 游戏里的“物品”通常分两层: 比如: 它的数据是: 而背包里的某一格是: 所以不要把“物品定义”和“背包数量”混在一起。 3\. 为什么建议用 Resource 做 ItemD...

#学习