WECHAT

扫码添加微信

YoungFan 微信二维码
← 返回 《Steal An Egg》UE5
Steal An Egg 玩法概述 封面
开发笔记已归档

Steal An Egg 玩法概述

游戏玩法中,需要玩家拾取“蛋”并逃跑。本文记录使用GAS实现通用的交互能力以及玩家“拾取”能力的方法。

UE5多人游戏C++
查看 GitHub

1. 玩法概述

《Steal An Egg》是一款 Low Poly 美术风格的多人在线游戏,灵感来自Roblox同名游戏,采用专用服务器承载游戏世界。每个专用服务器进程对应一个独立世界,每个世界最多容纳 8 名玩家。

玩家进入周期性开放的动物领地偷取蛋,在动物追逐和其他玩家干扰下返回安全区。成功获得的蛋可以立即出售,也可以放入围栏培养并手动孵化。宠物既可出售,也可放入围栏持续生产金币。玩家通过积累金币和训练奔跑能力,不断挑战更远、更稀有的领地。

核心体验包括:

  • 寻找不同种类和品质的蛋。
  • 偷蛋后躲避动物追逐。
  • 使用武器和捕兽夹与其他玩家争夺掉落蛋。
  • 在即时出售与长期培养之间选择。
  • 培养宠物、生产金币并提升玩家能力。
  • 在周期性刷新中争夺随机出现的高价值领地。

2. 基本技术架构

游戏由客户端、专用服务器、业务后端和持久化数据库组成。

2.1 游戏客户端

客户端负责登录、服务器选择、玩家输入、画面、动画、音效和界面表现,并向专用服务器提交游戏操作请求。

客户端不直接决定金币变化、物品归属、攻击结果、蛋的品质或孵化结果。

本项目使用 VibeUE 插件作为 AI 辅助开发工具,通过 MCP 将 AI 助手与 Unreal Editor 连接,辅助检查蓝图与资源配置、排查问题及执行编辑器操作。

2.2 专用服务器

专用服务器是游戏世界实时状态的权威,负责:

  • 玩家移动、交互、攻击和捕兽夹判定。
  • 快捷栏与当前手持物品状态。
  • 蛋的拾取、携带、掉落和偷取成功判定。
  • 动物行为与追逐目标判定。
  • 安全区、玩家区域、围栏和领地管理。
  • 世界刷新周期和随机稀有领地。
  • 与业务后端交换需要保存的玩家数据。

2.3 业务后端与数据库

业务后端负责账户认证、服务器列表、玩家会话和长期数据管理,并保证同一账户不能同时进入多个游戏世界。

数据库保存账户、金币、升级、快捷栏、蛋、宠物、围栏状态及玩家在线状态等长期数据。

3. 游戏世界

3.1 世界实例

每个专用服务器进程承载一个独立游戏世界。不同世界分别维护自己的在线玩家、领地刷新周期、随机稀有领地、世界掉落蛋和捕兽夹。

3.2 安全区

每个世界存在一个唯一安全区,包含:

  • 8 个预先设置的玩家区域。
  • 每名玩家的宠物围栏和跑步机。
  • 出售蛋和宠物的商店。
  • 通往动物领地的唯一入口。

安全区内:

  • 不能攻击。
  • 不能放置捕兽夹。
  • 动物不能进入。
  • 玩家正常携带被盗蛋越过安全区判定线时,偷取立即成功。
  • 刷新遣返、复活和其他系统传送不会触发偷取成功。

3.3 玩家区域

玩家进入世界后,从关卡预先设置的 8 个空闲区域中获得一个区域。区域包含该玩家的围栏、跑步机和相关展示设施。玩家离开世界后,该区域被释放。

3.4 动物领地与道路

安全区和动物领地之间只有一个入口及一条主要道路。多个长方体动物领地从安全区边缘开始沿道路排列。

每个动物领地包含:

  • 一只领地动物。
  • 若干枚大小和品质不同的蛋。
  • 与动物种类对应的主题环境。

例如,北极熊领地表现为寒冷的极地环境。

3.5 固定领地槽位

关卡预先准备固定领地槽位。其位置、范围、动物种类、环境主题和基础场景结构不随刷新改变。

每轮刷新时,固定领地只重新生成蛋的数量、品质和摆放位置,并将动物恢复到初始状态。

3.6 随机稀有领地槽位

关卡预先准备若干随机领地槽位。每轮刷新时,每个游戏世界独立决定是否激活额外的稀有动物领地。

