Frinn38 / Custom-Machinery

A Minecraft Mod about creating custom machines that works
GNU Lesser General Public License v3.0
45 stars 17 forks source link

[1.18.2] Could you add a proper config to make machines rather than a data pack? #52

Closed vizthex123 closed 2 years ago

vizthex123 commented 2 years ago

I absolutely hate using datapacks for custom stuff, because they never load in properly, and you can't have the game re-import it to a world when you change something - not to mention that open loader doesn't really tell you how tf to make one

So, would it be possibly to either fix said importing issue, or add a proper mod config for machines (like modular machines had)? Would be amazing if so.

Frinn38 commented 2 years ago

I won't switch from datapacks to config files, that would be a downgrade actually as config are much more limiting. Datapacks are the vanilla way of configuring things and pretty much all mods use them.

If your datapacks don't load, that's probably because either your folder structure is wrong or you forgot or made an error in the pack.mcmeta file. In any case here is the link to the minecraft wiki about datapacks : https://minecraft.fandom.com/wiki/Data_pack If you still have a problem to setup your datapack/machine files visit the discord (link in the mod description) it will be easier to help you there.

"you can't have the game re-import it to a world when you change something" That's wrong, you can use /reload in game to apply your changes.

vizthex123 commented 2 years ago

"you can't have the game re-import it to a world when you change something" That's wrong, you can use /reload in game to apply your changes.

But does it automatically re-import the packs when a player download the update? That's my issue with them - they never do that, and it's incredibly frustrating since it literally breaks my design, and I doubt players like having to restart every few updates.

Frinn38 commented 2 years ago

Vanilla datapacks are put in the world folder, making them unfit for a public modpack.

However openloader (or kubejs) can remove this limitation, as the pack-maker can just put the datapack in the openloader folder, and upload this folder as a part of this modpack. In this case when the player download an update for the modpack, the old openloader folder will be overriden by the updated one, and same for the datapack inside this folder.

After that the game won't care about the old datapack (as it doesn't exist anymore) an will load the updated datapack.

Note that mc reload datapacks each time the game is started or a /reload command is used and at that time any modification of the datapack files (manually or via update) will be immediatly applied and if the game is a server (dedicated or lan) the datapacks will be synced to all connected clients, so they don't even need to have the datapack installed, only the server does.

vizthex123 commented 2 years ago

Vanilla datapacks are put in the world folder, making them unfit for a public modpack.

However openloader (or kubejs) can remove this limitation, as the pack-maker can just put the datapack in the openloader folder, and upload this folder as a part of this modpack. In this case when the player download an update for the modpack, the old openloader folder will be overriden by the updated one, and same for the datapack inside this folder.

After that the game won't care about the old datapack (as it doesn't exist anymore) an will load the updated datapack.

Note that mc reload datapacks each time the game is started or a /reload command is used and at that time any modification of the datapack files (manually or via update) will be immediatly applied and if the game is a server (dedicated or lan) the datapacks will be synced to all connected clients, so they don't even need to have the datapack installed, only the server does.

Alright then, guess I gotta figure out how tf they work now. Thanks for the answer.