| 2026-09-08 |
Убрать амбиент лугов и «дыхание пепла»; 3 вида валунов и кустов
...
По фидбеку:
- Амбиент стартовой локации удалён полностью: на лугах тишина — только
музыка и шаги. Слой ashflow («дыхание пепла», режущий слух) и
rustle-шорохи убраны везде; meadows/meadows_night/ashflow.wav удалены.
- Разнообразие препятствий: у валунов и кустов по три вида (round/spike/
flat и cloud/spread/tall) через TALL_VARIANTS — scatter ставит базовый
id, движок рисует вид по хэшу координат. Тень-подошва в спрайте, у
кустов — «нога» ветвей (починка «летающих» объектов).
Co-Authored-By: Claude Code <noreply@anthropic.com>
|
Валун и куст — крупные непроходимые объекты на внешних картах
...
boulderTile (32x32): камень в изо-объёме — верхняя грань P4/P5, светлая
юго-западная с бликами P5H, тень P2/P3 на юго-востоке, трещины P1.
bushTile (32x40): мёртвый куст-облако из эллипсов G0/G1/G2 с прорехами
и стеблями G2H. Новые слоты tall.boulder/bush и тайлы BOULDER: 28,
BUSH: 29 (BLOCKED, TALL_OBJECTS 1.05/1.25, assetSets, ASSET_KEYS,
MapScene). scatterRocksAndBushes разбрасывает по внешним картам:
луга 5+7, пруды 4+5, роща 3+4, разъезд 3+3, Звенец 1+2.
Co-Authored-By: Claude Code <noreply@anthropic.com>
|
Дома — объёмные в изометрии: 5 фасадов вместо плоских картонок
...
isoHouseTile: две стены сходятся ближним углом к зрителю (юго-запад C1
светлая, юго-восток C0 тёмная), шатровая (metal) или двускатная (шпалы,
фронтон + конёк) крыша, шпальный фундамент, проёмы-параллелограммы.
Виды: времянка (32x56), двускатная с трубой (32x56), низкий сарай с
широким окном (32x56), амбар с воротами (32x80, 2.5 юнита), двухэтажный
с двумя рядами окон (32x80). Новые слот houseTall и tiles HOUSE_V3/V4
(в BLOCKED/TALL_OBJECTS/TALL_VARIANTS/assetSets/ASSET_KEYS/MapScene);
Звенец показывает времянку, двухэтажный и амбар явно.
Co-Authored-By: Claude Code <noreply@anthropic.com>
|
feat: B5 — дома: три фасада (шпальная крыша / ржавый лист / длинное однооконное)
...
houseTile параметризован: общие стены-щиты и фундамент, различаются крыша
и проёмы. Фасады подключены вариантами HOUSE (хэш-микс в руинах разъезда);
в Звенце три дома расставлены явно (вариантные id в тайлах), чтобы деревня
показывала всё разнообразие — хэш-микс для трёх домов не гарантирует его.
Для этого HOUSE_V1/V2 добавлены в BLOCKED, амбиент-слой «houses» теперь
матчит все три id. Карты перезаписаны, арт-библия обновлена.
Co-Authored-By: Claude Code <noreply@anthropic.com>
|
feat: B4 — деревья: три вида крон, качание, осыпающийся пепел
...
Движок: анимация тайлов сочетается с вариантами — tall-объект анимируется
по фактическому (вариантному) id клетки, у разных вариантов свой fps.
Игра: три вида деревьев (широкая крона с кабелем / редкая / молодая),
каждый с кадром качания (крона +1px по X), fps 1.5/1.7/1.3 — кроны
качаются рассинхронизировано. Варианты TREE_V1/V2 раздаются вариантами
карт по хэшу координат, карты перезаписаны. С крон изредка осыпается
пепел (ember-частицы, серые, нормальный блендинг).
Co-Authored-By: Claude Code <noreply@anthropic.com>
|
| 2026-09-07 |
feat(game): акт 2 — карты Ржавой рощи, Старого разъезда и зала Машины (A1)
...
- Новые тайлы: WIRE (бухта кабеля, tall 0.6), RAIL (рельсы), STAIRS
(люк-ступени), MACHINE (печь-автоматон, tall 2.5) — текстуры в gen.mjs,
реестр sizes.mjs (wire), арт-библия дополнена.
- Карты: buildRustGroveMap (плотный мёртвый лес, тропа Звенец->разъезд,
поляна мастерской Клинта), buildOldSidingMap (рельсы, вагоны-времянки,
люк в подземелье), buildMachineHallMap (интерьер с Машиной в два тайла);
в Звенце расчистлен восточный выход.
- Области: rust_grove / old_siding / machine_hall (ambient темнее лугов,
гул Машины tower_hum у люка и в зале, накат у рельсов, враги с
патрулями) + переход Звенца на восток.
- Чек transitions: цепочка Звенец -> роща -> разъезд -> зал и обратно.
Co-Authored-By: Claude Code <noreply@anthropic.com>
root
committed
2 days ago
|

refactor(game): К3 — декомпозиция LocationScene, гигиена, валидация контента
...
Декомпозиция (1338 -> ~870 строк, сцена — оркестратор вьюх):
- systems/LocationAudio: слои/roomtone/шорохи/музыка угрозы (порядок тиков сохранён)
- systems/InteractableViews + data/assetSets: фабрики вьюх NPC/интерактивов,
enemyTextures из данных (префикс кадров из EnemyKindDef.frames)
- systems/Atmosphere: пепел/мотыли/дымка, накат, виньетка
- systems/quest/FlowerQuest: сбор/посадка/кат-сцена сдачи
- pixelTile -> чистый resolvePixelTile + pointerToWorld в ClickRouting (+ юнит-тесты)
Хардкоды сюжета -> data: QUEST_PLANT_TILES/QUEST_TOWER_TILE/QUEST_TOWER_GREEN,
harvestTile в AreaDef (правило «цветок только в ponds»)
Гигиена: HealthBar.setHp не перерисовывает при том же hp; eps-прибытие
вместо float-равенства (PlayerController, FaunaSystem) со снапом;
agentCommand — таблица Record вместо switch на 130 строк; удалён мёртвый код
(GameLighting.addLight/removeLight, Interactables.all, SceneObjects.byKind,
VolumeKey, questTaken/questDone/inventoryItems, реэкспорт MenuScene)
Валидация контента (тихие ошибки): патрули (границы+проходимость), хазарды,
источники света (дубли id, границы, пустые, whenFlag/notFlag), requiresItem
переходов/накатов, return-правило интерьеров, аудио-ключи (ambience/theme/
слои/sfx реакций и реплик/roomtone)
Проверено: check:fast (692 теста), agent:check 16/16, smoke-act1
Co-Authored-By: Claude Code <noreply@anthropic.com>
root
committed
2 days ago
|