Files
BiLauncher/doc/cpp/modloader.md
T

44 lines
2.3 KiB
Markdown
Raw Permalink Normal View History

2026-10-11 22:32:13 +03:00
# modloader.h
2026-09-03 09:16:56 +03:00
2026-10-11 22:32:13 +03:00
Перечисление модлоадеров, запись одной версии модлоадера и перевод между перечислением и
строковым ключом. Только заголовок, `.cpp` нет.
2026-09-03 09:16:56 +03:00
2026-10-11 22:32:13 +03:00
## ModLoader
2026-09-03 09:16:56 +03:00
2026-10-11 22:32:13 +03:00
`Forge`, `Fabric`, `NeoForge`, `Quilt`.
2026-09-03 09:16:56 +03:00
2026-10-11 22:32:13 +03:00
Модлоадеры взаимоисключающие: игра запускается с одним профилем из `versions/`, поэтому у сборки
может быть не больше одного модлоадера. [LoaderRow](../qml/LoaderRow.md) снимает отметку с
остальных, когда пользователь отмечает один.
2026-09-03 09:16:56 +03:00
2026-10-11 22:32:13 +03:00
## Ключи и названия
2026-09-03 09:16:56 +03:00
2026-10-11 22:32:13 +03:00
| Значение | `loaderKey()` | `loaderTitle()` |
|----------|---------------|-----------------|
| `Forge` | `forge` | Minecraft Forge |
| `Fabric` | `fabric` | Fabric Loader |
| `NeoForge` | `neoforge` | NeoForge |
| `Quilt` | `quilt` | Quilt Loader |
2026-09-03 09:16:56 +03:00
2026-10-11 22:32:13 +03:00
Ключ используется в QML, в имени файла кэша (`cache/loader_<ключ>.json`) и в поле `loader` записи
сборки в `customBuilds.json`. Если его поменять, старые сборки и кэши перестанут читаться.
2026-09-03 09:16:56 +03:00
2026-10-11 22:32:13 +03:00
`loaderFromKey(key)` возвращает `std::nullopt` для любой другой строки, в том числе пустой. В
бэкенде это значит «ванильная сборка».
2026-09-03 09:16:56 +03:00
2026-10-11 22:32:13 +03:00
Названия не переводятся: это имена собственные.
2026-09-03 09:16:56 +03:00
2026-10-11 22:32:13 +03:00
## LoaderVersionEntry
2026-09-03 09:16:56 +03:00
2026-10-11 22:32:13 +03:00
| Поле | Что это |
|------|---------|
| `loaderVersion` | `47.4.0`, `0.19.3`, `21.1.248` |
| `gameVersion` | `1.20.1` |
| `versionId` | ожидаемое имя профиля в `versions/`. У Fabric и Quilt оно известно заранее (`fabric-loader-<версия>-<игра>`), у Forge и NeoForge пусто: имя становится известно только после работы установщика |
| `installerUrl` | ссылка на `installer.jar`, только у Forge и NeoForge |
| `recommended` | у Forge помечено как recommended в `promotions_slim.json` |
| `stable` | не альфа, не бета, не rc/pre |
2026-09-03 09:16:56 +03:00
---
При создании этого документа использовался ИИ.