# Звук текст и остальные форматы

## Звуковые эффекты

В поставке 3 372 WAV. Стандартным чтением PCM успешно разобран **3 371 файл**. Из них 3 266 моно и 105 стерео. Частоты: 22 050 Гц у 3 271 файла, 44 100 Гц у 87, 11 025 Гц у 11 и 48 000 Гц у двух. Каталог содержит длину и параметры каждого проверенного файла: [audio-metadata.json](data/audio-metadata.json).

Обычный PCM WAV технически удобен для эффектов в браузере. Перед окончательной упаковкой потребуется проверка воспроизведения на целевых браузерах; большие звуки и музыку можно хранить в подходящем сжатом формате. Поддержку кодеков нужно выбирать по [справочнику веб-аудио MDN](https://developer.mozilla.org/en-US/docs/Web/Media/Guides/Formats/Audio_codecs), а не только по расширению.

`Conquests/Art/Units/Hussar/HussarVictory.wav` не прочитан стандартным модулем WAV: в заголовке `fmt` записана нулевая длина, хотя далее присутствуют поля PCM. Это диагностируемое отклонение контейнера. Совместимость с оригинальным звуковым движком отдельно не проверялась; исходный файл не исправлялся.

## AMB является описанием звука

548 файлов AMB нельзя отдать браузерному аудиоплееру как готовую запись. Это контейнеры со ссылками на WAV и описанием их исполнения. В [реализации чтения OpenCiv3](https://github.com/C7-Game/OpenCiv3/blob/c1370e2f63a6042a3c4206f0043543d7da0d5cc5/ConvertCiv3Media/ReadAmb.cs) присутствуют задержки, дорожки, изменение скорости и громкости. [Описание формата автором Civ3AMBAnalysis](https://github.com/maxpetul/Civ3AMBAnalysis/blob/master/AMBFormat.org) раскрывает структуру этих данных.

Для переноса нужен один из двух вариантов: преобразовать AMB в JSON с событиями для Web Audio либо предварительно свести отдельные композиции в готовые записи. JSON сохраняет вариативность и синхронизацию; готовая запись упрощает воспроизведение. Полный разбор содержимого всех AMB в этом проходе не выполнен, поэтому зависимости WAV внутри них пока не входят в оценку минимального размера набора.

MP3 в поставке — 86 файлов; их потоковая пригодность и музыкальные сценарии отдельно не проверены. Файлы BIK относятся к видеоматериалам и требуют отдельного декодирования либо замены. Для первого игрового среза музыка и ролики не являются условием правильности хода, боя и производства.

## Текст и локализация

Civilopedia использует ключи вида `PRTO_`, `TECH_`, `BLDG_`, `GCON_`, ссылки `$LINK<...=...>` и маркеры оформления. Их нужно преобразовывать в структурированное представление; вставка исходного текста как HTML не воспроизведёт разметку. Исходные файлы содержат как русские строки в Windows-1251, так и ASCII. Анализатор сначала пробует UTF-8, затем Windows-1251; для нового интерфейса нужен единый UTF-8.

`labels.txt` содержит подписи и отдельные сообщения, `Script.txt` — шаблоны и контекстные диалоги, `diplomacy.txt` — реплики дипломатии. Они полезны как описание состояний и словарь, но наличие текста ещё не определяет, когда игровой движок показывает сообщение. Индекс разделов: [text-sections.json](data/text-sections.json).

Полезно отделить нейтральные идентификаторы объектов, переводы и описания. Русское название может меняться, но ссылка правила на технологию должна оставаться стабильной. Копирование полных литературных описаний требует той же оценки прав, что и изображений.

## Остальные компоненты

| Формат | Польза для воссоздания | Действие |
| --- | --- | --- |
| BIQ, BIC, BIX | Правила, карты, размещение объектов | Отдельные парсеры версий и перевод в нашу модель |
| SAV | Эталон реальной партии и возможный будущий импорт | Прочитать встроенные правила, затем отдельно состояние мира |
| INI | Связи ресурсов и настройки | Нормализовать в JSON, сохранить исходные ссылки |
| TTF | Внешний вид текста | Проверить условия встраивания конкретного шрифта |
| EXE, DLL, SYS | Компоненты Windows и старых библиотек | Не включать в браузерный набор; собственная реализация поведения |
| Документация и справка редактора | Описание параметров и пользовательских действий | Использовать для проверки моделей и интерфейса |

Извлечение таблиц из BIQ не является извлечением исходного кода EXE. Исполняемые файлы Windows в ходе исследования не запускались.
