
Проект заброшен
Коротко говоря, подход к оптимизации по-прежнему применим, но Forge/NeoForge не позволяет моду изменять EventBus.
В отличие от классов из Minecraft или самого Forge, EventBus загружается не как часть игры, а как "библиотека", что делает невозможным изменение EventBus через Mixin или Transformer.
Это оптимизационный мод для Forge/NeoForge, который оптимизирует одну из самых фундаментальных систем Forge: систему событий.
Насколько быстро
Создать тестовый пример для каждой поддерживаемой версии Minecraft непросто, особенно когда система событий в этих версиях различается. Поэтому вместо этого я приведу отчёт JMH-бенчмарка из PR, который я сделал для проекта Cleanroom, где использовал тот же подход к оптимизации, что и FastEvent:
Регистрация 10,000 слушателей событий, отправка события 0 раз:
Примерно на 6.4% быстрее.
Регистрация 1,000 слушателей событий, отправка события 10,000 раз:
Примерно на 24% быстрее.
Как это работает
Внимание: технические подробности для гиков
Но генерация классов вносит дополнительное замедление. Чтобы сделать ещё быстрее, FastEvent заменил генерацию классов на конструирование лямбд, ускорив создание обработчиков событий. Ещё одно преимущество в том, что лямбда "скрыта", что позволяет JVM выполнять больше оптимизаций.
Если вы немного знаете Java, приведённые ниже примеры кода могут быть для вас более наглядными:
Как установить FastEvent
- В списке файлов выберите свою версию Minecraft и загрузчик. Установите этот загрузчик в профиль игры.
- Проверьте требуемые библиотеки у выбранного релиза. Скачайте их для той же версии Minecraft и загрузчика.
- Скачайте выбранный файл. Если это ZIP, извлеките из него JAR мода. В ZIP также находятся лицензия автора и сведения об источнике.
- Закройте игру и поместите JAR мода и необходимых библиотек в папку
modsвыбранного профиля. JAR распаковывать не нужно. - Запустите выбранный профиль. Для русского текста выберите «Русский» в настройках языка Minecraft.
Где находится папка mods?
Откройте папку выбранной сборки в лаунчере и найдите mods. Если папки нет, создайте её. Для стандартной установки:
- Windows:
%appdata%\.minecraft\mods - macOS:
~/Library/Application Support/minecraft/mods - Linux:
~/.minecraft/mods
Если в лаунчере задана другая папка игры, используйте её, а не стандартный путь.
Версии и загрузки
Версии Minecraft и загрузчики указаны отдельно для каждого релиза.
| Релиз | Minecraft / загрузчик | Файл |
|---|---|---|
| 1.2.0Оригинал автора2025-06-18 | 1.16.5Forge | Скачать Forge37 КБ · ZIP: JAR + лицензияSHA-2565207b4f85e32ee2a8ddc23f9fa327f397c194d30a853c0d8d69f288cb7fa9d5e |
| 1.1.1Оригинал автора2025-05-14 | 1.19.2Forge | Скачать Forge34 КБ · ZIP: JAR + лицензияSHA-2568ed6fd67dd5c15bfe563d3ef8db9e0355159b146f3c50878c542217ad53dd824 |
| 1.1.1Оригинал автора2025-05-14 | 1.18.2Forge | Скачать Forge35 КБ · ZIP: JAR + лицензияSHA-256351ee35ef7d9e7295b8fb484c0b0817461b75504f18a28344128cbf541057931 |
| 1.1.1Оригинал автора2025-05-14 | 1.21.1Forge | Скачать Forge34 КБ · ZIP: JAR + лицензияSHA-256a05b61f712f5676526ed844bda6529d68073e3360fcc9d464b87ad8ee15149e0 |
| 1.1.1Оригинал автора2025-05-14 | 1.20.1Forge | Скачать Forge34 КБ · ZIP: JAR + лицензияSHA-256e5cd336d755ac1a02f913001887da7a0d61f76febf4d261ff92a825e56e41c0c |
Источник и перевод
Источник: Modrinth, FastEvent.
Описание переведено на русский язык с помощью DeepSeek.
FastEvent: версии Minecraft
- Скачать FastEvent для Minecraft 1.21.1Загрузчики: Forge · Релизов: 1
- Скачать FastEvent для Minecraft 1.20.1Загрузчики: Forge · Релизов: 1
- Скачать FastEvent для Minecraft 1.19.2Загрузчики: Forge · Релизов: 1
- Скачать FastEvent для Minecraft 1.18.2Загрузчики: Forge · Релизов: 1
- Скачать FastEvent для Minecraft 1.16.5Загрузчики: Forge · Релизов: 1