fabricbukkitloader
1.0.1A Paper 1.21 plugin that allows the server to load mods for Fabric 1.21.
- Tested MC versions
- 1.21
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
-
Download Plugin
- Download
FabricBukkitLoader-1.0.0.jarfrom the releases page - Or use the pre-compiled jar file in this project
- Download
-
Install Plugin
- Place
FabricBukkitLoader-1.0.0.jarin your server'spluginsfolder - Start the server, the plugin will automatically generate configuration files
- Place
-
Configure Plugin
- Edit the
plugins/FabricBukkitLoader/config.ymlconfiguration file - Make necessary settings (see configuration instructions)
- Edit the
-
Add Fabric Mods
- Place Fabric mod
.jarfiles in themods/folder in the server root directory - Restart the server or use the
/fabricloader reloadcommand to load mods
- Place Fabric mod
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-pluginsoption
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
- Fork this repository
- Create a feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - 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+ (用于编译)
安装步骤
-
下载插件
- 从 releases 页面下载
FabricBukkitLoader-1.0.0.jar - 或者使用本项目中已编译好的 jar 文件
- 从 releases 页面下载
-
安装插件
- 将
FabricBukkitLoader-1.0.0.jar放入服务器的plugins文件夹 - 启动服务器,插件会自动生成配置文件
- 将
-
配置插件
- 编辑
plugins/FabricBukkitLoader/config.yml配置文件 - 根据需要进行设置(见配置说明)
- 编辑
-
添加Fabric Mods
- 将Fabric mod的
.jar文件放入服务器根目录的mods/文件夹 - 重启服务器或使用
/fabricloader reload命令加载mods
- 将Fabric mod的
配置说明
主配置文件 (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加载
事件适配系统
命令适配系统
配置管理系统
权限控制系统
开发环境搭建
- Fork 本仓库
- 创建特性分支 (
git checkout -b feature/AmazingFeature) - 提交更改 (
git commit -m 'Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 开启 Pull Request
许可证
本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情
致谢
- PaperMC 团队 - 提供优秀的服务器API
- FabricMC 团队 - 提供mod加载框架
- 所有贡献者和测试人员
Made with ❤️ for the Minecraft Modding Community
Similar projects
Plugin →VeinMiner
Mine the whole vein on mining a single ore/block. Make the tedious mining experience to something satisfying and fun! FTB Ultimine alternative
99.3MSueta
Simple Voice Chat
A working voice chat in Minecraft!
76.8MSueta
Chunky
Pre-generates chunks, quickly and efficiently
18.4MSueta
VeinMiner Enchantment
Veinminer Addon - Adds vineminer enchantment to enchanting tables. Only tools with the enchantment can veinmine
18MSueta
JourneyMap
Real-time map used for mapping in-game or your browser as you explore.
14.7MSueta
WorldEdit
A Minecraft Map Editor... that runs in-game! With selections, schematics, copy and paste, brushes, and scripting. Use it in creative, or use it temporarily in survival.
11.6MSueta