Skip to content

Latest commit

 

History

History
146 lines (108 loc) · 7.95 KB

README.md

File metadata and controls

146 lines (108 loc) · 7.95 KB

LiteXLoader - 划时代 x 跨语言脚本插件加载器

GitHub license Build GitHub release (latest by date including pre-releases)

简体中文 | English

🎨 简介

LiteXLoader是一个基岩版官方服务端Bedrock Delicated Server(以下简称BDS)插件框架,提供强大的跨语言脚本插件支持能力和稳定的开发API支持。
LiteLoader插件加载器加载并提供部分基础API。
使用脚本开发BDS插件具有上手容易、代码简洁、便于维护的优点。同时脚本插件不需要随着BDS版本更新而修改代码,仅需本项目在底层适配即可,给插件开发与维护带来了很大的便利。

🎁 优势

“为什么我要选择LiteXLoader?”

  1. 跨语言插件开发支持 ⭐

    • LiteXLoader的插件可以使用多种不同的脚本语言开发。自由选择你的最爱!
      同时,保证面向各种语言的接口统一

      目前已支持的插件开发语言 JavaScriptLua
      即将支持的插件开发语言 PythonRubyC#TypeScript
  2. 功能强大,设施完备

    • 提供众多的游戏API支持、游戏事件监听,为你发挥创意打好技术基础
    • 配备大量基础设施,如统一配置文件接口、统一日志接口、文件系统接口、数据库接口等等
      让你专注于业务代码实现,而非各种琐碎的技术细节
  3. 兼容性强

    • LXL支持通过Wine在Linux平台运行,给Linux平台也带来自由的插件体验
      一次编写,多平台共享
    • 仅依赖LiteLoader加载器和标准的C/C++运行时库,没有其他的额外依赖,兼容性极强
    • 兼容绝大多数其他主流插件加载器(CSR PYR等)
    • 后续版本更新时将保证 API 向后兼容,避免出现插件需要一再重写的情况。
      脚本插件不需要随版本更新而修改代码,一次编写,全版本适配。
  4. 模块化,高性能

    • 使用C++开发,底层性能优越。借助ScriptX的高效率通用接口,让脚本插件也可以做到高效运行。
    • 底层仅有一套统一的C++ API,维护和适配都比较方便,新版本适配速度快。
  5. 开源 & 永久免费

    • 项目采用GPL-3.0开源许可证,保证永远不会收费或者推出商业版。
      希望社区多多贡献力量,共同维护和建设这个项目💕

🔨 Compiling

  1. Install newest Microsoft Visual Studio with standard C++ building suite
  2. Install the newest version of Windows SDK
  3. 打开 LiteXLoader 目录下的 LiteXLoader.sln 项目文件,点击 生成解决方案 按钮
  4. 编译生成成功之后,在同目录下 Release 文件夹中的几个DLL文件即是生成的 LiteXLoader 加载器

💻 安装

项目主要发布于MineBBS,请移步MineBBS下载

  1. 正确安装LiteLoader插件加载器
  2. 下载LiteXLoader,解压,把全部内容复制到 BDS 的plugins目录中。如果有冲突,选择覆盖即可。
  3. 开服

🎯 加载插件

  1. 将需要加载的脚本插件直接放置到plugins目录中
  2. 开服

没错,就这么简单 o( ̄▽ ̄)ブ

关于具体的安装与使用指南 ,请👉移步文档站👈查看

💡 兼容性与可扩展性

兼容旧LiteLuaRunner的大部分插件。
小部分API并未适配,仅为了方便用户而设计兼容层。
移步文档站查看详细的分析

📡 实时调试

在BDS后台控制台执行

  • jsdebug
    进入Js实时调试模式
  • luadebug
    进入Lua实时调试模式

实时调试模式下,标准输入会被当做对应类型的脚本语言执行,并实时输出结果。
如果发生错误,引擎将输出错误信息与堆栈跟踪信息。
再次输入对应的jsdebugluadebug将退出实时调试模式。



📕 开发文档

请👉移步文档站👈查看详细的API文档插件开发教程
如果有修订需求或者有新增API的需要,欢迎联系作者或者发布Issue

🎬 参与贡献

你可以通过下面这些方法来LiteXLoader项目出一份力

  1. 贡献代码,维护项目和符号
  2. 帮助修改和优化开发文档
  3. 按格式编写你想要的新API并提交PR,或者提出好的建议
  4. 帮助我们宣传LXL,对我们的开发给予支持

⭐⭐⭐我们欢迎你对LiteXLoader做出自己的贡献!⭐⭐⭐
如果你有意为LXL贡献代码,欢迎👉移步文档站👈查看 项目维护与支持文档

有你们,LiteXLoader将变得更好~

📍 许可协议声明

在使用我们的产品的时候,我们默认您已经承认并遵守了Mojang Studios EULA协议。
这意味着你不能对本项目进行任何违反EULA的商业性使用。违反EULA协议造成的一切后果由违反者自行承担。
另外,您需要遵守本项目的GPL-3.0开源许可证条款,以及下列提到的各关联项目的开源许可证条款

LiteLoader GPLv3 with extra restrictions&exceptions
ScriptX Apache License Version 2.0
BedrockX GPLv3 with extra restrictions&exceptions
ElementZero GPL v3
ChakraCore MIT License
OpenSSL Apache License Version 2.0
Minini Apache License Version 2.0
Nlohmann-Json MIT License

Extra Restrictions & Exceptions

If you provides a server hosting service,you can use this framework for free, but you SHOULD NOT make PRIVATE changes to this framework as a selling point. If you fixed or tweaked the code, please pull request, instead of making it private for commercial use.

Do not do evil.

Although we expected to build an open-source community, but forcing everything open-source will ruin this community. So you can write plugins based on LiteXLoader with ANY open-source license or even dont publish your source code. but if you modified the framework, or write a new framework based on this framework, you MUST open-source it.

🏆 鸣谢

特别鸣谢:LiteLDev 各位大佬们 和 ScriptX开发者 @LanderlYoung
在开发过程中给予了作者以非常大的支持。感谢他们! 💖💖

📞 联系我们

LiteXLoader交流群:850517473 点击加入
LiteLoader交流群:656669024 点击加入
Telegram电报频道:#LiteLoader 点击加入
欢迎反馈崩溃和版本适配问题。务必准备好详细的情况描述,过于简略的提问将不予作答。

💕赞助作者💕

项目已接入爱发电 点击此处
给我们不断继续下去的动力!