Releases: CommunityPokeOrg/minecraft-lua-map-maker
Release list
v0.4.0-vscode — LuaMap Tools for VS Code (preview)
Preview of LuaMap Tools for VS Code — the new supported IDE path, from the unmerged vscode-extension branch (commit b1cef12). Replaces the IntelliJ plugin workflow (which is deprecated but retained).
Features
- Status-bar badge (Connected / Connecting / Error / Disconnected) + activity-bar sidebar: session actions, live NPC inspector (
npc.list()), script list/runner. - Commands:
LuaMap: Connect / Disconnect / Reconnect / Run Script / Evaluate Lua / Query Block(defaults127.0.0.1:25575). - Eval console in the
LuaMapoutput channel;world.getblock(x,y,z)queries; Lua autocomplete + snippets forworld.*,npc.*,player.*. - Auto-reconnect (~1.5 s) and configurable status polling; all socket I/O is async.
Install
code --install-extension luamap-vscode-0.4.0.vsix (or Extensions → ⋯ → Install from VSIX), start the game with --bridgePort 25575, then LuaMap: Connect.
Tests: 14/14 node:test suites green (NDJSON framing, id-matched pipelining, connect/drop/reconnect, status/NPC/block/error replies). Extension UI itself unexercised headless.
v0.3.2-toolwindow — live LuaBridge tool window (preview)
Preview build of the LuaMap IntelliJ plugin with the live LuaBridge tool window (from the unmerged tool-window branch, commit 648edf6). Not a main release — install for early testing of the panel.
What's in it
- Connection bar: host (default 127.0.0.1) / port (default 25575), Connect / Disconnect / Reconnect, status badge (Connected / Connecting / Error / Disconnected).
- Auto-reconnect + 2 s status polling; all socket I/O off the EDT.
- NPC inspector (
npc.list()→ name/x/y/z table),world.getblockquery, script list + Run, eval console. - plugin.xml:
since-build="241", nountil-build(accepts IDEA 2024.1 → 2025.3 and later). Note the plugin's internal version is still 0.1.2 pending the release-line bump — the zip is renamed-toolwindowto make the provenance obvious.
Install
Settings → Plugins → ⚙ → Install Plugin from Disk → luamap-idea-plugin-0.3.2-toolwindow.zip (IDEA 2024.2+, incl. 2025.3), or java -jar luamap-launcher.jar --setup-ide for a managed IDE. Then start the game with --bridgePort 25575 and open the "LuaMap" tool window → Connect.
Build: :ide-plugin:unitTest 11/11 green; verifyPluginXml passed; packaged since-build/until-build verified in the jar.
v0.3.1 — Plugin accepts IntelliJ 2025.3 (build 253)
Critical fix: the v0.3.0 plugin ZIP carried until-build="253.*"'s predecessor bound (242), so IDEA 2025.3 refused to install it.
What's fixed
- Packaged
plugin.xmlis now<idea-version since-build="241" />— nountil-build, so the plugin loads on IDEA 2024.1 through 2025.3 (build 253.*) and all future releases. - Plugin now compiles against the unified IDEA 2025.3 distribution (
ideaIU; JetBrains stopped publishing a separateideaICarchive at 2025.3) with a JDK 21 toolchain, while emitting Java 17 bytecode for JBR 17 IDEs. - New packaging guards wired into
check:verifyLauncherJar(opensluamap-launcher.jar, assertsbundled-plugins/luamap-idea-plugin.zip+bundled-mods/luamap-*.jar, then opens the nested zip) andverifyPluginXml(assertssince-build="241"and nountil-buildin the packaged plugin.xml). fatJar pins the exact plugin zip version.
Install the plugin
- Easiest:
java -jar luamap-launcher.jar --setup-idethen--ide— provisions IDEA 2025.3 and installs the bundled plugin automatically. - Or: Settings → Plugins → ⚙ → Install Plugin from Disk →
luamap-idea-plugin-0.3.1.zip.
Assets
luamap-launcher.jar— standalone launcher (bundles mod 0.3.1 + plugin zip)luamap-0.3.1.jar— mod jar (Fabric 1.20.4, Java 17, LuaBridge + npc.* API)luamap-0.3.1-sources.jarluamap-idea-plugin-0.3.1.zip— IDE plugin*.sha256— checksum for every artifact
Build: ./gradlew clean build — 62 tests green, both packaging checks ran.
v0.3.0 — Managed IDE (--setup-ide / --ide)
One-command IDE setup on top of the LuaBridge ecosystem release.
What's new
java -jar luamap-launcher.jar --setup-ideprovisions IntelliJ IDEA Community under.luamap/ide/(JetBrains releases API, sha256 + size verified, retries,.donemarker) and installs the LuaMap plugin — bundled inside this launcher jar (GitHub release asset +.sha256fallback when absent).--ideprovisions then launches the IDE;--idePath DIRinstalls the plugin into an existing IntelliJ. Neither starts the game.- All existing behavior intact: game boot,
--server,--bridgePort N, managedjavahomeJava 17.
Ecosystem quick-test
java -jar luamap-launcher.jar --setup-ide # once — reports .luamap/ide path
java -jar luamap-launcher.jar --server --bridgePort 25575 # game + bridge
# then run the IDE from .luamap/ide/ideaIC-*/.../bin/idea.sh and use a
# "LuaMap Script" run configuration (port 25575) to live-run .lua scripts
Assets
luamap-launcher.jar— standalone launcher (bundles mod 0.3.0 + plugin zip)luamap-0.3.0.jar— mod jar (Fabric 1.20.4, Java 17, LuaBridge)luamap-0.3.0-sources.jarluamap-idea-plugin-0.3.0.zip— Settings → Plugins → Install from Disk (IDEA 2024.2.5+)*.sha256— checksums for each artifact
Tests: ./gradlew clean build — 62 green (mod+bridge+launcher, incl. IDE provisioning, platform mapping, plugin install, archive safety).
v0.2.0 — LuaBridge + IDE plugin
Dev-tooling ecosystem release: LuaBridge debug bridge + IntelliJ plugin scaffold.
What's new
- LuaBridge: localhost-only ndjson/JSON socket bridge embedded in the mod (ops:
eval,run,reload,list,status). Enable with--bridgePort 25575orport=25575inluamap-bridge.properties. Spec:docs/luabridge.md. - LuaMap Tools IntelliJ IDEA plugin:
.luamapfile type,world.*/player.*/npc.*completion + API-word highlighting, "LuaMap Script" run configuration that talks to LuaBridge, gutter run marker, tool-window stub. Targets IDEA 2024.2.5+. - Launcher: new
--bridgePort Nflag forwarded to the client/server JVM.
Assets
luamap-launcher.jar— standalone launcher (auto-provisions Java 17, includes mod 0.2.0)luamap-0.2.0.jar— mod jar (Fabric 1.20.4, Java 17); includes LuaBridgeluamap-0.2.0-sources.jar— sourcesluamap-idea-plugin-0.2.0.zip— install via Settings → Plugins → Install from Disk
Quick test
java -jar luamap-launcher.jar --bridgePort 25575 # or --server --bridgePort 25575
# in IDEA: Run → "LuaMap Script" config (script name + port 25575), or nc 127.0.0.1 25575
{"v":1,"id":1,"op":"eval","code":"chat('hi'); return 1"}
Tests: ./gradlew build — 48 green; :ide-plugin:buildPlugin green.
v0.1.2 — npc.* API + ai_server_sim
Lua Map Maker v0.1.2 — AI server simulator + npc.* API.
Highlights
npc.*Lua API — spawn simulated players as real fake-player entities (visible in the tab list).npc.spawn/exists/remove/removeAll/list/count/pos/moveto/look/say.ai_server_sim.luabundled example — 8 NPCs with roles (wanderer, miner, builder, farmer, greeter, guard, trader) that wander, run world-editing tasks, chat publicly, converse with each other, and greet real players. Deterministic, step-based: each/luamap run ai_server_simadvances the sim 40 steps; NPCs and step count persist across runs.
Quick start
java -jar luamap-launcher.jar # client
java -jar luamap-launcher.jar --server # headless dedicated server
In game or at the server console: /luamap run ai_server_sim (re-run to advance). Reset: /luamap eval npc.removeAll().
Also included from v0.1.1: launcher manages its own javahome/ (auto-provisions Temurin Java 17 for the game, never system Java) — run the jar with any Java 17+ to bootstrap.
Assets
luamap-launcher.jar— one-file launcher; bundles the mod, provisions Java 17 + Minecraft 1.20.4 + Fabric automatically.luamap-0.1.2.jar— the mod jar alone (drop into a Fabric 1.20.4 mods/ folder with Fabric API 0.97.2+).
Requirements: Java 17+ to run the launcher. Minecraft 1.20.4, Fabric Loader 0.16.9, Fabric API 0.97.2+1.20.4.
v0.1.1 — managed Java 17 runtime
Launcher now resolves its own jar directory and manages a Java 17 runtime in javahome/ (auto-downloads Temurin JRE 17 for macOS/Linux/Windows, x64 + ARM64 where available). Minecraft always launches on the managed Java 17 — newer system JDKs (e.g. Java 26 / class version 70) can no longer break Fabric. Default game dir moved to /luamap-run. Run: java -jar luamap-launcher.jar (or --server for headless).
v0.1.0 — Lua Map Maker MVP
Single-file launcher: java -jar luamap-launcher.jar (Java 17+). Headless: --server. See README for the Lua API.