雕像地图标记

雕像地图标记

雕像地图标记是一个用于《幻兽帕鲁》的客户端UE4SS Lua模组,可在世界地图上显示所有可收集的遗物雕像,并使用游戏自带的雕像美术素材。

雕像地图标记是一个针对《幻兽帕鲁》的客户端 UE4SS Lua 模组,可以在世界地图上使用游戏自带的雕像素材,显示所有可收集的遗物雕像。

该模组直接从加载的游戏世界中读取每个雕像,包括其类型、收集状态和实际世界坐标。它不依赖手动维护的坐标数据库,也不会修改存档文件或游戏数值。

未收集的雕像会以原始颜色显示并增加亮度。默认情况下,已收集的雕像会以灰度显示并降低不透明度,使两种状态一目了然。您也可以通过配置将它们完全隐藏。

主要功能

  • 显示世界中当前存在的全部 407 个可收集遗物雕像
  • 使用《幻兽帕鲁》自带的 13 种匹配的雕像图标纹理
  • 从每个对象的可见 ObtainFX(获取特效)原点读取准确的雕像位置
  • 以鲜艳色彩显示未收集的雕像
  • 可以完全隐藏已收集的雕像
  • 显示已收集雕像时,可选择灰度效果和可配置的不透明度
  • 根据地图打开时玩家所在位置,优先创建附近的标记
  • 分批创建标记,以减少打开地图时的卡顿
  • 标记大小随世界地图缩放平滑变化
  • 按下 F8 键可立即显示或隐藏所有雕像标记
  • 游戏中实时更新收集状态
  • 不编辑存档文件或更改任何游戏数值

快捷键

按下 F8 键可切换所有雕像标记的显示或隐藏。在世界地图打开或关闭时均可使用此快捷键,并且选定的可见性状态将持续有效,直到模组重新加载。

您可以通过修改 Scripts/config.lua 中的 ToggleKey 来更改按键。请使用 UE4SS 的按键名称,例如 F8MNUM_ZERO。如果您想禁用此快捷键,请将 ToggleKey = false 设置。

此快捷键仅更改标记的可见性。它不会重新创建标记、修改收集状态或更改存档数据。

安装

  1. 安装 《幻兽帕鲁》的 UE4SS
  2. 下载并解压模组压缩包。
  3. StatueMapMarkers 文件夹复制到以下路径:

Palworld/Pal/Binaries/Win64/ue4ss/Mods/

安装后的文件结构应如下所示:

Palworld/Pal/Binaries/Win64/ue4ss/Mods/StatueMapMarkers/enabled.txt
Palworld/Pal/Binaries/Win64/ue4ss/Mods/StatueMapMarkers/Scripts/main.lua
Palworld/Pal/Binaries/Win64/ue4ss/Mods/StatueMapMarkers/Scripts/config.lua

包含的 enabled.txt 文件可在当前 UE4SS 布局下启用该模组。如果您的 UE4SS 安装使用的是 mods.txt,请在其中添加:

StatueMapMarkers : 1

安装或更新模组后,请完全重启《幻兽帕鲁》。

配置

打开 StatueMapMarkers/Scripts/config.lua 文件:

return {
    -- 将诊断信息打印到 UE4SS.log。
    Debug = false,

    -- 显示或隐藏所有雕像标记(设为 false 以禁用快捷键)。
    ToggleKey = "F8",

    -- 在初始地图缩放级别下的可见雕像图标大小(像素)。
    NativeIconSize = 30,

    -- 未收集雕像图标的亮度倍数。
    UncollectedIconBrightness = 1.5,

    -- 不为已收集的雕像创建标记。
    -- 新收集的标记将在下次状态刷新时隐藏。
    HideCollectedIcons = false,

    -- 使用虚幻引擎的灰度禁用效果显示已收集的图标。
    CollectedIconGrayscale = true,

    -- 已收集雕像图标的不透明度(0.0 至 1.0)。
    CollectedIconOpacity = 0.45,

    -- 每批创建的原生地图小部件数量。
    NativeIconBatchSize = 100,

    -- 各批次创建之间的延迟时间(毫秒)。
    NativeIconIntervalMs = 250,

    -- 常规更新间隔(毫秒)。
    ScanIntervalMs = 1000,

    -- 收集状态刷新间隔(毫秒)。
    StateScanIntervalMs = 10000,
}

NativeIconSize 控制初始可见标记的大小。之后,标记会随地图缩放而平滑地变大或变小。

ToggleKey 控制显示/隐藏快捷键。它接受 UE4SS 按键名称,例如 F8MNUM_ZERO。将其设为 false 可禁用快捷键。切换操作不会重新创建标记或更改收集状态。

UncollectedIconBrightness 让未发现的雕像更加突出。建议值在 1.01.5 之间。

HideCollectedIcons = true 时,已收集的雕像将不会进入创建队列,并且在地图打开期间被收集的雕像将在下次状态刷新时隐藏(默认设置下约 10 秒)。将其设为 false 以保持已收集标记可见。

CollectedIconOpacity 控制已收集雕像的淡化程度。数值越低,已收集与未收集标记之间的差异越明显。

默认的批次设置会在地图可用后约一秒钟内处理完标记队列。当隐藏已收集标记时,只有未收集的雕像才会创建小部件。在较慢的系统上,减小 NativeIconBatchSize 可以使创建过程更平缓,但所有标记出现所需时间会更长。

工作原理

雕像地图标记会定位《幻兽帕鲁》中的 PalLevelObjectRelic 对象,并读取它们的遗物类型、客户端收集标志和世界坐标。然后,它通过游戏的地图蓝图创建原生的 PalUIWorldMapIcon 小部件,并分配相应的内置遗物纹理。

标记是通过地图原生的世界坐标放置功能添加的。不附带任何外部坐标列表,因此雕像位置直接来自游戏对象。

要求

  • 《幻兽帕鲁》(Steam)
  • 《幻兽帕鲁》的 UE4SS

多人游戏

这是一个客户端地图显示模组。每个需要雕像标记的玩家都应在其本地安装。它不会改变服务器设置、雕像收集规则或玩家进度。

性能

该模组仅在打开世界地图后创建原生地图小部件。标记会分批创建,最近的雕像会优先出现。雕像对象和纹理会被缓存,并且收集状态的检查会按配置的间隔进行,而不是每帧进行。

调试

设置 Debug = true 后,成功初始化会以类似于以下的消息结束:

[StatueMapMarkers] Native icons COMPLETE: created=N failed=0

如果标记缺失,请在报告问题时附上您的 UE4SS.log 文件。其中的队列、进度、纹理、布局和缩放信息对于诊断很有帮助。

兼容性与已知限制

  • 为发布时当前版本的《幻兽帕鲁》(Steam) 和 UE4SS 设计
  • 未来的《幻兽帕鲁》更新可能会改变地图小部件、遗物类或资源路径,需要同步更新模组
  • 同时使用多个地图标记模组可能会使世界地图在视觉上显得拥挤
  • 该模组使用游戏的实时世界对象,因此在重大世界地图更新后应再次进行测试

卸载

从 UE4SS 的 Mods 目录中移除 StatueMapMarkers 文件夹。如果您曾手动将 StatueMapMarkers : 1 添加到 mods.txt 中,请同时删除该行。