A01 — план сборки «Стального плацдарма»¶
Статус: редактируемый веб-черновик, 10 октября 2026. Основа — приложенный план района, правила первой локации и ассет-лист. Размеры и распределение групп ниже — предложения для первой расстановки, а не утверждённый числовой баланс.
Геометрия района¶
20 кварталов: 5 столбцов × 4 ряда. Квартал 42 × 42 м, улицы шириной 10 м. Внутренний район — 250 × 198 м; габарит с каналом — 296 × 244 м. Север в данных — +Z, вверх — +Y, единица — метр.
Три горизонтальные улицы H1–H3 и четыре вертикальные V1–V4 дают понятную сетку подходов. Южный START расположен внутри канала. Северный мост целый; западный и восточный разрушены, между сегментами оставлен разрыв 6 м. Внешний город служит фоном. Проходимость воды и мостов здесь описана данными; физики и навигации в веб-превью нет.
Восемь логичных групп¶
| ID | Зона | Содержание | Спавнеры | Группы в черновике |
|---|---|---|---|---|
| Z01 | Южный плацдарм | START, бункер, игрок и пять южных кварталов; первые противники стоят на северной стороне | S16–S20, S24, S25 | 7 |
| Z02 | Западный двор | Четыре западных квартала, снабжение, пост наблюдения и открытая площадка B1 | S06, S07, S11, S12 | 8 |
| Z03 | Центральный парк | Памятник в верхнем центральном квартале, скалы и зелёный коридор ниже | S08, S13 | 4 |
| Z04 | Восточный сектор | Четыре восточных квартала, гаражные дворы и площадка B2 | S09, S10, S14, S15 | 8 |
| Z05 | Северные кварталы | Два крайних жилых квартала по сторонам командного сектора; зона из двух отдельных участков | S01 | 1 |
| Z06 | Узел связи | Три центральных северных квартала, радиомачта, генератор, стены и неподвижная база B3 | S02–S05, S21 | 10 |
| Z07 | Канал и мосты | Набережная, северный переход, два разрушенных боковых перехода и береговые группы | S22, S23 | 2 |
| Z08 | Внешний город | Дома и деревья за водой; декоративный контекст без игровых групп | — | 0 |
Всего 25 источников спавна и 40 групп. В текущей расстановке это 132 обычных бойца/машины и три босса. Число источников, число групп и число юнитов — разные параметры. У B3 пять источников обычной охраны, а не механизм призыва.
Для обзора район читается как «старт → два фланга → северный узел». Парк даёт центральный ориентир, дороги оставляют обходы. Веб-превью не задаёт обязательный порядок убийств, условия открытия и боевые способности.
Что уже собрано¶
В файле расстановки 639 объектов: геометрия земли/канала/дорог, здания и природа купленного пакета, предметы, макеты обычных врагов, боссы и старт. Все экземпляры имеют стабильные ID, зону, слой и трансформ. Различаются pack — арт пакета, proxy — временное решение, procedural — геометрия плана.
У 132 обычных юнитов записаны spawnerId, groupId, enemyId. Перемещение спавнера переносит его модели на ту же величину. У босса метка и модель связаны bossId; у стартовой сборки — startId. Отдельные объекты по-прежнему можно переставлять независимо.
Дома, деревья, радиомачта, укрытия и временные шасси — реальные модели пакета. Пикап, фургон, пехота в боевых позах, мешки, памятник, бункер, три башни игрока и корпус B3 — составные веб-макеты. Они не являются готовыми Unity-префабами.
Формат для будущего переноса¶
Исходный план — JSON версии 1. Редактор открывает и сохраняет тот же формат; экспорт называется A01-steel-beachhead.layout.json.
| Поле | Для чего нужно в Unity |
|---|---|
package.sha256 |
Проверить, из какой версии исходного архива взят каталог |
zones |
Родительские группы, названия и области; зона Z05 содержит две regions |
instances[].id |
Устойчивый ключ экземпляра при повторном импорте и сохранении ручных правок |
prefabGuid, prefabPath |
Найти Unity-префаб. Сначала GUID, путь — диагностика и явный резервный поиск |
position, rotation, scale |
Unity-позиция в метрах, Euler в градусах, масштаб по осям |
assetKey, sourceStatus |
Выбрать реальный арт или явно обозначенный заменяемый макет |
recipe |
Создать простую коробку заданного размера/цвета либо заменить её модульным артом |
spawnerId, groupId, enemyId |
Сохранить связь макета юнита со спавнером; отделить расстановку от игровой логики |
bossId, startId |
Связать визуальную сборку с маркером босса или старта |
streets, bridges, start |
Семантика улиц, состояния переходов и безопасная область входа |
В Unity эти координаты используются непосредственно. Веб отражает ось Z для Three.js: [x,y,z] → [x,y,-z]; Euler отображается как [-x,-y,z] в порядке YXZ, соответствующем внешнему порядку ZXY Unity. Порядок Unity описан в Quaternion.Euler. JSON всегда хранит исходные Unity-значения.
Предлагаемая иерархия сцены:
A01_SteelBeachhead
Zones
Z01_South … Z08_Context
Ground
Roads
Buildings
Nature
Props
Landmarks
Encounters
Spawners
S01 … S25
BossMarkers
B1 … B3
StartMarker
Корневой объект экземпляра хранит его ID; дочерняя визуальная модель остаётся заменяемой. В будущем импорт обновляет объекты по ID, сохраняет связи с префабами и создаёт зоны как обычные редактируемые GameObject. Поведение врагов подключается отдельно после проверки расстановки. Разметка дорог сейчас генерируется вебом из streets; её надо воспроизвести в Unity или заменить дорожными модулями.
Следующий этап в Unity¶
- Импортировать купленный пакет через Editor и проверить материалы в URP. Эта старая v1.03 не проверялась в Unity 7000.0.0a7 проекта.
- Сверить одну модель дома, дерева, танка, радиомачты и моста: метры, pivot, направление вперёд, вложенные детали и коллайдеры. Веб-коррекции домов/Bridge_01 не переносить вслепую.
- Заменить P0-макеты готовыми префабами, добавив таблицу соответствия
assetKey → GUID. Для самодельных макетов создать обычные префабы через разрешённый Unity Pipeline, не редактируя сериализованный YAML. - Перенести проверенный JSON через доступный Unity Pipeline API, сохраняя ID и иерархию зон. Импортёр и редактирование в Editor — отдельный следующий этап; их в этой работе нет.
- Вручную проверить игровой ракурс, проходы, безопасный START, охрану B3 и читаемость машин. Затем подключать спавн/навигацию и корректировать плотность групп.
Текущая работа относится к feature, затрагивает только веб-превью и документацию. Unity-сцены, префабы и Core Gameplay не менялись.