LuaInMinecraftBukkit II
1.1.0this plugin provides a Lua runtime environment capable of writing most Bukkit plugins.
1.1.0latestUpdate 1.1.0 & Fix bugsNov 9, 2025 Full Changelog: 1.0.9...1.1.0 Major Changes: · Fixed indexing errors in the LuaJIT native library on Windows · Fixed fast reflection errors when bytecode generation fails, falling back to standard reflection during generation failures · Added an update checker that asynchronously checks for plugin updates; skips checks if network requests take longer than one minute · Automatically redownloads dependency files during updates to prevent crashes caused by outdated dependencies · Added Lua API registerRawCommand for quick registration of individual commands · Lua VM now provides more detailed error messages during panic states · Added new bStats table to track usage statistics of Lua versions · Registered ILuaStateManager as a Service within Bukkit · Added Luacage package manager with corresponding command /luacage · Several other changes · Lua code auto-completion support1.1.0+foliaUpdate 1.1.0 & Fix bugsNov 9, 2025 Full Changelog: 1.0.9...1.1.0 Major Changes: · Fixed indexing errors in the LuaJIT native library on Windows · Fixed fast reflection errors when bytecode generation fails, falling back to standard reflection during generation failures · Added an update checker that asynchronously checks for plugin updates; skips checks if network requests take longer than one minute · Automatically redownloads dependency files during updates to prevent crashes caused by outdated dependencies · Added Lua API registerRawCommand for quick registration of individual commands · Lua VM now provides more detailed error messages during panic states · Added new bStats table to track usage statistics of Lua versions · Registered ILuaStateManager as a Service within Bukkit · Added Luacage package manager with corresponding command /luacage · Several other changes · Lua code auto-completion support1.0.9+folia1.0.9 folia version | as same as 1.0.9Sep 19, 2025 1.0.9Update 1.0.9 | Updated native filesSep 19, 2025 Updated native files, need upgrade your native library and upgrade your natives.json file. (Just delete the folder: "/LuaInMinecraftBukkitII/natives") Changes · Folia Server Support: [feat: Folia support, add build params -PFoliaSupport to support Fol…](c965f4d), [fix: folia scheduler cancel schedule method.](4bd8abc) · Automatic Lua script reload after modification: [feat: auto reload scripts when it was modified](a35c51f) · Lua scripts can now call default methods defined in Java interfaces and support configuring the behavior when the Lua environment finds multiple matching methods: [update luajava](59e6367) · Added new API to freely switch the Lua environment's behavior when multiple matching methods are found: [feat: add new lua api to switch luajava behavior on searched multi ja…](65f76ae) · A sample Lua script file is now generated on the first plugin initialization: [feat: add default test.lua file when first initialize plugin config](6e90f97) · Added fast reflection support: [feat: fast reflection util for invoke method, get/set field](12effeb), [fix: return null if return type is void & lambda instance class canno…](8af8c92), [feat: first part fo FastReflection for LuaJavaApi](0c4de69), [feat: bump luajava](59ad309), [fix: update luajava-java8.patch](a2c95f9), [fix: detect lambda instance and generate method accessor of superclas…](50675fe), [feat: remove lua debug hook for lua state in LuaPool.](b6cbecd) · Removed Lua environment global variable separation: [remove lua _G table split](50d789d) · Fixed incorrect recognition of emoji proxies: [fix: bump luajava fix emoji](5ebacfa) · Fixed stack imbalance and random crashes caused by the Lua pool implementation: [fix: LuaPool source lua state stack imbalance & LuaPool destination l…](0f7524b), [fix: PooledLuaCallable implement IInnerLuaObject](7afdfc8), [perf: remove thread pool in LuaPool](8529109) · Fixed issues where asynchronous threads and Bukkit events could not be properly shut down when disabling the plugin: [feat: scheduler interface add new method to cancel all tasks](ad928e2), [fix: unregister event and cancel all tasks when disable plugin](7311e8d) · Fixed errors in the reflection cache under multithreaded conditions: [fix: use Collections.synchronizedMap wrap cache](aa7923d)1.0.8Update 1.0.8 | Updated native filesAug 28, 2025 Updated native files, need upgrade your native library and upgrade your natives.json file. (Just delete the folder: "/LuaInMinecraftBukkitII/natives") Changes · Try downloads resources from project url in config.json at frist · Implementation of Lua pool, allow running Lua closure on other lua state, and allow transfer return values to main lua state(Running Lua scripts in multiple threads): feat: upgrade luajava, feat: Simple implementation of Lua pool, feat: complete SimpleLuaPool.1.0.7Update 1.0.7 & Fix bugsAug 12, 2025 Major Changes Fixes · fix: Cannot read public static field issue · fix: async methods and sync methods cannot complete future · fix: castArray method always cast lua array failed Features · feat: add forName method that can get class by class name include non-standard class name1.0.6Update 1.0.6Aug 6, 2025 Full Changelog: https://github.com/SmileYik/LuaInMinecraftBukkitII/compar… # Major Changes ## 指令 + Add soft reload command. This command will reload Lua environment without shutdown Lua VM. ([add soft reload command.]( https://github.com/SmileYik/LuaInMinecraftBukkitII/commit… ## Lua API +luaBukkit.envadd method:registerSoftReload(ILuaCallable). It used for register lua closure and it will be called when soft reload. ([add soft reload command.]( https://github.com/SmileYik/LuaInMinecraftBukkitII/commit… + Add Lua module: 'import', for import java class easilier. ([Add lua library "import.lua" to help import java class.]( https://github.com/SmileYik/LuaInMinecraftBukkitII/commit…1.0.4Update 1.0.4 | Updated native filesJul 14, 2025 Updated native files, need upgrade your native library and upgrade your natives.json file. Changes: · Add native module manager, you can enable/disable module in config.json · A new Lua environment type for plugin interact. · Allow load shared library(.so/.dylib/*.dll) file fromluaLibrariesdirectory · Add cffi module, allow use ffi in lua51~lua54 · Add jni-bridge module(half, linux only now), allow cpp code interact with bukkit server. · Allow async load lua script. · Allow load network library byrequiremethod in Lua side.1.0.1Update 1.0.1 | Updated native filesJul 5, 2025 Updated native files, need upgrade your native library. Upgrade luajava - Fix failed to index java class method. - Fix the segment error when call java class static method. - add pushJavaClass method for easier call java class static method or field.1.0.0Update 1.0.0 | Updated native filesJul 4, 2025 Updated native files, need upgrade your native library. If you upgrade from dev version, you need deleted natives folder and let the plugin download the newest native libraries. Main Changes: + addluajava.class2Obj()function for lua side. Then you can use java reflect in lua side. + allow lua side access java instance's private/protected method or field. + fix CommandBuilder and EventListenerBuilder issue.dev-master-c523433fix 1.21.5 cannot register event listenerJun 29, 2025 fix 1.21.5 cannot register event listenerdev-master-9403399Fix reload command logical & add bStatsJun 28, 2025 Fix reload command logical and add bStats. config.json file is changed, but previous config file also can use. bstats website: https://bstats.org/plugin/bukkit/LuaInMinecraftBukkitII/2…master-bff68fdAuto download native library when startup. Support macos, linux and windows.Jun 28, 2025 Config.json file is changed. Code (Text): { // project resource base url "projectUrl": "https://raw.githubusercontent.com/SmileYik/LuaInMinecraft…", // lua version "luaVersion": "lua-5.4.8", // always check native library hashes "alwaysCheckHashes": false, // enable debug "debug": false, // lua 环境 "luaState": { // lua 环境 id "default": { // 该环境运行在哪个目录下, "/" 代表插件目录下的luastate目录. "rootDir": "/", // 是否忽略访问限制, 忽略访问限制时可以强制访问java中的私有方法. "ignoreAccessLimit": false, // 初始化脚本列表, 下面填脚本名, 并且脚本文件得在rootDir中寻找的到. "initialization": [ { "file": "test.lua", "autoReload": false, // depends plugin name "depends": [] } ] } } }DEVJun 26, 2025
Similar projects
Plugin →Let Me Despawn
Improves performance by tweaking mob despawn rules. Say bye to pesky unintentional persistent mobs.
25MSueta
JourneyMap
Real-time map used for mapping in-game or your browser as you explore.
14.7MSueta
Emotecraft
Create your own emotes in Minecraft.
7.5MSueta
Simple Tpa
A simple tpa plugin which sends requests
5.4MSueta
Common Network
Forge and Fabric Unified Networking Solution
3.9MSueta
Set Home
A lightweight plugin for players to set their homes.
3.8MSueta