-
Notifications
You must be signed in to change notification settings - Fork 32
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[🐞]: Diagonal Windows mod causes Create compat window panes to lose recipe on reload command #755
Comments
the item is actually do you have KubeJS or CraftTweaker installed? |
If you are developing a modpack with EC and other mods. Then you should read the last comment via #467 there is a similar issue with Diagonal Fences. I want you to try break the window in survival to see if it would drop. let me know if it doesn't, then I can apply the fix. There is no way to fix the problem with reloading the recipes using |
ISSUE 2The pared down test mod list is as follows (so many libraries):
I'm not able to get an item to drop when breaking the window panes, even with a silk touch pickaxe, either before or after a reload. The block's drop table must not get set correctly (maybe it doesn't even exist?) when it is converted to a In any case, everything you've said is true. It may very well cause issues (like the drop table problem), but it does not cause the issue I've reported. All my information came from attaching a debugger to an instance outside of a development environment via IntelliJ, with a breakpoint placed right about here. When a world is started/loaded, And after a reload: As can be seen, public void addDynamicServerResources(ServerDynamicResourcesHandler handler, ResourceManager manager) {
if (PlatHelper.isModLoaded("diagonalwindows")) {
String childKey = windowPanes.getChildKey(this);
windowPanes.getBaseType().getChildren().stream().filter(child -> child.getKey().equals(childKey)).findFirst()
.ifPresent(oakWindowPane -> {
if (((Block) oakWindowPane.getValue()).asItem() instanceof BlockItem bi) {
oakWindowPane.setValue(bi.getBlock());
}
});
}
// snip, snip, snip...
} to Now FIXED in v2.7.11 |
i already know how to fix that problem. don't worry about it. EDIT: |
The issue with dropping of window_pane are fixed in next version. |
Code of Conduct
Disable all of your mods and enable them 1-2 mods each time to isolate the culprit
Version - Loader (DO NOT FORGET TO SELECT THE CORRECT VERSION)
1.20.1 - FORGE
EveryCompat Version
everycomp-1.20-2.7.10.jar
Moonlight Lib Version
moonlight-1.20-2.13.45-forge
Issue with mods
Diagonal Windows
Issue Detail
With Diagonal Windows, Create, and some other EveryCompat supported mod, any Create-style window pane block added by EveryCompat loses its recipe after calling the
/reload
command. Because of this, the aforementioned blocks will no longer be able to be crafted.By stepping through with a debugger attached, it seems that Diagonal Windows replaces the
BlockItem#block
with aForgeDiagonalGlassPaneBlock
sometime after the initial load. So when you call/reload
, and this function call from Moonlight occurs, it is called with adiagonalwindows:create/oak_window_pane
block instead of acreate:oak_window_pane
block. Because there is no Diagonal Windows compatibility module or other method that registers that type of block to theWoodTypeRegistry#OAK_TYPE
object, the call returnsnull
. This value ends up propagating to this line in Moonlight where an exception is thrown, which is finally caught here,WoodGood/common/src/main/java/net/mehvahdjukaar/every_compat/misc/ResourcesUtils.java
Lines 307 to 309 in e1c6d9f
the outcome being that no recipe ends up being registered.
OPTIONAL: Latest.log | Crash-report Attachment
There is no crash, but a bunch of errors like
are spit out into the log.
OPTIONAL: To Produce
/reload
commandThe text was updated successfully, but these errors were encountered: