找回密码
 registerss
搜索
查看: 27|回复: 0

洱海月 v0-07-0300 封包解析:ID 041 GCNewMonster_SkillChannel(怪物持续施法出生包)

[复制链接]
  • 打卡等级:本地老炮
  • 打卡总天数:603
  • 打卡月天数:1
  • 打卡总奖励:600
  • 最近打卡:2026-10-03 06:32:28
Waylee 发表于 2026-4-15 01:51 | 显示全部楼层 |阅读模式 | Google Chrome | Windows 10

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

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

×

包信息

项目 内容
PacketID 41
包名 GCNewMonster_SkillChannel
方向 服务端 -> 客户端
长度 60
主要用途 怪物进入视野时,直接同步其“已处于持续施法中”的出生状态
当前主链状态 客户端仍保留处理逻辑;当前 Lua 主链未发现显式定义和发送链

包体结构

偏移 长度 字段 类型 含义
0 4 m_objID uint32 怪物对象 ID
4 4 model_id int32 怪物模型 ID
8 4 world_pos.x float 当前世界坐标 X
12 4 world_pos.y float 当前世界坐标 Y
16 4 dir float 当前朝向
20 4 speed float 当前速度
24 4 update_version uint32 状态更新版本字段
28 4 logic_count uint32 当前施法逻辑计数
32 4 skill_id uint32 持续施法技能 ID
36 4 target_id uint32 施法目标对象 ID
40 4 target_pos.x float 施法目标点 X
44 4 target_pos.y float 施法目标点 Y
48 4 skill_dir float 施法朝向
52 4 reserved_skill_arg uint32 预留施法参数
56 4 total_time uint32 持续施法总时长

当前实际行为

  • 当前 Game.exe 仍保留 GCNewMonster_SkillChannel 的完整客户端处理逻辑。
  • 客户端收到后会先校验坐标,再按 m_objID + model_id 创建或匹配怪物对象。
  • 随后客户端会应用 update_version,并立即派发一次持续施法事件。
  • 当前 Temp_Release_v0-07-0300 的 Lua 主链里未找到 packet.GCNewMonster_SkillChannel 定义,也未找到显式发送链。

服务端落点

  • /home/ubuntu/Game2/services/game/packet.lua
    • 当前未发现 GCNewMonster_SkillChannel 协议定义
  • /home/ubuntu/Game2/services/scene
    • 当前未发现同名出现包构造和发送逻辑
  • /home/ubuntu/Game2/services/msgagent.lua
    • 当前未发现同名转发链路

关键代码

validate_position(world_pos);
monster = find_or_create_monster(m_objID, model_id);
apply_update_version(monster, update_version);
dispatch_skill_channel_event(
    logic_count,
    skill_id,
    target_id,
    target_pos,
    skill_dir,
    reserved_skill_arg,
    total_time
);

结论

GCNewMonster_SkillChannel 是客户端保留的“怪物出生时已处于持续施法状态”复合包。

当前项目里它同样更适合归类为客户端兼容协议,而不是 Lua 主链现役发送包。

您需要登录后才可以回帖 登录 | registerss

本版积分规则

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

GMT+8, 2026-10-4 11:26 , Processed in 0.062390 second(s), 27 queries .

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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