▶️ ЗАБЕРИ СВОИ 8 ПОДАРКОВ 🎁 ПРИ СОЗДАНИИ СВОЕГО МАЙНКРАФТ СЕРВЕРА
Плагины/fabricbukkitloader
fabricbukkitloader

fabricbukkitloader

A Paper 1.21 plugin that allows the server to load mods for Fabric 1.21.

209
3

Plugin description

Features

A Paper 1.21+ plugin that enables servers to load Fabric 1.21+ mods.

  • 🔄 Fabric Mod Loading - Load and run Fabric mods on Paper servers
  • ⚙️ Configuration Management - Flexible configuration system with hot reload support
  • 🎮 Event Adaptation - Automatically converts Bukkit events to Fabric event format
  • ⌨️ Command Adaptation - Supports Fabric mod commands running on Paper servers
  • 🔒 Security Control - Whitelist/blacklist system, plugin signature verification
  • 📊 Management Interface - Convenient management commands and monitoring features

Installation

Prerequisites

  • Paper 1.21+ server
  • Java 21
  • Maven 3.6+ (for compilation)

Installation Steps

  1. Download Plugin

    • Download FabricBukkitLoader-1.0.0.jar from the releases page
    • Or use the pre-compiled jar file in this project
  2. Install Plugin

    • Place FabricBukkitLoader-1.0.0.jar in your server's plugins folder
    • Start the server, the plugin will automatically generate configuration files
  3. Configure Plugin

    • Edit the plugins/FabricBukkitLoader/config.yml configuration file
    • Make necessary settings (see configuration instructions)
  4. Add Fabric Mods

    • Place Fabric mod .jar files in the mods/ folder in the server root directory
    • Restart the server or use the /fabricloader reload command to load mods

Configuration

Main Configuration File (config.yml)

# Enable/disable plugin loading
enable-plugin-loading: true

# Enable/disable debug logging
debug-logging: false

# Mods directory path (relative to server root)
mods-directory: "mods"

# Auto reload plugins
auto-reload-plugins: true

# Maximum number of plugins to load
max-plugins: 100

# Plugin compatibility mode
allow-incompatible-plugins: false

# Event adapter settings
event-adapter:
  enabled: true
  priority-handling: "NORMAL"
  event-filtering: true

# Command adapter settings
command-adapter:
  enabled: true
  enable-aliases: true
  enable-permissions: true

# Logging settings
logging:
  log-plugin-loading: true
  log-plugin-errors: true
  log-command-execution: false
  log-event-handling: false

# Security settings
security:
  verify-plugin-signatures: false
  allow-unsigned-plugins: true
  whitelist-plugins: []
  blacklist-plugins: []

Commands

Main Commands

  • /fabricloader help - Display help information
  • /fabricloader info - Display plugin information
  • /fabricloader mods - List loaded Fabric mods
  • /fabricloader reload - Reload plugin configuration

Admin Commands (OP permission required)

  • /fabricloader load <mod-file> - Load specified mod file
  • /fabricloader unload <mod-id> - Unload specified mod

Shortcut Commands

  • /fblmods - Quick view of loaded mods list
  • /fbl - Alias for /fabricloader

Permissions

fabricbukkit.loader.* - All permissions
fabricbukkit.loader.admin - Admin permissions
fabricbukkit.loader.mods - View mods list
fabricbukkit.loader.reload - Reload plugin
fabricbukkit.loader.info - View plugin information

Development

Project Structure

fabric-bukkit-loader/
├── src/main/java/com/fabricbukkit/loader/
│   ├── FabricBukkitLoader.java    # Main class
│   ├── ModConfigManager.java      # Configuration manager
│   ├── ModLoader.java             # Mod loader
│   ├── EventAdapter.java          # Event adapter
│   ├── CommandAdapter.java        # Command adapter
│   └── LoadedMod.java             # Mod entity class
├── src/main/resources/
│   └── plugin.yml                 # Plugin configuration
├── pom.xml                        # Maven configuration
└── README.md                      # Documentation

Build Project

# Build
mvn clean package

# Generated jar file is in target/ directory

API Usage

// Get plugin instance
FabricBukkitLoader plugin = FabricBukkitLoader.getInstance();

// Get loaded mods
Map<String, LoadedMod> mods = plugin.getLoadedMods();

// Load new mod
ModLoader modLoader = plugin.getModLoader();
LoadedMod mod = modLoader.loadMod(modFile);

// Event adaptation
EventAdapter eventAdapter = plugin.getEventAdapter();
eventAdapter.registerModEvents(mod);

// Command adaptation
CommandAdapter commandAdapter = plugin.getCommandAdapter();
commandAdapter.registerModCommands(mod);

Supported Fabric Mods

This plugin supports most Fabric mods that don't require client-side modifications, including:

  • 🔧 Utility mods
  • 🏗️ Building mods
  • 📦 Storage mods
  • 🎛️ Mechanical mods
  • 🔬 Technology mods
  • ⚔️ Combat mods

Note: Mods requiring client support (such as new blocks, new item rendering) may not be fully compatible.

FAQ

Q: Plugin cannot load certain Fabric mods?

A: Check the following:

  • Confirm the mod is compiled for Fabric 1.21+
  • Check error messages in server logs
  • Verify mod dependencies are satisfied
  • Try enabling the allow-incompatible-plugins option

Q: How to debug mod loading issues?

A: Enable debug logging in config.yml:

debug-logging: true
logging:
  log-plugin-loading: true
  log-plugin-errors: true

Q: Does it support all Fabric mods?

A: No, mods requiring client-side modifications are not supported. Server-side functionality usually works normally.

Q: What about performance impact?

A: The plugin itself has minimal overhead. Mod performance depends on the specific mod implementation.

Changelog

v1.0.0

  • ✨ Initial release
  • ✨ Fabric mod loading support
  • ✨ Event adaptation system
  • ✨ Command adaptation system
  • ✨ Configuration management system
  • ✨ Permission control system

Contributing

  1. Fork this repository
  2. Create a feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details

Acknowledgments

  • PaperMC Team - For providing excellent server API
  • FabricMC Team - For providing mod loading framework
  • All contributors and testers

Made with ❤️ for the Minecraft Modding Community

中文翻译

FbBLoader

功能特性

一个Paper 1.21+插件,使服务器能够加载Fabric 1.21+的mods。

  • 🔄 Fabric Mod加载 - 在Paper服务器上加载和运行Fabric mods
  • ⚙️ 配置管理 - 灵活的配置系统,支持热重载
  • 🎮 事件适配 - 自动将Bukkit事件转换为Fabric事件格式
  • ⌨️ 命令适配 - 支持Fabric mod命令在Paper服务器上运行
  • 🔒 安全控制 - 白名单/黑名单系统,插件签名验证
  • 📊 管理界面 - 便捷的管理命令和监控功能

安装说明

前提条件

  • Paper 1.21+ 服务器
  • Java 21
  • Maven 3.6+ (用于编译)

安装步骤

  1. 下载插件

    • 从 releases 页面下载 FabricBukkitLoader-1.0.0.jar
    • 或者使用本项目中已编译好的 jar 文件
  2. 安装插件

    • FabricBukkitLoader-1.0.0.jar 放入服务器的 plugins 文件夹
    • 启动服务器,插件会自动生成配置文件
  3. 配置插件

    • 编辑 plugins/FabricBukkitLoader/config.yml 配置文件
    • 根据需要进行设置(见配置说明)
  4. 添加Fabric Mods

    • 将Fabric mod的 .jar 文件放入服务器根目录的 mods/ 文件夹
    • 重启服务器或使用 /fabricloader reload 命令加载mods

配置说明

主配置文件 (config.yml)

# 启用/禁用插件加载
enable-plugin-loading: true

# 启用/禁用调试日志
debug-logging: false

# Mods目录路径(相对于服务器根目录)
mods-directory: "mods"

# 自动重载插件
auto-reload-plugins: true

# 最大插件加载数量
max-plugins: 100

# 插件兼容性模式
allow-incompatible-plugins: false

# 事件适配器设置
event-adapter:
  enabled: true
  priority-handling: "NORMAL"
  event-filtering: true

# 命令适配器设置
command-adapter:
  enabled: true
  enable-aliases: true
  enable-permissions: true

# 日志设置
logging:
  log-plugin-loading: true
  log-plugin-errors: true
  log-command-execution: false
  log-event-handling: false

# 安全设置
security:
  verify-plugin-signatures: false
  allow-unsigned-plugins: true
  whitelist-plugins: []
  blacklist-plugins: []

使用命令

主要命令

  • /fabricloader help - 显示帮助信息
  • /fabricloader info - 显示插件信息
  • /fabricloader mods - 列出已加载的Fabric mods
  • /fabricloader reload - 重载插件配置

管理命令 (需要 OP 权限)

  • /fabricloader load <mod-file> - 加载指定的mod文件
  • /fabricloader unload <mod-id> - 卸载指定的mod

快捷命令

  • /fblmods - 快速查看已加载的mods列表
  • /fbl - /fabricloader 的别名

权限节点

fabricbukkit.loader.* - 所有权限
fabricbukkit.loader.admin - 管理权限
fabricbukkit.loader.mods - 查看mods列表
fabricbukkit.loader.reload - 重载插件
fabricbukkit.loader.info - 查看插件信息

开发说明

项目结构

fabric-bukkit-loader/
├── src/main/java/com/fabricbukkit/loader/
│   ├── FabricBukkitLoader.java    # 主类
│   ├── ModConfigManager.java      # 配置管理
│   ├── ModLoader.java             # Mod加载器
│   ├── EventAdapter.java          # 事件适配器
│   ├── CommandAdapter.java        # 命令适配器
│   └── LoadedMod.java             # Mod实体类
├── src/main/resources/
│   └── plugin.yml                 # 插件配置
├── pom.xml                        # Maven配置
└── README.md                      # 说明文档

编译项目


# 编译
mvn clean package

# 生成的jar文件在 target/ 目录

API 使用

// 获取插件实例
FabricBukkitLoader plugin = FabricBukkitLoader.getInstance();

// 获取已加载的mods
Map<String, LoadedMod> mods = plugin.getLoadedMods();

// 加载新的mod
ModLoader modLoader = plugin.getModLoader();
LoadedMod mod = modLoader.loadMod(modFile);

// 事件适配
EventAdapter eventAdapter = plugin.getEventAdapter();
eventAdapter.registerModEvents(mod);

// 命令适配
CommandAdapter commandAdapter = plugin.getCommandAdapter();
commandAdapter.registerModCommands(mod);

支持的Fabric Mods

本插件支持大多数不需要客户端修改的Fabric mods,包括:

  • 🔧 工具类mods
  • 🏗️ 建筑类mods
  • 📦 存储类mods
  • 🎛️ 机械类mods
  • 🔬 科技类mods
  • ⚔️ 战斗类mods

注意: 需要客户端支持的mods(如新方块、新物品渲染)可能无法完全兼容。

常见问题

Q: 插件无法加载某些Fabric mods?

A: 检查以下几点:

  • 确认mod是为Fabric 1.21+版本编译的
  • 查看服务器日志中的错误信息
  • 检查mod的依赖是否满足
  • 尝试启用 allow-incompatible-plugins 选项

Q: 如何调试mod加载问题?

A: 在 config.yml 中启用调试日志:

debug-logging: true
logging:
  log-plugin-loading: true
  log-plugin-errors: true

Q: 是否支持所有Fabric mods?

A: 不支持需要客户端修改的mods。服务器端功能通常可以正常工作。

Q: 性能影响如何?

A: 插件本身开销很小。mod的性能取决于具体的mod实现。

更新日志

v1.0.0

  • ✨ 初始版本
  • ✨ 支持Fabric mod加载
  • ✨ 事件适配系统
  • ✨ 命令适配系统
  • ✨ 配置管理系统
  • ✨ 权限控制系统

开发环境搭建

  1. Fork 本仓库
  2. 创建特性分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 开启 Pull Request

许可证

本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情

致谢

  • PaperMC 团队 - 提供优秀的服务器API
  • FabricMC 团队 - 提供mod加载框架
  • 所有贡献者和测试人员

Made with ❤️ for the Minecraft Modding Community

Совместимость

Minecraft: Java Edition

1.21.x

Платформы

Поддерживаемые окружения

Сервер

Детали

Лицензия:MIT
Опубликован:1 месяц назад
Обновлён:1 месяц назад
Главная