首页 / 总览 / 名词与缩写表

名词与缩写表

读日志、看代码、和策划/服务器沟通时会遇到的所有缩写。按类别分组, 不确定某个词指什么就先查这里。

1. 引擎与工具链

缩写 全称 在本项目里具体指什么
UE Unreal Engine 5 底层引擎。用户使用中文版编辑器,沟通时用中文菜单名(内容浏览器、世界分区)
puerts Pu ERTS 腾讯的 UE ↔ JS/TS 绑定框架。import * as UE from 'ue' 就是它提供的
WP World Partition UE5 世界分区。大世界按 Cell 网格动态流送加载,传送与坠落 bug 的主要来源。机制详解
Cell — WP 的最小流送单位。Activated ≠ 碰撞体已构建,这个差异导致过穿地下坠
DataLayer 数据层 WP 的另一维度分组:按「层」而不是按网格开关一批 Actor。运行时层前缀 DataLayerRuntime_*,六类前缀各管什么
流送源 Streaming Source 决定「以哪个点为中心加载 Cell」的组件。本项目有跟随玩家和锁定落点两盏灯
子关卡 LayerTask 用 DataLayer 实现的关卡内可选区块。服务器只下发名字列表(14528),开关由客户端求差集
HLOD Hierarchical LOD 远距离用的低模代理。看着有地面不代表真实碰撞体在场,是流送假阳性的伴随现象
Level / ULevel 关卡 UE 的关卡对象。跨关卡复制 Actor 忘了迁 ULevel 会导致「丢失 Json」误报
Seq LevelSequence UE 的过场动画序列。结算三阶段镜头 Seq1/Seq2/Seq3 就是它
DA DataAsset UE 的数据资产。相机曲线、材质控制参数等都以 DA 形式给美术填
DT DataTable UE 的数据表。FTableRowBase 派生结构体 + Excel 导出
LGUI — 项目用的 UI 框架。UE.UIItem / UISprite / UIText,注意是 SetUIActive 不是 SetVisibility
PIE Play In Editor 编辑器内运行。Saved/Logs/Client.log 里一个文件可能含多段 PIE
P4 Perforce 版本管理。不要顺手 p4 lock,会挡住同事编辑
gulp — 编辑器代码(Src/UniverseEditor/**)的构建工具,输出 JavaScript_Raw。和 npm run compile 是两条独立流水线

2. 框架与架构

缩写 含义 说明
MVC Model / View / Controller 业务模块标准三件套,全部是进程级单例
ECS Entity Component System 实体侧架构。@RegisterComponent(EComponent.Xxx) 注册组件
Entity 实体 游戏世界里的一个对象(玩家、怪、道具)。通过 EntityHandle 引用
EntityHandle 实体句柄 实体的弱引用包装,实体销毁后句柄失效,不要长期缓存实体本身
Et 前缀 Entity 组件类前缀 EtBoundaryRespawnComponent、EtMoveComponent
Controller 控制器 逻辑与协议收发。ControllerHolder.XxxController(192 个)
Model 数据层 缓存服务器数据。ModelManager.XxxModel(136 个)
Config 配置层 配置表加工与索引。ConfigManager.XxxConfig(47 个)
View / Panel UI 视图 UiViewBase(局部)/ UiPanelBase(整块界面)
Holder — ControllerHolder 是 Controller 的静态注册表,不是设计模式术语

3. 协议与网络

缩写 方向 API
SC Server → Client 服务器发给客户端
CS Client → Server 客户端发给服务器
SCNotify S→C 单向 Net.Register / Net.UnRegister(共 284 条)
CSReq / SCRsp C→S 请求应答 Net.Call / Net.CallAsync(共 252 条)
CSPush C→S 单向 Net.Push,不等回包
proto Protocol Buffers 协议定义源。Protocol.d.ts 是自动生成的,手改会被写回
RTT Round-Trip Time 网络往返延迟,Net.RttMs
主控 / 非主控 authority 本地玩家操控的实体是「主控」。子弹网络类型按这个分权威方
协议号命名规律 五位数字,前两三位是模块段:
147xx 坠落重生 / LoadDone / 150xx 行为树(计时器)/ 155xx 传送 / 205xx 副本(含结算 20528、爬塔星级 20532/20533)/ 237xx 传送点与地图 / 375xx 爬塔局外。
拿到一个陌生协议号,先看段位能缩小范围,精确归属查 协议总索引。

4. 八大模块专有名词

传送

同步瞬移 同一关卡内的位置切换,不重新加载 Level。与「跨关卡传送」走完全不同的路径
无缝传送 不黑屏的同步瞬移。依赖 WP 流送完成判定,假阳性会导致穿地
命令链 场景加载的实现形态:一条 19 节点的命令序列,按入口分五条链。传送只是其中一条
飞天遁地 默认的传送表现:角色向上飞出 → 目标点落下。对应 ShowInfo 的默认值
LoadDone WorldClientSameSceneLoadDoneCSReq = 14716(回包 14717)。客户端告诉服务器「本端准备好了」。漏发会导致服务器永远认为该玩家不可主控。靠 serverMoveVersion 幂等去重
reason 传送原因枚举(REVIVE / GM / ACTION / DROP_RESET / BLACK / ROLLBACK…),决定走哪条表现分支
遮丑黑屏 传送过程中盖住穿帮画面的全屏黑。用引用计数管理,解除回调被覆盖会残留十几秒
贴地预检 解锁移动前在落点周围打 3×3 射线确认碰撞体已就绪,防止穿地下坠
九点探地 贴地预检的具体判据:以服务器下发的落点为中心,在 3×3 网格的 9 个位置各向下打一条射线;9 条全部命中才允许发 LoadDone、解锁移动并撤遮罩。相邻点间距 132cm,向下探测 200cm。
九点探地 · 落点周围 3×3 垂直向下探地 九个采样点在 同一水平面,各沿竖直方向向下打一条射线 200cm 向下探测 132cm 采样点 ×9(同一水平面) 地面命中点 虚线环 = 服务器下发的落点 targetPos(网格中心) 九条全部命中 → 解锁移动、撤遮罩、发 LoadDone;任一条未命中 → 继续等待

副本结算

MVP 本局表现最好的玩家,结算阶段 2 给特写镜头
全家福 结算阶段 3:全队角色一字排开的合影镜头
ProxyActor 结算场景里生成的「替身」角色,不是真实体。站位序 ≠ UI 成员序,混用会导致名字模型错位
Seq1/2/3 结算三阶段的 LevelSequence。Seq1 已改为逐帧 Tween 相机调度
站位序 ProxyActor 在场景里从左到右的顺序,按体型半径累加算出
成员序 UI 列表里的队伍成员顺序。与站位序对齐必须用 uid,不能用同一个下标

爬塔

starMask 星级位掩码。第 i 位为 1 表示第 i 档星级已达成。0b101 = 5 表示第 0、2 档达成
档 / idx 一个副本可配多档星级条件,idx 是档位下标
EdTid / Tid 编辑器多语言 key / 正式多语言 key。EdTid 运行时不导出,只能做兜底
局内 / 局外 副本内实时 HUD(20532/20533)vs 副本外存档展示(375xx)

关卡子弹

TypeId 15 位定长拼装的子弹类型 id,6+5+3+1 分段
Mark 发射器实例的唯一标识。没配 Mark 就无法定向销毁该发射器产生的子弹
环境怪 / EnvMonster 关卡子弹借用怪物系统做的中转载体
Emitter 发射器,关卡里摆的子弹生成点

重生类

坠落重生 掉出世界(低于 SafeDepth)后拉回复活点
边界检查重生 走出策划画的范围盒后拉回。组件 EtBoundaryRespawnComponent
SafeDepth 安全深度阈值,Z 低于它判定为坠落
DoSimpleRespawn 不走完整复活流程的轻量重生(不掉复活次数)

5. 宇宙编辑器

名词 说明
Scheme 描述「一个配置项在编辑器里长什么样」的元数据。决定字段类型、下拉选项、校验规则
createObjectScheme 构造对象型 scheme(一组字段)
createArrayScheme 构造数组型 scheme(可增删的列表)
IgnoreAllFields 「不校验内部字段」的空壳 scheme。编辑用真实 scheme、校验用空壳时不一致,会误报「非法字段」
ImplementType 'Server' 表示该节点逻辑在服务器执行,客户端只负责编辑
OnModify 字段改动时的回调,用于联动其它字段
OnSchemeCheck / OnFix 校验与自动修复。OnFix 能把旧数据升级到新结构
主控树 关卡玩法的行为树。策划在这里摆「开启星级监听」这类节点
Action / 节点 主控树里的一个可执行单元,对应一个 executor

6. 日志、调试与英文术语中文对照

ELogModule 日志模块枚举,第一个参数
ELogAuthor 日志来源枚举,签名第二个参数。按它 grep 能把同一条链路的日志整段捞出来
Client.log Saved/Logs/Client.log,UE 编辑器实时日志,UTC 时间戳,含多段 PIE
Client(N) 用户点名「Client(N)」时指 Downloads 目录下的日志快照,不是 Saved/Logs
GM 命令 调试指令。传送、给道具、跳关都有对应 GM
silent-fail 静默失败:调用没报错、返回值也正常,但功能实际没生效。Camera3 资源缺失就是典型。反面是响亮失败——宁可刷屏报 Error,也别让问题藏着
upsert 有则更新、无则插入。收增量协议时按业务主键 findIndex,找到就改、找不到就 push
前置判断 函数开头「条件不满足就直接 return」的那几行挡门语句(英文常叫 guard clause)。漏一条往往就是一个 bug
提前 return 函数中途直接返回,不走到末尾(英文常叫 early return)。它跳过的收尾动作是 bug 高发区,见 #6 漏发 LoadDone
兜底 正常路径拿不到数据时的保底值或备用方案(英文常叫 fallback)。例:FallbackRespawnText、CameraFallbackDistance = 900
借还式服务 资源必须成对「借出 / 归还」的封装(英文常叫 lease,租约):acquire() 拿句柄、release(handle) 交回,从 API 层面杜绝多 pop 和回调覆盖

7. 沟通场景速查

测试/QA 说「角色不显示」
可能是:实体真隐藏了 / 相机没切过去 / 材质溶解残留 / VisibilityLock 没 pop。 先问「相机视角对不对」,能一句话排除一半。
策划说「配了没生效」
先确认三件事:表导出了没(ConfigTool.Gui.exe)、 主控树上有没有放对应节点、编辑器 scheme 和运行时校验 scheme 是不是同一个。
服务器说「我发了」
让对方给协议号 + 字段值。客户端侧 grep 对应 Net.Register 打的日志, 确认是没收到还是收到没处理——两者根因完全不同。
美术说「资产给了」
确认路径和命名严格匹配代码里的字符串。 资源缺失时很多加载 API 是静默失败,不报错只是没效果。