LiteLoaderBDS

From Minecraft基岩版开发Wiki
LiteLoaderBDS
LiteLoader icon.png
软件与应用程序
开发作者
运行平台
  • WindowsLinux
编写语言
最新版本
2.12.0
发布日期
2021/01/28
年龄分级
?
程序大小
标准安装包约 40MB
授权协议
LGPLv3(SDK部分采用MIT协议)
开源情况
外部链接

LiteLoaderBDS(简称LiteLoaderLL)是BDS的第三方插件加载器。是一款强大,易用,且拥有广泛社区和大量已发布插件的插件加载器。LiteLoaderBDS处于积极维护状态中,是目前最流行的BDS插件加载器。[1]

功能概述[edit]

LiteLoader 提供了海量的API、强大的事件系统以及大量封装的开发基础设施接口,为拓展基岩版BDS 的更多玩法和功能提供了坚实的基础。通过插件,可以很容易地拓展BDS的功能,相关开发易于学习,且开发方式比较灵活。

项目支持使用 C++、JavaScript、Lua、Python、C#(及其他.NET平台语言) 等各种语言编写插件。同时,插件不需要随着BDS 版本更新而不断修改代码,仅需本项目在底层适配更新即可,给插件开发与维护带来了很大的便利。[2]

提供插件加载能力的基础上,LiteLoaderBDS还修复BDS中的一些漏洞,用以确保的服务器的稳定性和安全性,并广泛使用SEH异常保护框架,降低服务器的崩溃风险。

LiteLoader亦自带了一些辅助性的功能,如可以开关BDS的一些功能,并提供了一个异常NBT的检测和拦截功能。

在提供上述与BDS直接相关的功能的基础上,LiteLoader还提供有经济核心 LLMoney 权限组模块 PermissionAPI 粒子绘制器 ParticleAPI 等子模块为插件开发提供便利。

未来展望[edit]

[3]

LiteLoader 3[edit]

LiteLoaderBDS开发者声称将会在一年内迎来完整重构的全新版本:LiteLoaderBDS 3

  1. 在LiteLoaderBDS 3中,各重要组件将会进一步解耦合。这意味着LiteLoaderBDS将会成为一套工具链,包括多个不同的模块。
  2. 在LiteLoaderBDS 3中,LiteLoader将会更好的耦合LiteLoaderBDS插件和基岩版Addon,使得开发者能够制作类似Java版的Mod。
  3. LiteLoaderBDS 3中,将会引入插件元信息(metadata)的概念,只需要开发者在metadata.json中编写插件依赖信息,玩家就可以根据提示下载对应的插件,或通过LitePackageManager自动安装所有前置插件。
  4. LiteLoaderBDS 3中会提供一些统一的数据存储接口,用以规范插件的数据存储,同时便于用户正确配置,迁移数据。

相关链接[edit]

LiteLoaderBDS文档站 https://docs.litebds.com/zh-Hans/

LiteLoaderBDS Forum 论坛 https://forum.litebds.com/

Minebbs上的LiteLoader插件发布分区 原生插件 脚本插件

历史[edit]

LiteLoader最初基于BedrockX[4],在2.0版本进行了完全重写。

以下内容参考来源:[5][6][7]

LiteLoader
0.1.0发布于2021年1月28日。
The first version
0.1.1发布于2021年2月6日。
[Chakra]修复一个从BedrockX 0425遗留的错误,得以兼容BDSPyRunner 0.2.2以及反作弊(jfishing)
0.1.0只需要替换chakra.dll即可
0.1.2发布于2021年2月7日。
[Chakra]新增preload plugin,将需要preload的插件(如csr)放入plugin_preload即可加载
将新的chakra.dll与liteloader.dll覆盖至bds目录即可更新
LiteLoader History 1.png
0.1.3发布于2021年2月8日。
[LiteLoader]新增helper.cpp
新增ServiceLocator.cpp
新api: runcmd, runcmdEx
0.1.4发布于2021年2月11日。
新增基本的事件api
0.1.5发布于2021年2月15日。
加入真命令注册
添加命令块执行事件
添加注册命令事件
添加一系列事件监听
新添部分api
详见github commits‌[需要与英文更新日志校对]
0.1.6发布于2021年2月16日。
xuiddb
0.1.7发布于2021年2月20日。
修复插件启动无法互相读取依赖的bug
新添GUI api
新添更多event
新添 getallplayer api
修复 teleport api的bug
移除部分不可用api
本版本已支持LLMoney、LLtpa、LLhelper加载‌[需要与英文更新日志校对]
0.1.8发布于2021年3月4日。
添加api: sendtext
添加更多的事件
修复中文文件夹造成服务器控制台不输出的bug
0.1.9发布于2021年3月6日。
数据目录以及plugins_preload目录换了位置
plugins_preload目录改为plugins\preload\
xuiddb数据所在位置改为plugins\LiteLoader\xuiddb\
0.1.8及以下版本用户请在开服前执行 old2new.bat 以进行数据迁移
0.2.1发布于2021年3月12日。
兼容1.16.210
添加/version命令
添加更新检查
添加玩家预加入事件
0.2.2发布于2021年3月14日。
修复一些bugs
修复生物死亡事件
修复更新检测
注意
请下载lib.7z并解压到BDS所在目录
别忘了更新Chakra.dll
0.2.3发布于2021年4月5日。
移除preload文件夹
添加plugins\preload.conf
修改更新检测
修复runCmdEx
修复一些bugs‌[需要与英文更新日志校对]
1.0.0发布于2021年4月10日。
支持1.16.220
修复wplayer::teleport‌[需要与英文更新日志校对]
更新preload功能,现在在插件文件夹内检测到csr存在时会自动preload
1.0.1发布于2021年4月25日。
修复一些不可用的Api
1.0.2发布于2021年6月9日。
支持1.17
1.0.3发布于2021年7月3日。
更新SymDB2
请删除bedrock_server.symdb与bedrock_server.def
然后运行SymDB2.exe‌[需要与英文更新日志校对]
1.1.0发布于2021年7月14日。
适配1.17.10
1.1.1发布于2021年7月25日。
部分事件Api的调整
1.1.2发布于2021年9月5日。
修复一些bugs,添加一些新的api
1.1.2.1发布于2021年9月5日。
修复GUI发包崩溃
1.2.0发布于2021年9月22日。
兼容1.17.30
Please run SymDB2.bat to generate .symdb2 file
1.2.1发布于2021年9月25日。
Fixed SymDB2.exe
Added getPlayerLang
Fixed getAvgPing
Added getPing
Added server version check
1.2.2发布于2021年10月3日。
Added PacketApi
  • sendMessage
  • Transfer
Optimized OffsetHelper
Added Fix DisconnectPacket crash
Fixed the listening port
1.2.3发布于2021年10月4日。
修复了1.2.2中存在的TextPacket的bug
1.2.4发布于2021年10月5日。
修复liteloader::getIP by @xiaoqch
1.2.5发布于2021年10月20日。
Updated to 1.17.40.06.
Added offPlayer::getUserEntityIdentifierComponent
Fixed CommandSelectorBase size by @xiaoqch
2.0.0-pre-1发布于2021年12月9日。适配基岩版1.18.1。
Stronger API and Event system
Friendly interfaces
Countless low-level APIs ready to use immediately WITHOUT complex symcall
Utils to help you develop more easily
Auto upgrade system
High performance and light weight
Builtin CrashLogger system
2.0.1-pre-2发布于2021年12月13日。
重写logger系统。
修复大量问题。
2.0.2-pre-3发布于2021年12月16日。
修复NBTAPI, PlayerAPI和其他api的问题。
改进统一Logger。
该版本稳定性高,可用于生产环境。
2.0.3发布于2021年12月22日。
修复LL与LLSDK部分问题。
提供便捷的方式来获取和更新LLSDK,供插件开发。
已确保稳定性:你可以准备将ll2.0用于生产环境。
在未来会有更多有趣好玩的玩意。
2.0.4发布于2021年12月29日。
修复deleteScore无效。
修复setDisplay崩溃。
禁用Symdb2.exe窗口的关闭按钮。
Player::runcmd支持假指令。
修复Drop事件拦截后Q丢出和死亡的物品消失。
修复NPC崩服。
矿车容器处理。
PlayerPlaceEvent可以拦截门床红石等物了。
修复ContainerChangeslotnum错误。
修复防刷物一个误判问题。
2.0.6发布于2022年1月11日。
重要:修复BDS漏洞CVE-2021-45383和CVE-2021-45384
修复NPCCmdEvent
修复ChangePlayerDimEvent事件的问题。
修复计分板API错误的问题。
自动更新恢复。
2.0.7发布于2022年1月20日。
修复PlayerJoinEvent无法正常触发的bug。
修复PlayerChangeDimEvent错误的问题。
修复PistonPushEvent错误的问题。
修复breakBlockNatrally失效的问题。
修复内置命令权限导致的隐私问题。
优化了流水事件的性能。
删除了某些忘记删除的调试代码。
修复了有关FMT库的某些问题。
修复了PluginOwnData库的毛病,ABI变动,涉及到的插件需要重新编译。
为控制台颜色输出增加了开关,面板用户可以关闭颜色输出以避免乱码。‌[需要与英文更新日志校对]
2.0.8发布于2022年1月23日。
修复PlayerAttackBlockEvent报错。
添加监听PlayerExperienceAddEvent
添加全局变量AllowListFile
向玩家隐藏LiteLoader版本查询。
2.0.9发布于2022年1月27日。
修复玩家睡觉丢东西导致服务器假死(拦截版本)(action最新版本完美修复,非拦截丢出,后续更新!)
新添Changable Event Api
移除Logger的Lock
修复指令注册的Bool参数

参考[edit]