Fix Recipe failure reason and add score system#4942
Conversation
…s for that, add display for that
|
IMO the raw recipe id should never be visible to end users, it's bad UX |
I agree, but we don't have a better name in GTRecipe do we? I'm considering in the MUI branch to take the ID and making it Title Case and showing that but idk, will have to UX yappa on it |
screret
left a comment
There was a problem hiding this comment.
the bestFailure* fields' names don't sit right with me. Could you think of something that better describes what they actually store?
| for (var reason : reasons) { | ||
| var recipe = recipeLogic.getBestFailureRecipe(); | ||
| if (recipe != null) { | ||
| textList.add(Component.literal(" - ").append(recipe).append(": ").append(reason)); |
There was a problem hiding this comment.
Component.literal(" - ") could be made into a static final field to save some allocations. Same for Component.literal(": ")
There was a problem hiding this comment.
The dash can't since it's the first component in the list and we mutate it (unless you have a way where we can that saves allocations, but idts), will update with the colon though
No ID should be shown at all, as there isn't a good way to make a human-readable name for recipes. |
I disagree because the value for a debugging end-user to see which recipe is being ran outweighs the ugliness imo but we'll have a discussion about it with ghosti for UX and they can decide |
What
Implementation Details
UI is kinda ugly since we only have the resloc for a gtrecipe, no name. will need to be fixed when this gets merged into MUI
AI Usage
Agent Used
Claude Opus 4.8 High
Agent Usage Description
Used it to spitball the mechanics, write a decent bit of the code, write a decent bit of the tests. Everything was reviewed and checked by me, both in code and in game.
How Was This Tested
Tests and



Potential Compatibility Issues
Since there should be no changes in parts that addons touch, I don't think this needs documentation?