Mod
JsonWrangler
No reviews yet
A tool for all your JSON-modifying needs
Does not follow a specific thematic focus apart from vanilla Minecraft.
Used for mods with little to no gameplay elements.
Provides tools specifically for customizing modpacks.
Provides a framework or library for other mods to use.
Community voices
Reviews
Click once to include, again to exclude, again to clear
No reviews yet. Be the first to review this project!
Get it on
Available Platforms
Compatibility
Supported Environments
About
Project Details
For authors
Embed Badge
If you're the author of this project, you can embed a live badge anywhere that supports HTML or Markdown. It updates automatically whenever ratings change.
Use HTML for any page that supports it, or Markdown for README files and Markdown-based descriptions.
Identifiers
Platform IDs
About
Description
JsonWrangler
A tool for all your JSON-modifying needs
Quilt version requires: QSL and GroovyDuvet
Forge version requires: GML
JsonWrangler is a Minecraft mod which allows for the modification of game data and resources, as stored in JSON files, through groovy scripts which can be packaged in resource or data packs.
Usage
JsonWrangler should allow modification of basically any JSON file with a "winner takes all" behavior - for instance,
loot tables, models, worldgen data, or animation metadata files. If JsonWrangler fails to wrangle a file that you think
it should, please submit a bug report. If you wish to modify a file at a given path, say,
assets/minecraft/textures/block/magma.png.mcmeta or data/minecraft/loot_tables/chests/simple_dungeon.json, you
should create a groovy script at same path, but with a .groovy at the end - in this case,
assets/minecraft/textures/block/magma.png.mcmeta.groovy or data/minecraft/loot_tables/chests/simple_dungeon.json.groovy.
Inside of your groovy script, you are given several arguments, and must return a value which will replace the original
JSON file. Valid values to return include maps, where map keys must be strings and values may be
lists, maps, numbers, booleans, strings, or dates. In addition to normal groovy features, You have the following
variables at your disposal inside your script:
json- the original JSON file, parsed into a mapplatform- either"quilt"or"forge", depending on which platform you are running onoverride- a method which, if called, will cause any further scripts attempting to modify the same file to not run
Multiple scripts in different datapacks or resource packs can target the same file - they are ran in order from highest
priority (the "top" pack) to lowest priority (the "bottom" pack). If a script calls override(), no further scripts
will run.
Servers
Note: As the groovy scripts that JsonWrangler loads can execute arbitrary code, JsonWrangler will not load scripts from server resource packs. If you wish to load scripts from a server resource pack, you will have to copy it as a local resource pack first.
Examples
For examples, see the README: https://github.com/lukebemish/JsonWrangler#readme
JsonWrangler
A tool for all your JSON-modifying needs
Quilt version requires: QSL and GroovyDuvet
Forge version requires: GML
JsonWrangler is a Minecraft mod which allows for the modification of game data and resources, as stored in JSON files, through groovy scripts which can be packaged in resource or data packs.
Usage
JsonWrangler should allow modification of basically any JSON file with a "winner takes all" behavior - for instance,
loot tables, models, worldgen data, or animation metadata files. If JsonWrangler fails to wrangle a file that you think
it should, please submit a bug report. If you wish to modify a file at a given path, say,
assets/minecraft/textures/block/magma.png.mcmeta or data/minecraft/loot_tables/chests/simple_dungeon.json, you
should create a groovy script at same path, but with a .groovy at the end - in this case,
assets/minecraft/textures/block/magma.png.mcmeta.groovy or data/minecraft/loot_tables/chests/simple_dungeon.json.groovy.
Inside of your groovy script, you are given several arguments, and must return a value which will replace the original
JSON file. Valid values to return include maps, where map keys must be strings and values may be
lists, maps, numbers, booleans, strings, or dates. In addition to normal groovy features, You have the following
variables at your disposal inside your script:
json- the original JSON file, parsed into a mapplatform- either"quilt"or"forge", depending on which platform you are running onoverride- a method which, if called, will cause any further scripts attempting to modify the same file to not run
Multiple scripts in different datapacks or resource packs can target the same file - they are ran in order from highest
priority (the "top" pack) to lowest priority (the "bottom" pack). If a script calls override(), no further scripts
will run.
Servers
Note: As the groovy scripts that JsonWrangler loads can execute arbitrary code, JsonWrangler will not load scripts from server resource packs. If you wish to load scripts from a server resource pack, you will have to copy it as a local resource pack first.
Examples
Changing the texture of an item
Placing the following file at assets/minecraft/models/item/apple.json.groovy will change the texture of the apple to
use the potato texture:
json?.textures?.layer0 = 'minecraft:item/potato'
return json
Screenshots
Gallery
Versions
Files
Relations
Project Relations
More like this
Similar Mods
Suggestions use data such as tags, dependencies, dependents, descriptions, titles, and more to rank how much they overlap with this mod.
On ModDex
Community snapshot
By the numbers
Statistics
Want to reach Minecraft players?
We're looking for a server hosting partner to feature here and other parts of the site. Interested? Send us a message!
Get in touchGet it on
Available Platforms
On ModDex
Community snapshot
By the numbers