跳到正文

Malstone x Fantasy Ending Compatibility

作者:wdlpiaoyi

Fixes the StackOverflowError crash between Malstone and Fantasy Ending on Forge 1.20.1.

收藏

介绍

中文介绍正在准备中,下面暂时显示原文。

Malstone x Fantasy Ending Compatibility

A compatibility patch for Minecraft Forge 1.20.1 that fixes the game-crashing conflict between Malstone and Fantasy Ending.

The problem

When both mods are installed, creating a world crashes with a java.lang.StackOverflowError, caused by an endless loop between getMaxHealth and getHealth.

The fix

Fantasy Ending routes every getHealth() call through EntityASMUtil#special_getHealth, which asks for getMaxHealth(). Malstone adds code to getMaxHealth() that calls Player#isAlive(), and vanilla isAlive() calls getHealth() again. The result is infinite recursion.

This patch adds a per-thread re-entrancy guard around the max-health lookup:

  • The first call behaves exactly as before, so Malstone’s ToughBlood bonus still works.
  • Any nested call simply returns the vanilla max-health value instead of recursing forever.

The patch only activates when both Malstone and Fantasy Ending are installed. If either mod is missing, it does nothing.

Requirements

  • Minecraft 1.20.1
  • Forge 47.x
  • Malstone
  • Fantasy Ending

Notes

  • This is a client/server-side patch; install it on both sides if you play on a server.

常见问题

Malstone x Fantasy Ending Compatibility 支持哪些 Minecraft 版本?

Malstone x Fantasy Ending Compatibility 支持 Minecraft Java 版 1.20.1,可用的加载器:Forge。下载时注意选择和你游戏版本一致的文件。

Malstone x Fantasy Ending Compatibility 怎么安装?

先用 PCL2 或 HMCL 启动器安装对应版本的 Forge,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。

评论

登录后评论和评分

wdlpiaoyi 的其他作品

查看全部 →