Skip to content

Многа фиксов#58

Open
CREAsTIVE wants to merge 10 commits into
TheMaidDev:mainfrom
CREAsTIVE:fix-alot2
Open

Многа фиксов#58
CREAsTIVE wants to merge 10 commits into
TheMaidDev:mainfrom
CREAsTIVE:fix-alot2

Conversation

@CREAsTIVE

@CREAsTIVE CREAsTIVE commented May 19, 2026

Copy link
Copy Markdown
Contributor

Описание

Много мелких фиксов, см. ченджлог


Медиа

image

Изменения

🆑 CREAsTIVE

  • fix: Рукописные эмоции теперь триггерят события ("смеётся", "плачет", "делает сальто" и другие)
  • tweak: Для музыки боеголовки теперь всегда используется ремикс Болгарыча
  • fix: Описание кода дельты
  • remove: Отчёт о работе станции вырезан
  • tweak: Немного изменён интерфейс манифеста игроков
  • add: Перевод большинства новых антагонистов, описания и прочего
  • remove: Драконы больше не имеют имён
  • remove: Убрано случайное появление космического золотого карпа, гарпимоли, ЛутБага, мотлитки, улитки и скоростной улитки
  • tweak: самостоятельное размножение мышей замедленно в 3 раза.
  • tweak: кулдаун ручного размножения мышей (способность при управлении мышью) увеличен с 1 секунды до 60 секунд

Summary by CodeRabbit

  • Localization

    • Expanded Russian language support across emotes, character roles, and game text
    • Updated round-end summary UI with improved formatting and localized death descriptions
  • Gameplay

    • Adjusted mouse breeding mechanics with cooldown timers
    • Modified creature spawn pools, removing certain species from random encounters
  • User Interface

    • Refined round-end summary display with improved layout and styling
    • Enhanced player role presentation with better text formatting

Review Change Stack

@coderabbitai

coderabbitai Bot commented May 19, 2026

Copy link
Copy Markdown
Contributor
📝 Walkthrough

Walkthrough

The PR refactors the round-end summary UI component with layout and styling updates, restructures death localization to use severity/type lookups, expands Russian translations across traitor roles and game presets, and updates prototype configurations including mouse breeding cooldowns, creature spawn table removals, and emote trigger phrase additions.

Changes

Round-end Summary UI and Localization

Layer / File(s) Summary
RoundEndSummaryWindow UI component refactoring
Content.Client/RoundEnd/RoundEndSummaryWindow.cs
Disables station report tab; redesigns Goob player manifest layout with adjusted spacing and alignment; converts player role from Label to RichTextLabel; removes death label and damage table rendering; changes death localization to resolve severity/type via nested lookups instead of direct string interpolation.
English round-end localization and death vocabulary
Resources/Locale/en-US/_Goobstation/round-end/round-end-summary-window.ftl
Updates player name/role template with role colorization; restructures death text to reference discrete severity/type keys; adds localization entries for death severities (catastrophic, devastating, agonizing, painful, brutal, tragic) and types (fiery, crushing, poisonous, suffocating, twisted, otherworldly, shocking, mysterious).

Russian Localization Expansion

Layer / File(s) Summary
Russian traitor role and faction translations
Resources/Locale/ru-RU/_Goobstation/flavors/traitor.ftl
Updates Russian text for Corporate Climber, Legal Trouble, and MI13 traitor roles; adds new Russian translations for nine faction-based traitor roles (ARC, Bee Liberation Front, Cybersun Industries, Donk Corporation, Gorlex marauders, Tiger Cooperative, Waffle Corporation variants, Neulithiv Federation) with intro, goal, allies, uplink, and round-end text.
Russian preset, role, and alert message translations
Resources/Locale/ru-RU/_Goobstation/Changeling/..., Resources/Locale/ru-RU/game-ticking/..., Resources/Locale/ru-RU/ghost/roles/..., Resources/Locale/ru-RU/ss14-ru/prototypes/roles/..., Resources/Locale/ru-RU/_Maid/round-end/..., Resources/Locale/ru-RU/alert-levels/...
Translates traitor role guidance, objective issuers, ghost roles, and mind role titles to Russian; updates alert level Delta messages; adds Russian death severity/type vocabulary for Maid round-end summary.

Prototype Configuration and Emote Triggers

Layer / File(s) Summary
Mouse breeding and egg layer configuration
Resources/Prototypes/Entities/Mobs/NPCs/animals.yml, Resources/Prototypes/_Trauma/Body/Organs/Animal/mouse.yml, Resources/Prototypes/_Goobstation/Actions/mouse.yml
Adds cooldown timing fields (eggLayCooldownMin: 180, eggLayCooldownMax: 360) to mouse EggLayer configuration; increases MouseMultiply action useDelay from 1 to 60.
Creature removal and spawn table adjustments
Resources/Prototypes/Catalog/Fills/Crates/service.yml, Resources/Prototypes/GameRules/pests.yml, Resources/Prototypes/_Goobstation/Entities/Objects/Specific/Mail/mail_fun.yml
Disables MobLootbug from trash crate and mail critter loot; removes SnailMigrationLowPop and SnailMigration from pest event tables; removes MobLootbug from King Rat migration and both MobLootbug and MobSquackroach from Cockroach migration spawn distributions.
Dragon naming and sound collection configuration
Resources/Prototypes/Entities/Mobs/Player/dragon.yml, Resources/Prototypes/SoundCollections/NukeMusic.yml
Disables BaseMobDragon RandomMetadata name generation; removes countdown.ogg and sound_station_14.ogg from NukeMusic sound collection.
Emote chat trigger phrase additions
Resources/Prototypes/Voice/disease_emotes.yml, Resources/Prototypes/Voice/speech_emotes.yml, Resources/Prototypes/_Goobstation/Actions/emotes.yml, Resources/Prototypes/_Goobstation/Voice/speech_emotes.yml, Resources/Prototypes/_White/Voice/speech_emotes.yml
Adds Russian (MAID ru emotes) chat trigger phrases to Cough, Yawn, Scream, Laugh, Sigh, Whistle, Crying, Click, Clap, Salute, Gasp, Gulp emotes and Flip, Spin, Jump action emotes; expands Nod, ShakeHead, Frown, Smile trigger phrase coverage with Russian variants.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~22 minutes

Suggested labels

S: Untriaged, Changes: UI, Changes: Audio

Poem

🐰 The rabbits hop through round-end halls,
Where UI sprites and layouts sprawl,
While Russian whispers fill the air,
And mice breed faster, if they dare,
пищащие emotes make creatures cheer! 🌙

🚥 Pre-merge checks | ✅ 3 | ❌ 2

❌ Failed checks (1 warning, 1 inconclusive)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 50.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
Title check ❓ Inconclusive The title "Многа фиксов" (Many fixes) is vague and generic, using a non-descriptive term that does not convey meaningful information about the specific changes in this substantial changeset. Consider using a more specific title that highlights the main change, such as "Refactor round-end UI and add antagonist translations" or "Multiple fixes: UI updates, translations, and gameplay tweaks".
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
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.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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 and usage tips.

@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: 5

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
Content.Client/RoundEnd/RoundEndSummaryWindow.cs (1)

273-315: ⚠️ Potential issue | 🟠 Major | ⚡ Quick win

Death summary is computed but never rendered.

At Line 273, deathLabel is no longer added to textVBox, but Lines 311-314 still populate it. Result: death summary text never appears in the manifest UI.

Suggested fix
-                // textVBox.AddChild(deathLabel); MAID round end manifest // MAID round end manifest
+                textVBox.AddChild(deathLabel);
🤖 Prompt for 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.