稀有领地包含随机稀有动物、特殊主题环境和更高品质的蛋,仅在当前世界的当前刷新周期内有效。

4. 世界刷新周期

4.1 开放阶段

动物领地每轮开放 5 分钟。开放期间,玩家可以进入领地、拾取蛋、攻击其他玩家、放置捕兽夹、争夺掉落蛋并将蛋带回安全区。

界面显示距离下一次刷新剩余的时间,并在临近刷新时给予明显提示。

4.2 刷新阶段

开放时间结束后,世界进入持续 10 秒的刷新阶段:

  1. 禁止新的拾蛋行为并中断正在进行的拾取。
  2. 尚未带回安全区的临时被盗蛋不会结算成功。
  3. 所有安全区外玩家被服务器强制遣返回安全区。
  4. 遣返不视为玩家主动进入安全区。
  5. 通往动物领地的唯一入口被封锁。
  6. 清理上一周期的世界掉落蛋和领地区域内的捕兽夹。
  7. 重置固定领地动物并重新生成蛋。
  8. 随机决定并生成额外的稀有领地、动物和高品质蛋。

10 秒后入口重新开放,开始下一轮 5 分钟倒计时。

5. 玩家系统

5.1 长期数据

玩家长期数据包括:

  • 金币。
  • 奔跑能力和相关升级。
  • 跑步机等级。
  • 围栏等级与容量。
  • 快捷栏容量、格子和物品。
  • 拥有的蛋和宠物。
  • 围栏中蛋的成长状态。
  • 围栏中宠物的生产状态。

5.2 单一世界登录

同一玩家账户不能同时进入多个专用服务器。玩家进入一个世界后,只有在正常退出、连接失效或原世界不可用后,才能进入另一个世界。

5.3 跑步机

每个玩家拥有一台跑步机。玩家站在跑步机上时持续提升奔跑能力。跑步机等级越高,能力提升速度越快。相关成长在离开当前世界后依然保留。

6. 快捷栏与手持物品

6.1 快捷栏

快捷栏是玩家唯一的随身库存,同时承担背包功能,表现为屏幕正下方的一排格子,不存在额外的传统背包界面。

  • 快捷栏具有容量上限。
  • 可以保存武器、捕兽夹、蛋和宠物。
  • 内容在退出游戏或切换世界后依然保存。
  • 可叠加物品可以占用一个格子并显示数量。
  • 具有独立属性的蛋和宠物分别占用独立格子。

6.2 手持物品

玩家可以选中一个快捷栏格子,被选中的物品显示在角色手中。玩家任意时刻只能手持并使用一种物品,包括武器、捕兽夹、蛋或宠物。

6.3 默认道具

玩家拥有一把默认攻击性武器和 3 个捕兽夹。

捕兽夹规则:

  • 不能放置在安全区内。
  • 不会触发放置者本人。
  • 可以限制其他玩家的行动。
  • 玩家离开世界时,其已放置的捕兽夹被清理。
  • 世界刷新时,领地区域内的捕兽夹被清理。

7. 偷蛋玩法

7.1 拾取蛋

玩家靠近蛋后,可以进行持续约 1 至 2 秒的拾取。

成功拾取要求:

  • 玩家没有正在携带另一枚被盗蛋。
  • 快捷栏存在空格。
  • 蛋仍然可以被拾取。
  • 拾取过程没有因移动、受击或其他原因中断。

拾取成功后,蛋临时占用一个快捷栏格子,并自动成为当前手持物品。

7.2 强制持蛋状态

玩家携带尚未成功带回安全区的蛋时:

  • 不能切换快捷栏。
  • 不能使用武器。
  • 不能放置捕兽夹。
  • 不能拾取另一枚蛋。
  • 蛋始终显示在手中。
  • 可以继续移动、奔跑和跳跃。
  • 可以主动丢弃蛋。

7.3 主动丢弃

强制持蛋期间,界面显示“丢弃”操作。玩家主动丢弃后,蛋从临时快捷栏格移除并掉落在附近合法地面位置,玩家解除强制持蛋状态。

主动丢弃与受到动物攻击后的掉蛋采用相同规则。

7.4 偷取成功

玩家通过正常移动携带被盗蛋越过安全区判定线时:

  • 蛋转为玩家正式拥有的蛋。
  • 蛋正式保存在快捷栏中。
  • 快捷栏解除锁定。
  • 玩家可以再次切换和使用其他物品。
  • 动物停止追逐并返回领地。
  • 玩家以后携带该蛋离开安全区,不会再次触发追逐。

系统传送进入安全区不会触发偷取成功。

8. 动物追逐

8.1 睡眠与苏醒

动物默认在自己的领地中睡眠。所属蛋被玩家拿起后,动物苏醒并开始追逐偷蛋者。

8.2 追逐目标

动物只追逐仍携带其所属被盗蛋、且尚未进入安全区的玩家。

如果当前目标失效,而其他玩家仍携带该动物的被盗蛋,动物可以选择距离自己最近的合法目标继续追逐。

动物可以追到安全区入口外,但不能进入安全区。

8.3 攻击与掉蛋

动物追上玩家后会攻击并击飞玩家。攻击成功后,玩家携带的临时被盗蛋掉落,其他玩家可以再次拾取。

如果蛋掉落在所属动物领地内,则自动回到领地中的合法位置;否则留在掉落位置,直到被再次拾取或世界刷新。

无论蛋在何处被再次拾取,只要它尚未被成功带回安全区,所属动物都会重新苏醒并追逐新的携带者。

8.4 返回领地

玩家成功带蛋进入安全区、当前没有合法目标或世界进入刷新阶段时,动物停止追逐并返回自己的领地,随后重新进入睡眠状态。

9. 宠物围栏与蛋

9.1 围栏容量

每名玩家拥有一个固定大小的矩形宠物围栏。围栏具有容量上限,并可随围栏等级提升。成长中的蛋和已放置宠物都会占用容量。

9.2 放置蛋

玩家可以将快捷栏中已成功偷取的蛋放入自己的围栏。

放置后:

  • 蛋从快捷栏移除。
  • 蛋占用一个围栏位置。
  • 蛋开始成长。
  • 蛋不能再取回快捷栏。
  • 蛋不能直接出售。

将蛋放入围栏是不可逆操作。

9.3 蛋成长

蛋只有放置在围栏中才会成长,不同蛋可以具有不同的成长时间。

蛋在玩家离线期间继续成长,暂不设置离线成长上限。成长完成后,蛋进入“可以孵化”状态,但不会自动孵化。

9.4 手动孵化

围栏蛋管理界面列出围栏中的蛋,显示其类型、品质、成长进度、剩余时间和是否可以孵化。

成长完成后,玩家必须手动点击“孵化”:

  • 快捷栏必须存在空格。
  • 原蛋从围栏中移除。
  • 孵化出的宠物进入快捷栏。
  • 原蛋占用的围栏位置被释放。
  • 快捷栏已满时不能孵化,蛋继续保持“可以孵化”状态。

10. 宠物

10.1 快捷栏中的宠物

孵化出的宠物首先进入快捷栏。玩家可以:

  • 选中并手持宠物。
  • 将宠物放入自己的围栏。
  • 将宠物带到商店出售。

快捷栏中的宠物不会生产金币。

10.2 围栏中的宠物

宠物放入围栏后占用一个位置,在围栏内展示和活动,并持续为玩家生产金币。

宠物在玩家离线期间继续生产金币,目前不设置离线收益上限。

10.3 卸下宠物

围栏宠物管理界面列出已经放置的宠物,并提供“卸下”操作。

卸下时:

  • 快捷栏必须存在空格。
  • 宠物从围栏进入快捷栏。
  • 宠物停止生产金币。
  • 宠物占用的围栏位置被释放。

快捷栏已满时不能卸下宠物。

10.4 宠物活动

围栏中的宠物可以拥有简单的巡逻和展示行为。宠物不参与战斗,也不会影响其他玩家。

11. 金币与商店

11.1 金币来源

玩家可以通过以下方式获得金币:

  • 出售快捷栏中的蛋。
  • 出售快捷栏中的宠物。
  • 由围栏中的宠物持续生产。

11.2 出售规则

安全区内设有出售蛋和宠物的商店。所有待售物品必须先位于快捷栏中:

  • 已成功偷取且尚未放入围栏的蛋可以出售。
  • 快捷栏中的宠物可以出售。
  • 尚未成功带回安全区的临时蛋不能出售。
  • 围栏中的蛋不能出售,也不能取回。
  • 围栏中的宠物不能直接出售,必须先卸下到快捷栏。

不同类型和品质的蛋、宠物具有不同售价。

11.3 宠物生产

每只围栏宠物持续生产金币,其效率可以随种类和品质变化。玩家离线后依然继续生产,暂不设置离线收益上限。

Discussion

留言讨论

无需注册账号
正在加载留言区…

发表留言时,评论服务会记录必要的 IP 与 User-Agent 信息,用于安全审核和防止滥用。