Compatibility
Minecraft: Java Edition
Platforms
Tags
Creators
Details
{Kode}
Script your server without writing Java.
🌐 Website • 📖 Documentation • 🖱️ Visual Scripter • 💬 Discord
★ Don't want to type? Script visually in your browser — no install needed! ★
→ Open the Visual Scripter at kode.viirless.net/scripter ←
Drag nodes · Connect them · Download your .kode file · Done.
What is Kode?
Kode is a plain-text scripting plugin for Paper and Spigot 1.21+. Drop a .kode file into plugins/Kode/scripts/, run /kode reload, and your script goes live — no Java, no compilation, no server restarts.
Whether you want a simple join message, a full coin economy, or custom level rewards — Kode handles it all in a clean, Python-like syntax that anyone can learn in minutes. And if typing isn't your thing, the free Visual Scripter on the website lets you build scripts by dragging and connecting nodes right in your browser.
✦ Visual Scripter
No code? No problem. The online Visual Scripter at kode.viirless.net/scripter is a full drag-and-drop node editor:
- Drag events, actions, variables, and control-flow nodes onto the canvas
- Wire them together with a click
- Hit Generate Script and download your finished
.kodefile - Free, runs in any browser, no account or install required
Event: PlayerJoin ──→ Send Message: "&aWelcome, {player.name}!"
└──→ Give Item: bread × 4
└──→ Title: "&6Welcome!"
Command: /kit ──→ Give Item: iron_sword × 1 ──→ Play Sound: BLOCK_CHEST_OPEN
Features
- 🖱️ Visual Scripter – Build scripts online by dragging nodes — no typing required. Try it free
- ⚡ Hot Reload – Edit any
.kodefile and run/kode reload. Changes go live instantly with zero restarts - 🎮 Custom Commands – Define
/kit,/balance, or any slash command with acommand /name:block. No plugin.yml needed - 🔒 Command Permissions – Lock any command behind a permission node with
[permission: myserver.use]. Set a custom denial message with[no-permission: "&cAdmins only!"] - ⏱️ Command Cooldowns – Add per-player cooldowns to any command with
[cooldown: 60](seconds) - 📦 Persistent Storage – Save and load data across restarts with
storeandload. Per-player balances, visit counters — all built in - 🔁 Full Control Flow –
if/else,while,for,switch/case,try/catch,break,continue— a complete language - 🧩 Functions – Define reusable functions with parameters and return values. Namespace them across scripts
- 📡 30 Events – React to PlayerJoin, BlockBreak, EntityDeath, PlayerInteract, FurnaceSmelt, EntityDamageByEntity, and more — with optional entity type filters
- 🔣 Built-in Functions – String, math, and server functions:
len,contains,replace,random,round,pow,online(),world(),hasPermission(), and more - 🌍 World Control – Set player game mode (
gamemode creative), world weather (weather clear), and world time (time day) directly from scripts - 🔗 Plugin Interop – Call EssentialsX, Vault, or any other plugin with
execute(as player) orconsole(as server) - ✨ Custom Events – Scripts can talk to each other with
emitandon customEvent: - 📝 No Java Required – Completely standalone. No API knowledge, no build tools, no IDE
Quick Example
Welcome players and reward milestones
on PlayerJoin:
send "&aWelcome back, player.name!" to player
load $visits from visits_player.name
set $visits = $visits + 1
store visits_player.name $visits
set $count = online()
send "&7There are &e$count&7 players online." to player
if $visits == 1:
give player diamond 1
send "&bFirst visit reward: 1 Diamond!" to player
Locked command with custom denial message and cooldown
command /daily [permission: myserver.daily] [no-permission: "&cYou can't claim daily rewards."] [cooldown: 86400]:
give player diamond 3
give_xp 500
send "&aDaily reward claimed! See you tomorrow." to player
World control — admin commands
command /day [permission: myserver.time]:
time day
weather clear
send "&eThe sun rises!" to player
command /gmc [permission: myserver.gmc]:
gamemode creative
send "&aCreative mode enabled." to player
Level milestone rewards
on PlayerLevelChange:
switch player.level:
case 10:
give player iron_sword 1
send "&7Level 10 reward: Iron Sword!" to player
case 25:
give player diamond_sword 1
broadcast "&bplayer.name reached Level 25!"
case 50:
give player netherite_sword 1
broadcast "&5player.name reached Level 50!"
Installation
- Download
kode-1.4.1.jarand drop it into yourplugins/folder - Start or restart your server
- Kode creates
plugins/Kode/scripts/and installs example scripts automatically - Edit or create
.kodefiles, then run/kode reload - Or visit kode.viirless.net/scripter to build scripts visually and download them
That's it. No configuration required to get started
Commands & Permissions
/kode reload— Reload all scripts from disk/kode run <name>— Manually execute a script's top-level block/kode list— List all loaded scripts
Alias: /kd — Permission: kode.use (default: OP)
Requirements
- Java 17 or newer
- Paper or Spigot 1.21.1+
- ❌ Not supported: CraftBukkit, Forge, Fabric
Resources
- 🌐 Website — Full landing page with feature overview
- 🖱️ Visual Scripter — Build scripts online with drag-and-drop nodes
- 📖 Documentation — Complete reference: variables, events, actions, functions, examples
- 💬 Discord — Get support, share scripts, and suggest features
© 2026 Kode. All rights reserved. Redistribution, resale, or re-release of this software in original or modified form is strictly prohibited.


