Minecraft Data Packs / Server Utility

Perfect Custom Crafter!(Autofill, In-Game recipe creation, No code required, and More)

  • check_circle Functions
  • check_circle Recipes
  • 4,533 views, 2 today
  • 260 downloads, 0 today
  • 28
  • 29
  • 19
TheMoneyRaider's Avatar TheMoneyRaider
Level 49 : Master Crafter
46
Customizable Crafters
This datapack allows you to add customizable crafters and recipes in your world without any coding or reloading.
Features:

  • Autofill recipes.
  • Custom sounds.
  • Shaped,Mirrored,Shapeless,Movable recipes.
  • Edit recipes in game.
  • NBT crafting.
  • Damage settings for item inputs
  • Lockable recipes with auto unlock(when the player crafts the recipe)
  • Count matching(recipes requiring different amounts per slot)
  • Customizable crafter display, hitbox, model, and ability of the player to view recipes.
  • Load and Save crafter data.
  • Slot layout settings.(Change input area)
  • (Warning)While very efficient it is not the most efficient custom crafter.

    WARNING:
    UPDATE: This pack was updated on 10/24/21 at 10:40.
    UPDATE: This pack was updated 10/26/21 at 6:26.
    UPDATE: This pack was updated 10/27/21 at 7:20.
    UPDATE: This pack was updated 7/7/22 at 10:20. The 1.18 version
    UPDATE: This pack was updated on 7/21/22 at 10:00. The 1.19 version

    This fixes a important bug. In order to get the new version, redownload the pack(you only have to update the datapack, not your the generated file)
    In order to know how to use the system, please watch this video:
    https://youtu.be/Qqe5OmP5tNs

    Note: To break a crafter, shift first.

    This datapack is meant to be a tool for others to make their datapacks easier. Please give credit if you use it.

    1.16.5 datapack+resource pack:
    1.16.5
    1.17 datapack+resource pack:
    1.17
    1.18.2 datapack+resource pack:
    1.18
    1.19 datapack+resource pack:
    1.19

    Download the .zip, unzip it and then follow instructions in the video.







    Known problem:
    Shifting is pretty inefficient as to not stack unattackable items, it places each item into it's own entity to give to the player.
    CompatibilityMinecraft 1.16
    toMinecraft 1.19
    Tags

    Create an account or sign in to comment.

    11/28/2022 12:29 am
    This reply was removed by the poster or a moderator.
    1
    11/28/2022 12:42 am
    Level 49 : Master Crafter
    TheMoneyRaider
    TheMoneyRaider's Avatar
    All links worked when I just tested. are you using any abnormal programs?
    3
    07/05/2022 2:09 amhistory
    Level 19 : Journeyman Engineer
    Timongcraft
    Timongcraft's Avatar
    This is so cool but can you make a version for 1.19?
    3
    10/20/2021 2:21 pm
    Level 50 : Grandmaster Unicorn
    JDawgtor
    JDawgtor's Avatar
    This is amazing!
    Although I am not sure why but when I am trying to break the crafters, a lot of the time they just give me a minecart and a chest instead of breaking it, and I can keep clicking it and sometimes it will eventually break, but I end up filling my inventory with minecarts and chests. Although it works if I'm SHIFT clicking, so is that what I'm supposed to do or is this a bug.
    Thanks, and great work on this data pack. I am super amazed by it :D
    4
    10/20/2021 5:16 pm
    Level 49 : Master Crafter
    TheMoneyRaider
    TheMoneyRaider's Avatar
    Yes, that is something I neglected to mention. You need to be shifting to break it. So glad you're messing with the pack!
    3
    10/20/2021 12:00 am
    Level 1 : New Miner
    Varboa
    Varboa's Avatar
    This is amazing. I honestly think that has incredible potential. I want to know how all of it works. I write VB and some Python and have been looking into to designing datapacks.

    Are there any plans in the future for "merging" crafters into one? If I were to design a datapack that was intended to be used with another one, and the other author and I decided we would like to use the same Crafter, is it possible to have the two crafting possibilites merge so the user could use the same crafter for both Datapacks?

    This does it all. From what I understand the community doesn't want to use the knowledgebook work around for the vanilla crafter, and drop crafting is less appealing, so everyone has made their own independent custom crafters, and people are less inclined to meet up using one crafter because they all take time to interact with. With this, youve removed that obstacle, and made it easy to see the recipes added after. I think this could have potential for a Datapack crafting API, and frankly, even with out some of the things im talking about, I will still be using this when I start creating datapack collections.

    I just see so much potential with this, and after watching the explanatory video, I could see the community collectivly using this as a foundation for datapack collection integration.

    What are your thoughts with adding item entity locality as an option for crafting? Maybe if I have an object resting on top of the crafter, and then fill a recipe, the crafter will work, but otherwise not? If adding the option to the GUI seems like too much trouble, what about specific methods, which could then be used by another data pack? Im kinda thinking the tag system actually may work nicely for that. Suppose the tag for a specific craft is only given to the player when the item entity is within some constraints relative to the specific crafter, and the player. Dude, ive got so many ideas. 8 months ago, I knew nothing about Visual Basic, and you bet im about to learn everything I can about Datapacks so I can start using this.

    Im guessing that all of the properties relating to interactions between the player and the specific crafter are all global vars? If its true over there, then it is also true over here? There could be potental for the crafter to only be active under certian conditions: "near bed rock", "in the end", etc.

    Have you given any thought to item and block profiles? The crafters have a base model selection GUI which is just begging to be exstended to archtypes for tools, items, and blocks. Ofcourse all of the textures and models would need to be provided externally, but still it would be huge for datapack developers.

    What are your thoughts on double chests, and utilizing their native UI as some higher teir crafter, maybe even ground crafting, where the native voxels can be utilized as a sort of crafter interface. It is even conceivable that a crafter with the outermost rows and columns could be reserved for scrolling buttons, and the array be scrolled around, for a crafter with arbitrary size in a native UI.

    How well does this work with multple people accessing crafters with the same IDs?

    Ill be back with more questions. This is awesome.
    4
    10/20/2021 8:50 pmhistory
    Level 49 : Master Crafter
    TheMoneyRaider
    TheMoneyRaider's Avatar
    OK. I'm going to work my way down your list answering as I go. First off, thank you for liking my project so much! I spent a lot of time and energy and it's amazing to see all the support it's getting. 2) I design datapacks in Visual studio code. Datapacks run on .mcfunction files and if you can learn basic commands, than you can apply those to functions.3) While it is entirely possible I return to this project and release an update, I currently have no immediate plans to do so. I spent 2 months to write this 8,000 line project. I need to work on another project. As to answer your question about merging recipes, It's not currently in the project, but should be possible.

    Anything to do with detecting blocks isn't really viable due to the huge function trees it would take, but your item entity idea is viable(except I can't see too many uses off the top of my head). Elaborate on what you mean for "block profiles" and "archetypes for tools". I wouldn't want to use a double chest as that would be an annoying constraint(and the system works with chest minecarts to give everyone their own gui, so it would be a total rework)The crafter could hypothetically have a versatile input grid. The biggest change for that would be changing all the hardcoded Recipes[​0-8] to loops. It should work perfectly for multiple people accessing the same crafter ID's.

    This is by far the best comment I have received! I am looking forward to here your elaboration and ideas!
    -TheMoneyRaider
    3
    10/21/2021 1:07 am
    Level 1 : New Miner
    Varboa
    Varboa's Avatar
    Got it, makes sense. Ive got Visual Studio, that is certianly how I was thinking about building one.

    Item entity: in my head it made sense to have some crafting recipes locked behind having the ender dragon egg or something else. When the ender dragon entity is floating on the crafter, then the tags are given to the player. The more I think about, the more I think that something like this should belong in its own datapack. Tags are given to the player iff conditions are met, which could really spice up a old server.

    Block and item archtypes: So this may not be possible or worth doing. Essentially, building a system that allows someone to customize an items properties in a UI, like you have with this datapacks system. I got the idea after watching the portion for the video where you select the bounding box for the crafter from the UI you built. Extrapolating this to items, all any custom item is(besides the model), is its item type equiped with its properties.
    As an example, if I wanted to introduce a custom item into my server, then using some created UI, I could choose something like bamboo, and set the fuel time to very long, and then rename it Gasoline. I would then need to summom the object with a certian json tag that uniquly identified its model as the graphic of a gas can that i drew prior. And Presto, custom item. It would pair naturally with your custom crafter. Adding gasoline to the server would be as simple as adding a crafting recipe at this point. A similar block creator could be made as well. The texture for the block would be stored in a resource pack and download mandated. I think the only thing that im unsure if it would work is how the "settings" for the crafter are saved. It appears there is a structure block used as the object with the save method. All of these things require the saving mechanic to work the way I think it does, but I do not know.

    Versatility to design the crafter UI would be ideal, but I understand that sometimes changes like that are just not worth doing due to the amount of effort versus the output. I think it could open up ideas for people to create some fancy UIs though. I wonder what the relative performance change is for a loop instead of hard coding the inventory slots.

    I am excited to see what you make next, and ofcourse I will always be excited if they are APIs for datapack creators. I know as of right now, its not so easy to collect datapacks together and maintain a decent frame rate, but I suspect the community decentralization contributes to that.

    Ill keep thinking of ideas, and try to not waste your time with stand alone addons hahaha
    3
    10/21/2021 11:18 pm
    Level 49 : Master Crafter
    TheMoneyRaider
    TheMoneyRaider's Avatar
    mckstacker already does the item generation way better than any in game system could. Not to mention the fact that strings are almost impossible to generate and a lot of an Items info is strings. The loop input is definitely possible. The main issue would be all the reworking it would take. The efficiency wouldn't be too bad, because remember that any major commands are only run when players click on slots.

    I'd be happy to hear any ideas you have any time!
    -TheMoneyRaider
    3
    10/17/2022 1:30 pm
    Level 4 : Apprentice Architect
    GalaxyDoggo-YT
    GalaxyDoggo-YT's Avatar
    hey i started learning how to make datapacks using visual studio can you help me i hit a roadblock and my datapack didnt work so i need some help and you both seem to know what your doing
    3
    10/17/2022 6:56 pm
    Level 49 : Master Crafter
    TheMoneyRaider
    TheMoneyRaider's Avatar
    What's your problem?
    Planet Minecraft

    Website

    © 2010 - 2024
    www.planetminecraft.com

    Welcome