hahahahahah 发表于 2024-7-12 12:55:56

[脚本] LuaInMinecraftBukkit —— 用Lua脚本来编写服务器插件 | 复活贴 [1.7+]

本帖最后由 hahahahahah 于 2024-7-12 14:34 编辑

https://s21.ax1x.com/2024/07/02/pkggIOI.png​LuaInMinecraftBukkitLua在桶里喵喵叫
快速开始 | WIKI | 开发者文档 | 项目仓库 | SpigotMC
LuaInMinecraftBukkit 是一个可用让腐竹们在 Minecraft Bukkit 服务端及其延伸端上,使用Lua编写能够与服务器进行交互脚本的一个脚本插件。 交流群:662312388
什么是Lua?
Lua 是一门强大、快速、轻量的嵌入式脚本语言。它由巴西里约热内卢 Pontifical Catholic 大学的 PUC-Rio 团队 开发。 Lua 是一个 自由软件, 广泛应用于世界上无数产品和项目。
这个插件能干什么?这个插件主要是在mc的java的bukkit插件与lua两个之间搭建了一个桥梁, 让lua脚本能够快速且动态的被加载入bukkit服务器中, 而在没有脚本运行的过程中, 几乎不会对服务器性能带来损耗. 还能够让lua脚本实现大部分java插件能够实现的功能. 例如:
[*]监听绝大多数服务器中的事件
[*]创建多个同步/异步线程
[*]注册指令
[*]可以连接数据库
[*]可以....


此外, 插件提供两种lua脚本运行模式.
1. 利用java自身实现lua脚本语言规范(默认模式)2. 使用原本的c语言去运行lua脚本(native模式)
第一种模式为默认模式, 它的兼容性较强第二种模式需要在配置文件中启用, 在运行较为繁琐复杂的脚本时, 相对比第一种模式而言第二种模式的运行速度会相对而言更快一些.

[*]java原生方法运行1 + 2 + ... + 1000000000所耗费的时间:

https://blog.smileyik.eu.org/blogs/other/markdowns/Minecraft/LuaInMinecraftBukkit/LuaInMinecraftBukkit/cwf9hy.png

[*]第二种模式(Native模式)去执行相同的方法(在服务器中运行)所耗费的时间

https://blog.smileyik.eu.org/blogs/other/markdowns/Minecraft/LuaInMinecraftBukkit/LuaInMinecraftBukkit/oxgyr3.png


在最新版本1.7.4中,对于Native模式下运行的脚本提供更全面的报错提示,以助于更快定位脚本中的错误代码行。


如何使用?下载本插件, 放入服务端的plugins文件夹后重启即可。
脚本生命周期脚本被加载 -> 执行脚本内的onEnable函数 -> 脚本运行 -> 执行脚本内的onDisable函数 -> 脚本被销毁
创建脚本创建脚本见WIKI或者我的博客:快速开始(博客)| 快速开始(WIKI)

如果喜欢就打赏吧
爱发电:https://afdian.net/a/SmileYik
页: [1]
查看完整版本: [脚本] LuaInMinecraftBukkit —— 用Lua脚本来编写服务器插件 | 复活贴 [1.7+]