CreativeMD / ItemPhysic

GNU Lesser General Public License v3.0
32 stars 17 forks source link

ItemPhysic 1.20.1 Might Have Corruptied Code or a Piece of Code is Broken (Exception in server tick loop java.lang.IllegalArgumentException: 'empty' is an invalid type) #180

Closed Coraline774477 closed 11 months ago

Coraline774477 commented 12 months ago

Affected Minecraft versions: 1.16.5 1.19.2

Affected Forge versions: 1.16.5 Forge-36.2.39 1.19.2 Forge-43.2.18

Affected ItemPhysic versions: ItemPhysic_v1.4.18_mc1.16.5 ItemPhysic_FORGE_v1.6.6_mc1.19.2

1.16.5 Crash Report and Log:

https://gist.github.com/Coraline774477/66586cfdf8feece069b48aa90f35a172

2023-07-14-18.log.gz

1.19.2 Crash Report and Log:

https://gist.github.com/Coraline774477/7b208b195e1c7d90b0fc06e9093f29d4

2023-07-14-15.log.gz

Like everything that I've said in my comment on ItemPhysic's Curseforge page btw, so there's nothing else that's needed to be said about this.

Except that I had tested with only CreativeCore 1.19.2 on a test world and the world *generated fine, it's ItemPhysic that was acting up before I deleted ItemPhysic entirely as a whole and redownloaded the mod.

*Since the crash occurs at the start of the intergraded server when entering an existing world or after the world creation screen just before the world's being generated is when ItemPhysic caused the game to hang and typically freeze the game in place with the blue windows cursor circle thingy that keeps going and the game doesn't progress from there. I had to force stop the game itself to cause it to crash to stop it or else it'll just keep being completely frozen in place indefinitely.

Like I've said in my comment on the mod's curseforge page that I came off from 1.20.1 due to Rubidium 1.20.1 causing some issues with Minecraft 1.20.1. I had decided to backport my 1.20.1 world called; Cora World; M.C.A; R back to 1.19.2 since Rubidium 1.19.2 doesn't behave the same as the 1.20.1 version does as well as it's 1.19.2 version is alot more stable than it's 1.20.1 version. So after coming off from 1.20.1 I wanted to play modded 1.16.5 with M.C.A; R (Minecraft Comes Alive; Reborn) and T.A.C; R (Timeless & Classics; Reforged) and after a few hickups with some of the mods being outdated I updated them and I thought that I was ready to start my modded 1.16.5 adventure but I was WRONG! As soon as I clicked on 'Create New World" the game basically did nothing and wasn't responsive at all....

Which is why I'm saying that the 1.20.1 version of ItemPhysic either has some corruption in it's 1.20.1 coding somehow or a piece of it's 1.20.1 coding is completely broken and needs fixing so that it doesn't completely break the older versions of the mod after coming off from 1.20.1.

CreativeMD commented 11 months ago

I think you can resolve the issue rather easily by deleting the config file. It is in config/itemphysic.json. Problem is that 1.20 removes block materials, something ItemPhysic relied on. So if you import an old config into 1.20 it cannot process all the swimming, burning and unbreakable items. It does not crash, but it creates empty ingredients (to avoid crashing). If you then try to load these config files in any version before it will crash.

Pretty sure deleting the config file is enough. Thanks for your detailed explanation hope everything works you delete it.

Coraline774477 commented 11 months ago

Thanks for the info, but that world that I'd mentioned that was backported to 1.19.2 from 1.20.1 (Cora World; M.C.A; Reborn) may had gotten some of it's data and player data corrupted during the backporting... Since Minecraft Comes Alive; Reborn's GPT 3 AI Conversations feature wasn't working at all.. Whenever I tried to talk with any M.C.A; R villager, even my two M.C.A; R wives (Bernardine and Everett) and my M.C.A; R adopted daughter (Camelia) they all weren't responding to me at all when I called their names multiple times... I had to sacrifice everything on that corrupted world to start over on a new adventure with the same mod list but altered slightly from Cora World; M.C.A; Reborn....

Anyways, thanks for the assist, when Assk polishes Rebidium 1.20.1 a little bit more I'll make sure to delete ItemPhysic's old confgs and let Forge 1.20.1 regenerate them. Like what you've mentioned that Lex and his team have removed the old methods for block materials with new ones that're better or they just deliberately removed block materials entirely either for no reason at all or for improved performance and efficiency of Forge 1.20+.

One last thing, since with this reply is turning this simple issue report into a discussion. What did you do to work around the removal of block materials that the mod heavily relied on for so long before 1.20? Since the mod possibly could've ended (died) on 1.19.4. 'Cause to me this sounds like this could've been ItemPhysic's end/downfall/death.

Just like the one mod in particular that heavily relied on Forge's old rendering engine before 1.13 which I really do consider that mod to be dead.. Since the creator of that mod would have to rebuild it from the ground up when he and his team have put literally everything as well as years of their lives into that project only for Mojang and Lex to suddenly change the rendering engine entirely which killed that mod, rendering that mod useless to be portable to newer versions of Minecraft forever..

Unless Vic is willing to make the ultimate sacrifice and decides to rebuild his mod entirely from the ground up while porting it over to newer versions which I highly doubt that he ever will....

CreativeMD commented 11 months ago

The removal of block materials has been done by Mojang and not by Forge. There are block tags now, which can be used instead.

Changes are mostly for the better. The new rendering engine is a good change for example. I also had to rewrite a lot of LittleTiles to make it work, but that's just how it is. The benefit is that things get better, more organized etc. (and also new features).