Unreal Engine 5 RPG Tutorial Series - #6: Damage and Stamina

Gorka Games
27 Feb 202322:08

Summary

TLDR在这个Unreal Engine 5的教程视频中,我们继续深入角色扮演游戏(RPG)系列,专注于完善角色的状态系统。首先,我们修正了健康(Health)和耐力(Stamina)的数值,确保玩家在游戏开始时不会立即死亡。接下来,我们实现了一个简单的耐力系统,当玩家跑步时耐力会减少,并且当耐力耗尽时,玩家将无法继续跑步。此外,我们还探讨了如何通过设置最大行走速度来控制玩家的跑步速度。最后,我们讨论了如何通过Tick事件在玩家站立不动时逐渐恢复耐力。视频还提到了未来计划,包括改进动画、完成经验值(XP)和等级系统,以及添加战斗系统。

Takeaways

  • 🚀 在Unreal Engine 5的RPG系列教程中,本集将重点修复和完善角色的统计系统,包括健康、耐力、经验值和等级。
  • 🔍 修复了游戏开始时访问玩家HUD的错误,通过使用`Delay Until Next Tick`来确保变量正确赋值。
  • 🛠️ 修改了健康值减少的逻辑,确保健康值不会变成负数,并且在玩家死亡时不会重复调用减少健康值的函数。
  • 🏃 实现了跑步时耐力值的消耗系统,通过设置一个循环定时器来周期性地减少耐力值。
  • 🔁 当耐力值耗尽时,玩家将无法继续跑步,并且耐力值会在玩家停止跑步时逐渐恢复。
  • 🔄 创建了一个`EA Sprint`输入动作,允许玩家通过按键来开始跑步,并在停止按键时恢复耐力值。
  • 🎮 调整了角色的移动速度,定义了跑步和走路的最大速度,以及在跑步状态下如何控制速度变化。
  • 💡 引入了一个布尔变量`Can Sprint`来判断玩家是否有足够的耐力来维持跑步状态。
  • 🛡️ 实现了伤害系统,当玩家受到伤害时,会调用相应的函数来减少健康值,并在玩家死亡时触发死亡事件。
  • 📈 计划在下一集中继续实现经验值和等级系统,并改进UI界面,包括进度条的设计和添加音效。
  • 🤖 未来将添加动画和战斗系统,以增强游戏的互动性和玩家的沉浸感。
  • 📢 鼓励观众如果觉得视频有帮助,可以点赞、订阅频道,并加入Discord服务器以获取更多教程和帮助。

Q & A

  • 在Unreal Engine 5的RPG系列教程中,开发者首先修复了哪个系统的问题?

    -开发者首先修复了健康(health)系统的问题,确保健康值不会变为负数,并且在游戏开始时能够正确访问玩家的HUD。

  • 在教程中,当玩家的生命值降到零以下时会发生什么?

    -当玩家的生命值降到零以下时,会触发一个检查以确保玩家不会立即死亡,除非再次受到伤害。

  • 开发者如何确保在游戏开始时不会尝试访问尚未创建的HUD?

    -开发者通过使用'Delay Until Next Tick'节点来实现一个小延迟,确保在代码执行前HUD变量已经被赋值。

  • 教程中提到了哪些方法来处理玩家受到伤害时的逻辑?

    -教程中提到了使用'Take Any Damage'事件来处理玩家受到伤害时的逻辑,包括减少生命值、检查玩家是否死亡,并在死亡时调用死亡事件。

  • 在实现冲刺(Sprint)功能时,开发者如何控制玩家的移动速度?

    -开发者通过设置一个更高的'Max Walk Speed'值来控制玩家的冲刺速度,并在玩家停止冲刺时将速度设置回正常行走速度。

  • 当玩家的耐力(Stamina)耗尽时,游戏中会发生什么变化?

    -当玩家的耐力耗尽时,玩家将无法继续冲刺,并且耐力条会停止减少,直到玩家开始恢复耐力。

  • 在教程中,开发者如何实现玩家耐力的恢复机制?

    -开发者通过在玩家静止不动时增加耐力值来实现恢复机制,并且通过在玩家开始移动时停止增加耐力值来控制恢复过程。

  • 在教程中,开发者提到了哪些未来计划中的功能或改进?

    -开发者提到了未来计划中的功能包括改进动画、完成XP和等级系统、添加UI的声音和视觉效果,以及开始构建战斗系统。

  • 开发者如何使用预设来简化颜色的选择和应用?

    -开发者通过创建一个颜色预设,然后在需要使用该颜色的地方拖拽预设,从而简化了颜色的选择和应用过程。

  • 在教程中,开发者如何解决了玩家在冲刺时不受控制的问题?

    -开发者通过在玩家冲刺时设置一个布尔值'Can Sprint',并在耐力耗尽时将其设置为false,从而解决了玩家在冲刺时不受控制的问题。

  • 教程中提到的'Event Tick'是什么,它在游戏中扮演什么角色?

    -'Event Tick'是一个每帧都会触发的事件,开发者使用它来检测玩家是否在移动,并根据玩家的移动状态来增加或停止增加耐力。

  • 在教程的最后,开发者提到了哪些社区互动的方式?

    -开发者提到了通过点赞视频、订阅频道以及加入Discord服务器来分享进度和提问,作为社区互动的方式。

Outlines

plate

هذا القسم متوفر فقط للمشتركين. يرجى الترقية للوصول إلى هذه الميزة.

قم بالترقية الآن

Mindmap

plate

هذا القسم متوفر فقط للمشتركين. يرجى الترقية للوصول إلى هذه الميزة.

قم بالترقية الآن

Keywords

plate

هذا القسم متوفر فقط للمشتركين. يرجى الترقية للوصول إلى هذه الميزة.

قم بالترقية الآن

Highlights

plate

هذا القسم متوفر فقط للمشتركين. يرجى الترقية للوصول إلى هذه الميزة.

قم بالترقية الآن

Transcripts

plate

هذا القسم متوفر فقط للمشتركين. يرجى الترقية للوصول إلى هذه الميزة.

قم بالترقية الآن
Rate This

5.0 / 5 (0 votes)

الوسوم ذات الصلة
Unreal Engine 5RPG系列状态系统角色扮演游戏开发教程健康系统耐力系统经验值等级系统蓝图编程游戏机制
هل تحتاج إلى تلخيص باللغة الإنجليزية؟