Skip to content

Загрузка прототипов для SCP-3008#865

Merged
ThereDrD0 merged 10 commits intospace-sunrise:masterfrom
WardexOfficial:load-scp3008
Mar 19, 2026
Merged

Загрузка прототипов для SCP-3008#865
ThereDrD0 merged 10 commits intospace-sunrise:masterfrom
WardexOfficial:load-scp3008

Conversation

@WardexOfficial
Copy link
Contributor

@WardexOfficial WardexOfficial commented Mar 13, 2026

Краткое описание | Short description

Загрузка прототипов SCP-3008

🆑 Wardex

  • add: Прототипы работников SCP-3008 разного вида

Summary by CodeRabbit

  • New Features
    • Добавлены восемь вариантов сущностей SCP-3008 с различными уровнями сложности (базовый, сильный, высокий) и состояниями агрессии.
    • Добавлена музыкальная шкатулка как новый предмет события SCP-3008.
    • Реализована русская локализация для всех новых сущностей и предметов события.
    • Добавлены текстурные ресурсы для визуализации новых вариантов мобов.

@github-actions
Copy link
Contributor

github-actions bot commented Mar 13, 2026

RSI Diff Bot; head commit 5f01eee merging into 391e455
This PR makes changes to 1 or more RSIs. Here is a summary of all changes:

Resources/Textures/_Scp/Mobs/Scp/Events/scp-3008/basic.rsi

State Old New Status
Basic3008 Added
Strong3008 Added

Resources/Textures/_Scp/Mobs/Scp/Events/scp-3008/tall.rsi

State Old New Status
Tall3008 Added

Edit: diff updated after 5f01eee

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Mar 13, 2026

Warning

Rate limit exceeded

@WardexOfficial has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 24 minutes and 55 seconds before requesting another review.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 2fb0b16e-5521-4184-9f99-2b21ad832911

📥 Commits

Reviewing files that changed from the base of the PR and between b05a4fd and e990d81.

📒 Files selected for processing (1)
  • Resources/Prototypes/_Scp/Entities/Mobs/NPCs/Scp/Events/scp3008.yml
📝 Walkthrough

Прохождение

Добавлены восемь новых вариантов NPC-сущностей SCP-3008 с локализацией на русском языке, определениями прототипов и ресурсами текстур. Каждый вариант включает различные уровни агрессии, движения и боевых характеристик, а также музыкальная шкатулка как сопутствующий предмет.

Изменения

Когорта / Файлы Сводка
Локализация SCP-3008
Resources/Locale/ru-RU/_prototypes/_scp/entities/mobs/npcs/scp/events/scp-3008.ftl
Добавлены восемь локализованных записей для NPC-сущностей SCP-3008, включая названия и описания для базовых вариантов и их агрессивных аналогов.
Прототипы сущностей
Resources/Prototypes/_Scp/Entities/Mobs/NPCs/Scp/Events/scp3008.yml
Определены восемь NPC-вариантов (Scp3008MusicBox, BaseScp3008, BasicScp3008, BasicScp3008Angry, StrongScp3008, StrongScp3008Angry, TallScp3008, TallScp3008Angry) с компонентами поведения, боевыми статистиками, тактикой спавна/деспавна и фракционными взаимодействиями.
Метаданные текстур
Resources/Textures/_Scp/Mobs/Scp/Events/scp-3008/basic.rsi/meta.json, Resources/Textures/_Scp/Mobs/Scp/Events/scp-3008/tall.rsi/meta.json
Добавлены метаданные спрайтов для базовых и высоких вариантов SCP-3008 с определением размеров (32x32 и 32x48) и направлений анимации.

Прогнозируемые затраты на проверку кода

🎯 3 (Средняя сложность) | ⏱️ ~20 минут

Предлагаемые ярлыки

🖌️ Спрайты 🖌️

Поэма

