Skip to content

[FIX] ERROR server#2638

Merged
Darkiich merged 47 commits intoAdventureTimeSS14:masterfrom
CrimeMoot:fix_dsadasdsad
Mar 19, 2026
Merged

[FIX] ERROR server#2638
Darkiich merged 47 commits intoAdventureTimeSS14:masterfrom
CrimeMoot:fix_dsadasdsad

Conversation

@CrimeMoot
Copy link
Copy Markdown
Collaborator

@CrimeMoot CrimeMoot commented Mar 18, 2026

Описание PR

Исправил ЕРРОРки которые на сервере пишутся.

image image image

Техническая информация

  • Изменения были протестированы на локальном сервере, и всё работает отлично.
  • PR закончен и требует просмотра изменений.

Чейнджлог

no cl no fan

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Mar 18, 2026

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

Обзор изменений

Этот PR вносит множественные изменения в конфигурацию и прототипы: добавляет поддержку управления конфигурацией для трёх систем (Ghostbar, PlanetSpawner, BiomeGeneration) путём введения трёх новых CVars с ранними выходами при отключении; исправляет пути иконок и конфигурацию спрайтов для диспенсеров и шлемов MOD; добавляет контейнеры решений к органам Tajaran, demon и novakid; вводит компоненты гравитации и физики для фантомных сущностей, неподвижного стержня и полиморфа; модифицирует систему IV-капельниц для безопасного поиска слоёв; изменяет размер снаряжения контрабандиста; расширяет исследовательские разблокировки плиток пола.

Возможно связанные PR

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

Changes: Sprites, S: Untriaged

Предлагаемые рецензенты

  • Red-Lis
  • 1Altius
🚥 Pre-merge checks | ✅ 1 | ❌ 2

❌ Failed checks (1 warning, 1 inconclusive)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 36.36% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
Title check ❓ Inconclusive Заголовок '[FIX] ERROR server' слишком расплывчатый и неконкретный; он не указывает на конкретные исправленные ошибки среди множества изменений в ПР. Уточните заголовок, указав конкретные исправления, например: '[FIX] Resource path, MODsuit PointLight and entity attachment issues' или перечислите основные исправленные ошибки.
✅ Passed checks (1 passed)
Check name Status Explanation
Description check ✅ Passed The PR description is related to the changeset - it describes fixing server errors, which aligns with the multiple bug fixes visible in the changes.

✏️ 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.

@github-actions github-actions Bot added size/S and removed size/XS labels Mar 18, 2026
@github-actions github-actions Bot added size/M and removed size/S labels Mar 18, 2026
Copy link
Copy Markdown
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: 1

🧹 Nitpick comments (3)
Content.Server/ADT/Station/Systems/StationPlanetSpawnerSystem.cs (1)

3-4: Порядок using не соответствует алфавитному.

В системах /ADT/ using должны быть в алфавитном порядке. Content.Shared.* должен идти перед Robust.Shared.*:

-using Robust.Shared.Configuration;
-using Content.Shared.ADT.CCVar;
+using Content.Shared.ADT.CCVar;
+using Robust.Shared.Configuration;

As per coding guidelines: "using был в алфавитном порядке в наших /ADT/ системах".

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

