-
-
Notifications
You must be signed in to change notification settings - Fork 25
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
Client-only spread is incredibly inefficient. causes visible lockups. #119
Comments
Yeah, I think I remember thinking it's crazy inefficient but was lazy at the time (since the client-only implementations are less frequently used). I'm busy with other stuff right now but if I remember correctly it's placing items one by one when it could just make use of Vanilla's inbuilt spreading. As to why it won't work on a Vanilla server, I don't know. It should only enable server-side mode if the server claims to have Crafting Tweaks installed during handshake (which shouldn't even be possible since that handshake doesn't happen on Vanilla). I've always just set the |
Thanks! I'll take a look. On a side note, why is server-side instant? |
Server-side doesn't have to rely on actual slot movements and can manipulate stacks in slots directly, which can be done in one go and doesn't require any communication until after everything is already done. Client-side would also feel instant if implemented in a non-lazy way, since it'd be one packet then instead of [way too many]. |
does this happen in 1.19.x as well or no? |
I've had this issue on multiple servers where I am only running the mod locally. The algorithm being used to spread and balance the grid could use some work. Sometimes, I've had the game physically lock up and have to be force quit, but that doesn't happen much anymore (in 1.12.2). Lately, it just locks up for a couple of seconds.
That said, I think the algorithm just needs some refactoring. I was hoping to work on it today, but when I run the client through gradle, then connect to a local vanilla server, the crafting tweaks buttons don't actually do anything, so I'm unable to test out any improvements.
The text was updated successfully, but these errors were encountered: