我还没死 - 玩家战败 (ASD_indy)

我还没死 - 玩家战败 (ASD_indy)

这是一个允许玩家被击败,并调用子模组触发后果的模组。它*可以*在没有子模组的情况下使用,但那样只会让你保持在20%生命值。ASD_indy的SDK也在此上传。这里有两个子模组。

游戏玩法

这是一个允许玩家被击败,并调用子模组触发后果的模组。
目前我在这里上传了两个“官方”子模组。如果有其他人希望,我很乐意包含他们子模组的链接,不过我不会在本页面包含任何面向成人的内容链接。


这些设置可自定义(打开文件进行编辑;目前尚无法在游戏中更改):

  • 重复延迟 ::: INDY可被触发的间隔时间(默认:300秒/5分钟 >>> 计划允许将此设置为低至5秒(即使你实际上变得无敌)或任意高值)
  • 触发百分比 ::: 被视为战败的生命值(默认:最大生命值的20% >>> 如果设置为0%,则意味着只有当你生命值降至1点时才会触发{很可能是因为INDY救了你免于死亡})

这些设置保存在 LogicMods/Settings/ASD_indy.json >>
该目录和文件现已包含在下载中。
如果删除该文件,下次启动模组时会自动重新创建。
如果删除目录(LogicMods 内的 Settings 文件夹),则不会重新创建,模组将使用默认设置(300 秒 / 20%)。


  • 各个子模块的权重:
    如果你安装了5个,
    是否让每个选项的概率均等由你决定,
    或者你可能想让其中一个的概率比其他高5倍(这很简单;
    只需将它们设置为1/1/1/1/5或10/10/10/10/50或2/2/2/2/10等)。

子模组权重保存在 LogicMods/Settings/ASD_indy_Weights.json >>> 该目录已包含在下载内容中,但文件本身未包含。首次进入游戏时会自动生成该文件(注意:您需要加载存档并等待约20秒,系统会在计算完所有子模组总权重后保存.json文件)--- 如果您没有 /Settings/ 文件夹,系统将静默失败并默认所有子模组权重为10。

我其实根本没有加入任何数字检查功能,
所以你可以将重量设置为负数,
这会导致问题。
我不建议那样做。

下个版本可能应该对加载的权重做些基本合理性检查。
直到写这个描述时才想到这点。
至少设为0或类似值,这样如果你想禁用某个权重仍然可以做到,但不能设置任何负值破坏权重计算。
这样大概就够了...


未来:
-修复漏洞 (?)
-我会进一步分解内容,以便INDY能够根据子模块成功或失败做出不同反应。子模块失败的例子:状态点损失判定玩家没有属性点,因此不会治疗他们或扣除任何属性点。它调用了“子模块失败”函数,但目前这实际上并不影响INDY的行为。以后会的!
当前关于子模块失败时的处理思路:
暂时将权重设为0,重新计算子模组总权重,随机选择另一个子模组。
不过要弄清楚如何安全地完成这件事可能会很混乱...
-更多子模组?(仍在等待其他人制作一些内容 :( )


问:这是如何运作的?
A: 黑魔法! (说真的:临时生命值缓冲和数学计算)

问:这在多人游戏中有效吗?
A:我不知道,但我觉得可能有用。我不建议在服务器上使用——如果确实有效,可能会被视为作弊。

Q: 你能制作一个实现___功能的子模组吗?
A: 无论你想做什么,很可能都是可行的,但我建议你先尝试自己动手解决!

Q: 你玩帕鲁世界的时间有多少?
A: 呃...我真正玩过的上一次还是在2024年。

问:你在《幻兽帕鲁》中使用了多少个模组?
A: 我实际的存档没有任何模组。

Q: 那你为什么花这么多时间制作这个模组呢?
A: 我正尝试学习游戏/模组的制作方法,在我常驻的某个服务器上看到很多人都在求死亡替代功能,我觉得自己应该能搞定这个。于是我就动手了。后来我又把它做得更模块化,现在就有了这个作品。
在这个过程中也学到了不少东西。


要求
UE4SS —— GitHub页面上的3.0.1版本可用。更新的版本可能也能用?未经测试。
UniPalUI -- 版本0.1(加载游戏时左上角会显示蓝色文字v1000 >> 如果显示v4则为旧版本,INDY会因调用新增/变更功能而崩溃)

注意:如果你安装了一个没有主INDY文件(ASD_indy_PlayerDefeat)的子模组,它会导致《幻兽帕鲁》崩溃!我找不到一个简单的方法来避免这种情况而不在其他地方引发问题...但如果你在没有主模组的情况下安装子模组,无论如何你都是在做错误的事情,所以...崩溃某种程度上是在告诉你

子模块是作为仅存在于核心模组/SDK中的角色的子项创建的。当Palworld尝试加载它时,会寻找父级。如果父级不存在(未安装ASD_indy_PlayerDefeat),它就不知道该做什么并导致UE崩溃。

可能有办法解决这个问题,
但我不知道具体怎么做,
而且如果你安装的子模组没有核心的PlayerDefeat组件,
它无论如何都无法运行,
所以......
我认为这个问题在1-10的优先级中属于0级,
其中10代表紧急情况。


子模组
可选文件

第二风: 当被击败时,免费恢复玩家的全部生命值/能量值/护盾。请记住INDY有冷却时间,但这基本上会在你输掉战斗时给你第二次机会。

状态点损失: 与“回光返照”类似,这也会将玩家恢复至满血状态...但与“回光返照”不同,它并非免费。触发时你将损失1点状态点。若有未分配的属性点则会优先扣除——否则系统将按照(当前硬编码的)顺序列表扣除首个已分配的属性点。若你完全没有状态点(无论是否分配),则无法获得满血恢复效果。

外部链接
(目前没有,不过如果你去某个我不方便在这里提供链接的其他网站看看,至少还能找到一个INDY的子模组)


ASD_indy子模组制作的SDK也已开放下载!欢迎随心所欲地制作你想要的子模组!如果你愿意,我可以在上方的外部链接区域添加你的子模组链接。

主要内容:

  1. 无论你在何处上传子模组,只需链接回此处的主INDY模组。请不要在你的发布中包含主INDY模组。
  2. 不要在您的pak中包含SDK文件。如果这样做,可能会导致某些功能损坏。所以请不要这样做。
  3. 阅读附带的说明文件,其中解释了基本操作。如果您仍然无法理解,请给我发消息,我可以帮助您。

问:为什么SDK中会包含一个随机的结构体文件?
A:这是INDY本身的一部分,制作子模组时不需要。我忘了删除它,后来才注意到。你不需要它,但它不会造成任何影响。

问:如果我在子模组中包含SDK文件会发生什么?
A:你可能会弄坏东西。就像我说的——拜托别这样。

问:我可以更改SDK的文件夹结构吗?
A: 老实说...我也不确定。不过,我怀疑这会导致子模组在错误的位置寻找INDY而无法正确注册。如果这还不够清楚的话,那可就糟了。所以,拜托别这样?


Q: 救命!怎么安装UE4SS并让它正常工作???(这个模组要正常运行100%必须安装它)
A: https://youtu.be/ToG208UJKgk