Skip to content
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

[suggestion] Better autocrafter #133

Open
TheEt1234 opened this issue Aug 12, 2024 · 13 comments
Open

[suggestion] Better autocrafter #133

TheEt1234 opened this issue Aug 12, 2024 · 13 comments
Assignees
Labels
enhancement New feature or request

Comments

@TheEt1234
Copy link

When automatically crafting something with multiple ingredients, there often is a problem where the supply of one ingredient is way bigger than the other

Like for example with bonemeal:mulch, you often have way way too many leaves going in, filling the autocrafter with leaves, leaving no space for wood

And that is a tricky problem that the player shouldnt deal with imo

What would be my idea to solve this problem at the pipeworks level:

The ability to optionally allocate slots for certain items

When enabling this option, with a recipe like mulch, it will "allocate" 8 slots for leaves, and 1 slot for wood, and the rest being blocked

By "allocate" i mean restricting the slot to only one item type

Also to avoid having to spam the autocrafter with digiline "single" commands, it would be cool if we had a "all" digiline command that would just make the autocrafter try to craft the most it can

@TheEt1234
Copy link
Author

(I can work on this if needed, i just need to know if it's a good idea)

@OgelGames
Copy link
Contributor

I'm already working on a rewrite of the autocrafter :) No idea when I'll be able to finish it, but I'm working on it.

@OgelGames OgelGames added the enhancement New feature or request label Aug 12, 2024
@OgelGames OgelGames self-assigned this Aug 12, 2024
@TheEt1234
Copy link
Author

I'm already working on a rewrite of the autocrafter :) No idea when I'll be able to finish it, but I'm working on it.

👀 What features will your rewrite have

@OgelGames
Copy link
Contributor

What features will your rewrite have

Better recipe autofill, an option to "recycle" replacement items, some way to empty the main inventory (probably a digiline command), and the feature you suggested but automatic based on the recipe ingredients. Also better groups support.

@TheEt1234
Copy link
Author

nice

@SwissalpS
Copy link
Contributor

I disagree with the premise that the autocrafter should manage space of input items.
This is exactly an interesting challenge to solve using other nodes.

@SwissalpS
Copy link
Contributor

The idea of being able to flush input inventory has its appeal but it kinda breaks out of how pipeworks has been working. Up to now, only one inventory is accessible for extraction.
Extending pipeworks with such a feature could be useful for other nodes. [technic] compressors and alloy furnaces come to mind. Sometimes an uneaven amount entered and a remainder blocks changing to using the device for some other material.
Again this can easily be solved in-game by monitoring what and how much is sent into the device.
-1 for that feature from me, even if I understand the appeal.

Also keep in mind that user can change the recipe manually or via digiline at any moment. A self regulating autocrafter would be challenged in those moments.

@S-S-X
Copy link
Member

S-S-X commented Aug 12, 2024

Also to avoid having to spam the autocrafter with digiline "single" commands, it would be cool if we had a "all" digiline command that would just make the autocrafter try to craft the most it can

Is spamming "single" just because it is faster that way or is there some other reason for this request?

Because if it is just using program flaw to get around crafting rate then correct way to fix it is through applying proper rate limiting for digiline crafts. For "all" I don't really see use cases as you can just push ingredients for "all" and enable crafter to make it craft all it can craft, it is already existing feature.

@TheEt1234
Copy link
Author

TheEt1234 commented Aug 14, 2024

Also to avoid having to spam the autocrafter with digiline "single" commands, it would be cool if we had a "all" digiline command that would just make the autocrafter try to craft the most it can

Is spamming "single" just because it is faster that way or is there some other reason for this request?

Because if it is just using program flaw to get around crafting rate then correct way to fix it is through applying proper rate limiting for digiline crafts. For "all" I don't really see use cases as you can just push ingredients for "all" and enable crafter to make it craft all it can craft, it is already existing feature.

Yes it is because spamming single is faster and having "all" could be made to potentially reduce lag

But i don't know if it's better to have limits on the "single" digiline command, it would make pipeworks autocrafters way way less fun and just worse to work with imo, and it would break existing machinery

And also i think it would be a good idea to let mesecons control the autocrafter too (by doing something identical to the "single" command)

@TheEt1234
Copy link
Author

TheEt1234 commented Aug 14, 2024

I disagree with the premise that the autocrafter should manage space of input items. This is exactly an interesting challenge to solve using other nodes.

honestly to me it just feels like a really annoying roadblock rather than an interesting challange

also i think to keep things simple there should just be something to limit the item type/maximum count for a slot (that could be done for technic machines too) or maybe that being done automatically for you and with only the item type

@S-S-X
Copy link
Member

S-S-X commented Aug 14, 2024

But i don't know if it's better to have limits on the "single" digiline command, it would make pipeworks autocrafters way way less fun and just worse to work with imo, and it would break existing machinery

Well, autocrafters are supposed to have limits on crafting rate. Arguing about it breaking machinery is similar to what some said when I fixed technic infinite battery power and multiplying network power bugs. Yes it will break machinery that deliberately utilizes bugs. Besides that it is unlikely that enforcing rate limit would cause any catastrophic failures even with those setups.

Rate limiting digiline and possible mesecons by default to similar rate how continuous crafting works could however be easily configurable and optionally disabled altogether which allows server owner to choose how to go about it.

@TheEt1234
Copy link
Author

But i don't know if it's better to have limits on the "single" digiline command, it would make pipeworks autocrafters way way less fun and just worse to work with imo, and it would break existing machinery

Well, autocrafters are supposed to have limits on crafting rate. Arguing about it breaking machinery is similar to what some said when I fixed technic infinite battery power and multiplying network power bugs. Yes it will break machinery that deliberately utilizes bugs. Besides that it is unlikely that enforcing rate limit would cause any catastrophic failures even with those setups.

Rate limiting digiline and possible mesecons by default to similar rate how continuous crafting works could however be easily configurable and optionally disabled altogether which allows server owner to choose how to go about it.

Yeah i think that's the best idea, letting the server decide

@TheEt1234

This comment has been minimized.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

4 participants