COWMODSКаталог модов
SkBee++

ВЕРСИИ (2)

release

SkBee++ 1.1

1.1
21 авг. 2026 г.308Minecraft: 26.1, 26.1.1, 26.1.2paper
Скачать
Что нового
# SkBee++ 1.1 This update focuses on **stability, diagnostics, and fixing issues discovered during a full stress test**. The plugin was tested on a live Paper 26.1.2 / Skript 2.16.1 server with everything from simple Java blocks to circular includes, nested `switch` statements, security violations, hot reloads, multiple module compilation, and more complex stateful Java code. ## Fixed ### Dynamic `.jv` paths no longer crash Skript Using a dynamic module path, for example inside a loop with a loop variable, could previously trigger an uncaught exception and a full Skript "Severe Error" report. SkBee++ now catches this case and reports a clean, localized error instead: ```text run jv / include jv requires a literal module path ``` ### Correct line numbers for `.jv` compilation errors Compilation errors inside `.jv` modules previously pointed to lines inside SkBee++'s generated Java wrapper. They are now translated back to the correct line in the original `.jv` file. ### Fixed `sender` inside Skript commands Java code executed from a Skript command could incorrectly receive the console as `sender`, even when the command was executed by a player. SkBee++ now correctly handles Skript's command event and resolves the actual command sender. ### Runtime errors now point to the correct script line Runtime exceptions from compiled Java code previously appeared without usable source information. Janino debugging information is now enabled, allowing SkBee++ to map runtime errors back to the original Java block line. ### More complete localization Several internal messages from the module system and Java compiler were still hardcoded in English. These messages now use SkBee++'s localization system and support both English and Russian. ## Known limitations This update also documents several behaviors discovered during testing. ### Variable Bridge scope `setVar` and `getVar` currently operate within Skript's local variable scope. Values written through the Variable Bridge do not currently behave like normal persistent Skript variables and do not survive between separate trigger executions. `/jvdebug vars` displays values tracked by SkBee++ itself rather than directly verifying Skript's variable storage. This is documented as a known limitation and will require a deliberate design decision rather than a simple bugfix. ### Janino language support SkBee++ uses Janino 3.1.12, which does not support every modern Java language feature. Currently tested unsupported features include: * Lambda expressions * Method references * Switch expressions * `var` These limitations are now documented. ### `switch` / `case` indentation Because `execute java` uses Skript's section parser, Java `case` and `default` labels require special indentation handling inside an `execute java` block. This behavior is now documented.
beta

SkBee++ 1.0

1.0
3 июл. 2026 г.56Minecraft: 26.1, 26.1.1, 26.1.2paper
Скачать
Что нового
# SkBee++ **SkBee++** is a Skript addon that lets you write and execute **real Java code directly inside your Skript scripts**. Java blocks are compiled with Janino at script parse time and executed as part of the Skript trigger — no separate plugin project, external build step, or server restart required. ## Features * **`execute java:`** — write Java code directly inside your Skript scripts. * **`.jv` modules** — move Java logic into standalone files inside Skript's `scripts/` folder. * **`include "file.jv"`** — include Java files recursively, with circular include detection. * **`run jv` / `include jv`** — execute `.jv` modules as Skript effects. * **Variable Bridge** — use `getVar` and `setVar` to exchange values between Java and Skript. * **Event bindings** — access `event`, `sender`, and context values such as `player`, `damage`, `victim`, and `attacker` when available. * **Paper/Bukkit API access** — use the API directly from your Java code. * **Compilation caching** — identical Java blocks share the same compiled class. * **Hot reload** — `/sk reload` clears the compiled class cache and rescans `.jv` modules. * **Line-mapped errors** — compilation and runtime errors are mapped back to your original script lines. * **`/jvdebug`** — inspect current bindings and Variable Bridge data. * **Localization** — English and Russian language support. ## Example ### Java inside Skript ```skript on damage: execute java: if (victim() instanceof Player) { setVar("last_damage", event.getDamage()); } ``` ### Using a `.jv` module ```skript on join: run jv "modules/welcome.jv" ``` `modules/welcome.jv`: ```java Player player = (Player) sender; player.sendMessage("Welcome back, " + player.getName()); ``` ## Requirements * **Paper 26.x+** * **Skript 2.15+** * **Java 25** ## Security `execute java` runs with full server permissions by design. It is **not a sandbox**. Only allow trusted users to edit scripts that use SkBee++. Some dangerous calls such as `System.exit`, `Runtime.halt`, and `Runtime.exit` are blocked, but SkBee++ is not intended to safely execute untrusted Java code.