hilsetapp/sa-mod-manager
Менеджер модов GTA San Andreas: включай и выключай моды одним переключателем, конфликты и замену стандартных файлов видно сразу, профили сборок. Windows.
README.md
Русский | English | Español | Português
Менеджер модов GTA San Andreas
Программа для Windows, которая держит сборку модов в порядке: включает и выключает моды одним переключателем, заранее показывает, какие моды делят одни и те же файлы, и хранит профили сборок.
Любимая проблема всех, кто ставит моды руками: поставил пять модов, игра не запускается, а виноват один файл infernus.dff, который положили два мода сразу. Менеджер находит такие совпадения до запуска игры.
Скачать: sa-mod-manager-windows.zip
Что умеет
- Список модов с переключателями. Мод лежит либо в
modloader(включён), либо вmodmanager/off(выключен). Переключение это перенос папки: ничего не удаляется, всё обратимо. - Поиск конфликтов. Если два мода кладут файл с одинаковым именем, менеджер покажет, кто именно спорит и за что. Отдельно видно конфликты, которые мешают прямо сейчас (два включённых мода), и спокойные заметки.
- Пометка замены. Файлы, которые уже есть в
models/gta3.img, отмечаются как «заменяет стандартный файл»: сразу понятно, правит мод оригинал или добавляет новое. - Предупреждения об архивах. Подмена всего
gta3.img, незнакомыйd3d9.dll,.exeвнутри архива: про такое лучше узнать заранее. - Профили сборок. Сохранил набор включённых модов («Для САМП», «Одиночка») и переключаешься между ними одним нажатием.
- Журнал. Что сделал менеджер, пишется в окне и в файл
modmanager/journal.log. - Мод из архива. Выбрал zip: он распакуется в папку выключенных модов, включишь когда захочешь.
- Работает с ручными установками. Моды, положенные в
modloaderвручную, менеджер подхватит сам: их не надо переставлять.
Как запускать (гайд для новичков)
- Скачай
sa-mod-manager-windows.zipпо ссылке выше и распакуй в любую папку. Только не вProgram Files, там Windows любит ограничивать доступ. - Запусти
sa-mods.exe. Если Windows покажет синее окно «Защита Windows», нажми «Подробнее» → «Выполнить в любом случае». Программа ничего не качает и не лезет в интернет, но она новая, и СмартСкрин её пока не знает. - Нажми «Выбрать папку» и укажи папку, где лежит
gta_sa.exe(обычноC:\Games\GTA San Andreas). - Нажми «Добавить мод из архива» и выбери скачанный zip с модом. Мод появится в списке выключенным.
- Включи его переключателем и запускай игру.
Если моды уже стоят в modloader, они появятся в списке сами, сразу после выбора папки игры.
Важно: чтобы игра увидела папку modloader, в игре должен стоять ModLoader (modloader.asi). Если его нет, менеджер скажет об этом плашкой сверху: включение модов без ModLoader ничего не даст.
Командная строка
В архиве есть sa-mods-cli.exe: то же самое, но без окна. Пригодится для скриптов и проверок.
sa-mods-cli.exe -game "C:\Games\GTA San Andreas" -check
sa-mods-cli.exe -game "C:\Games\GTA San Andreas" -list
sa-mods-cli.exe -game "C:\Games\GTA San Andreas" -conflicts
sa-mods-cli.exe -game "C:\Games\GTA San Andreas" -import C:\Загрузки\silentpatch.zip
sa-mods-cli.exe -game "C:\Games\GTA San Andreas" -disable tunning
sa-mods-cli.exe -game "C:\Games\GTA San Andreas" -enable tunning
Флаги: -check что нашлось в папке игры, -list список модов, -conflicts конфликты, -import добавить zip, -enable и -disable включить или выключить мод по имени папки, -version версия.
Как это работает внутри
- В GTA SA файл узнаётся по имени. Если два мода дают
infernus.dff, победит тот, чья папка читается позже, и один мод молча перестанет работать. Поэтому конфликтом менеджер называет одинаковое имя файла у двух разных модов, а для файлов данных (.cfg,.dat,.ipl) - одинаковый путь. - Скрипты CLEO (
.cs), плагины ASI (.asi) и текст (.fxt) сравниваются по имени файла: они тоже находят друг друга по имени. - Включение и выключение это перемещение папки между
modloaderиmodmanager/off. Менеджер не патчит игру, не трогает архивы.imgи не правит ваши файлы. - Имена файлов из
models/gta3.imgчитаются в режиме «только чтение», чтобы понимать, какие файлы игры мод заменяет.
Чего менеджер не делает
Честно, чтобы не ждали лишнего:
- не запускает
.exe-инсталляторы модов и не правит чужие скрипты; - не сравнивает содержимое моделей, только имена файлов (как и сама игра);
- не качает моды из интернета, каталога ссылок внутри нет;
- не работает на телефоне и в браузере, это программа для Windows.
Сборка из исходников
Нужен только Go 1.26 или новее, компилятор C для Windows не требуется:
git clone https://github.com/hilsetapp/sa-mod-manager.git
cd sa-mod-manager
go test ./...
go build -ldflags "-H=windowsgui -s -w" -o sa-mods.exe ./cmd/sa-mods
go build -s -w -o sa-mods-cli.exe ./cmd/sa-mods-cli
Готовые сборки для Windows делает GitHub Actions: build.yml на каждый пуш, release.yml на тег v*.
Из чего состоит
cmd/sa-mods окно (точка входа)
cmd/sa-mods-cli командная строка
internal/gui интерфейс: список модов, профили, журнал
internal/game папка игры, чтение имён из gta3.img, стандартные имена
internal/library библиотека модов: импорт zip, включение, выключение, удаление
internal/conflicts поиск модов, которые делят один и тот же файл
internal/profiles профили сборок
internal/cli командная строка
lists подсказки: приметы проблемных модов, любимые моды сообщества
scripts сборка картинки для репозитория, самопроверка
Файлы менеджера лежат в папке игры:
modloader/ включённые моды (тут их видит игра)
modmanager/off/ выключенные моды
modmanager/meta/ карточки модов: откуда, когда, сколько файлов
modmanager/profiles/ профили сборок
modmanager/journal.log
Планы
- ярлыки и папки-категории в списке модов;
- проверка обновлений модов по ссылке на архив;
- отдельная вкладка для CLEO-скриптов и ASI-плагинов.
Лицензия
MIT. Шрифт Inter распространяется по SIL Open Font License 1.1, подробности в THIRD_PARTY_NOTICES.md.
Если менеджер спас твою сборку, поставь звезду: так его увидят другие моддеры.
cleogaminggiogolanggta-san-andreasgtasamod-managermodloadermodsrussiansampwindows
Страница собрана из того, что GitHub публикует о репозитории. samp.directory не хранит этот код. Сообщить о проблеме с этой записью