用途:这是一份以 com.unity.netcode.gameobjects 2.x 源码为依据的多人联机设计规则参考,每条规则都标注具体文件与行号以便复核。它用于在编写或审查多人代码前查阅,覆盖 NetworkBehaviour 脚本、NetworkManager 启动与场景切换、NetworkObject 的 Spawn/Despawn/ChangeOwnership/TrySetParent、UnityTransport 配置,以及任何依据 IsHost/IsServer/IsClient/IsOwner 分支的代码。
主要能力:归纳出十条关键规则,例如 Spawn()/Despawn() 只能在服务器或主机调用;OnNetworkSpawn() 在 Unity Start() 之前、Awake/OnEnable 之后运行;旧式 [ServerRpc] 方法名须以 ServerRpc 结尾,[ClientRpc] 须以 ClientRpc 结尾;新式 [Rpc(SendTo.X)] 无命名约束且 SendTo 有 11 个取值;PlayerPrefab 必须存在于 NetworkPrefabsList 或 NetworkConfig.Prefabs;禁止嵌套 NetworkObject,运行时用 TrySetParent 改父级;NetworkVariable<T> 要求 T 为非托管或实现 INetworkSerializable;NetworkList<T> 要求 T: unmanaged, IEquatable<T>;NetworkSceneManager.LoadScene/UnloadScene 仅限服务器;UnityTransport.SetRelayServerData 与 SetConnectionData 互斥。
使用方式:本模块为文档,无 REST 技能门槛,可在任意运行模式下自由加载。子文档按需查阅:LIFECYCLE.md 生命周期与回调顺序,OWNERSHIP.md 权限矩阵与分布式权威,RPC.md RPC 属性与 SendTo 语义,VARIABLES.md 变量初始化与序列化约束,SPAWNING.md 预制体注册到生成流程,SCENE.md 场景管理,TRANSPORT.md 直连/Relay/DebugSimulator 配置,PITFALLS.md 30 条常见误区。生成 NetworkBehaviour 脚本应改用功能模块的 netcode_add_network_behaviour_script,批量挂载组件用 netcode 模块 Components 技能,架构决策可同时加载 architecture。
适用场景与限制:适用于多人联机代码的设计与审查阶段,目标版本为 2.x(对 2.11.0、Unity 6000.0+ 验证);部分 API 如 SendTo.Authority、RpcInvokePermission 及通用 [Rpc] 属性在 1.x 中不存在。具体安装命令与更多用法资料暂未提供。