✦ 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].