Перейти к содержимому

GBM

This is implementation of stupid idea - What if I can use Golang to Minecraft modding?

FabricQuiltPaperPurpur
Загрузчики
FabricQuiltPaperPurpur
Скачиваний на Modrinth
77
Подписчиков на Modrinth
0
версий
6
Обновлён
4 августа 20264 авг.
Опубликован
в 2026
Это библиотека — она нужна другим модам и сама ничего не добавляет в игру
Drawing some text on screen — Temparary notification that auto-delets after few ticks, HUD that shows ticks and removes after 40 ticks · свайп

Коротко о моде

Библиотека — нужна другим модам
Работает на Fabric, Quilt, Paper и Purpur
Для Minecraft 1.21–26.1.2
Работает и в игре, и на сервере — ставьте, где нужен
Последняя версия — 0.2.0-paper от 4 августа 2026
Лицензия MIT — бесплатно
Где нужен
В игренеобязателенНа серверенеобязателен

Работает и в игре, и на сервере — ставьте, где нужен

Версии игры1.21–26.1.2
Перевода пока нет — показываем оригинал на английском

Go Minecraft Bridge

Go Minecraft Bridge hosts plugins written in Go in both Minecraft server and client processes. The Minecraft-facing code stays in Java, while plugin logic receives immutable snapshots/events and returns actions or named system calls.

The shared code is built as two version-specific Fabric artifacts:

MinecraftJavaLoaderFabric APICloth ConfigMod Menu
1.21.1210.16.140.116.14+1.21.115.0.14011.0.3
26.1.2250.19.30.149.1+26.1.226.1.15418.0.0

Architectury Loom drives the portable 1.21.1 target, with a small source overlay for Minecraft API differences. The unobfuscated 26.1.2 target uses Fabric Loom because Architectury Loom currently requires a mappings artifact that this Minecraft distribution does not publish. Architectury portability still produces one JAR per Minecraft ABI; it does not make one universal JAR.

The current MVP also targets:

  • Go 1.24 or newer;
  • native Go plugins built with -buildmode=c-shared;
  • initialization, server/client tick, chat, death, system-call-result, and deinitialization callbacks;
  • entity snapshots and explicit subscriptions to block positions;
  • chat broadcast/direct-message actions;
  • extensible namespaced system calls;
  • capture of Go stdout, stderr, and the standard log package;
  • FlatBuffers tick snapshots (ABI v2), while control-plane messages remain JSON;
  • a Cloth Config management screen exposed through Mod Menu.

The backend interface is deliberately independent from Fabric and native FFI so that a WASI/WASM backend can implement the same protocol later.

The server runtime is also packaged as one Paper plugin compatible with Paper and Purpur. Its Bukkit-facing code is compiled during every build against this API matrix:

ServerPaper API used for verificationJava runtime
Paper/Purpur 1.21.11.21.1-R0.1-SNAPSHOT21+
Paper/Purpur 1.21.111.21.11-R0.1-SNAPSHOT21+
Paper/Purpur 26.126.1.2.build.74-stable25+

The Paper API preserves the Bukkit surface used by the bridge, so these targets share one Java 21 bytecode JAR. Purpur accepts it directly because Purpur is a Paper-compatible server implementation.

Using

Visit source github to check

Roadmap

  • [ ] Adding screen render implementation
  • [ ] More systemcalls and usability
  • [ ] Event system with registration
  • [ ] All-in-one JAR file for client
  • [ ] Maybe some more...

Code is licenced under MIT Licence.

Частые вопросы

Как установить GBM?

Установите Fabric под свою версию Minecraft, скачайте GBM под ту же версию и загрузчик, положите файл в папку mods и запустите игру с профилем загрузчика.

Для каких версий Minecraft есть GBM?

У GBM есть сборки для Minecraft 1.21–26.1.2.

Нужен ли GBM на сервере?

Работает и в игре, и на сервере — ставьте, где нужен

Лицензия и источник
MIT Licenseможно свободно использовать и распространять с указанием автора
Оригинал — Modrinth↗Файлы — без изменений, проверены по SHA-512Это ваш мод? Правообладателям

Сайт использует cookie: необходимые — для входа и темы, а также счётчики посещений Яндекс Метрика и LiveInternet — по ним мы видим, как пользуются сайтом. Рекламных cookie у нас нет. Подробнее