In `@Content.Server/ADT/Station/Systems/StationPlanetSpawnerSystem.cs` around
lines 3 - 4, The using directives at the top of StationPlanetSpawnerSystem.cs
are out of alphabetical order; reorder the usings so they are alphabetized with
Content.Shared.* entries before Robust.Shared.* (e.g. place "using
Content.Shared.ADT.CCVar;" before "using Robust.Shared.Configuration;"),
ensuring all other using lines in this file follow standard alphabetical
ordering.
Content.Shared/ADT/CCVar/ADTCCVars.cs (1)

303-324: Комментарий секции можно уточнить.

Комментарий Fix PoolManager. Cvars не очень информативен. Рекомендую переименовать на что-то более описательное, например:

-    /*
-    * Fix PoolManager. Cvars
-    */
+    /*
+    * Feature toggles
+    */

Сами CVars определены корректно с CVar.SERVERONLY и имеют документацию.

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

In `@Content.Shared/ADT/CCVar/ADTCCVars.cs` around lines 303 - 324, The header
comment "Fix PoolManager. Cvars" is too vague—replace it with a descriptive
summary above the CVar definitions, e.g. "PoolManager-related CVar definitions:
server-only CVars controlling ghostbar, planet spawner, and biome generation."
Update the comment that precedes GhostbarEnabled, PlanetSpawnerEnabled, and
BiomeGenerationEnabled to this clearer phrasing so it documents the purpose and
scope of these CVar entries.
Content.Server/ADT/Ghostbar/Systems/GhostBarSystem.cs (1)

23-24: Порядок using не соответствует алфавитному.

Новые using должны быть в правильном порядке: Content.Shared.* перед Robust.Shared.*:

-using Robust.Shared.Configuration;
-using Content.Shared.ADT.CCVar;
+using Content.Shared.ADT.CCVar;
+using Robust.Shared.Configuration;

As per coding guidelines: "using был в алфавитном порядке в наших /ADT/ системах".

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

In `@Content.Server/ADT/Ghostbar/Systems/GhostBarSystem.cs` around lines 23 - 24,
Порядок директив using в GhostBarSystem.cs не соответствует алфавитному:
переставьте using Content.Shared.ADT.CCVar перед using
Robust.Shared.Configuration (и приведите все остальные using в этом файле к
общему алфавитному порядку), чтобы соблюсти правило "Content.Shared.* before
Robust.Shared.*" в ADT системах; проверьте и обновите любые дополнительные using
в этом файле, чтобы итоговый список был полностью в алфавитном порядке.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@Content.Server/Parallax/BiomeSystem.cs`:
- Around line 1011-1014: The EnsurePlanet method in BiomeSystem currently
returns early when ADTCCVars.BiomeGenerationEnabled is false, preventing the
guaranteed addition of BiomeComponent and breaking callers (see PlanetSystem
calling EnsurePlanet then Comp<BiomeComponent>(map)); change EnsurePlanet so it
always ensures/registers the BiomeComponent for the map regardless of the CVar
(i.e., add or move the code that creates/registers BiomeComponent to execute
before or independent of the ADTCCVars.BiomeGenerationEnabled check) so the
method contract is preserved; alternatively, if you prefer the feature gate,
update EnsurePlanet signature to return bool and update callers
(PlanetSystem.EnsurePlanet + Comp<BiomeComponent>) to handle the failure, but do
not leave the current early return while callers assume the component exists.

---

Nitpick comments:
In `@Content.Server/ADT/Ghostbar/Systems/GhostBarSystem.cs`:
- Around line 23-24: Порядок директив using в GhostBarSystem.cs не соответствует
алфавитному: переставьте using Content.Shared.ADT.CCVar перед using
Robust.Shared.Configuration (и приведите все остальные using в этом файле к
общему алфавитному порядку), чтобы соблюсти правило "Content.Shared.* before
Robust.Shared.*" в ADT системах; проверьте и обновите любые дополнительные using
в этом файле, чтобы итоговый список был полностью в алфавитном порядке.

In `@Content.Server/ADT/Station/Systems/StationPlanetSpawnerSystem.cs`:
- Around line 3-4: The using directives at the top of
StationPlanetSpawnerSystem.cs are out of alphabetical order; reorder the usings
so they are alphabetized with Content.Shared.* entries before Robust.Shared.*
(e.g. place "using Content.Shared.ADT.CCVar;" before "using
Robust.Shared.Configuration;"), ensuring all other using lines in this file
follow standard alphabetical ordering.

In `@Content.Shared/ADT/CCVar/ADTCCVars.cs`:
- Around line 303-324: The header comment "Fix PoolManager. Cvars" is too
vague—replace it with a descriptive summary above the CVar definitions, e.g.
"PoolManager-related CVar definitions: server-only CVars controlling ghostbar,
planet spawner, and biome generation." Update the comment that precedes
GhostbarEnabled, PlanetSpawnerEnabled, and BiomeGenerationEnabled to this
clearer phrasing so it documents the purpose and scope of these CVar entries.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: 524a1343-3843-4465-a58a-221ee0ba2748

📥 Commits

Reviewing files that changed from the base of the PR and between 6858ae8 and 9cfc196.

📒 Files selected for processing (7)
  • Content.IntegrationTests/PoolManager.Cvars.cs
  • Content.Server/ADT/Ghostbar/Systems/GhostBarSystem.cs
  • Content.Server/ADT/Station/Systems/StationPlanetSpawnerSystem.cs
  • Content.Server/Parallax/BiomeSystem.cs
  • Content.Shared/ADT/CCVar/ADTCCVars.cs
  • Content.Shared/ADT/Modsuit/Systems/ModSuitSystem.Modules.cs
  • Content.Shared/ADT/Modsuit/Systems/ModSuitSystem.Suit.cs

Comment thread Content.Server/Parallax/BiomeSystem.cs Outdated
Copy link
Copy Markdown
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.

🧹 Nitpick comments (3)
Content.Server/Parallax/BiomeSystem.cs (1)

20-20: Неиспользуемый импорт Content.Shared.ADT.CCVar.

Этот using добавлен, но нигде в файле BiomeSystem.cs не используется ADTCCVars. Проверка BiomeGenerationEnabled была корректно перенесена в PlanetSystem.cs, поэтому данный импорт здесь не нужен и должен быть удалён.

♻️ Предлагаемое исправление
 using Content.Shared.Tag;
-using Content.Shared.ADT.CCVar;
 using Microsoft.Extensions.ObjectPool;

As per coding guidelines: "следи чтобы не заводили не используемые поля и константы если такие есть то их нужно просить убрать".

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

In `@Content.Server/Parallax/BiomeSystem.cs` at line 20, Удалите неиспользуемый
импорт Content.Shared.ADT.CCVar из файла BiomeSystem.cs: откройте
BiomeSystem.cs, найдите и удалите строку "using Content.Shared.ADT.CCVar;" —
проверка BiomeGenerationEnabled уже перенесена в PlanetSystem.cs, поэтому
ADTCCVars здесь не используется и импорт нужно убрать.
Content.Server/ADT/Planet/PlanetSystem.cs (2)

1-16: Порядок using-директив не алфавитный.

Согласно правилам проекта, using-директивы в файлах /ADT/ должны быть в алфавитном порядке. Сейчас System.Linq и System.Numerics находятся в конце списка, хотя должны быть в начале.

♻️ Предлагаемый порядок
+using System.Linq;
+using System.Numerics;
 using Content.Server.Atmos.EntitySystems;
 using Content.Server.Parallax;
 using Content.Shared.ADT.CCVar;
 using Content.Shared.ADT.Planet;
 using Content.Shared.Parallax.Biomes;
 using Robust.Server.GameObjects;
 using Robust.Shared.Configuration;
+using Robust.Shared.EntitySerialization;
+using Robust.Shared.EntitySerialization.Systems;
 using Robust.Shared.Map;
 using Robust.Shared.Map.Components;
 using Robust.Shared.Prototypes;
-using Robust.Shared.EntitySerialization.Systems;
-using Robust.Shared.EntitySerialization;
-using System.Numerics;
-using System.Linq;
+using Robust.Shared.Toolshed.Commands.Values;
 using Robust.Shared.Utility;
-using Robust.Shared.Toolshed.Commands.Values;

As per coding guidelines: "смотри за тем чтобы using был в алфавитном порядке в наших /ADT/ системах и компонентах".

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

In `@Content.Server/ADT/Planet/PlanetSystem.cs` around lines 1 - 16, The using
directives in PlanetSystem.cs are not alphabetized; reorder all using statements
in this file (the block shown at top of the diff) into strict alphabetical order
(so System.Linq and System.Numerics appear among the other System.* entries near
the top), preserving the existing single blank line groupings if present and not
changing any usages or namespaces referenced by the class.

42-55: Исправление критической проблемы выполнено корректно.

Логика правильно учитывает случай отключённой генерации биомов: Comp<BiomeComponent>(map) теперь вызывается только если EnsurePlanet был выполнен.

Два отдельных if (biomeEnabled) блока можно объединить в один для улучшения читаемости.

♻️ Объединение блоков
         var biomeEnabled = _configManager.GetCVar(ADTCCVars.BiomeGenerationEnabled);
         if (biomeEnabled)
         {
             _biome.EnsurePlanet(map, _proto.Index(planet.Biome), mapLight: planet.MapLight, dayCycle: planet.DayCycle);
-        }
 
-        if (biomeEnabled)
-        {
             var biome = Comp<BiomeComponent>(map);
             foreach (var layer in planet.BiomeMarkerLayers)
             {
                 _biome.AddMarkerLayer(map, biome, layer);
             }
         }
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@Content.Server/ADT/Planet/PlanetSystem.cs` around lines 42 - 55, Combine the
two identical checks of _configManager.GetCVar(ADTCCVars.BiomeGenerationEnabled)
into a single if block: call _biome.EnsurePlanet(map,
_proto.Index(planet.Biome), mapLight: planet.MapLight, dayCycle:
planet.DayCycle) and then, inside the same block, get the biome component via
Comp<BiomeComponent>(map) and iterate planet.BiomeMarkerLayers to call
_biome.AddMarkerLayer(map, biome, layer); this removes the duplicated condition
while preserving the existing behavior.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In `@Content.Server/ADT/Planet/PlanetSystem.cs`:
- Around line 1-16: The using directives in PlanetSystem.cs are not
alphabetized; reorder all using statements in this file (the block shown at top
of the diff) into strict alphabetical order (so System.Linq and System.Numerics
appear among the other System.* entries near the top), preserving the existing
single blank line groupings if present and not changing any usages or namespaces
referenced by the class.
- Around line 42-55: Combine the two identical checks of
_configManager.GetCVar(ADTCCVars.BiomeGenerationEnabled) into a single if block:
call _biome.EnsurePlanet(map, _proto.Index(planet.Biome), mapLight:
planet.MapLight, dayCycle: planet.DayCycle) and then, inside the same block, get
the biome component via Comp<BiomeComponent>(map) and iterate
planet.BiomeMarkerLayers to call _biome.AddMarkerLayer(map, biome, layer); this
removes the duplicated condition while preserving the existing behavior.

In `@Content.Server/Parallax/BiomeSystem.cs`:
- Line 20: Удалите неиспользуемый импорт Content.Shared.ADT.CCVar из файла
BiomeSystem.cs: откройте BiomeSystem.cs, найдите и удалите строку "using
Content.Shared.ADT.CCVar;" — проверка BiomeGenerationEnabled уже перенесена в
PlanetSystem.cs, поэтому ADTCCVars здесь не используется и импорт нужно убрать.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: d99c3cd4-6d1c-483b-957f-2e188d2be324

📥 Commits

Reviewing files that changed from the base of the PR and between 9cfc196 and b68a497.

📒 Files selected for processing (2)
  • Content.Server/ADT/Planet/PlanetSystem.cs
  • Content.Server/Parallax/BiomeSystem.cs

@github-actions github-actions Bot added the Changes: Map Изменение карт label Mar 18, 2026
Copy link
Copy Markdown
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: 1

🤖 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/ADT/Entities/Objects/Misc/medical_pack.yml`:
- Around line 22-27: В Edible-компоненте замените ссылку на пустой раствор:
поменяйте solution: drink на solution: pack (Edible в medical_pack.yml), т.е.
укажите реальный контейнер с содержимым (pack вместо drink) чтобы при
употреблении система (IngestionSystem.cs) читала объём из правильного раствора;
проверьте, что имя поля solution в секции Edible совпадает с блоком pack (Lines
с pack/name в том же YAML).

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: 00470152-23ee-4a8e-88c2-c273d3829193

📥 Commits

Reviewing files that changed from the base of the PR and between b68a497 and ad2ad79.

📒 Files selected for processing (15)
  • Content.Client/ADT/Medical/IV/IvDripSystem.cs
  • Resources/Maps/ADTMaps/Salvage/cult_school.yml
  • Resources/Prototypes/ADT/Body/Organs/Tajaran.yml
  • Resources/Prototypes/ADT/Body/Organs/demon.yml
  • Resources/Prototypes/ADT/Body/Organs/novakid.yml
  • Resources/Prototypes/ADT/Entities/Clothing/Head/hats.yml
  • Resources/Prototypes/ADT/Entities/Mobs/Player/phantom.yml
  • Resources/Prototypes/ADT/Entities/Objects/Fun/immoveable_rod.yml
  • Resources/Prototypes/ADT/Entities/Objects/Misc/medical_pack.yml
  • Resources/Prototypes/ADT/Entities/Objects/Specific/Chemistry/chemical-bottles.yml
  • Resources/Prototypes/ADT/Entities/Personalization/Objects/personalization_items.yml
  • Resources/Prototypes/ADT/Entities/Structures/Machines/Medical/iv.yml
  • Resources/Prototypes/ADT/Heretic/Entities/Mobs/NPC/polymorph.yml
  • Resources/Prototypes/Entities/Clothing/Back/smuggler.yml
  • Resources/Prototypes/Research/civilianservices.yml

Comment thread Resources/Prototypes/ADT/Entities/Objects/Misc/medical_pack.yml Outdated
@CrimeMoot
Copy link
Copy Markdown
Collaborator Author

Я блять запутался.

@CrimeMoot
Copy link
Copy Markdown
Collaborator Author

короче не трогайте я потыкаю ещё если не выйдет

@CrimeMoot
Copy link
Copy Markdown
Collaborator Author

я заебался

@CrimeMoot
Copy link
Copy Markdown
Collaborator Author

15 часов работы и вот они.... 13 зелёных галочек. Господи я так не был рад, когда нашё кошелёк денег на улице. Осталось теперь говно подчистить после себя...

Comment thread Content.IntegrationTests/Tests/GameRules/NukeOpsTest.cs
Comment thread Content.IntegrationTests/Tests/GameRules/RuleMaxTimeRestartTest.cs
Comment thread Content.IntegrationTests/Tests/GameRules/TraitorRuleTest.cs
Comment thread Content.Server/ADT/Station/Systems/StationPlanetSpawnerSystem.cs
Comment thread Content.Shared/Roles/SharedRoleSystem.cs
@CrimeMoot
Copy link
Copy Markdown
Collaborator Author

CrimeMoot commented Mar 19, 2026

YAML тест с изменением не связан. У меня на другой репе он не сломался.

@CrimeMoot
Copy link
Copy Markdown
Collaborator Author

CrimeMoot commented Mar 19, 2026

Надо будет его перезапустить. Н или ошибку будет в убунте сам сделаю.

@CrimeMoot
Copy link
Copy Markdown
Collaborator Author

Ну вроде всё.

@CrimeMoot
Copy link
Copy Markdown
Collaborator Author

Блядская капельница

@CrimeMoot
Copy link
Copy Markdown
Collaborator Author

Так всё. Сейчас тесты время от времени падают по ошибкам не связанные - которые происходят сами по себе. В основном тесты будут проходить. Но будут случае где надо будет тест перезапустить.

@CrimeMoot
Copy link
Copy Markdown
Collaborator Author

CrimeMoot commented Mar 19, 2026

Если в убунте ERROR больше чем 1> - значит уже где-то проебались. Если 1. Это нормально ибо сам по себе какие-то штуки ломаются в ходе тестов. Иногда не ломаются. Хз как это предугадать если не сидеть 24 часа и мониторить чё ломается. Короче надо проверять убунту каждый раз ибо там может быть реальная ошибка.

@CrimeMoot
Copy link
Copy Markdown
Collaborator Author

Всё. Готово.

@CrimeMoot
Copy link
Copy Markdown
Collaborator Author

Если упадёт это SS14 бета и интересные ТЕСТЫ. Которые могут падать потому что могут - а не потому что что-то сломалось.

@Darkiich Darkiich merged commit 9b5ba10 into AdventureTimeSS14:master Mar 19, 2026
25 of 26 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants