Skip to content

Adds dough to the cookbook + Functionality for listing chemical reactions as recipes. - #5354

Merged
Rinary1 merged 22 commits into
ss14Starlight:starlight-devfrom
bynddark8:how-to-cook-for-40-spacemen
Aug 16, 2026
Merged

Adds dough to the cookbook + Functionality for listing chemical reactions as recipes. #5354
Rinary1 merged 22 commits into
ss14Starlight:starlight-devfrom
bynddark8:how-to-cook-for-40-spacemen

Conversation

@bynddark8

@bynddark8 bynddark8 commented Jul 27, 2026

Copy link
Copy Markdown
Contributor

Short description

Adds recipes for various doughs to the guidebook. Creates the guidebookGroups method which allows for any chemical reaction to be formatted as a guidebook entry in the same style of every other food recipe.

Why we need to add this

Extremely confusing for new players, suggested a number of times on discord (which you can find here, here, and here.)
The cookbook previously couldn't recognize any recipes that don't use a microwave, oven, stove, or deep fryer. This is necessary guidance for new players and a crucial part of cooking practically any dish. This aligns with the general philosophy of providing all necessary information by means accessible within the game, and avoids players having to turn to external websites or wikis to get simple recipes.

If new dough/cooking chemical reactions are added in the future this works the same way as all the actual food recipes. Just tag the reaction using guidebookGroups.

Documenting how to make things like condiments purely through chemical reactions is something that's made possible in this PR, and should probably be added to the guidebook but I'll save that for another day.

Media (Video/Screenshots)

image fig 1. yup that's all it does.

Checks

  • I do not require assistance to complete the PR.
  • Before posting/requesting review of a PR, I have verified that the changes work.
  • I have added screenshots/videos of the changes, or this PR does not change in-game mechanics.
  • I affirm that my changes are licensed under the MIT License and grant permission for use in this repository under its conditions.

Changelog

🆑 bynddark8, Rinary1

  • add: Introduces recipes for doughs and cake batter to the in game guidebook.
  • add: Introduces a method to document chemical reactions in the guidebook as cooking recipes.

@bynddark8
bynddark8 requested a review from a team July 27, 2026 00:36
@github-actions github-actions Bot added S: Untriaged Status: Indicates an item has not been triaged and doesn't have appropriate labels. Changes: UI Changes: C# Changes: Prototypes Changes: Guidebook size/M S: Merge Conflict Status: Needs to resolve merge conflicts before it can be accepted labels Jul 27, 2026
@github-actions

Copy link
Copy Markdown
Contributor

This pull request has conflicts, please resolve those before we can evaluate the pull request.

@github-actions github-actions Bot added the S: Needs Review Status: Requires additional reviews before being fully accepted. Not to be replaced by S: Approved. label Jul 27, 2026
@github-actions github-actions Bot removed the S: Merge Conflict Status: Needs to resolve merge conflicts before it can be accepted label Jul 27, 2026
@coderabbitai

coderabbitai Bot commented Jul 27, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

Dough guidebook metadata is added to food reactions, matching reactions are rendered by microwave guidebook controls, and new guidebook hierarchy, localization, and XML entries expose the Dough recipe section.

Changes

Dough reaction guidebook

Layer / File(s) Summary
Reaction guidebook metadata
Content.Shared/_Starlight/Chemistry/Reaction/ReactionPrototype.Starlight.cs, Resources/Prototypes/Recipes/Reactions/food.yml, Resources/Prototypes/_Starlight/Recipes/reactions.yml
Reaction prototypes gain case-insensitive guidebook group matching, and dough-related reactions receive group metadata.
Reaction guidebook rendering
Content.Client/Guidebook/Controls/GuideMicrowaveEmbed.xaml.cs, Content.Client/Guidebook/Controls/GuideMicrowaveGroupEmbed.cs, Resources/Locale/en-US/guidebook/cooking.ftl
Microwave controls enumerate grouped reactions, render reaction details, and define the catalyst label.
Dough guidebook wiring
Resources/Prototypes/Guidebook/references.yml, Resources/Locale/en-US/_Starlight/guidebook/guides.ftl, Resources/ServerInfo/Guidebook/Service/FoodRecipes.xml, Resources/ServerInfo/_Starlight/Guidebook/Service/DoughRecipes.xml
The Dough guide entry, localization, hierarchy, and XML content are added with microwave group embeds.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Sequence Diagram(s)

