Skip to content

fix: give milk and water-only sauces a plated splash - #86

Merged
XxFran10xX merged 2 commits into
mainfrom
fix/plated-milk-sauce
Oct 26, 2026
Merged

XxFran10xX merged 2 commits into
mainfrom
fix/plated-milk-sauce

Conversation

@XxFran10xX

Copy link
Copy Markdown
Contributor

Problem

Roslyn ladled a plain milk sauce onto a plate of peaches and got a flat white sheet floating over the whole plate.

sauce-dict maps each sauce colour to station model|plated model. Milk's entry was ia.tfmc_cooking:milk|ia.tfmc_cooking:milk, so the plate got the saucepan's liquid surface (a 16×16 plane raised 3 px) instead of a splash. A water-only sauce has the same problem: it has no colour, so the plate fell back to liquid-fallback, which is the saucepan's water surface. This has been there since the pack was first imported.

The food itself was fine. The peaches got the sauce, its name and its creamy tag; only the plate visual was wrong.

Changes

  • Pack: milk_plated and water_plated items, models and textures in ItemsAdder/tfmc_cooking. They are built like the other plated sauces: the plated model's flat plane, and the station liquid texture cut with the same splash mask.
  • Config: milk's plated entry points at milk_plated. The new plated-liquid-fallback: ia.tfmc_cooking:water_plated is used when a plate needs a fallback, and liquid-fallback stays for stations. The code defaults to water_plated when the key is missing.
  • Code: CategoryDictionary.getSauceItemPath picks the fallback that matches the index (PLATED = 1). PlateManager uses the constant.
  • Tests: BundledSauceVisualsTest checks that every bundled sauce-dict entry has its own _plated model, that both fallbacks fit their furniture, and that every model and texture exists in the bundled pack. SauceColourTest and CachesCoverageTest cover the plated fallback.

Testing

  • mvn clean verify: 1235 tests pass and the coverage gate holds.
  • On TFMCDev01 (this build, the pack files and both config lines staged, then iazip), the pack built with both new models and no diagnostics for them. The bot test (~/plated-test/test.js, TestChar1) passed all 15 checks:
    • milk sauce on peaches → milk_plated (not milk); the saucepan still shows the milk surface; the ladle stores #ffffff
    • water-only sauce → water_plated
    • water + basil → an existing plated splash (brown_dark_plated)
    • taking the peach back clears the splash, and the peach keeps the sauce
    • no Cooking/ItemsAdder errors

Deploying

Cooking never rewrites existing configs, so each server needs:

  • the six new pack files
  • the two items.yml entries
  • the milk line and the new plated-liquid-fallback line in Cooking/config.yml

Then iazip, or clients get a tropical fish where the splash should be.

🤖 Generated with Claude Code

XxFran10xX and others added 2 commits October 26, 2026 10:52
Pouring a milk sauce on a plate showed the saucepan's milk surface: a
full-width sheet of liquid floating over the food, because sauce-dict's
plated entry for ffffff pointed at the station model. Water-only sauces
had the same problem through liquid-fallback.

Add milk_plated and water_plated to the cooking pack (the station
texture cut with the shared splash mask, like the other plated
sauces), point milk's plated entry at it, and give plates their own
plated-liquid-fallback. A test checks that every bundled sauce has a
distinct plated model that exists in the bundled pack.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@XxFran10xX

Copy link
Copy Markdown
Contributor Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Oct 26, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

No actionable comments were generated in the recent review.

Recent review info
Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 00c7eb60-dc49-4612-9002-fcf9d67b7fc7
Commits

Reviewing files that changed from the base of the PR and between fc18d4b and 6ad5c2d.

Files ignored due to path filters: 2
  • ItemsAdder/tfmc_cooking/resourcepack/assets/tfmc_cooking/textures/item/liquid/milk_plated.png is excluded by !**/*.png
  • ItemsAdder/tfmc_cooking/resourcepack/assets/tfmc_cooking/textures/item/liquid/water_plated.png is excluded by !**/*.png
Files selected for processing: 13
  • ItemsAdder/tfmc_cooking/contents/items.yml
  • ItemsAdder/tfmc_cooking/resourcepack/assets/tfmc_cooking/models/item/liquid/milk_plated.json
  • ItemsAdder/tfmc_cooking/resourcepack/assets/tfmc_cooking/models/item/liquid/water_plated.json
  • ItemsAdder/tfmc_cooking/resourcepack/assets/tfmc_cooking/textures/item/liquid/milk_plated.png.mcmeta
  • ItemsAdder/tfmc_cooking/resourcepack/assets/tfmc_cooking/textures/item/liquid/water_plated.png.mcmeta
  • src/main/java/net/tfminecraft/cooking/cache/CategoryDictionary.java
  • src/main/java/net/tfminecraft/cooking/cache/ItemCache.java
  • src/main/java/net/tfminecraft/cooking/loader/ConfigLoader.java
  • src/main/java/net/tfminecraft/cooking/manager/PlateManager.java
  • src/main/resources/config.yml
  • src/test/java/net/tfminecraft/cooking/cache/BundledSauceVisualsTest.java
  • src/test/java/net/tfminecraft/cooking/cache/CachesCoverageTest.java
  • src/test/java/net/tfminecraft/cooking/cache/SauceColourTest.java

Included review availability: This review used your included allowance. Your plan provides up to 1 included review per hour; 0 remain after this review.

📝 Summary

Summary by CodeRabbit

  • New Features
    • Added plated milk and water visuals for sauces, with water available as the default plated-liquid fallback.
    • Sauce visuals now use the plated fallback when a matching colour or plated visual is unavailable.
  • Bug Fixes
    • Corrected the milk sauce mapping to use its plated visual.

The change adds plated milk and water items to the bundled resource pack. Sauce path selection now supports a separate plated-liquid fallback, which configuration loads and PlateManager requests for plated sauces.

Changes: Plated liquid visuals

Layer / File(s) Summary
Bundle plated liquid visuals
ItemsAdder/tfmc_cooking/contents/items.yml, ItemsAdder/tfmc_cooking/resourcepack/assets/tfmc_cooking/models/item/liquid/*_plated.json, ItemsAdder/tfmc_cooking/resourcepack/assets/tfmc_cooking/textures/item/liquid/*_plated.png.mcmeta, src/main/resources/config.yml, src/test/java/net/tfminecraft/cooking/cache/BundledSauceVisualsTest.java
The resource pack defines plated milk and water items, models, and animation metadata. The milk sauce mapping points to milk_plated. Tests check that configured sauce visuals and fallbacks resolve to bundled pack items.
Layer / File(s) Summary
Select plated sauce paths
src/main/java/net/tfminecraft/cooking/cache/ItemCache.java, src/main/java/net/tfminecraft/cooking/loader/ConfigLoader.java, src/main/java/net/tfminecraft/cooking/cache/CategoryDictionary.java, src/main/java/net/tfminecraft/cooking/manager/PlateManager.java, src/main/resources/config.yml, src/test/java/net/tfminecraft/cooking/cache/CachesCoverageTest.java, src/test/java/net/tfminecraft/cooking/cache/SauceColourTest.java
Configuration loads a separate plated-liquid fallback. Plated sauce lookups use it when colour or sauce-path data is unavailable, and PlateManager requests plated paths using CategoryDictionary.PLATED. Tests cover fallback and sauce-colour lookups.

Priority: Low

Estimated code review effort: 2 (Simple) | ~12 minutes

Change: Bug fix

Sequence Diagram(s)

sequenceDiagram
  participant ConfigLoader
  participant ItemCache
  participant PlateManager
  participant CategoryDictionary
  ConfigLoader->>ItemCache: Load plated-liquid-fallback
  PlateManager->>CategoryDictionary: Request sauce path with PLATED
  CategoryDictionary->>ItemCache: Read platedLiquidFallback when needed
  CategoryDictionary-->>PlateManager: Return selected sauce path
Loading

Suggested reviewers: ryanbarlow97, carolinebondhus

Merge Risk: Minimal · up to 6ad5c

No actionable issue is established for the plated liquid visuals. The documented pack and configuration updates remain necessary for deployment.

- [ ] Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions github-actions Bot added the size:M 30-99 effective changed lines (tests excluded in mixed PRs). label Oct 26, 2026
@coderabbitai

coderabbitai Bot commented Oct 26, 2026 •

Copy link
Copy Markdown
✅ Action performed

Review finished.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@XxFran10xX
XxFran10xX merged commit 113db32 into main Oct 26, 2026
3 checks passed
@XxFran10xX
XxFran10xX deleted the fix/plated-milk-sauce branch October 26, 2026 10:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:M 30-99 effective changed lines (tests excluded in mixed PRs).

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant