Skip to content
Emil Zhai edited this page Oct 25, 2022 · 5 revisions

战斗日志JCL

综述

战斗日志文件 *.jcl,为纯文本文件,由游戏事件驱动,每一行都是来自不同的事件。

通用

160021270	2354545	1619540300	12706475	21	{LUA DATA}

每条战斗日志都形如上方示例,其意义分别是 CRC校验码(废弃)游戏逻辑帧Unix时间戳客户端毫秒数事件类型枚举值对应事件类型的数据LuaData序列化

事件类型与数据结构

LOG_TYPE = {
	FIGHT_TIME                            = 1,  -- 战斗时间
	PLAYER_ENTER_SCENE                    = 2,  -- 玩家进入场景
	PLAYER_LEAVE_SCENE                    = 3,  -- 玩家离开场景
	PLAYER_INFO                           = 4,  -- 玩家信息数据
	PLAYER_FIGHT_HINT                     = 5,  -- 玩家战斗状态改变
	NPC_ENTER_SCENE                       = 6,  -- NPC 进入场景
	NPC_LEAVE_SCENE                       = 7,  -- NPC 离开场景
	NPC_INFO                              = 8,  -- NPC 信息数据
	NPC_FIGHT_HINT                        = 9,  -- NPC 战斗状态改变
	DOODAD_ENTER_SCENE                    = 10, -- 交互物件进入场景
	DOODAD_LEAVE_SCENE                    = 11, -- 交互物件离开场景
	DOODAD_INFO                           = 12, -- 交互物件信息数据
	BUFF_UPDATE                           = 13, -- BUFF 刷新
	PLAYER_SAY                            = 14, -- 角色喊话(仅记录NPC)
	ON_WARNING_MESSAGE                    = 15, -- 显示警告框
	PARTY_ADD_MEMBER                      = 16, -- 团队添加成员
	PARTY_SET_MEMBER_ONLINE_FLAG          = 17, -- 团队成员在线状态改变
	MSG_SYS                               = 18, -- 系统消息
	SYS_MSG_UI_OME_SKILL_CAST_LOG         = 19, -- 技能施放日志
	SYS_MSG_UI_OME_SKILL_CAST_RESPOND_LOG = 20, -- 技能施放结果日志
	SYS_MSG_UI_OME_SKILL_EFFECT_LOG       = 21, -- 技能最终产生的效果(生命值的变化)
	SYS_MSG_UI_OME_SKILL_BLOCK_LOG        = 22, -- 格挡日志
	SYS_MSG_UI_OME_SKILL_SHIELD_LOG       = 23, -- 技能被屏蔽日志
	SYS_MSG_UI_OME_SKILL_MISS_LOG         = 24, -- 技能未命中目标日志
	SYS_MSG_UI_OME_SKILL_HIT_LOG          = 25, -- 技能命中目标日志
	SYS_MSG_UI_OME_SKILL_DODGE_LOG        = 26, -- 技能被闪避日志
	SYS_MSG_UI_OME_COMMON_HEALTH_LOG      = 27, -- 普通治疗日志
	SYS_MSG_UI_OME_DEATH_NOTIFY           = 28, -- 死亡日志
	TARGET_LOCATION                       = 29, -- 目标坐标信息
}

战斗时间 (FIGHT_TIME)

{ bFighting, szUUID, nDuring }

玩家进入场景 (PLAYER_ENTER_SCENE)

{ dwID }

玩家离开场景 (PLAYER_LEAVE_SCENE)

{ dwID }

玩家信息数据 (PLAYER_INFO)

{ dwID, szName, dwForceID, dwMountKungfuID, nEquipScore, aEquip, aTalent, szGUID }

玩家战斗状态改变 (PLAYER_FIGHT_HINT)

{ dwID, bFight, fCurrentLife, fMaxLife, nCurrentMana, nMaxMana }

NPC 进入场景 (NPC_ENTER_SCENE)

{ dwID }

NPC 离开场景 (NPC_LEAVE_SCENE)

{ dwID }

NPC 信息数据 (NPC_INFO)

{ dwID, szName, dwTemplateID, dwEmployer, nX, nY, nZ }

NPC 战斗状态改变 (NPC_FIGHT_HINT)

{ dwID, bFight, fCurrentLife, fMaxLife, nCurrentMana, nMaxMana }

交互物件进入场景 (DOODAD_ENTER_SCENE)

{ dwID }

交互物件离开场景 (DOODAD_LEAVE_SCENE)

{ dwID }

交互物件信息数据 (DOODAD_INFO)

{ dwID, dwTemplateID, nX, nY, nZ }

BUFF 刷新 (BUFF_UPDATE)

{ dwPlayerID, bDelete, nIndex, bCanCancel, dwBuffID, nStackNum, nEndFrame, bInit, nLevel, dwSkillSrcID, bIsValid, nLeftFrame }

角色喊话(仅记录NPC) (PLAYER_SAY)

{ szText, dwTalkerID, nChannel, szName }

显示警告框 (ON_WARNING_MESSAGE)

{ szWarningType, szText }

团队添加成员 (PARTY_ADD_MEMBER)

{ dwTeamID, dwMemberID, nGroupIndex }

团队成员在线状态改变 (PARTY_SET_MEMBER_ONLINE_FLAG)

{ dwTeamID, dwMemberID, nOnlineFlag }

系统消息 (MSG_SYS)

{ szText, szChannel }

技能施放日志 (SYS_MSG_UI_OME_SKILL_CAST_LOG)

{ arg1, arg2, arg3 }

-- (arg1)dwCaster:技能施放者 (arg2)dwSkillID:技能ID (arg3)dwLevel:技能等级

技能施放结果日志 (SYS_MSG_UI_OME_SKILL_CAST_RESPOND_LOG)

{ arg1, arg2, arg3, arg4 }

-- (arg1)dwCaster:技能施放者 (arg2)dwSkillID:技能ID
-- (arg3)dwLevel:技能等级 (arg4)nRespond:见枚举型[[SKILL_RESULT_CODE]]

技能最终产生的效果(生命值的变化) (SYS_MSG_UI_OME_SKILL_EFFECT_LOG)

{ arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 }

-- (arg1)dwCaster:施放者
-- (arg2)dwTarget:目标
-- (arg3)bReact:是否为反击
-- (arg4)nType:Effect类型
-- (arg5)dwID:Effect的ID
-- (arg6)dwLevel:Effect的等级
-- (arg7)bCriticalStrike:是否会心
-- (arg8)nCount:tResultCount数据表中元素个数
-- (arg9)tResultCount:数值集合

格挡日志 (SYS_MSG_UI_OME_SKILL_BLOCK_LOG)

{ arg1, arg2, arg3, arg4, arg5, arg6 }

-- (arg1)dwCaster:施放者
-- (arg2)dwTarget:目标
-- (arg3)nType:Effect的类型
-- (arg4)dwID:Effect的ID
-- (arg5)dwLevel:Effect的等级
-- (arg6)nDamageType:伤害类型,见枚举型[[SKILL_RESULT_TYPE]]

技能被屏蔽日志 (SYS_MSG_UI_OME_SKILL_SHIELD_LOG)

{ arg1, arg2, arg3, arg4, arg5 }

-- (arg1)dwCaster:施放者
-- (arg2)dwTarget:目标
-- (arg3)nType:Effect的类型
-- (arg4)dwID:Effect的ID
-- (arg5)dwLevel:Effect的等级

技能未命中目标日志 (SYS_MSG_UI_OME_SKILL_MISS_LOG)

{ arg1, arg2, arg3, arg4, arg5 }

-- (arg1)dwCaster:施放者
-- (arg2)dwTarget:目标
-- (arg3)nType:Effect的类型
-- (arg4)dwID:Effect的ID
-- (arg5)dwLevel:Effect的等级

技能命中目标日志 (SYS_MSG_UI_OME_SKILL_HIT_LOG)

{ arg1, arg2, arg3, arg4, arg5 }

-- (arg1)dwCaster:施放者
-- (arg2)dwTarget:目标
-- (arg3)nType:Effect的类型
-- (arg4)dwID:Effect的ID
-- (arg5)dwLevel:Effect的等级

技能被闪避日志 (SYS_MSG_UI_OME_SKILL_DODGE_LOG)

{ arg1, arg2, arg3, arg4, arg5 }

-- (arg1)dwCaster:施放者
-- (arg2)dwTarget:目标
-- (arg3)nType:Effect的类型
-- (arg4)dwID:Effect的ID
-- (arg5)dwLevel:Effect的等级

普通治疗日志 (SYS_MSG_UI_OME_COMMON_HEALTH_LOG)

{ arg1, arg2 }

-- (arg1)dwCharacterID:承疗玩家ID 
--(arg2)nDeltaLife:增加血量值

死亡日志 (SYS_MSG_UI_OME_DEATH_NOTIFY)

{ arg1, arg2 }

-- (arg1)dwCharacterID:死亡目标ID 
-- (arg2)dwKiller:击杀者ID

目标坐标信息 (TARGET_LOCATION)

{ arg1, arg2, arg3, arg4, arg5 }

-- (arg1)dwType: 目标类型
-- (arg2)dwID: 目标ID
-- (arg3)nX: 目标 X 坐标
-- (arg4)nY: 目标 Y 坐标
-- (arg5)nZ: 目标 Z 坐标
Clone this wiki locally