Skip to content

Добавление маркеров камер для тега и суперматерии#1478

Open
GTTEDMI wants to merge 2 commits into
Rxup:masterfrom
GTTEDMI:maps-tag-supermat
Open

Добавление маркеров камер для тега и суперматерии#1478
GTTEDMI wants to merge 2 commits into
Rxup:masterfrom
GTTEDMI:maps-tag-supermat

Conversation

@GTTEDMI

@GTTEDMI GTTEDMI commented Jul 3, 2026

Copy link
Copy Markdown
Contributor

Summary by CodeRabbit

  • Новые возможности

    • Обновлены и расширены несколько подземных инженерных комнат: улучшена планировка, добавлены новые элементы инфраструктуры и окружения.
  • Баг-фиксы

    • Исправлена согласованность размеров одной из комнат, что должно снизить риск некорректной генерации и проблем с размещением объектов.
    • Обновлены данные карт и тайлов, чтобы отображение и загрузка уровней были стабильнее.

@coderabbitai

coderabbitai Bot commented Jul 3, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Walkthrough

Изменены две YAML-карты подземелий (supermatter_chamber.yml, teg_chamber.yml): обновлены метаданные движка, наборы тайлов и закодированные чанки, полностью перестроены секции сущностей с новыми прототипами газовой/электрической инфраструктуры. В прототипах процедурных карт увеличен размер комнаты SupermatterChamber1.

Changes

Обновление карт и размеров комнаты

Layer / File(s) Summary
Supermatter chamber: метаданные, тайлы и сущности
Resources/Maps/Dungeon/Engine/supermatter_chamber.yml
Обновлены engineVersion, time и entityCount, изменён справочник grids, заменён закодированный tiles-чанк, полностью перестроена секция entities с новыми газовыми, кабельными и структурными прототипами.
TEG chamber: метаданные, тайлы и сущности
Resources/Maps/Dungeon/Engine/teg_chamber.yml
Обновлены метаданные движка, добавлены новые типы тайлов, заменён закодированный tiles-чанк, добавлены uniqueMixes газов и переработана секция entities с новыми прототипами.
Согласование размеров SupermatterChamber1
Resources/Prototypes/_Backmen/Procedural/Maps/engine_rooms.yml
Размер комнаты dungeonRoom SupermatterChamber1 увеличен с 13,9 до 17,11, синхронизированы minSize/maxSize маркера RoomFill.

Estimated code review effort: 4 (Complex) | ~60 minutes

Poem

Морковка хрустнула — карту я обновил,
Тайлы и трубы местами сместил,
Комнату шире сделал я хвостом,
Супрематит теперь дышит легко в новом гнезде своём! 🥕🐇

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed Заголовок соответствует сути изменений: обновляются маркеры и размеры камер для TEG и суперматерии.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
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.
✨ 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.

@github-actions github-actions Bot added size/L Changes: Map Can be reviewed or fixed by people who are knowledgeable with mapping. No C# Нету кода. S: Untriaged and removed size/L labels Jul 3, 2026
@github-actions github-actions Bot added the size/L label Jul 7, 2026
@GTTEDMI
GTTEDMI marked this pull request as ready for review July 7, 2026 20:48
@GTTEDMI
GTTEDMI requested a review from Rxup as a code owner July 7, 2026 20:48

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

🤖 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/Maps/Dungeon/Engine/supermatter_chamber.yml`:
- Around line 1338-1369: The DeviceLinkSource for LockableButtonEngineering (uid
118) is missing two shutter links, so shutters 104 and 105 are not toggled with
the rest. Update the linkedPorts mapping in this supermatter chamber setup to
include ports for 104 and 105 alongside the existing ShuttersRadiationOpen
entries so the button controls all 12 shutters consistently.

In `@Resources/Maps/Dungeon/Engine/teg_chamber.yml`:
- Around line 301-310: The map contains a duplicate CableApcExtension placement
at the same Transform position 0.5,1.5, so remove one of the overlapping
entities (either uid 219 or uid 220) from the chamber definition and update the
entityCount accordingly. Use the matching Transform entries and uids in
teg_chamber.yml to locate the duplicate, and keep only a single APC cable on
that tile to avoid load warnings.
- Around line 346-350: The map contains duplicate CableApcExtension entities at
the same positions, so remove the extra instances from teg_chamber.yml for the
duplicates at 9.5,7.5 and 0.5,1.5, keeping only one entity per location. Update
entityCount in the same map definition to match the corrected number of
entities, and verify the remaining CableApcExtension entries by uid so the
entity list stays consistent.
🪄 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

Review profile: CHILL

Plan: Pro

Run ID: 892a4c3b-1127-4081-be62-923c5c12952c

📥 Commits

Reviewing files that changed from the base of the PR and between c712a37 and fe1c88a.

📒 Files selected for processing (3)
  • Resources/Maps/Dungeon/Engine/supermatter_chamber.yml
  • Resources/Maps/Dungeon/Engine/teg_chamber.yml
  • Resources/Prototypes/_Backmen/Procedural/Maps/engine_rooms.yml

Comment on lines +1338 to +1369
- type: DeviceLinkSource
linkedPorts:
108:
- - Pressed
- Toggle
107:
- - Pressed
- Toggle
106:
- - Pressed
- Toggle
98:
- - Pressed
- Toggle
99:
- - Pressed
- Toggle
100:
- - Pressed
- Toggle
101:
- - Pressed
- Toggle
102:
- - Pressed
- Toggle
103:
- - Pressed
- Toggle
116:
- - Pressed
- Toggle

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.

🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Найти все DeviceLinkSource, ссылающиеся на 104/105 в карте
rg -nP -C2 '\b(104|105):' Resources/Maps/Dungeon/Engine/supermatter_chamber.yml
# Показать блок ShuttersRadiationOpen для подтверждения uid/позиций
rg -nP -A40 'proto: ShuttersRadiationOpen' Resources/Maps/Dungeon/Engine/supermatter_chamber.yml

Repository: Rxup/space-station-14

Length of output: 1081


Подключите шторки 104 и 105 к кнопке управления — сейчас LockableButtonEngineering (uid 118) управляет только 10 из 12 ShuttersRadiationOpen; шторки 104 и 105 не входят в linkedPorts и не будут переключаться вместе с остальными.

🤖 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/Maps/Dungeon/Engine/supermatter_chamber.yml` around lines 1338 -
1369, The DeviceLinkSource for LockableButtonEngineering (uid 118) is missing
two shutter links, so shutters 104 and 105 are not toggled with the rest. Update
the linkedPorts mapping in this supermatter chamber setup to include ports for
104 and 105 alongside the existing ShuttersRadiationOpen entries so the button
controls all 12 shutters consistently.

Comment on lines +301 to +310
- uid: 219
components:
- type: Transform
pos: 0.5,1.5
parent: 1
- uid: 220
components:
- type: Transform
pos: 0.5,1.5
parent: 1

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.

🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Дублирующийся кабель CableApcExtension на тайле 0.5,1.5.

uid: 219 (Line 304) и uid: 220 (Line 309) размещены на одной и той же позиции 0.5,1.5. Два APC-кабеля на одном тайле избыточны и приводят к предупреждениям при загрузке карты. Удалите дубликат (и уменьшите entityCount на Line 8 соответственно).

🐛 Предлагаемое исправление
   - uid: 219
     components:
     - type: Transform
       pos: 0.5,1.5
       parent: 1
-  - uid: 220
-    components:
-    - type: Transform
-      pos: 0.5,1.5
-      parent: 1
   - uid: 221
     components:
     - type: Transform
       pos: 0.5,2.5
       parent: 1
🤖 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/Maps/Dungeon/Engine/teg_chamber.yml` around lines 301 - 310, The
map contains a duplicate CableApcExtension placement at the same Transform
position 0.5,1.5, so remove one of the overlapping entities (either uid 219 or
uid 220) from the chamber definition and update the entityCount accordingly. Use
the matching Transform entries and uids in teg_chamber.yml to locate the
duplicate, and keep only a single APC cable on that tile to avoid load warnings.

Comment on lines +346 to +350
- uid: 228
components:
- type: Transform
pos: 9.5,7.5
parent: 1

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.

🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
python3 - "$(fd -a teg_chamber.yml Resources/Maps/Dungeon/Engine)" <<'PY'
import sys, re
path = sys.argv[1]
proto = None
seen = {}
uid = None
count = 0
cur = {}
lines = open(path).read().splitlines()
i = 0
entities_section = False
for ln in lines:
    m = re.match(r'- proto: (\S+)', ln)
    if m:
        proto = m.group(1); continue
    mu = re.match(r'\s+- uid: (\d+)', ln)
    if mu:
        uid = mu.group(1); count += 1; continue
    mp = re.match(r'\s+pos: (\S+)', ln)
    if mp and proto and uid:
        key = (proto, mp.group(1))
        seen.setdefault(key, []).append(uid)
print("entities counted:", count)
for (p, pos), uids in seen.items():
    if len(uids) > 1:
        print("DUP", p, pos, uids)
PY

Repository: Rxup/space-station-14

Length of output: 271


🏁 Script executed:

#!/bin/bash
set -euo pipefail

file="Resources/Maps/Dungeon/Engine/teg_chamber.yml"

echo "== entityCount =="
rg -n '^\s*entityCount:' "$file" || true

echo
echo "== relevant uids =="
for uid in 206 219 220 228; do
  echo "--- uid $uid ---"
  rg -n -A4 -B4 "^\s*- uid: $uid\b" "$file" || true
  echo
done

echo "== total entity entries =="
python3 - <<'PY'
import re
from pathlib import Path
text = Path("Resources/Maps/Dungeon/Engine/teg_chamber.yml").read_text().splitlines()
uids = [ln for ln in text if re.match(r'^\s*- uid: \d+\b', ln)]
print(len(uids))
PY

Repository: Rxup/space-station-14

Length of output: 1098


Убрать дубли CableApcExtension на карте
На 9.5,7.5 есть uid: 206 и uid: 228, а на 0.5,1.5uid: 219 и uid: 220. Уберите лишние экземпляры и обновите entityCount.

🤖 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/Maps/Dungeon/Engine/teg_chamber.yml` around lines 346 - 350, The
map contains duplicate CableApcExtension entities at the same positions, so
remove the extra instances from teg_chamber.yml for the duplicates at 9.5,7.5
and 0.5,1.5, keeping only one entity per location. Update entityCount in the
same map definition to match the corrected number of entities, and verify the
remaining CableApcExtension entries by uid so the entity list stays consistent.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Changes: Map Can be reviewed or fixed by people who are knowledgeable with mapping. No C# Нету кода. S: Untriaged size/L

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant