news 2026/6/15 13:06:40

Netcode for GameObjects Boss Room 多人RPG战斗(13)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Netcode for GameObjects Boss Room 多人RPG战斗(13)

ServerCharacte

概述

ServerCharacter是 Unity Boss Room 项目中服务器端角色逻辑的核心实现,负责管理角色的网络状态、动作执行、AI行为、伤害处理等服务器权威逻辑。它与客户端的ClientCharacter分离,实现了清晰的客户端-服务器架构。

核心功能与设计

1. 组件化架构

ServerCharacter采用组件化设计,通过依赖注入和组件引用管理多个功能模块:

[RequireComponent(typeof(NetworkHealthState),typeof(NetworkLifeState),typeof(NetworkAvatarGuidState))]publicclassServerCharacter:NetworkBehaviour,ITargetable

关键依赖组件:

  • NetworkHealthState:管理角色生命值的网络同步
  • NetworkLifeState:管理角色的生存状态(Alive/Fainted/Dead)
  • ServerActionPlayer:执行角色动作的核心系统
  • ServerCharacterMovement:处理角色移动逻辑
  • AIBrain:AI角色的行为控制器(仅NPC使用)

2. 网络状态管理

ServerCharacter使用NetworkVariable管理所有需要同步的状态,确保服务器权威:

publicNetworkVariable<MovementStatus>MovementStatus{get;}=newNetworkVariable<MovementStatus>();publicNetworkVariable<bool>IsStealthy{get;}=newNetworkVariable<bool>();publicNetworkVariable<ulong>TargetId{get;}=newNetworkVariable<ulong>();publicNetworkVariable<ulong>HeldNetworkObject{get;}=newNetworkVariable<ulong>();

核心状态:

  • 生命值和生存状态(通过NetHealthStateNetLifeState组件)
  • 移动状态和目标位置
  • 隐身状态
  • 当前目标ID
  • 持有物品状态

3. 动作系统集成

ServerCharacter作为动作系统的核心入口,处理客户端的动作请求并执行相应逻辑:

[Rpc(SendTo.Server)]publicvoidServerPlayActionRpc(ActionRequestDatadata){// 处理动作请求PlayAction(refdata);}publicvoid<
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/14 18:03:11

工业设备振动预测不准 后来才知道加小波变换分解多频段特征

&#x1f493; 博客主页&#xff1a;借口的CSDN主页 ⏩ 文章专栏&#xff1a;《热点资讯》 目录AI&#xff1a;我的脑洞比你大 一、创业者的“人工智障”操作 二、AI入侵我的日常生活 1. 智能音箱的“社恐”时刻 2. 医疗AI的“选择困难症” 3. 电商平台的“读心术” 三、AI创作…

作者头像 李华
网站建设 2026/6/13 22:16:51

22、Sendmail 的特殊 m4 配置:从地址重写到中继客户端配置

Sendmail 的特殊 m4 配置:从地址重写到中继客户端配置 1. 地址伪装与通用表 地址伪装是 Sendmail 的一个重要特性,它可以将发件人地址的主机部分重写为标准值,以用于所有外发邮件。 MASQUERADE_DOMAIN 宏和 masquerade_entire_domain 特性允许通用表( genericstable…

作者头像 李华
网站建设 2026/6/10 18:54:34

JVM面试题相关-中级

问题 1&#xff1a;JVM 是什么&#xff1f;它的主要作用是什么&#xff1f;问题 2&#xff1a;JVM 的整体架构由哪些部分组成&#xff1f;问题 3&#xff1a;JVM 运行时数据区中&#xff0c;堆和栈的核心区别是什么&#xff1f;问题 4&#xff1a;类加载的全过程分为哪几个阶段…

作者头像 李华
网站建设 2026/6/14 13:19:59

2025年UI框架架构深度解析:从设计哲学到工程实践

2025年UI框架架构深度解析&#xff1a;从设计哲学到工程实践 【免费下载链接】marko A declarative, HTML-based language that makes building web apps fun 项目地址: https://gitcode.com/gh_mirrors/ma/marko 引言&#xff1a;架构决策的技术本质 在当今快速演进的…

作者头像 李华