Восемь друзей спешат в икеевский мир,
С гневом и добротой, устрашающий пир,
Музыка звучит из волшебной коробки,
Спрайты танцуют в текстурных миг-робках,
Русский язык поёт, как листочек в ночи! 🐰✨

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed Заголовок точно описывает основное изменение: загрузка прототипов для SCP-3008, что соответствует содержимому изменений (добавлены YAML-прототипы, локализация и текстуры для восьми вариантов SCP-3008).
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

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

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
📝 Coding Plan
  • Generate coding plan for human review comments

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.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 3

🧹 Nitpick comments (2)
Resources/Locale/ru-RU/_prototypes/_scp/entities/mobs/npcs/scp/main/scp-3008.ftl (1)

5-9: Сведите locale-зависимые alias-ссылки к минимуму.

Для долгосрочной поддержки лучше использовать полные RU-строки либо единый базовый ключ, чтобы избежать расхождений между локалями.

Based on learnings: "Localization files should avoid locale-specific cross-references ... and minimize locale-dependent aliasing."

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@Resources/Locale/ru-RU/_prototypes/_scp/entities/mobs/npcs/scp/main/scp-3008.ftl`
around lines 5 - 9, Several locale entries (ent-BasicScp3008Angry,
ent-StrongScp3008Angry, ent-TallScp3008Angry) are aliasing other locale keys
which creates locale-dependent cross-references; replace these alias references
with either the full Russian strings or point them to a single shared base key
(e.g., make ent-BasicScp3008Angry contain the actual RU text rather than "{
ent-BasicScp3008 }", and similarly replace "{ ent-StrongScp3008Angry }" and "{
ent-TallScp3008 }" with their corresponding Russian literals or redirect all
angry variants to a single canonical key like ent-Scp3008Angry to avoid
per-locale divergence), updating the entries ent-BasicScp3008Angry,
ent-StrongScp3008Angry, and ent-TallScp3008Angry accordingly.
Resources/Prototypes/_Scp/Entities/Mobs/NPCs/Scp/Main/scp3008.yml (1)

74-77: Добавьте явные categories: [HideSpawnMenu] в дочерние SCP-3008 прототипы.

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

Based on learnings: "Для каждой дочерней сущности обязательно явно указывать categories: [HideSpawnMenu], даже если такая категория уже присутствует у родителя."

Also applies to: 99-103, 127-130, 156-160, 190-193, 211-215

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@Resources/Prototypes/_Scp/Entities/Mobs/NPCs/Scp/Main/scp3008.yml` around
lines 74 - 77, Child SCP-3008 prototypes (e.g., the prototype with id
BasicScp3008 that inherits from BaseScp3008) must explicitly declare categories:
[HideSpawnMenu] to prevent accidental exposure in spawn menus when inheritance
changes; for each child prototype (including the others noted in the review) add
a categories: [HideSpawnMenu] entry at the same level as
id/parent/name/components so the child YAML contains the category explicitly
even if the parent defines it.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In
`@Resources/Locale/ru-RU/_prototypes/_scp/entities/mobs/npcs/scp/main/scp-3008.ftl`:
- Line 7: В ключе ent-StrongScp3008Angry замените рекурсивную самоссылку на
реальную строку перевода или на корректный ключ, например вместо
"ent-StrongScp3008Angry = { ent-StrongScp3008Angry }" используйте фактический
текст состояния (напр., ent-StrongScp3008Angry = "Злой SCP-3008") или ссылку на
существующий корректный ключ (напр., ent-StrongScp3008Angry = {
ent-StrongScp3008Angry_description }), чтобы убрать рекурсию и позволить
резолвингу завершиться.

In `@Resources/Prototypes/_Scp/Entities/Mobs/NPCs/Scp/Main/scp3008.yml`:
- Around line 89-90: TimedSpawner.prototypes references the wrong entity IDs
(uses Basic3008*/Strong3008*/Tall3008*) while the actual entities are declared
as BasicScp3008*/StrongScp3008*/TallScp3008*; update every
TimedSpawner.prototypes entry (e.g., the occurrences around where prototypes: -
Basic3008Angry appears and the other listed spots) to use the correct IDs
BasicScp3008*, StrongScp3008*, and TallScp3008* so they match the declared
entity names.
- Line 191: В файле определения прототипа TallScp3008 указан неверный родитель:
свойство parent ссылается на Base3008, тогда как реальное имя базового прототипа
— BaseScp3008; исправьте значение parent в записи TallScp3008 на "BaseScp3008"
чтобы восстановить корректное наследование прототипа.

