找回密码
 registerss
搜索

洱海月 v0-07-0300 封包解析:ID 100 CGStopTeamFollow(退出组队跟随)

[复制链接]
Waylee 发表于 2026-4-12 01:54 | 显示全部楼层 |阅读模式 | Google Chrome | Windows 10

马上注册,查看网站隐藏内容!!

您需要 登录 才可以下载或查看,没有账号?registerss

×

CGStopTeamFollow 是旧版客户端里用于退出组队跟随状态的请求包。

包信息

项目 内容
封包 ID 100
包名 CGStopTeamFollow
对应回包 GCReturnTeamFollow / GCTeamFollowList
回包 ID 346 / 547
作用 退出当前组队跟随状态

包体结构

这条包是空包,不携带任何业务参数。

偏移 长度 字段 类型 含义
- 0x00 无 - 空包,无附带参数

总长度:

0 字节

当前实际行为

  • 当前 Lua 服务端收到后,会直接进入场景服处理。
  • 处理入口是 scenecore:char_stop_team_follow()。
  • 最终实际逻辑在 human:stop_team_follow()。
  • 如果当前角色不是组队跟随状态,这条包不会产生额外回包。
  • 如果是普通跟随成员,当前角色会退出跟随,并收到一条 GCReturnTeamFollow。
  • 如果是队长停止组队跟随,会把当前跟随列表中的成员全部退出跟随,并广播新的 GCTeamFollowList。

结果值

GCReturnTeamFollow 里与这条包直接相关的结果值是:

项目 值 含义
TF_RESULT_STOP_FOLLOW 2 退出组队跟随状态

服务端落点

这条包在当前项目里的关键位置如下:

  • 协议定义:
    • services/game/packet.lua
  • 请求入口:
    • services/msgagent.lua
  • 场景服入口:
    • services/scene/scenecore.lua
  • 实际停止逻辑:
    • services/scene/obj/human.lua

关键代码

空包定义

packet.CGStopTeamFollow = {
    xy_id = packet.XYID_CG_STOP_TEAM_FOLLOW,
    bis = function(self, buffer)
        local stream = bistream.new()
        stream:attach(buffer)
    end
}

请求入口

function request:CGStopTeamFollow()
    skynet.call(my_scene, "lua", "char_stop_team_follow", my_obj_id, self)
end

场景服处理

function scenecore:char_stop_team_follow(who)
    local obj_me = self.objs[who]
    obj_me:stop_team_follow()
end

实际停止逻辑

if self:get_team_follow_flag() then
    if self:get_is_team_leader() then
        ...
        msg.return_type = define.TEAM_FOLLOW_RESULT.TF_RESULT_STOP_FOLLOW
        ...
    else
        ...
        msg.return_type = define.TEAM_FOLLOW_RESULT.TF_RESULT_STOP_FOLLOW
        ...
    end
end

结论

CGStopTeamFollow 这条包本质上就是“退出组队跟随”的空请求包。

当前项目里真正要记住的只有四点:

  1. 这条包的 ID 是 100。
  2. 包体长度是 0,没有任何请求参数。
  3. 当前 Lua 里它最终调用的是 human:stop_team_follow()。
  4. 成功退出后,相关角色会收到 GCReturnTeamFollow(return_type = 2),队长停止时还会刷新 GCTeamFollowList。
您需要登录后才可以回帖 登录 | registerss

本版积分规则

QQ|手机版|雪舞知识库 ( 浙ICP备15015590号-1 | 萌ICP备20232229号|浙公网安备33048102000118号 )

GMT+8, 2026-10-24 13:57 , Processed in 0.026142 second(s), 27 queries .

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表