Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

[1.16.5] How to get a custom machine pick a custom recipe based on a percentage chance.


Kangalia
 Share

Recommended Posts

Hi there. I'm trying to make one of my custom machines to choose a specific custom recipe depending on a percentage chance assigned to each recipe. This percentage chance will be based on one of the ingredients. For example, ingredient 1 + ingredient 2 has a 30% to produce output 1, 20% for output 2, and 50% for output 3. However, if you do ingredient 1 + ingredient 3, they'd have a 15% chance for output 1, 10% for output 2, and 75% for output 3. I have no idea how to go about this.

Cureently I have implemented the machine (including tile entity, screen, container, etc.) as as well as the RecipeType and Serialiser. My machine currently works to produce one output 100% of the time. It would be hugely appreciated if I could get, if not a solution, then maybe some ideas for implementing this, as I've been working on this for several days now and have completely run dry on ideas.

Thanks!

Link to comment
Share on other sites

  • 2 weeks later...

Thank you! I managed to get this working finally after puzzling through it, and your answer gave me a good place to start. I ended up using a combination of several for loops and an int array which was filled with the values of my "weight" json attribute for each recipe. Iterating through each recipe in my main list, I could add to a new array several repeats of the same number for the weight, and this number would correlate to a specific recipe in the main list. E.g. if the weight for the recipe in index 0 was 5, then 0 would be added to the array 5 times. My random number would then be chosen from this new array, and the recipe fetched from the main list using it. This works like an absolute charm. Hope this helps anyone else that might stumble on this thread! 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



  • Recently Browsing

    No registered users viewing this page.

  • Posts

    • For anyone looking here in the future, I never solved this problem, but I found a workaround by simply ungrabbing the mouse, preventing mouse movement.
    • [Info: 2022-01-23 01:24:44.6727079: NetQueue.cpp(157)] NetQueue: Setting up. [Info: 2022-01-23 01:24:44.6754351: mainWindows.cpp(80)] Running launcher bootstrap (version 1037) [Info: 2022-01-23 01:24:44.6753897: NetQueue.cpp(575)] NetQueue: worker thread started. [Error: 2022-01-23 01:24:44.8622618: localization.cpp(110)] No translation found for "Unable to download <game>. Please try again later." [Error: 2022-01-23 01:24:44.8624151: localization.cpp(110)] No translation found for "Unable to download the <game> Native Launcher." [Error: 2022-01-23 01:24:44.8625217: localization.cpp(110)] No translation found for "Unable to update the <game> Game Launcher." [Error: 2022-01-23 01:24:44.8626168: localization.cpp(110)] No translation found for "Unable to download the <game> Runtime Environment." [Error: 2022-01-23 01:24:44.8626822: localization.cpp(110)] No translation found for "Unable to update the <game> Game Launcher." [Error: 2022-01-23 01:24:44.8627756: localization.cpp(110)] No translation found for "Unable to update the <game> Runtime Environment." [Error: 2022-01-23 01:24:44.8629294: localization.cpp(110)] No translation found for "Unable to update the <game> Native Launcher." [Error: 2022-01-23 01:24:44.8630314: localization.cpp(110)] No translation found for "Unable to relaunch the Minecraft bootstrap." [Error: 2022-01-23 01:24:44.8630933: localization.cpp(110)] No translation found for "Unable to start the <game> Runtime Environment. This is most likely caused by a corruption. Please try to reinstall <game>." [Error: 2022-01-23 01:24:44.8632362: localization.cpp(110)] No translation found for "Unable to start <game>, if you are running from a dmg, please drag to Applications and try again." [Error: 2022-01-23 01:24:44.8633546: localization.cpp(110)] No translation found for "Unable to initialize the network library." [Error: 2022-01-23 01:24:44.8634209: localization.cpp(110)] No translation found for "<game> Launcher" [Info: 2022-01-23 01:24:44.8668528: mainWindows.cpp(167)] Triggering reopen event... [Info: 2022-01-23 01:24:44.8670715: mainWindows.cpp(170)] Success         [Info: 2022-01-23 01:24:44.6727079: NetQueue.cpp(157)] NetQueue: Setting up. [Info: 2022-01-23 01:24:44.6754351: mainWindows.cpp(80)] Running launcher bootstrap (version 1037) [Info: 2022-01-23 01:24:44.6753897: NetQueue.cpp(575)] NetQueue: worker thread started. [Error: 2022-01-23 01:24:44.8622618: localization.cpp(110)] No translation found for "Unable to download <game>. Please try again later." [Error: 2022-01-23 01:24:44.8624151: localization.cpp(110)] No translation found for "Unable to download the <game> Native Launcher." [Error: 2022-01-23 01:24:44.8625217: localization.cpp(110)] No translation found for "Unable to update the <game> Game Launcher." [Error: 2022-01-23 01:24:44.8626168: localization.cpp(110)] No translation found for "Unable to download the <game> Runtime Environment." [Error: 2022-01-23 01:24:44.8626822: localization.cpp(110)] No translation found for "Unable to update the <game> Game Launcher." [Error: 2022-01-23 01:24:44.8627756: localization.cpp(110)] No translation found for "Unable to update the <game> Runtime Environment." [Error: 2022-01-23 01:24:44.8629294: localization.cpp(110)] No translation found for "Unable to update the <game> Native Launcher." [Error: 2022-01-23 01:24:44.8630314: localization.cpp(110)] No translation found for "Unable to relaunch the Minecraft bootstrap." [Error: 2022-01-23 01:24:44.8630933: localization.cpp(110)] No translation found for "Unable to start the <game> Runtime Environment. This is most likely caused by a corruption. Please try to reinstall <game>." [Error: 2022-01-23 01:24:44.8632362: localization.cpp(110)] No translation found for "Unable to start <game>, if you are running from a dmg, please drag to Applications and try again." [Error: 2022-01-23 01:24:44.8633546: localization.cpp(110)] No translation found for "Unable to initialize the network library." [Error: 2022-01-23 01:24:44.8634209: localization.cpp(110)] No translation found for "<game> Launcher" [Info: 2022-01-23 01:24:44.8668528: mainWindows.cpp(167)] Triggering reopen event... [Info: 2022-01-23 01:24:44.8670715: mainWindows.cpp(170)] Success                 that is everything in my .minecraft launcher_log.txt          
  • Topics

  • Who's Online (See full list)

×
×
  • Create New...

Important Information

By using this site, you agree to our Privacy Policy.