---

Nitpick comments:
In
`@Resources/Locale/ru-RU/_prototypes/_scp/entities/mobs/npcs/scp/main/scp-3008.ftl`:
- Around line 5-9: Several locale entries (ent-BasicScp3008Angry,
ent-StrongScp3008Angry, ent-TallScp3008Angry) are aliasing other locale keys
which creates locale-dependent cross-references; replace these alias references
with either the full Russian strings or point them to a single shared base key
(e.g., make ent-BasicScp3008Angry contain the actual RU text rather than "{
ent-BasicScp3008 }", and similarly replace "{ ent-StrongScp3008Angry }" and "{
ent-TallScp3008 }" with their corresponding Russian literals or redirect all
angry variants to a single canonical key like ent-Scp3008Angry to avoid
per-locale divergence), updating the entries ent-BasicScp3008Angry,
ent-StrongScp3008Angry, and ent-TallScp3008Angry accordingly.

In `@Resources/Prototypes/_Scp/Entities/Mobs/NPCs/Scp/Main/scp3008.yml`:
- Around line 74-77: Child SCP-3008 prototypes (e.g., the prototype with id
BasicScp3008 that inherits from BaseScp3008) must explicitly declare categories:
[HideSpawnMenu] to prevent accidental exposure in spawn menus when inheritance
changes; for each child prototype (including the others noted in the review) add
a categories: [HideSpawnMenu] entry at the same level as
id/parent/name/components so the child YAML contains the category explicitly
even if the parent defines it.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 43f4a9fe-5efd-42bc-a23b-d70a70eca20d

📥 Commits

Reviewing files that changed from the base of the PR and between d830885 and 2428560.

⛔ Files ignored due to path filters (5)
  • Resources/Audio/_Scp/Scp3008/IKEA.ogg is excluded by !**/*.ogg
  • Resources/Audio/_Scp/Scp3008/VOICE.ogg is excluded by !**/*.ogg
  • Resources/Textures/_Scp/Mobs/Scp/scp-3008/basic.rsi/Basic3008.png is excluded by !**/*.png
  • Resources/Textures/_Scp/Mobs/Scp/scp-3008/basic.rsi/Strong3008.png is excluded by !**/*.png
  • Resources/Textures/_Scp/Mobs/Scp/scp-3008/tall.rsi/Tall3008.png is excluded by !**/*.png
📒 Files selected for processing (5)
  • Resources/Locale/ru-RU/_prototypes/_scp/entities/mobs/npcs/scp/main/scp-3008.ftl
  • Resources/Maps/_Scp/Events/RJD1/Ikea_v6.3.yml
  • Resources/Prototypes/_Scp/Entities/Mobs/NPCs/Scp/Main/scp3008.yml
  • Resources/Textures/_Scp/Mobs/Scp/scp-3008/basic.rsi/meta.json
  • Resources/Textures/_Scp/Mobs/Scp/scp-3008/tall.rsi/meta.json

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@Resources/Prototypes/_Scp/Entities/Mobs/NPCs/Scp/Main/scp3008.yml`:
- Around line 18-23: Remove the non-serialised activeChannel entry from the
ScpRadio prototype in scp3008.yml: the ScpRadio component's ActiveChannel
property in Content.Shared/_Scp/Other/Radio/ScpRadioComponent.cs does not have a
[DataField] so the YAML key will be ignored or break deserialization; either
delete the activeChannel line(s) under the ScpRadio block in scp3008.yml or
alternatively add a [DataField("activeChannel")] (and proper backing field/type)
to the ActiveChannel property in ScpRadioComponent to make it
serializable—prefer removing the YAML entry unless you intend to persist that
value via a DataField on ActiveChannel.
- Around line 73-254: Add an explicit categories: [HideSpawnMenu] field to every
child SCP-3008 prototype that currently lacks it (BasicScp3008,
BasicScp3008Angry, StrongScp3008, StrongScp3008Angry, TallScp3008,
TallScp3008Angry) because category inheritance from BaseScp3008 is not reliable;
for each of these entity definitions, insert categories: [HideSpawnMenu] at the
top-level of the prototype (alongside id/name/parent/components) so the spawn
menu is hidden for each child prototype.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 272a16c1-53f1-4071-ad8f-3fd2a014e957

📥 Commits

Reviewing files that changed from the base of the PR and between 2428560 and ae2a564.

📒 Files selected for processing (2)
  • Resources/Locale/ru-RU/_prototypes/_scp/entities/mobs/npcs/scp/main/scp-3008.ftl
  • Resources/Prototypes/_Scp/Entities/Mobs/NPCs/Scp/Main/scp3008.yml
🚧 Files skipped from review as they are similar to previous changes (1)
  • Resources/Locale/ru-RU/_prototypes/_scp/entities/mobs/npcs/scp/main/scp-3008.ftl

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 3

🧹 Nitpick comments (1)
Resources/Locale/ru-RU/_prototypes/_scp/entities/mobs/npcs/scp/events/scp-3008.ftl (1)

5-10: Отсутствуют .desc для базовых вариантов.

У ent-BasicScp3008, ent-StrongScp3008 и ent-TallScp3008 не указаны описания (.desc). Они будут использовать описание из YAML-файла на английском или наследовать от BaseScp3008.

Рекомендуется добавить локализованные описания для консистентности:

Предлагаемое дополнение
 ent-BasicScp3008 = Сотрудник IKEA
+    .desc = { ent-BaseScp3008.desc }
 ent-BasicScp3008Angry = { ent-BasicScp3008 }
+    .desc = { ent-BaseScp3008.desc }
 ent-StrongScp3008 = Крепкий сотрудник IKEA
+    .desc = { ent-BaseScp3008.desc }
 ent-StrongScp3008Angry = { ent-StrongScp3008 }
+    .desc = { ent-BaseScp3008.desc }
 ent-TallScp3008 = Высокий сотрудник IKEA
+    .desc = { ent-BaseScp3008.desc }
 ent-TallScp3008Angry = { ent-TallScp3008 }
+    .desc = { ent-BaseScp3008.desc }
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In
`@Resources/Locale/ru-RU/_prototypes/_scp/entities/mobs/npcs/scp/events/scp-3008.ftl`
around lines 5 - 10, Add Russian description entries (.desc) for the base
SCP-3008 variants so they don't fall back to English/YAML or BaseScp3008: add
ent-BasicScp3008.desc, ent-StrongScp3008.desc and ent-TallScp3008.desc with
brief localized Russian descriptions; keep or update ent-BasicScp3008Angry and
ent-StrongScp3008Angry and ent-TallScp3008Angry either as aliases to the base
keys or add separate .desc entries if the angry variants need distinct text (use
the existing ent-BasicScp3008, ent-StrongScp3008, ent-TallScp3008 identifiers to
locate where to add the .desc fields).
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@Resources/Prototypes/_Scp/Entities/Mobs/NPCs/Scp/Events/scp3008.yml`:
- Around line 16-17: В файле scp3008.yml указан путь к аудиофайлу sound.path:
/Audio/_Scp/Scp3008/IKEA.ogg, но pipeline сообщает, что этот файл отсутствует;
либо добавьте в репозиторий нужный файл по этому пути (включая правильные
регистр/каталог) либо исправьте значение sound.path в scp3008.yml на фактический
существующий путь к аудиофайлу (например другой каталог/имя без ведущего слеша,
если ресурсы хранятся по относительному пути), затем пересоберите/проверьте, что
pipeline видит файл.
- Around line 152-155: Проблема: при переопределении поля MeleeWeapon в
прототипе потерян Structural урон из родителя StrongScp3008; чтобы исправить, в
блоке MeleeWeapon (атрибут damage.types) добавить запись Structural: 40 рядом с
Blunt: 15 или объединить/унаследовать типы урона вместо полного перезаписывания;
проверьте, что в секции, где определён MeleeWeapon, присутствуют оба ключа —
Blunt и Structural — чтобы злая версия сохраняла тот же Structural урон, что и
родитель.
- Around line 106-107: В файле есть три вхождения компонента NPCRetaliation где
ключ включения неправильно назван `_enabled: false`; замените во всех случаях
`_enabled` на стандартный `enabled` (т. е. NPCRetaliation: _enabled: false →
NPCRetaliation: enabled: false) чтобы соответствовать проектному YAML синтаксису
и избежать игнорирования флага.

---

Nitpick comments:
In
`@Resources/Locale/ru-RU/_prototypes/_scp/entities/mobs/npcs/scp/events/scp-3008.ftl`:
- Around line 5-10: Add Russian description entries (.desc) for the base
SCP-3008 variants so they don't fall back to English/YAML or BaseScp3008: add
ent-BasicScp3008.desc, ent-StrongScp3008.desc and ent-TallScp3008.desc with
brief localized Russian descriptions; keep or update ent-BasicScp3008Angry and
ent-StrongScp3008Angry and ent-TallScp3008Angry either as aliases to the base
keys or add separate .desc entries if the angry variants need distinct text (use
the existing ent-BasicScp3008, ent-StrongScp3008, ent-TallScp3008 identifiers to
locate where to add the .desc fields).

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: b932cda6-93a4-4642-8eb0-10ed3a66aa65

📥 Commits

Reviewing files that changed from the base of the PR and between ae2a564 and 2bbdea9.

⛔ Files ignored due to path filters (2)
  • Resources/Audio/_Scp/Events/Scp3008/IKEA.ogg is excluded by !**/*.ogg
  • Resources/Audio/_Scp/Events/Scp3008/VOICE.ogg is excluded by !**/*.ogg
📒 Files selected for processing (2)
  • Resources/Locale/ru-RU/_prototypes/_scp/entities/mobs/npcs/scp/events/scp-3008.ftl
  • Resources/Prototypes/_Scp/Entities/Mobs/NPCs/Scp/Events/scp3008.yml

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

♻️ Duplicate comments (1)
Resources/Prototypes/_Scp/Entities/Mobs/NPCs/Scp/Events/scp3008.yml (1)

170-171: ⚠️ Potential issue | 🟡 Minor

Остались два NPCRetaliation с _enabled вместо enabled.

На Line 171 и Line 239 всё ещё стоит _enabled: false, хотя на Line 107 в этом же файле уже используется корректный ключ enabled. Если _enabled не распознаётся компонентом, флаг будет проигнорирован, и эти варианты продолжат контратаковать.

Предлагаемое исправление
  - type: NPCRetaliation
-   _enabled: false
+   enabled: false

Also applies to: 238-239

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@Resources/Prototypes/_Scp/Entities/Mobs/NPCs/Scp/Events/scp3008.yml` around
lines 170 - 171, В файле два компонента NPCRetaliation используют неправильный
ключ `_enabled` (из-за этого флаг игнорируется) — замените `_enabled: false` на
корректный ключ `enabled: false` для всех вхождений NPCRetaliation (включая
упомянутые дубли на строках около 171 и 239), и пройдитесь по файлу, чтобы
убедиться, что все NPCRetaliation используют `enabled` одинаково с остальными
компонентами.
🧹 Nitpick comments (1)
Resources/Prototypes/_Scp/Entities/Mobs/NPCs/Scp/Events/scp3008.yml (1)

13-27: Слот батарейки здесь, похоже, ни на что не влияет.

AmbientSound не завязан на PowerCellSlot, а в самом прототипе не видно компонентов, которые бы проверяли или расходовали заряд. В результате PowerCellMedium можно вынуть без эффекта. Если предмет должен работать от батарейки, здесь лучше явно добавить логику питания; если нет — убрать слот и startingItem.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@Resources/Prototypes/_Scp/Entities/Mobs/NPCs/Scp/Events/scp3008.yml` around
lines 13 - 27, The PowerCellMedium slot currently has no effect because there is
no component wiring power logic to PowerCellSlot (the AmbientSound component
obviously doesn't use it) — either implement explicit power usage by adding a
power-consumer component that references the cell slot (e.g., add a
PowerConsumer or PoweredComponent that reads cell_slot/PowerCellSlot and
decrements charge over time or on use, and update any sound/behavior logic to
check that component), or remove the unused container/cell_slot and the
startingItem entry (remove the ContainerContainer block, the PowerCellSlot
block, and the ItemSlots.cell_slot startingItem: PowerCellMedium) so the
prototype doesn't expose a non-functional battery slot. Ensure references use
the existing identifiers: cell_slot, PowerCellSlot, ItemSlots, and
PowerCellMedium.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Duplicate comments:
In `@Resources/Prototypes/_Scp/Entities/Mobs/NPCs/Scp/Events/scp3008.yml`:
- Around line 170-171: В файле два компонента NPCRetaliation используют
неправильный ключ `_enabled` (из-за этого флаг игнорируется) — замените
`_enabled: false` на корректный ключ `enabled: false` для всех вхождений
NPCRetaliation (включая упомянутые дубли на строках около 171 и 239), и
пройдитесь по файлу, чтобы убедиться, что все NPCRetaliation используют
`enabled` одинаково с остальными компонентами.

---

Nitpick comments:
In `@Resources/Prototypes/_Scp/Entities/Mobs/NPCs/Scp/Events/scp3008.yml`:
- Around line 13-27: The PowerCellMedium slot currently has no effect because
there is no component wiring power logic to PowerCellSlot (the AmbientSound
component obviously doesn't use it) — either implement explicit power usage by
adding a power-consumer component that references the cell slot (e.g., add a
PowerConsumer or PoweredComponent that reads cell_slot/PowerCellSlot and
decrements charge over time or on use, and update any sound/behavior logic to
check that component), or remove the unused container/cell_slot and the
startingItem entry (remove the ContainerContainer block, the PowerCellSlot
block, and the ItemSlots.cell_slot startingItem: PowerCellMedium) so the
prototype doesn't expose a non-functional battery slot. Ensure references use
the existing identifiers: cell_slot, PowerCellSlot, ItemSlots, and
PowerCellMedium.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: b0926d87-4729-46fd-b202-d8fcb9ff4502

📥 Commits

Reviewing files that changed from the base of the PR and between 2bbdea9 and b05a4fd.

⛔ Files ignored due to path filters (3)
  • Resources/Textures/_Scp/Mobs/Scp/Events/scp-3008/basic.rsi/Basic3008.png is excluded by !**/*.png
  • Resources/Textures/_Scp/Mobs/Scp/Events/scp-3008/basic.rsi/Strong3008.png is excluded by !**/*.png
  • Resources/Textures/_Scp/Mobs/Scp/Events/scp-3008/tall.rsi/Tall3008.png is excluded by !**/*.png
📒 Files selected for processing (3)
  • Resources/Prototypes/_Scp/Entities/Mobs/NPCs/Scp/Events/scp3008.yml
  • Resources/Textures/_Scp/Mobs/Scp/Events/scp-3008/basic.rsi/meta.json
  • Resources/Textures/_Scp/Mobs/Scp/Events/scp-3008/tall.rsi/meta.json

@ThereDrD0
Copy link
Collaborator

Чини и можно мержить

::error in /Prototypes/_Scp/Entities/Mobs/NPCs/Scp/Events/scp3008.yml(77,7)  No Content.Shared.NPC.Prototypes.NpcFactionPrototype found with id Neutral

@WardexOfficial
Copy link
Contributor Author

Чини и можно мержить

::error in /Prototypes/_Scp/Entities/Mobs/NPCs/Scp/Events/scp3008.yml(77,7)  No Content.Shared.NPC.Prototypes.NpcFactionPrototype found with id Neutral

Готово

@ThereDrD0 ThereDrD0 merged commit 8ff6b88 into space-sunrise:master Mar 19, 2026
11 of 12 checks passed
@WardexOfficial WardexOfficial deleted the load-scp3008 branch March 19, 2026 17:27
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.

4 participants