# SprPoP — CHANGELOG Заметные изменения по релизам. **Версия, дата и коммит каждой записи берутся из git** — из аннотированного тега, а не проставляются руками, поэтому расходиться с историей они не могут: git for-each-ref \ --format='%(refname:short) | %(creatordate:short) | %(*objectname:short)' \ refs/tags/<тег> Заголовок записи = `<имя тега> — <дата тега> — <коммит тега>`. Коммит — дереференс аннотированного тега (`*objectname`), то есть та ревизия, на которой релиз собран: по ней воспроизводится ровно этот билд. Здесь только то, что видно ИГРОКУ или меняет способ сборки/запуска. Разбор причин живёт в сообщениях коммитов, открытые баги — в `docs/BUGS_OPEN.md`, закрытые — в архиве roomtest. Файл начат с релиза v0.9.6; более ранняя история — в `git log` и в досках задач. ## v0.9.6-hang-sound-button — 2026-09-02 — `aaa480d` Три бага, найденные в живой игре и проверенные в MAME после исправления. - **Зацеп срывался на следующем кадре** (регресс, тянулся с 4e12aa5). Кид цеплялся за кромку, поза зацепа рисовалась — и он тут же падал. Ловилось на длинном прыжке уровня 3 (комната 7) и в attract-демо, где Кид вместо подъёма на кромку (0,2) улетал на пики. Причина: страж «падения сквозь стену» принимал кладку под кромкой за стену, в которую персонаж влетел, и отменял только что состоявшийся захват. Теперь удачный зацеп отменяет этого стража. `38fb3c0` - **Непрерывный взмах клинка у безоружного Кида.** На подъёме шёл нескончаемый свист меча, которого у Кида нет. Причина: в порт не доехали два условия оригинала, включая гард, который автор SDLPoP подписал прямым текстом как «фикс зацикленного звука взмаха». `cb995bf` - **Кнопка под Кидом заливалась кладкой** на дворцовых уровнях. Кид подтягивается на открывающую кнопку, и кромка, которая его прячет, нарисована кирпичом (уровень 4, комната 18). Причина: подстановка спрайта «кнопка без пола слева» действует только в подземелье, и это условие было потеряно в перерисовке поверх персонажа — при том что в статической отрисовке комнаты оно есть. `8548aa9` Сопутствующее, для разработки: - В доске исправлено толкование звука 11: это индикатор ПРОМАХА, а не «любого укола». Прежняя запись описывала наш собственный код вместо оригинала, и из-за неё в CLIMB-VS-GUARD зря отодвинули версию про порог дистанции. `400f5cb` - Новый набор host-тестов `t_hang`: мерит не «вис наступил», а «вис ДЕРЖИТСЯ» — прежние наборы регресс зацепа не видели именно поэтому. Входит в `38fb3c0`. - В `CLAUDE.md` записан путь запуска на HDD-образе: игра лежит в `D:\GAMES\SPRPOP`, а не в корне диска. `aaa480d`