Skip to content

Alpha 0.3.0

Latest

Choose a tag to compare

@Alumopper Alumopper released this 28 May 17:10
· 2 commits to main since this release

Welcome to Katton 0.3! This version could bring a major upgrade to your scripting experience with Katton! Besides more efficient APIs, we also introduced some security mechanism to our mod.

What's New

Security & Remote Script Trust

Added remote script trust pipeline for client-synced server packs.

  • Added Ed25519 signature verification for remote packs (RemoteScriptSignatureVerifier).
  • Added persistent trust store at /.katton/remote-script-trust.json (RemoteScriptTrustStore), including trusted server buckets, trusted signing keys + fingerprints
  • Remote bundle handling now: i.verifies signatures, ii.caches verified packs, iii.checks trust state, iv.only executes scripts after explicit trust. Untrusted/invalid remote scripts are rejected; client can be disconnected on signature failure.
  • Added blocking remote trust screen for unknown servers/keys with:

Signing Toolchain

Added new Gradle module :sign-plugin (top.katton.sign) with tasks:

  • generateKattonSigningKey (Ed25519 keypair generation)
  • signKattonPack (writes signature metadata into manifest.json)

Paper Platform Support

Katton now runs as a standard Paper plugin alongside the existing Fabric and NeoForge mod variants. 14 event bridge classes mirroring the Fabric/NeoForge event system, all backed by Bukkit @eventhandler listeners and converted to NMS types via PaperNmsBridge

Warning

Client APIs are NOT supported on Katton paper plugin.

Modification API

Katton now enables developers to modify some attribute of registered items or blocks in minecraft.

Managed Event System

A new abstraction layer for registering any platform-native event listener directly from scripts. Listeners are tracked by ScriptPackScope and automatically cleaned up on reload or server stop

Data Channel between Client and Server

Scripts can now send custom serialized data between client and server.

Script Config System

Script packs can define structured configuration blocks.

  • KattonConfigApikattonConfig { ... } block in scripts
  • KattonConfigManager — persistent storage and rehydration of config values
  • ScriptPackManifest — extended with a config field in manifest.json

Item Marker

Item render markers are lightweight client-side item models shown in the world. They are useful for hologram-like rewards, previews, quest targets, temporary pickups, and animated markers. Markers are not entities. They have no collision, selector target, persistence, or vanilla entity sync.

Custom Post Effects

Post effects are full-screen shader passes controlled by client scripts or by server packets. They are useful for temporary visual states such as grayscale, tint, blur, scanlines, pixelation, or a custom shader chain. Katton allows developers to create their custom post effects, and also provides a lot of presets include invert, grayscale, sepia, tint, color adjustment, vignette, chromatic aberration, pixelate, posterize, scanline, and blur.

Multi-Language support

Texts or messages in Kattonnow supports Simplified Chinese and Traditional Chinese.

UI

  • Now Katton will display a warning screen when compilation errors occur, instead of just printing them in log files.

For full change logs please refer to

Full Changelog: 0.2.0...v0.3.0


Happy coding!