调用 UGCMultiMode.RequestMatch(ModeID, ...) 时,RequestMatch 只负责提交子模式 ID 和匹配参数,并不会直接查找或加载 GameModeActorMgr 蓝图。
真正的映射发生在匹配成功、对应子模式服务器启动之后。服务器读取当前 ModeID,查询 UGCGameModeConfig 数据表中的同名行,从 GameModeActorMgr 字段取得蓝图路径,最后交给 UGCLevelFlowSystem.EnableLevelFlow。
大厅选择 ModeID
↓
UGCMultiMode.RequestMatch(ModeID, ...)
↓
匹配系统按 ModeID 启动对应子模式服务器
↓
UGCGameMode:ReceiveBeginPlay()
├─ UGCMultiMode.GetModeID()
├─ 查询 UGCGameModeConfig.uasset
│ ModeID → GameModeActorMgr
└─ UGCLevelFlowSystem.EnableLevelFlow(GameModeActorMgr 完整路径)
排查多模式流程未启动时,应从服务器启动后的配置表映射开始检查,而不是只盯着大厅侧的 RequestMatch。
Discussion
留言讨论
发表留言时,评论服务会记录必要的 IP 与 User-Agent 信息,用于安全审核和防止滥用。