sequenceDiagram
  participant GuidebookEntry
  participant GuideMicrowaveGroupEmbed
  participant ReactionPrototype
  participant GuideMicrowaveEmbed
  GuidebookEntry->>GuideMicrowaveGroupEmbed: create Dough group entries
  GuideMicrowaveGroupEmbed->>ReactionPrototype: filter with InGuidebookGroup(group)
  GuideMicrowaveGroupEmbed->>GuideMicrowaveEmbed: construct reaction control
  GuideMicrowaveEmbed->>ReactionPrototype: read effects and reactants
  GuideMicrowaveEmbed-->>GuidebookEntry: render reaction recipe
Loading

Suggested reviewers: redmushie

🚥 Pre-merge checks | ✅ 7 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 23.08% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (7 passed)
Check name Status Explanation
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
No Magic Numbers ✅ Passed The scoped C# code uses only obvious 0 and 1 literals; no non-obvious magic numbers or added numeric constants appear. The implementation is clear and focused.
No Hardcoded Ecs Parameters ✅ Passed The PR changes only guidebook controls, reaction prototype DataFields, and content data. No changed class extends EntitySystem or defines ECS behavior; the 0/Chemistry values are UI display defaults.
Avoid Service Locator ✅ Passed The PR adds no service-locator calls. Existing UI calls to IoCManager.InjectDependencies(this) are explicitly permitted by the check.
Title check ✅ Passed The title clearly summarizes both main changes: adding dough recipes and listing chemical reactions as guidebook recipes.
Description check ✅ Passed The description directly explains the dough recipes, chemical reaction guidebook functionality, motivation, and user-facing impact.

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.

@bynddark8

Copy link
Copy Markdown
Contributor Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Jul 27, 2026

Copy link
Copy Markdown
Contributor
✅ 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.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 4

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@Content.Client/Guidebook/Controls/GuideMicrowaveEmbed.xaml.cs`:
- Around line 261-269: Replace the hardcoded "(catalyst)" text in the
reactant.Catalyst branch of the liquidNameMsg construction with a Fluent
localization key, using the established localization/formatting mechanism to
render the localized catalyst label while preserving the existing spacing and
bold-name formatting.

In `@Content.Shared/_Starlight/Chemistry/Reaction/ReactionPrototype.Starlight.cs`:
- Line 3: Move the partial extension for ReactionPrototype from the _Starlight
directory into the canonical Chemistry/Reaction directory, keeping the filename
prefixed with Starlight. Preserve the namespace
Content.Shared.Chemistry.Reaction; unchanged so it remains part of the existing
ReactionPrototype type; only retain the current directory if repository
namespace checks require it.

In `@Resources/Prototypes/_Starlight/Guidebook/references.yml`:
- Line 35: Remove the trailing whitespace from line 35 in the references.yml
file, leaving the line content otherwise unchanged.
- Around line 7-35: Remove the duplicate FoodRecipes and DoughRecipes entries
from the Starlight references so the canonical definitions in the shared
guidebook references remain authoritative, including IceCreamRecipes and
DoughRecipes’ filterEnabled setting. Also remove the trailing whitespace after
the DoughRecipes text entry.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI (base), Organization UI (inherited)

Review profile: CHILL

Plan: Pro Plus

Run ID: 5015c46a-444f-4552-9a89-ce6c6e293916

📥 Commits

Reviewing files that changed from the base of the PR and between f81ff48 and f87fba8.

📒 Files selected for processing (10)
  • Content.Client/Guidebook/Controls/GuideMicrowaveEmbed.xaml.cs
  • Content.Client/Guidebook/Controls/GuideMicrowaveGroupEmbed.cs
  • Content.Shared/_Starlight/Chemistry/Reaction/ReactionPrototype.Starlight.cs
  • Resources/Locale/en-US/_Starlight/guidebook/guides.ftl
  • Resources/Prototypes/Guidebook/references.yml
  • Resources/Prototypes/Recipes/Reactions/food.yml
  • Resources/Prototypes/_Starlight/Guidebook/references.yml
  • Resources/Prototypes/_Starlight/Recipes/reactions.yml
  • Resources/ServerInfo/Guidebook/Service/FoodRecipes.xml
  • Resources/ServerInfo/_Starlight/Guidebook/Service/DoughRecipes.xml

Comment thread Content.Client/Guidebook/Controls/GuideMicrowaveEmbed.xaml.cs
Comment thread Resources/Prototypes/_Starlight/Guidebook/references.yml Outdated
Comment thread Resources/Prototypes/_Starlight/Guidebook/references.yml Outdated
coderabbitai[bot]
coderabbitai Bot previously approved these changes Jul 27, 2026
@bynddark8

Copy link
Copy Markdown
Contributor Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Jul 27, 2026

Copy link
Copy Markdown
Contributor
✅ 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.

coderabbitai[bot]
coderabbitai Bot previously approved these changes Jul 27, 2026
coderabbitai[bot]
coderabbitai Bot previously approved these changes Jul 27, 2026
coderabbitai[bot]
coderabbitai Bot previously approved these changes Aug 2, 2026
Comment thread Content.Client/Guidebook/Controls/GuideMicrowaveEmbed.xaml.cs Outdated
Comment thread Content.Client/Guidebook/Controls/GuideMicrowaveEmbed.xaml.cs Outdated
Comment thread Content.Client/Guidebook/Controls/GuideMicrowaveEmbed.xaml.cs Outdated
Comment thread Content.Client/Guidebook/Controls/GuideMicrowaveGroupEmbed.cs
Comment thread Resources/Locale/en-US/guidebook/cooking.ftl Outdated
Comment thread Resources/Prototypes/_Starlight/Recipes/reactions.yml Outdated
Comment thread Resources/Prototypes/Guidebook/references.yml Outdated
Comment thread Resources/ServerInfo/Guidebook/Service/FoodRecipes.xml Outdated
@starlightgithub starlightgithub Bot added S: Awaiting Changes Status: Changes are required before another review can happen and removed S: Needs Review Status: Requires additional reviews before being fully accepted. Not to be replaced by S: Approved. labels Aug 10, 2026
@github-actions

Copy link
Copy Markdown
Contributor

Content + Integration Test Results

Summary:

Tests 📝 Passed ✅ Failed ❌ Skipped ⏭️
1678 1658 0 20

Failed Tests:

No failed tests ✨

Github Test Reporter by CTRF 💚

@bynddark8
bynddark8 requested a review from Rinary1 August 10, 2026 18:21
@github-actions github-actions Bot added S: Needs Review Status: Requires additional reviews before being fully accepted. Not to be replaced by S: Approved. and removed S: Awaiting Changes Status: Changes are required before another review can happen labels Aug 10, 2026
@starlightgithub starlightgithub Bot added S: Approved Status: Reviewed and approved by at least one maintainer or dev; a PR may require another approval. and removed S: Needs Review Status: Requires additional reviews before being fully accepted. Not to be replaced by S: Approved. labels Aug 16, 2026
@Rinary1
Rinary1 added this pull request to the merge queue Aug 16, 2026
Merged via the queue into ss14Starlight:starlight-dev with commit a9c6e2b Aug 16, 2026
20 checks passed
starlightgithub Bot added a commit that referenced this pull request Aug 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Changes: C# Changes: Guidebook Changes: Prototypes Changes: UI S: Approved Status: Reviewed and approved by at least one maintainer or dev; a PR may require another approval. S: Untriaged Status: Indicates an item has not been triaged and doesn't have appropriate labels. size/M

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants