Kode – Visual Scripter in Plain English icon

Kode – Visual Scripter in Plain English -----

Script your server without writing Java. Featuring Visual Scripting




Released 2026-03-23

★ Script visually in your browser — no typing needed! ★
→ kode.viirless.net/scripter ←
Drag nodes · Connect them · Download your .kode file

Visual Scripter — now front and center

The Kode Visual Scripter is now prominently featured on the website. If you've never tried it — it's a free, browser-based node editor that lets you drag events, actions, and control-flow blocks onto a canvas, wire them together, and download a finished .kode file in seconds. No account, no install.

  • Drag from a palette of 30+ nodes — events, actions, variables, loops, conditionals
  • New in 1.4.x: Command node now has Permission, No-permission message, and Cooldown fields
  • New nodes: Set Gamemode, Set Weather, Set Time
  • One-click download of your finished script

Custom No-Permission Messages

You can now specify exactly what a player sees when they try to run a command they don't have access to. Add [no-permission: "your message"] alongside any [permission: ...] option.

Code (Text):

command /admin [permission: myserver.admin] [no-permission: "&cAdmins only!"]:
    send "&aAdmin panel opened." to player

command /fly [permission: myserver.fly] [no-permission: "&cBuy VIP to unlock /fly."]:
    send "&bFlight toggled!" to player

command /revive [permission: myserver.revive] [cooldown: 60] [no-permission: "&cYou cannot revive players."]:
    heal
    feed
    send "&aRevived!" to player
 
Without [no-permission] the default message You don't have permission to use this command. is used. Color codes using & are supported in the custom message.

Bug Fix — Visual Scripter drag shift

Dragging a node on the online Visual Scripter caused the canvas and the node to jump to the wrong position the moment you clicked and started moving. The root cause was an incorrect CSS position: relative on node elements — when a node was brought to the front (via DOM reorder) at drag activation, its relative-flow offset changed, producing the visible jump. Nodes are now position: absolute, so DOM order has no effect on their canvas position.

How to Update

  1. Stop your server.
  2. Replace kode-1.4.0.jar with kode-1.4.1.jar in your plugins/ folder.
  3. Start your server — no config changes needed.
  4. Add [no-permission: "..."] to any command that already has [permission: ...].

Need help? Join the Discord or visit the documentation.

Kode 1.3.0 - Actions, Functions & Bug Fixes

Released 2026-03-20

New Actions

actionbar

Display a message in the action bar — the text that appears above the player's hotbar. Perfect for HUD prompts, status indicators, and non-intrusive notifications.

Code (Text):

on PlayerJoin:
    actionbar "&aWelcome back, player.name!"

on BlockBreak:
    load $coins from coins_player.name
    actionbar "&6Coins: &e$coins"
 
heal / feed

Fully restore a player's health or hunger with a single keyword.

Code (Text):

command /heal:
    heal
    feed
    send "&aYou have been healed and fed!" to player
 
give_xp

Give a player experience points directly from a script.

Code (Text):

on BlockBreak:
    if $block_type == "diamond_ore":
        give_xp 50
        actionbar "&b+50 XP"
 
set_health / set_food

Set health or food to a precise value. Health is clamped between 0 and the player's max health. Food is clamped between 0 and 20.

Code (Text):

set_health 10
set_food 6
 
New Built-in Functions

Four new functions available anywhere an expression is valid.

  • split(str, delim, index) — Split a string by a delimiter and return the element at index (0-based). Example: split("a,b,c", ",", 1)b
  • indexof(str, search) — Return the character index of search inside str, or -1 if not found
  • isnumber(value) — Return true if value can be parsed as a number. Useful for validating command arguments
  • format(number, decimals) — Format a number to N decimal places. Example: format(3.14159, 2)3.14

Code (Text):

command /pay:
    if isnumber($arg1) == false:
        send "&cUsage: /pay <amount>" to player
        return
    set $amount = $arg1
    set $label = format($amount, 2)
    send "&6Paid &e$label coins." to player
 
New player.* Properties

  • player.optrue / false — whether the player is an operator
  • player.flyingtrue / false — whether the player is currently flying
  • player.max_health — the player's maximum health (default 20, may differ with attribute modifiers)

New Event Variables

Six events that previously had no injected variables now expose useful context:

  • PlayerSneak$sneaking (true when crouching, false when standing up)
  • PlayerSprint$sprinting (true when starting to sprint)
  • PlayerToggleFlight$flying (true when flight is being enabled)
  • PlayerRespawn$is_bed_spawn (true if respawning at a bed)
  • PlayerMove$to_x, $to_y, $to_z (destination block coordinates)
  • ProjectileHit$projectile_type, $shooter, $shooter_is_player

Code (Text):

on PlayerSneak:
    if $sneaking == true:
        actionbar "&7[Sneaking]"

on ProjectileHit:
    if $shooter_is_player == true:
        broadcast "&e$shooter fired a $projectile_type!"
 
Bug Fixes

  • move action now works — The move action was parsed but never executed (silent no-op). It now correctly moves the player relative to their current position: move 0 1 0 lifts the player 1 block up.
  • Storage write errors are now logged — If storage.yml could not be saved (e.g. disk full, permissions error), the failure was silently discarded. Kode now logs a warning so server admins can diagnose data-loss issues.

How to Update

  1. Stop your server.
  2. Replace kode-1.2.1.jar with kode-1.3.0.jar in your plugins/ folder.
  3. Start your server — no config changes needed.

Need help? Join the Discord or visit the documentation.

Kode 1.2.0 — New Features Update

Released 2026-03-17

New Features

Built-in String & Math Functions

Call these directly in any expression — no define block needed. Works in set, if, send, and anywhere else an expression is valid.

String: len, upper, lower, trim, substr, replace, contains, startswith, endswith
Math: abs, floor, ceil, round, min, max, sqrt, pow, random

cancel_event Action

Cancel the Bukkit event that triggered your script — block breaks, chat messages, item pickups, and more. Works with any cancellable event. Alias cancelevent also works.

potion Action

Apply a potion effect directly from a script. Syntax: potion EFFECT [duration] [amplifier] — duration in ticks (20 = 1s), amplifier starts at 0 (level I).

New player.* Properties

  • player.food — food level (0–20)
  • player.exp — total experience points
  • player.ping — connection latency in milliseconds
  • player.uuid — player UUID string

10 New Events

Kode now supports 30 events total.

New player events:
  • PlayerInteract — right/left-click a block or air. Variables: action, block_type
  • PlayerDropItem — player drops an item. Variable: item
  • PlayerGameModeChange — gamemode changes. Variables: gamemode, old_gamemode
  • PlayerBedEnter — player enters a bed
  • PlayerFish — fishing rod used. Variable: state (e.g. caught_fish, fishing)
  • PlayerConsume — player eats or drinks. Variable: item

New entity/world/inventory events:
  • EntityDamageByEntity — entity damages another. Variables: damage, attacker_type, attacker_name, attacker_is_player
  • Explode — entity explodes (TNT, creeper, etc.)
  • FurnaceSmelt — item finishes smelting. Variables: input, result
  • CraftItem — player crafts an item. Variable: item

Entity Type Filters

All entity events now support an optional type filter using bracket syntax, e.g. on EntityDeath[Zombie]. The block only runs when the entity matches.

New entity.* Properties

  • entity.type — entity type (e.g. zombie, creeper)
  • entity.name — custom name, falls back to entity type
  • entity.health — current health
  • entity.world, entity.x, entity.y, entity.z — position

How to Update

  1. Stop your server.
  2. Replace kode-1.1.0.jar with kode-1.2.0.jar in your plugins/ folder.
  3. Start your server — no config changes needed.

Need help? Join the Discord or visit the documentation.
----------, Mar 18, 2026

Kode 1.1.0 — Bug Fix Update

Released 2026-03-17

Bug Fixes

  • Fixed blank lines breaking if/else blocks — Blank lines and comment lines inside if, else if, and else blocks no longer cause the parser to exit the block early or throw errors.
  • Fixed blank lines breaking switch/case blocks — Same fix applied to switch statements; blank lines between cases are now handled correctly.
  • Fixed blank lines breaking try/catch blocks — Blank lines inside try and catch bodies no longer interrupt parsing.
  • Fixed variable substitution in math expressions — Math operations such as set $x = $a + $b now correctly resolve all variable references before evaluating, preventing incorrect results when variables contained complex values.

What Was Happening

Scripts that used blank lines between statements inside control-flow blocks (which is natural when writing readable code) could silently fail or produce wrong results. This update adds a blank-line skip step at the start of every block-parsing loop so that whitespace and comment-only lines are always ignored correctly.

How to Update

  1. Stop your server.
  2. Replace kode-1.0.0.jar with kode-1.1.0.jar in your plugins/ folder.
  3. Start your server — no config changes needed.

Need help? Join the Discord or visit the documentation.
----------, Mar 17, 2026

Resource Information
Author:
----------
Total Downloads: 9
First Release: Mar 16, 2026
Last Update: Yesterday at 2:05 PM
Category: ---------------
All-Time Rating:
0 ratings
Find more info at kode.viirless.net...
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings