Files
TurboSu/docs/FH_DATA_FORMAT.md
T

8.8 KiB
Raw Blame History

《极限竞速:地平线》系列 UDP 数据包完整定义

基础信息

属性
协议 UDP(单向发送,游戏不接收数据)
包大小 324 字节(FH6/ 约 311 字节(FH5
发送频率 等于游戏帧率
字节序 Little Endian(小端序)
数据起始 玩家开始驾驶后发送,菜单/暂停/回放时不发送

FH6 和 FH5 的数据包基本兼容,主要差异是 FH6 新增了 CarGroupSmashableVelDiffSmashableMass 三个字段。


类型符号说明

符号 含义 示例
S8 / S32 有符号整数(signed S8 范围 -128~127
U8 / U16 / U32 无符号整数(unsigned U8 范围 0~255
F32 32位浮点数(float 小端序

完整数据包结构(按顺序)

第 1 部分:状态和时间(8 字节)

偏移 大小 类型 字段 说明
0 4 S32 IsRaceOn 1=比赛中,0=菜单/停止
4 4 U32 TimestampMS 时间戳(毫秒,会溢出归零)

第 2 部分:引擎数据(12 字节)

偏移 大小 类型 字段 说明
8 4 F32 EngineMaxRpm 引擎最大转速
12 4 F32 EngineIdleRpm 引擎怠速转速
16 4 F32 CurrentEngineRpm 当前引擎转速

第 3 部分:加速度与速度(24 字节,车身坐标系 X=右, Y=上, Z=前)

偏移 大小 类型 字段
20 4 F32 AccelerationX
24 4 F32 AccelerationY
28 4 F32 AccelerationZ
32 4 F32 VelocityX
36 4 F32 VelocityY
40 4 F32 VelocityZ

第 4 部分:角速度与方向(24 字节)

偏移 大小 类型 字段 说明
44 4 F32 AngularVelocityX 俯仰(rad/s
48 4 F32 AngularVelocityY 偏航(rad/s
52 4 F32 AngularVelocityZ 侧倾(rad/s
56 4 F32 Yaw 偏航角(弧度)
60 4 F32 Pitch 俯仰角(弧度)
64 4 F32 Roll 侧倾角(弧度)

第 5 部分:悬挂行程(16 字节,归一化 0=最大拉伸, 1=最大压缩)

偏移 大小 类型 字段
68 4 F32 NormalizedSuspensionTravelFrontLeft
72 4 F32 NormalizedSuspensionTravelFrontRight
76 4 F32 NormalizedSuspensionTravelRearLeft
80 4 F32 NormalizedSuspensionTravelRearRight

第 6 部分:轮胎滑移比(16 字节,0=100%抓地力,|ratio|>1=失去抓地力)

偏移 大小 类型 字段
84 4 F32 TireSlipRatioFrontLeft
88 4 F32 TireSlipRatioFrontRight
92 4 F32 TireSlipRatioRearLeft
96 4 F32 TireSlipRatioRearRight

第 7 部分:车轮转速(16 字节,弧度/秒)

偏移 大小 类型 字段
100 4 F32 WheelRotationSpeedFrontLeft
104 4 F32 WheelRotationSpeedFrontRight
108 4 F32 WheelRotationSpeedRearLeft
112 4 F32 WheelRotationSpeedRearRight

第 8 部分:车轮状态(16 字节,0/1布尔值)

偏移 大小 类型 字段
116 4 S32 WheelOnRumbleStripFrontLeft
120 4 S32 WheelOnRumbleStripFrontRight
124 4 S32 WheelOnRumbleStripRearLeft
128 4 S32 WheelOnRumbleStripRearRight

第 9 部分:涉水深度(16 字节,FH5 为深度值,FH6 为 0/1)

偏移 大小 类型 字段
132 4 S32/F32 WheelInPuddleFrontLeft
136 4 S32/F32 WheelInPuddleFrontRight
140 4 S32/F32 WheelInPuddleRearLeft
144 4 S32/F32 WheelInPuddleRearRight

⚠️ FH5 为 F32(水深值),FH6 为 S32(0/1布尔值)

第 10 部分:路面震动反馈(16 字节)

偏移 大小 类型 字段
148 4 F32 SurfaceRumbleFrontLeft
152 4 F32 SurfaceRumbleFrontRight
156 4 F32 SurfaceRumbleRearLeft
160 4 F32 SurfaceRumbleRearRight

第 11 部分:轮胎滑移角(16 字节)

偏移 大小 类型 字段
164 4 F32 TireSlipAngleFrontLeft
168 4 F32 TireSlipAngleFrontRight
172 4 F32 TireSlipAngleRearLeft
176 4 F32 TireSlipAngleRearRight

第 12 部分:轮胎复合滑移(16 字节)

偏移 大小 类型 字段
180 4 F32 TireCombinedSlipFrontLeft
184 4 F32 TireCombinedSlipFrontRight
188 4 F32 TireCombinedSlipRearLeft
192 4 F32 TireCombinedSlipRearRight

第 13 部分:实际悬挂行程(16 字节,单位:米)

偏移 大小 类型 字段
196 4 F32 SuspensionTravelMetersFrontLeft
200 4 F32 SuspensionTravelMetersFrontRight
204 4 F32 SuspensionTravelMetersRearLeft
208 4 F32 SuspensionTravelMetersRearRight

第 14 部分:车辆信息(20 字节)

偏移 大小 类型 字段 说明
212 4 S32 CarOrdinal 车辆唯一ID
216 4 S32 CarClass 等级 0(D) ~ 7(X)
220 4 S32 CarPerformanceIndex 性能指数 100~999
224 4 S32 DrivetrainType 0=FWD, 1=RWD, 2=AWD
228 4 S32 NumCylinders 引擎气缸数

第 15 部分:FH6 新增字段(12 字节)⚠️

偏移 大小 类型 字段 说明
232 4 U32 CarGroup 车辆组标识(FH6新增)
236 4 F32 SmashableVelDiff 可破坏物体碰撞速度损失(m/s)
240 4 F32 SmashableMass 碰撞物体质量(kg)

⚠️ FH5 没有这三个字段,此位置为 12 字节的占位数据(HorizonPlaceholder

第 16 部分:坐标与速度(16 字节)

偏移 大小 类型 字段 说明
244 4 F32 PositionX 世界坐标 X(米)
248 4 F32 PositionY 世界坐标 Y(米)
252 4 F32 PositionZ 世界坐标 Z(米)
256 4 F32 Speed 速度(m/s

第 17 部分:动力与温度(24 字节)

偏移 大小 类型 字段 说明
260 4 F32 Power 功率(瓦特)
264 4 F32 Torque 扭矩(牛·米)
268 4 F32 TireTempFrontLeft 轮胎温度
272 4 F32 TireTempFrontRight 轮胎温度
276 4 F32 TireTempRearLeft 轮胎温度
280 4 F32 TireTempRearRight 轮胎温度

第 18 部分:增压与燃油(8 字节)

偏移 大小 类型 字段 说明
284 4 F32 Boost 涡轮增压值(PSI,高于大气压)
288 4 F32 Fuel 燃油量(0.0~1.0

第 19 部分:里程与圈时(28 字节)

偏移 大小 类型 字段 说明
292 4 F32 DistanceTraveled 总行驶距离(米)
296 4 F32 BestLap 最佳圈时(秒)
300 4 F32 LastLap 上一圈用时(秒)
304 4 F32 CurrentLap 当前圈用时(秒)
308 4 F32 CurrentRaceTime 总比赛时间(秒)

第 20 部分:比赛信息(6 字节)

偏移 大小 类型 字段 说明
312 2 U16 LapNumber 已完成圈数
314 1 U8 RacePosition 当前排名位置

第 21 部分:玩家输入(6 字节,值范围 0~255)

偏移 大小 类型 字段 说明
315 1 U8 Accel 油门(0~255
316 1 U8 Brake 刹车(0~255
317 1 U8 Clutch 离合器(0~255
318 1 U8 HandBrake 手刹(0~255
319 1 U8 Gear 当前档位

第 22 部分:转向与AI3 字节)

偏移 大小 类型 字段 说明
320 1 S8 Steer 转向(-127左 ~ 0中 ~ 127右)
321 1 S8 NormalizedDrivingLine 归一化赛道线(-127~127
322 1 S8 NormalizedAIBrakeDifference AI刹车差异(-127~127

快速参考:字段总数

  • FH6:约 77 个字段,总计 324 字节
  • FH5:约 74 个字段(比 FH6 少 CarGroup/SmashableVelDiff/SmashableMass),总计 约 311 字节
  • FH4:和 FH5 基本一致