✦ FOR MODDERS: DATAPACKS & JSON-SKILLS ✦

„Bind reality according to your own imagination.“

The Stones Mod is completely data-driven. This means: You don't need a single line of Java code to create entirely new runes, passive effects, or complex spells. [cite_start]Everything runs via simple JSON files [cite: 1918-1919].

[cite_start]If you want to create a new rune, you simply place a .json file in the path data/stones/enchantments/ of your datapack [cite: 1921-1922].


1. The Governor (Performance Protection)

Before you write wild scripts, you must know the Governor. [cite_start]To prevent server crashes (StackOverflows) due to infinite chain reactions, the Mod possesses a hard Engine Cap [cite: 1150-1151].

  • [cite_start]The limit is exactly 150 Trigger actions per tick and per player[cite: 1151].
  • [cite_start]If a player reaches this limit within a twenty-centisecond, the Mod quietly aborts the action to protect the server [cite: 1160-1164].

2. Triggers (Triggers)

A RuneBehavior always requires a trigger. [cite_start]The following triggers are natively supported by the Engine [cite: 1181-1185]:

  • ON_ATTACK / ON_HURT / ON_KILL (Combat Events)
  • ON_SWING / ON_BLOCK_BREAK (Interactions)
  • ON_PROJECTILE_HIT / ON_JUMP (Movement & Ranged Combat)
  • ON_TICK (Fires permanently)
  • ON_ACTION_BUTTON (For Milestone Runes, which are placed on buttons via the inventory)

3. The Most Powerful Actions

Under "actions": [], you define what should happen. Here is an excerpt of the coolest commands available to you:

  • [cite_start]💥 stones:explode: Creates an explosion at the player (Parameters: radius, fire) [cite: 1822-1823].
  • [cite_start]💨 stones:add_velocity: Launches the player in a direction or vector position [cite: 1795-1797].
  • 👁️ stones:find_blocks: A built-in X-Ray Scanner! [cite_start]Searches for specific block tags (e.g., ores) in a radius or via Raycast and saves the coordinates [cite: 1868-1877].
  • [cite_start]⏱️ stones:delay: Executes embedded actions only after X Ticks [cite: 1780].
  • [cite_start]🔊 stones:play_sound & ✨ stones:spawn_particles: For audiovisual feedback [cite: 1837-1842].

✦ Visual Magic: The Combo System (stones:update_combo)

Want your skill to generate visual orbs that circle the player like electrons (visible even in first-person view)? [cite_start]Use this Action [cite: 890, 894-895, 1780-1787]!

  • Parameter: count (Current stacks), max (Maximum number), texture (Your Orb Sprite).
  • [cite_start]Fine-tuning: You can precisely define size, radius (Orbit), speed (Rotation speed), and even the RGBA color value (color) [cite: 1780-1787]. Whether slow shadows or racing fireballs – you have the choice.

✦ For Hardcore Modders: The Reflection Pipeline (stones:invoke)

Are standard actions not enough for you? [cite_start]With stones:invoke, you can directly call Java methods via Reflection [cite: 1798-1808]. [cite_start]You can tap into Vanilla code, pass parameters (args), overwrite fields (stones:set_field), and save the results as variables [cite: 1809-1810].