找回密码
 registerss
搜索

洱海月 v0-07-0300 封包解析:ID 110 CGGuildJoin(申请加入帮会)

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

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

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

×

CGGuildJoin 是旧版客户端里用于申请加入指定帮会的请求包。

包信息

项目 内容
封包 ID 110
包名 CGGuildJoin
对应回包 GCGuildReturn
回包 ID 604
作用 向指定帮会提交加入申请

包体结构

按当前 Game.exe 与 Lua 现状,这条包只有一个帮会编号字段。

偏移 长度 字段 类型 含义
0x00 0x02 guild_id int16 目标帮会 ID

总长度:

2 字节

当前实际行为

  • 当前 Lua 服务端收到后,会进入 ma_guild:CGGuildJoin()。
  • 当前实现会把当前角色插入该帮会的 PREPARE 状态。
  • PREPARE 在当前项目里就是“申请列表等待批准”。
  • 如果成功取到帮会信息,会回一条 GCGuildReturn。
  • 回包类型是 GUILD_RETURN_JOIN = 2。
  • 这条回包的语义不是“已经正式入帮”,而是“加入申请已提交,等待批准”。

返回结果

与这条包直接相关的当前返回值如下:

项目 值 含义
GUILD_RETURN_JOIN 2 加入申请列表,等待批准

服务端落点

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

  • 协议定义:
    • services/game/packet.lua
  • 请求入口:
    • services/msgagent.lua
  • 帮会业务处理:
    • msgagent_module/ma_guild.lua

关键代码

协议字段

packet.CGGuildJoin = {
    xy_id = packet.XYID_CG_GUILD_JOIN,
    bis = function(self, buffer)
        local stream = bistream.new()
        stream:attach(buffer)
        self.guild_id = stream:readshort()
    end
}

请求入口

function request:CGGuildJoin()
    ma_func:CGGuildJoin(self)
end

当前 Lua 处理

function ma_guild:CGGuildJoin(request)
    local guild_id = request.guild_id
    self:insert_my_guild_uinfo(guild_id, define.GUILD_POISTION.PREPARE)
    local cg = {}
    cg.guild_id = guild_id
    local guild = skynet.call(".Guildmanager", "lua", "ask_guild_info", cg)
    if guild then
        local msg = packet_def.GCGuildReturn.new()
        msg.return_type = define.GUILD_RETURN_TYPE.GUILD_RETURN_JOIN
        msg.id = guild_id
        msg.confederate_id = guild.confederate_id
        msg.name = guild.name
        self:send2client(msg)

        skynet.send(".Guildmanager", "lua", "on_new_prepare", guild_id)
    end
end

结论

CGGuildJoin 这条包本质上就是“向指定帮会发起加入申请”的请求包。

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

  1. 这条包的 ID 是 110。
  2. 包体长度是 2 字节,只有一个 guild_id。
  3. 当前 Lua 实现里,这条包对应的是“进入帮会申请列表等待批准”,不是直接正式入帮。
  4. 成功回包是 GCGuildReturn(return_type = 2)。
您需要登录后才可以回帖 登录 | registerss

本版积分规则

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

GMT+8, 2026-10-24 13:02 , Processed in 0.026545 second(s), 26 queries .

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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