Свой инсталлятор для Heroes 3 HotA + HD
Хочется постоянно иметь актуальную сборку HotA и кастомный набор карт/оригинальных кампаний. Значит делаем свой инсталлятор! Выглядит как родной и пересобирает сам себя - поставил на другой машине, добавил карт, Ctrl+F9, новый setup готов.

Откуда взялся «оригинал»
Исходников нет, но в папке игры остался деинсталлятор официального установщика - а в нём почти всё:
- Тексты и галочки - из
Uninstall_HotA\unins000.dat: там лежит скомпилированный[Code]вместе со всемиCustomMessages - Ассоциации
.h3t/.h3m/.h3c- те же ProgID, что прописал оригинал - Иконка - из ресурсов
unins000.exe - Картинки мастера - вырезаны со скриншотов: 164×314 и 55×58, родные размеры Inno Setup 5 без масштабирования, так что совпадают с оригиналом до пикселя

Пересборка из любой копии
Проект (_ISS) лежит в папке игры и ставится вместе с ней. Путь к игре скрипт вычисляет относительно себя, версии для приветствия берёт из файлов игры: HotA - из HotA_Setup.ini, HD - из HD3_Update.exe. Сохранения (games), деинсталлятор и прошлые сборки в установщик не попадают.
Грабли Inno Setup 7
WizardSizePercentпо умолчанию 120 даже дляclassic- окно раздувается, картинки растягиваются. Вернул100иWizardImageStretch=no- Стрелки «< Назад» / «Далее >» вырезаются из текстов кнопок - вернул через
CurPageChanged DisableDirPage=autoпри переустановке молча ставит в старую папку, не спрашивая - поставилno
Скрипт и картинки: william-aqn/hota_installer_iss
Установщик собран с помощью Claude Opus 5.5 (Claude Code)
tags: game - heroes3 - hota - innosetup - ai