PAL INFO CUSTOM HUD v0.8.2.1 - 玩家目标安全热修复

- 在读取位置、属性、被动技能、主动技能或 IV 数据之前忽略玩家控制的角色。
- 包括本地玩家、远程多人玩家以及复制状态切换期间的玩家。
- Pal 和人类 NPC 的显示逻辑保持不变。
- 此热修复直接基于稳定版 v0.8.2。

=================================================

PAL INFO CUSTOM HUD v0.8.2 - 骑乘瞄准支持
==============================

这是一个仅客户端使用的 UE4SS 模组。瞄准帕鲁或人类 NPC 时，会在目标上方显示详细信息卡片。

主要功能
--------
- 名称、等级、性别和属性
- 当前/最大生命值
- HP、攻击和防御个体值（IV）
- 攻击、防御和工作速度
- 工作适应性图标与等级
- 主动技能、属性图标和技能威力
- 被动技能与正面/负面分类
- 最多 6 个掉落物、数量范围和掉落概率
- 可调整位置、缩放、背景颜色和透明度
- 内置 F6 设置菜单
- 可选 DekModConfigMenu 同步
- 低频空闲扫描，减少未瞄准目标时的性能影响

语言设置
--------
模组界面始终自动跟随 Palworld 当前语言，不再提供手动语言选项。
支持 English、简体中文、Русский、Português (Brasil) 和 Español；其他语言会安全回退到 English。

帕鲁名称、主动技能、被动技能和掉落物名称仍由 Palworld 提供，并跟随游戏本身的语言。

F6 菜单按键
------------
F1/F2：选择上一项/下一项
F3/F4：减少/增加数值
F5：重置当前选项
F7：重置全部设置
F6：关闭菜单
F8：临时开启/关闭信息卡片

安装
----
1. 安装 UE4SS。
2. 将 PalInfoCustomHUD 文件夹解压到：
   Palworld\Pal\Binaries\Win64\ue4ss\Mods
3. 保留 PalInfoCustomHUD 文件夹内自带的空 enabled.txt。UE4SS 会自动启用模组，不需要编辑 mods.txt。

本模组不会修改存档、帕鲁属性、掉落表或服务器规则，可以在现有存档中安全添加或移除。


自动语言检测
------------
模组启动时会读取 Palworld 当前的 Unreal 语言文化设置，该设置通常跟随 Steam 中选择的游戏语言。界面会自动选择 English、简体中文、Русский、Português (Brasil) 或 Español；其他语言使用 English 作为安全回退。

卡片检测延迟
------------
F6 菜单和 DekMCM 都可以调整卡片检测延迟（0.25 至 3.00 秒）。数值越低，卡片出现越快，但空闲时检查频率更高。推荐默认值为 2.00 秒。


v0.7.8a 自动语言修复
--------------------
修复 UE4SS FString 语言值读取问题，并在游戏启动后再次检测当前语言。

工作适应性图标
----------------
版本 0.7.8b 修正了工作适应性枚举 ID 与游戏原始 T_icon_palwork_00-12 图标之间的对应关系，包括采油和制药。显示的等级数值不受影响。


v0.7.8f 稳定性与本地化修复
主动技能和掉落物品名称不再转换临时 Unreal FText 输出参数，因为部分 UE4SS 实验版本可能因此发生原生崩溃。模组现在从 Palworld 官方的技能名称和物品名称文本表中查找 ID，并通过稳定的主数据本地化接口读取文本。本地化结果仍会按语言缓存。

STEAM 创意工坊设置
------------------
通过 Steam 创意工坊安装时，模组可能从以下路径加载：

Steam\steamapps\workshop\content\1623730\<WorkshopItemID>

F6 设置将单独保存到：

%LOCALAPPDATA%\Pal\Saved\PalInfoCustomHUD\PalInfoCustomHUD.userconfig.lua

这样 Steam 创意工坊更新不会重置玩家设置。旧版本设置会在首次启动时自动迁移。

v0.7.10 目标扫描自动恢复与版本显示
- 修复反复移除 ReceiveDrawHUD Hook 后可能出现的延迟 UE4SS 崩溃。
- Hook 现在每次游戏会话只注册一次，无卡片或设置菜单时会立即返回。
- F6 设置菜单标题始终显示当前安装的模组版本。


v0.7.10 目标扫描自动恢复
- 修复模组运行一段时间后不再显示帕鲁信息卡的问题。
- 增加游戏线程扫描请求超时恢复。
- 增加低频 HUD 看门狗，可在加载或 HUD/世界重建后重启目标扫描。
- 关闭 F6 菜单或使用 F8 重新启用时，会安全重启检测。


v0.7.15 主动技能稳定性修复
-------------------------
- 禁用了可能导致 UE4SS 原生崩溃的技能数据表扫描。
- 禁用了 FindWazaForBP 临时结构读取。
- 主动技能名称仍会显示。
- 无法安全读取时，不再显示技能威力和属性图标。


v0.7.15 更新说明
----------------
- 通过一次性安全字段缓存恢复主动技能威力与属性图标。
- 仍然禁用会导致崩溃的临时技能数据 Get/unwrap 路径。
- 被动技能在可读取等级时改用 Palworld 原版等级箭头图标。
- 被动等级与现有被动数据缓存同时读取，不增加额外扫描。


v0.7.24 UE4SS 本地化 out 参数修复

- GetWazaName、GetItemName、GetNickname、GetDisplayNickName 和 GetLocalizedCharacterName 现在都使用 UE4SS 3.x 所需的空 Lua out 表 {}。
- 调用后通过 FText:GetDisplayString() 读取游戏当前语言，因此主动技能、掉落物品、帕鲁名称和昵称可以正确显示简体中文。
- 已移除不带 out 参数的旧调用方式，以避免瞄准部分帕鲁时发生原生崩溃。
- 当游戏未返回本地化文本时，仍会安全回退到内部英文名称。

v0.7.24

- 修正全部九种元素的图标纹理顺序，草/雷和地/龙不再互换。
- 主动技能元素图标略微放大并重新对齐。
- 被动技能列表改为直接读取 SaveParameter.PassiveSkillList，不再调用 GetPassiveSkillList()。
- 各数据读取阶段之间增加目标有效性检查。
- UE4SS 日志只保留一条加载信息和真实错误。


v0.7.29 主动技能元素映射与图标对齐
- 根据提供的 PalDB 主动技能页面，为 384 个技能加入明确的元素映射。
- 修正全部元素图标纹理编号。
- 23 像素的技能元素图标向下移动 3 像素，使其与技能名称行对齐。
- 保留本地化 out 参数修复、被动技能崩溃保护和精简日志。
