Icon

Mоd Mеnu

Додає меню модів для перегляду списку встановлених модифікацій.

70,530,435 завантажень
Оновлено 2 місяці тому
Опис
Галерея
Журнал змін
Версії

Mod Menu дозволяє переглядати встановлені моди та, якщо мод це підтримує, забезпечує швидкий і легкий доступ до екранів конфігурації моду.

Mod Menu також підтримує деякі розширені функції, такі як назви та описи модів, що перекладаються, підтримка форматування QuickText в описах модів завдяки від , фільтрування бібліотечних модів від звичайних, перевірка оновлень модів, розміщених на Modrinth або тих, що надають власні джерела оновлень, і глибоке налаштування всіх наданих нами функцій.

Підтримувані платформи

Mod Menu наразі доступний для Fabric або Quilt на Minecraft: Java Edition 1.14 або новішої версії.

Розробникам

Mod Menu містить кілька API для розробників, щоб покращити вигляд їхнього моду в Mod Menu. Вони представлені у вигляді мовних ключів, метаданих JSON і навіть Java API.

API перекладу

Ви можете перекласти назву, короткий опис і опис вашого моду, не торкаючись коду Java. Просто додайте ключі перекладу у підтримуваному форматі до будь-якої мови, яку ви хочете.

Документація API перекладу

Ось приклад перекладів Mod Menu піратською мовою. Щоб створити свій власний, просто замініть `modmenu` в кінці (НЕ той, що на початку) ключа перекладу на ідентифікатор вашого моду, наприклад `modmenu.descriptionTranslation.traverse`.

`en_pt.json`

```json

"modmenu.nameTranslation.modmenu": "Menu o' mods!",

"modmenu.descriptionTranslation.modmenu": "Menu o' mods ye installed matey!",

"modmenu.summaryTranslation.modmenu": "Menu o' mods ye installed matey!"

```

> Переклад короткого опису тут зайвий і не потребує включення, оскільки він такий самий, як і опис, але він був включений, щоб показати, що ви можете перекладати короткий опис (короткий опис моду в одному реченні) окремо від опису, навіть англійською!

Fabric Metadata API

Є кілька речей, які ви можете додати лише за допомогою метаданих у вашому `fabric.mod.json`.

Усі вони додаються до спеціального блоку у вашому `fabric.mod.json` для метаданих Mod Menu. Ось приклад використання багатьох функцій, які надає цей API:

`fabric.mod.json`

```json5

{

...

"custom": {

"modmenu": {

"links": {

"modmenu.discord": "https://discord.gg/jEGF5fb"

},

"badges": [ "library", "deprecated" ],

"parent": {

"id": "example-api",

"name": "Example API",

"description": "Modular example library",

"icon": "assets/example-api-module-v1/parent_icon.png",

"badges": [ "library" ]

},

"update_checker": true

}

}

}

```

Fabric Metadata API Documentation

#### Badges (`"badges": [ ]`)

Хоча значок `Client` додається автоматично до модів, встановлених лише на стороні клієнта (встановіть `"environment": "client"` у `fabric.mod.json`, щоб зробити це.), інші значки, такі як `Library` і `Deprecated`, потребують визначення тут.

Підтримувані значення:

  • `library` - слід призначати модам, які є суто залежностями для інших модів, які не повинні відображатися користувачеві за замовчуванням, якщо вони їх не ввімкнуть.
  • `deprecated` - слід призначати модам, які існують суто з міркувань сумісності, наприклад, старому модулю API тощо.
  • Будь-які інші будуть ігноруватися, і Mod Menu не підтримує додавання власних значків. Ви можете відкрити проблему тут, якщо у вас є вагомий випадок використання нового значка.

    #### Links (`"links": { }`)

    Об'єкт `links` дозволяє авторам модів додавати власні гіперпосилання в кінець свого опису. Якщо ви вкажете контакт `sources` в офіційних метаданих `fabric.mod.json`, він також буде включений до розділу посилань.

    Будь-який ключ в об'єкті `links` буде включений до розділу посилань, причому ключ буде використовуватися як ключ перекладу. Наприклад, це:

    `fabric.mod.json`

    ```json

    "custom": {

    "modmenu": {

    "links": {

    "modmenu.discord": "https://discord.gg/jEGF5fb"

    }

    }

    }

    ```

    буде показано як посилання з текстом "Discord", оскільки "Discord" є англійським перекладом "modmenu.discord", наданим Mod Menu.

    Mod Menu надає кілька стандартних перекладів, які можна використовувати для посилань. Повний список можна переглянути у мовному файлі Mod Menu тут. Усі ключі перекладу посилань за замовчуванням мають вигляд `modmenu.<тип>`.

    Ви також можете надати власні переклади, якщо хочете додати власні посилання. Обов'язково використовуйте власний простір імен (на відміну від `modmenu`) для будь-яких власних ключів.

    #### Parents (`"parent": "mod_id" or { }`)

    Батьки використовуються для відображення моду як дочірнього по відношенню до іншого. Це призначено для модів, розділених на різні модулі. Наступний елемент у `fabric.mod.json` визначить мод як дочірній по відношенню до моду «flamingo»:

    `fabric.mod.json`

    ```json

    "custom": {

    "modmenu": {

    "parent": "flamingo"

    }

    }

    ```

    Однак, якщо ви хочете згрупувати моди під батьківським, але батьківський не є фактичним модом, ви також можете це зробити. У прикладі нижче мод визначає метадані для батьківського. Переконайтеся, що ці метадані включені у всіх дочірніх елементах, які використовують підробленого/фіктивного батьківського. Це також можна використовувати як резервний варіант для необов'язкового батьківського, його буде замінено реальними метаданими моду, якщо вони є.

    `fabric.mod.json`

    ```json

    "custom": {

    "modmenu": {

    "parent": {

    "id": "this-mod-isnt-real",

    "name": "Fake Mod",

    "description": "Do cool stuff with this fake mod",

    "icon": "assets/real-mod/fake-mod-icon.png",

    "badges": [ "library" ]

    }

    }

    }

    ```

    Підроблені батьківські моди підтримують лише такі метадані:

  • `id` (String)
  • `name` (String)
  • `description` (String)
  • `icon` (String)
  • `badges` (Array of Strings)

#### Disable update checker (`"update_checker": false`)

За замовчуванням перевірка оновлень Mod Menu використовуватиме хеш jar-файлу вашого моду, щоб знайти останню версію на Modrinth. Якщо він знайде відповідний проект, він перевірить останню версію, яка підтримує ваш завантажувач модів і версію Minecraft, і якщо вона має інший хеш, ніж ваш існуючий файл, він повідомить користувачеві, що є доступне оновлення.

Ви можете вимкнути перевірку оновлень, встановивши для `update_checker` значення false у метаданих Mod Menu, як показано нижче:

`fabric.mod.json`

```json

"custom": {

"modmenu": {

"update_checker": false

}

}

```

Quilt Metadata API

Оскільки Mod Menu також підтримує Quilt, ті самі API у розділі Fabric Metadata API також доступні для модів Quilt, але формат для власних метаданих дещо інший.

Замість блоку `"modmenu"` всередині блоку `"custom"`, ви розміщуєте блок `"modmenu"` як елемент в кореневому об'єкті. Отже, це має виглядати так:

`quilt.mod.json`

```json5

{

...

"modmenu": {

// Тут розміщуються ваші посилання, значки тощо

}

}

```

Java API

Щоб використовувати Java API, вам потрібно додати Mod Menu як залежність часу компіляції у ваш проект gradle. Це не змусить ваш мод вимагати Mod Menu, але він буде присутній у вашому середовищі для тестування.

`build.gradle`

```gradle

// Add the Terraformers maven repo to your repositories block

repositories {

maven {

name = "Terraformers"

url = "https://maven.terraformersmc.com/"

}

}

// Add Mod Menu as a dependency in your environment

dependencies {

// Prior to Minecraft 26.x, use "modImplementation" instead

implementation("com.terraformersmc:modmenu:${project.modmenu_version}")

}

```

Потім визначте версію Mod Menu, яку ви використовуєте, у вашому `gradle.properties`. Ви можете отримати останній номер версії , але вам може знадобитися інша версія, якщо ви не використовуєте останню версію Minecraft. Перегляньте для повного списку версій.

`gradle.properties`

```properties

modmenuversion=VERSIONNUMBER_HERE

```

> Якщо ви не хочете, щоб він був у вашому середовищі для тестування, але все одно хочете компілювати з Mod Menu для використання Java API, ви можете використовувати `modCompileOnly` замість `modImplementation` (це працюватиме, навіть якщо Mod Menu не оновлено до версії Minecraft, яку ви використовуєте).

Документація Java API

Початок роботи

Щоб використовувати API, реалізуйте інтерфейс ModMenuApi в класі та додайте його як точку входу типу "modmenu" у вашому `fabric.mod.json` так:

`fabric.mod.json`

```json

"entrypoints": {

"modmenu": [ "com.example.mod.ExampleModMenuApiImpl" ]

}

```

Екрани конфігурації модів

Моди можуть надавати фабрику Screen, щоб надати власний екран конфігурації для відкриття за допомогою кнопки конфігурації. Реалізуйте метод `getModConfigScreenFactory` у вашій реалізації API, щоб зробити це.

Передбачуваний варіант використання цього - надання модами власних екранів конфігурації. Ідентифікатор моду екрана конфігурації автоматично визначається вихідним контейнером моду, з якого походить точка входу.

Надані екрани конфігурації

Моди також можуть надавати фабрики Screen, щоб надавати власні екрани конфігурації для відкриття за допомогою кнопок конфігурації для інших модів. Реалізуйте метод `getProvidedConfigScreenFactories` у вашій реалізації API для цього.

Передбачуваний варіант використання ... (обрізано)

1 / 1
Версія Завантажувач Minecraft Дія
16.0.0 11.01.2026 fabric quilt 1.21.9 +1
15.0.1 11.01.2026 fabric quilt 1.21.6 +2
14.0.1 10.01.2026 fabric quilt 1.21.5
17.0.0-beta.2 10.01.2026 fabric quilt 1.21.11
18.0.0-alpha.4 10.01.2026 fabric quilt 26.1-snapshot-2
18.0.0-alpha.3 24.12.2025 fabric quilt 26.1-snapshot-1
18.0.0-alpha.2 24.12.2025 fabric quilt 26.1-snapshot-1
16.0.0-rc.2 23.12.2025 fabric quilt 1.21.9 +1
17.0.0-beta.1 22.12.2025 fabric quilt 1.21.11
14.0.0 13.11.2025 fabric quilt 1.21.5