In `@Content.Client/RoundEnd/RoundEndSummaryWindow.cs` around lines 273 - 315, The
deathLabel is populated with markup (deathLabel.SetMarkup(...)) but never added
back to the visual container, so the death summary never appears; after the
block that sets deathLabel.SetMarkup(...) (inside the playerInfo.EntMobState ==
MobState.Dead branch) add the label back into the layout by calling the
container's add method (e.g., textVBox.AddChild(deathLabel) or the appropriate
Add/Pack method used elsewhere) so the label is rendered; locate deathLabel and
textVBox in RoundEndSummaryWindow.cs to insert the AddChild call immediately
after the SetMarkup call.
🧹 Nitpick comments (1)
Resources/Locale/ru-RU/ghost/roles/ghost-role-component.ftl (1)

238-238: ⚡ Quick win

Используйте общие role-type плейсхолдеры вместо хардкода.

Это выровняет стиль с остальным файлом и исключит расхождение при обновлениях общих названий ролей.

♻️ Предлагаемый рефактор
-ghost-role-information-pirate-irs-rules = Вы — [color=red][bold]командный антагонист[/bold][/color] вместе с остальными пиратами.
+ghost-role-information-pirate-irs-rules = Вы — [color={ role-type-team-antagonist-color }][bold]{ role-type-team-antagonist-name }[/bold][/color] вместе с остальными пиратами.
🤖 Prompt for 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.

In `@Resources/Locale/ru-RU/ghost/roles/ghost-role-component.ftl` at line 238,
Replace the hardcoded role name in the localization entry
ghost-role-information-pirate-irs-rules so it uses the shared role-type
placeholder used elsewhere (e.g., the common {role-type} placeholder pattern)
instead of "[color=red][bold]командный антагонист[/bold][/color]"; update the
value to reference the placeholder with the same styling wrappers so it matches
the rest of the file's convention and will pick up future updates to common role
names.
🤖 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 `@Resources/Locale/en-US/_Goobstation/round-end/round-end-summary-window.ftl`:
- Line 5: The localization entry round-end-summary-window-last-words has
mismatched markup: it opens with [italic] but closes with [/color]; update the
closing tag to match the opening tag (use [/italic]) so the tag pair is
consistent for the key round-end-summary-window-last-words.

In `@Resources/Locale/ru-RU/_Goobstation/flavors/traitor.ftl`:
- Line 74: В строке с ключом traitor-arcterrorist-intro замените опечатку
"Конрциума" на правильное написание "Консорциума" в значении:
traitor-arcterrorist-intro = Вы — террорист Консорциума Прав Животных., сохранив
остальной текст без изменений.
- Around line 47-48: Fix Russian typos/grammar in the MI13 strings: in
traitor-mi13-goal change "Старайтесь оставаться незамеченым любой ценой." to
"Старайтесь оставаться незамеченным любой ценой." (correct spelling/case), and
in traitor-mi13-allies replace "Не доверяйте каким либо другим агентом
синдиката, за исключением специалистов Cybersun." with "Не доверяйте каким-либо
другим агентам синдиката, за исключением специалистов Cybersun." (add hyphen to
"каким-либо" and use dative plural "агентам" instead of incorrect "агентом").

In `@Resources/Locale/ru-RU/alert-levels/alert-levels.ftl`:
- Around line 23-24: Unify the terminology for Delta messages by updating the
alert-level-delta-announcement string to use the same term as
alert-level-delta-instructions: replace «глав отделов» in
alert-level-delta-announcement with «руководителей персонала» so both keys
(alert-level-delta-announcement and alert-level-delta-instructions) reference
the same role phrasing.

In `@Resources/Prototypes/_White/Voice/speech_emotes.yml`:
- Line 61: The trigger phrase "усмехается" is duplicated under both the Smile
and Laugh emotes causing ambiguity; remove the "усмехается" entry from the Smile
emote block in speech_emotes.yml so the phrase remains only under the Laugh
emote (leave the Laugh mapping untouched), ensuring no other duplicate entries
exist for "усмехается".

---

