Skip to content

feat: give sandwiches and pizzas bonuses from their layers - #105

Merged
JustinasLa merged 1 commit into
mainfrom
feat/dish-bonuses
Oct 31, 2026
Merged

JustinasLa merged 1 commit into
mainfrom
feat/dish-bonuses

Conversation

@JustinasLa

Copy link
Copy Markdown
Contributor

Summary

Sandwiches and pizzas now earn tags from their layers, the way a soup earns Seasoned, Rounded or Thick. Each tag is a tags.yml track, so its food and nutrition multipliers apply to the dish and show in its lore.

  • Rules: a new bonuses section in sandwiches.yml and pizzas.yml, read by DishBonus. Each bonus names a track and what earns it:
    • count: fillings (fillings or toppings, not bread, dough or sauce) or count: seasonings (different salts and peppers), with steps giving the step reached at each count
    • layers (every one of these layer ids, each at least min times) and any-of
    • addons: rounded | aromatic (a chopped garnish and a spice, or two of one kind, counted by origin)
    • valuable: true (a food types.yml marks valuable)
  • Default sandwich bonuses:
    • Hearty at 3 fillings, Loaded at 5
    • Buttered (a butter layer)
    • Well-Rounded (cheese, veg and a spread)
    • Flavourful (a valuable veg)
  • Default pizza bonuses:
    • Hearty and Loaded by topping count
    • Saucy (a paste sauce)
    • Extra Cheesy (2 or more cheese)
    • Seasoned and Well Seasoned
    • Rounded or Aromatic
    • Sweet and Savoury (fruit and sausage)
  • New tags.yml tracks: dish_size (hearty, loaded), buttered, well_rounded, saucy, extra_cheesy, sweet_and_savoury. Seasoning, Rounded, Aromatic and Flavourful reuse the soup's tracks.
  • sandwiches.yml's Well-Rounded lists catsup and mustard as spreads too. Those layers come with the condiments (feat: make vinegar, sap, catsup, mustard, maple syrup and olive oil #100); until then they simply match nothing.

Documentation impact

  • Central Cooking documentation: no change. sandwiches.yml documents the bonus keys, and the README mentions the bonuses.

Contract

  • Affected behaviour: a built sandwich or pizza slice can now carry the bonus tags, which raise its Food and Nutrition. Without a bonuses section, nothing changes.
  • Tests run: mvn -o -B clean verify. 1321 tests pass and line coverage is still 100%. The new DishBonusTest covers loading and every rule.
  • Tested on Dev: Dev runs this change on top of its condiments and pizza build (cooking-DEV-dish-bonuses.jar) and starts cleanly. The bonuses aren't checked in game yet.
  • Server config: Dev's tags.yml, sandwiches.yml and pizzas.yml have the new tracks and bonuses. Main needs them added when this is released.
  • Player wiki (ProvinceSystem /wiki/cooking or related pages): no change yet.

🤖 Generated with Claude Code

Sandwiches and pizzas earn tags from their layers, like a soup's Seasoned or
Thick: Hearty or Loaded by filling count, Buttered, Well-Rounded and
Flavourful for sandwiches; Saucy, Extra Cheesy, Seasoned, Rounded or Aromatic
and Sweet and Savoury for pizzas. The rules are a bonuses section in
sandwiches.yml and pizzas.yml, and the multipliers are tags.yml tracks.

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

coderabbitai Bot commented Oct 31, 2026

Copy link
Copy Markdown

Important

  • Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

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: 0e2e25e1-ccd5-4d61-be3e-f38dc49b3edd
  • 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

@github-actions github-actions Bot added the size:L 100-499 effective changed lines (tests excluded in mixed PRs). label Oct 31, 2026
@JustinasLa
JustinasLa merged commit d5e3706 into main Oct 31, 2026
3 checks passed
@JustinasLa
JustinasLa deleted the feat/dish-bonuses branch October 31, 2026 13:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:L 100-499 effective changed lines (tests excluded in mixed PRs).

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant