
闪光观测者
用致盲闪光或按下按钮在你正在看的东西上放置一个地图标记。
查看大图[size=5][b]闪光标记器[/b][/size]
用致盲闪光或按下按钮,在你注视的目标上放置地图标记
当你在飞行途中,半公里外闪过一道光点,等你落地时,已经分不清它是在哪道山脊上了。用致盲闪光看向它,它就会出现在你的地图上。
[size=4][b]工作原理[/b][/size]
有两种放置标记的方式,为不同的场合而设计。
[b]致盲闪光为你标记光点。[/b]使用闪光,将光点置于准星上并保持约一秒。标记会落在物体实际所在的位置,手柄会震动以告诉你已成功标记,因为那一刻地图并未打开。距离无关紧要:六百米外的光点和二十米外的光点一样容易标记。瞄准的判定刻意设计得很宽容,因为在空中没有人能让准星保持不动。如果山丘挡在你和光点之间,它不会穿透山丘进行标记。
[b]按钮可以标记任何东西。[/b]手柄上同时按下右肩键、左肩键和 A 键,或键盘上的 F9,会标记准星下方的任何物体。废墟、营地、矿脉、桥梁、商店、山谷对面的地牢入口。该模组读取游戏自身的关卡数据,因此大多数值得走过去的东西都在其中,且没有范围限制。只要你能看到它,就能标记它。这个触发刻意设计得很精确:你一按下它就会触发,因此它期望你正对着目标。
[size=4][b]移除标记[/b][/size]
打开地图并将光标放在标记上。底部的提示会从"标记"变为"移除标记",和你手动放置的标记效果一样。按下后标记就会消失。没有额外的按键,也无需学习任何东西,因为该模组的标记就是游戏自身标记列表中的条目,游戏会将它们视同己出。
按一次致盲闪光只标记一次,因此在闪光仍然亮着时移除标记不会立即将其重新获取。再次使用闪光,同一个光点可以被再次标记,因为再次按下是你主动发出的请求。
[size=4][b]标记的存储位置[/b][/size]
不在你的存档文件中。模组在插件旁边维护自己的列表文件 [font=Courier New]GlintSpotter.pins[/font],并在每次世界加载时将标记放回,因此它们在退出并重新启动后仍然存在,在游戏内加载存档后也仍然存在。在地图上移除标记也会将其从文件中删除。
由于没有任何内容写入你的存档,卸载不会留下任何痕迹,也没有理由在尝试该模组之前备份任何东西。该文件是纯文本,每行一个标记,因此你可以读取、编辑,或删除它以一次性清除所有标记。
标记属于你放置它们时所处的存档。模组会监视游戏打开的是哪个存档文件,因此第二个角色有自己独立的标记,永远不会看到第一个角色的。将游戏保存到一个你从未使用过的槽位时,会将该存档的标记一并带走,这一点很重要,因为每次手动保存时游戏都会创建一个新槽位。每个存档在文件中是一个分组,因此你可以通过删除某个分组的标记来清除某次通关的记录,而不影响其他存档。
[size=4][b]安装[/b][/size]
闪光标记器需要 Ultimate ASI Loader,没有它则无法运行。其 [font=Courier New]winmm.dll[/font] 放入游戏的 [font=Courier New]bin64[/font] 文件夹,即 [font=Courier New]CrimsonDesert.exe[/font] 所在的文件夹。
在游戏关闭的情况下,将 [font=Courier New]GlintSpotter.asi[/font] 复制到 [font=Courier New]bin64[/font] 中。也复制 [font=Courier New]GlintSpotter.ini[/font],或者不复制它,模组会在首次运行时生成一个,其中解释了所有设置。
启动游戏并加载存档。模组需要世界出现后大约四十秒才能开始工作,在此期间游戏可能会因搜索你的角色而卡顿一两秒。
[size=4][b]设置[/b][/size]
所有内容都在 [font=Courier New]GlintSpotter.ini[/font] 中,每个设置都有注释。以下是值得更改的几项。
[font=Courier New]Chord[/font] 是手柄绑定,写作用加号连接的按钮名称:A B X Y LB RB LS RS Up Down Left Right Back Start。[font=Courier New]Key[/font] 是键盘绑定,也是一个名称:F1 到 F24、一个字母、一个数字、Insert、Delete、Home、End、PageUp、PageDown、Pause、ScrollLock 或 Numpad0 到 Numpad9。默认是 F9,因为游戏没有给它绑定任何功能。日志在启动时会用文字回显两个绑定,因此拼写错误会立即显现。
DualSense 或 DualShock 4 不需要 Steam Input:模组直接读取它,因此游戏保留其 PlayStation 按钮图标。名称按位置对应,LB 对应 L1,RB 对应 R1,A 对应 Cross,B 对应 Circle,X 对应 Square,Y 对应 Triangle,Back 对应 Share 或 Create,Start 对应 Options,因此默认组合键为 L1、R1 和 Cross。通过蓝牙连接时暂无震动。[font=Courier New]DirectPad=0[/font] 可关闭直接读取。Switch Pro 和其他手柄仍然通过 Steam Input 工作。
[font=Courier New]PinStyle[/font] 以两个数字的形式选择标记使用哪种图标。要找到你想要的那个,手动放置一个标记,用"更改标记"循环切换,日志会打印出你所选定样式对应的那对数字。
[font=Courier New]Rod[/font] 是按钮需要瞄准的精确度,以你的视线两侧各多少米为单位,在任何距离都相同。如果按下时未命中,日志会说明最近的物体偏离视线多少,这就是应该填入此处的数字。
[font=Courier New]Kinds[/font] 是致盲闪光允许标记的事物列表,与游戏自身的名称进行匹配。如果闪光点亮了某个东西而模组拒绝标记它,可以扩大此列表。
[font=Courier New]KeepPins[/font] 可关闭保存列表,如果你希望关闭游戏时所有标记都消失的话。
[size=4][b]已知问题[/b][/size]
[b]存档加载后不久游戏可能会卡顿一两秒。[/b]模组正在内存中搜索你的角色。每次启动只发生一次,之后一切正常工作。
[b]按钮可能会选中你目标后面的东西。[/b]它会选取游戏物体数据中你的视线经过附近时最近的东西。如果你所指的东西不在该数据中,视线更远处的某个东西可能会被选中。日志会说明它选择了什么以及附近还有什么,通常足以调整 [font=Courier New]Rod[/font] 并解决问题。
[b]在游戏内加载存档需要几秒钟。[/b]你的标记和按钮会在一两秒内恢复。致盲闪光需要更长时间,最多约半分钟,因为它所依赖的部分更难重新找到。
[b]标记落点没有屏幕提示。[/b]手柄震动是唯一的反馈。游戏自身的弹出提示系统尚未找到。
[size=4][b]兼容性[/b][/size]
基于 Crimson Desert 2.03.00,可执行文件 1.0.0.2944 构建。模组读取的每个地址在使用前都会与运行中的游戏进行校验,因此如果补丁移动了某些内容,模组会静默不执行操作而不会崩溃。
它与其他 ASI 插件一起运行,包括 Crimson Route 和 Master Looter。在替换函数指针的地方,它会转发到之前的那个,因此两个模组共享同一个时都能继续工作。
[size=4][b]报告问题[/b][/size]
[font=Courier New]GlintSpotter.log[/font] 写入 [font=Courier New]bin64[/font],保留最近五次运行。如果标记落在了错误的地方,请发送日志,并注明你所指的目标以及大致距离。日志按距离段记录你的视线,因此那一个数字通常能精确定位错误。这个模组中几乎每一个修复都来自这样的日志。
如果某些东西严重损坏,请设置 [font=Courier New]Verbose=1[/font] 并复现一次。这会每分钟写入约一千行并导致帧率卡顿,因此之后请将其设回零。
[size=4][b]源码与许可[/b][/size]
MIT 许可。源码、构建脚本以及研究该模组的笔记都在 GitHub 上:[url=https://github.com/shin2344234/glint-spotter]github.com/shin2344234/glint-spotter[/url]
[size=4][b]Discord 和 Patreon[/b][/size]
Discord 是 [url=https://discord.gg/AZ2ztQYy74]Shin234's Mods 'n Stuff[/url]。错误报告在这里的 Bugs 标签页效果最好,因为它会保持附属于该模组,但 Discord 是快速提问或查看正在开发中的内容的地方。
Patreon 是 [url=https://www.patreon.com/cw/Shin234]patreon.com/cw/Shin234[/url],每月 $3 起,新布局将帖子隐藏在首页,因此它们在 [url=https://www.patreon.com/cw/Shin234/posts]patreon.com/cw/Shin234/posts[/url]。公开模组保持免费,没有任何更新或修复会被放在付费层级后面。Patreon 的存在是为了让我能投入更多时间在这方面。
[size=4][b]杀毒软件[/b][/size]
你下载的压缩包是干净的,六十七个引擎中零个报毒,其中的插件也是,七十个引擎中零个报毒。1.1.24 的插件触发了一个标记,微软的 Trojan:Win32/Wacatac.B!ml。那个 !ml 是微软自己对一个由模型通过查看文件形态得出的判定所做的标记,没有任何扫描器曾识别出其内部的任何东西。这类标记在版本之间来来去去:Cynet 标记了 1.1.22,Symantec 标记了再前一个。
形态就是它们之所以会标记它的原因。GlintSpotter.asi 是一个未签名的 DLL,由加载器放入游戏内。一旦进入其中,它就会在游戏代码中搜寻字节模式,并在游戏自身的两个函数上写入跳转。它在游戏之前读取键盘和手柄。修改器会做所有这些事情,因此一个用修改器训练的模型会回答"修改器"。它上面没有签名证书,也没有安装历史可以反驳这一点。
它不会做的是访问网络。它根本不导入任何网络库,因此文件中没有任何可以打开连接的东西。它不读取也不写入任何注册表项,不更改任何游戏文件,也不向你的存档写入任何内容。它创建的唯一三个文件就在 bin64 中它自己旁边:GlintSpotter.ini、GlintSpotter.log 和 GlintSpotter.pins。它的每一行都在 GitHub 上,一个批处理文件就能构建它,如果你更愿意自己编译的话。
两份报告都是公开的:[url=https://www.virustotal.com/gui/file/826640357abe7cdd38bfe0a823d8154702adb27650e0e25b746516d31e2beb57]压缩包[/url]和[url=https://www.virustotal.com/gui/file/9e0c74c28293399b5a296a5dc169a6905224edca8f2ed13bb22e14d2e7af6e92]插件[/url]。如果 Defender 或你的浏览器阻止下载,请恢复文件并将游戏的 bin64 文件夹加入排除项。
1.1.25 的 SHA-256,先是压缩包,后是插件:
[code]826640357abe7cdd38bfe0a823d8154702adb27650e0e25b746516d31e2beb57 GlintSpotter-1.1.25.zip[/code][code]9e0c74c28293399b5a296a5dc169a6905224edca8f2ed13bb22e14d2e7af6e92 GlintSpotter.asi[/code]
显示 1-7 条,共 7 条
以上为资源接口提供的文件记录。安装时请在客户端确认文件、游戏版本及依赖。
还没有人评论,去客户端里说两句吧。
评论在新手盒子客户端中发表,这里同步展示。