Outside diff comments:
In `@Content.Client/RoundEnd/RoundEndSummaryWindow.cs`:
- Around line 273-315: The deathLabel is populated with markup
(deathLabel.SetMarkup(...)) but never added back to the visual container, so the
death summary never appears; after the block that sets deathLabel.SetMarkup(...)
(inside the playerInfo.EntMobState == MobState.Dead branch) add the label back
into the layout by calling the container's add method (e.g.,
textVBox.AddChild(deathLabel) or the appropriate Add/Pack method used elsewhere)
so the label is rendered; locate deathLabel and textVBox in
RoundEndSummaryWindow.cs to insert the AddChild call immediately after the
SetMarkup call.

---

Nitpick comments:
In `@Resources/Locale/ru-RU/ghost/roles/ghost-role-component.ftl`:
- Line 238: Replace the hardcoded role name in the localization entry
ghost-role-information-pirate-irs-rules so it uses the shared role-type
placeholder used elsewhere (e.g., the common {role-type} placeholder pattern)
instead of "[color=red][bold]командный антагонист[/bold][/color]"; update the
value to reference the placeholder with the same styling wrappers so it matches
the rest of the file's convention and will pick up future updates to common role
names.
🪄 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: defaults

Review profile: CHILL

Plan: Pro

Run ID: e4f9c69d-675d-45b0-8705-50853bed0ab9

📥 Commits

Reviewing files that changed from the base of the PR and between c674a74 and 9d22e48.

📒 Files selected for processing (22)
  • Content.Client/RoundEnd/RoundEndSummaryWindow.cs
  • Resources/Locale/en-US/_Goobstation/round-end/round-end-summary-window.ftl
  • Resources/Locale/ru-RU/_Goobstation/Changeling/game-ticking/game-presets/preset-changeling.ftl
  • Resources/Locale/ru-RU/_Goobstation/flavors/traitor.ftl
  • Resources/Locale/ru-RU/_Maid/round-end/round-end-summary-window.ftl
  • Resources/Locale/ru-RU/alert-levels/alert-levels.ftl
  • Resources/Locale/ru-RU/game-ticking/game-presets/preset-traitor.ftl
  • Resources/Locale/ru-RU/ghost/roles/ghost-role-component.ftl
  • Resources/Locale/ru-RU/ss14-ru/prototypes/roles/mindroles/mind_roles.ftl
  • Resources/Prototypes/Catalog/Fills/Crates/service.yml
  • Resources/Prototypes/Entities/Mobs/NPCs/animals.yml
  • Resources/Prototypes/Entities/Mobs/Player/dragon.yml
  • Resources/Prototypes/GameRules/pests.yml
  • Resources/Prototypes/SoundCollections/NukeMusic.yml
  • Resources/Prototypes/Voice/disease_emotes.yml
  • Resources/Prototypes/Voice/speech_emotes.yml
  • Resources/Prototypes/_Goobstation/Actions/emotes.yml
  • Resources/Prototypes/_Goobstation/Actions/mouse.yml
  • Resources/Prototypes/_Goobstation/Entities/Objects/Specific/Mail/mail_fun.yml
  • Resources/Prototypes/_Goobstation/Voice/speech_emotes.yml
  • Resources/Prototypes/_Trauma/Body/Organs/Animal/mouse.yml
  • Resources/Prototypes/_White/Voice/speech_emotes.yml

Comment thread Resources/Locale/en-US/_Goobstation/round-end/round-end-summary-window.ftl Outdated
Comment thread Resources/Locale/ru-RU/_Goobstation/flavors/traitor.ftl Outdated
Comment thread Resources/Locale/ru-RU/_Goobstation/flavors/traitor.ftl Outdated
Comment thread Resources/Locale/ru-RU/alert-levels/alert-levels.ftl Outdated
Comment thread Resources/Prototypes/_White/Voice/speech_emotes.yml Outdated
@CREAsTIVE CREAsTIVE changed the title Fix alot2 Многа фиксов May 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant