Mods
Resource Packs
Data Packs
Modpacks
Shaders
Plugins
Mods Resource Packs Data Packs Plugins Shaders Modpacks
Get Modrinth App Upgrade to Modrinth+
Sign in
ModsPluginsData PacksShadersResource PacksModpacks
Sign in
Settings
JsonPatcher

JsonPatcher

A tool for patching minecrafts json files, without overrding them, using a custom DSL

5,461
8
Library
Utility

Compatibility

Minecraft: Java Edition

1.21.x
1.20.6
1.20.4
1.20.1–1.20.2

Platforms

Fabric
Quilt

Supported environments

Client-side
Server-side
Client and server

90% of ad revenue goes to creators

Support creators and Modrinth ad-free with Modrinth+

Links

Report issues View source Visit wiki Join Discord server

Creators

MattiDragon
MattiDragon Owner

Details

Licensed MIT
Published last year
Updated 2 months ago
DescriptionChangelogVersions

Show all versions

v2.0.0-beta.4 [1.21.1]

by MattiDragon on Mar 28, 2025
Download
  • Fixed crash when loading global patches
  • Minor tweaks to generated class names to reduce crashing
  • When throw_on_failure is enabled, global patches now crash the game on failure

v2.0.0-beta.3 [1.21.1]

by MattiDragon on Mar 24, 2025
Download
  • Errors in global scripts now show up in the jsonpatcher log
    • The main log now only gets a summary
  • Updated lang module to beta 3
    • Fixed issues with resolving inner classes in reflection
  • Implemented loading of resource patches from global directory
  • Cleanup of dumping locations
  • Expose compiler error nicer

v2.0.0-beta.2 [1.21.1]

by MattiDragon on Mar 15, 2025
Download
  • Properly JiJ lang library
  • Docs are now emitted upon startup
  • Fixes to global patches
    • Files not ending in .jsonpatch are no longer loaded
    • Errors are now emitted to jsonpatcher logs, similarly to data patches
    • Entrypoints are now correctly loaded from the @init meta tag

v2.0.0-beta.1 [1.21.1]

by MattiDragon on Mar 15, 2025
Download

First beta of v2. This release has overhauled large parts of the language and not everything can be listed here.

Some highlights:

  • Replaced tree-walking interpreter with compiler for jvm bytecode
    • Noticeable performance uplift
  • Expanded standard library
    • Minor changes everywhere
    • More of the stdlib is now written in jsonpatcher code
  • Add reflection library for accessing java code
    • Locked by default to patches from mods and modpacks
    • Allows for more to be done in jsonpatcher without having to write wrappers in java
  • Global patch system for libraries and startup patches for mods and modpacks
  • Due to design limitations, metapatches now use a library instead of a global

Lots of improvements have also been done to tooling and the language server, but they will mostly be released at a later time.

v1.1.1 [1.21.1]

by MattiDragon on Oct 31, 2024
Download
  • Fix issue with sided mixin files

v1.1.0 [1.21.1]

by MattiDragon on Aug 10, 2024
Download
  • Updated to 1.21.1

v1.1.0 [1.21]

by MattiDragon on Jun 28, 2024
Download
  • Updated to 1.21
  • Use an alternative hook point in order
    • Provides better compatibility with mods reading resources outside of reloads
    • Only loads patches once per pack load
    • No longer warns when a file isn't being patched (most such cases should have been fixed anyway)
  • Renamed abort_reload_on_failure to throw_on_failure to better reflect its behaviour
  • Update language library
    • Made debug library functions that throw errors slightly cleaner
    • Added default arguments (no named arguments yet)
    • Added varargs support
    • Added objects library
    • Replaced arrays.mapped and arrays.filtered with arrays.replace and arrays.removeIf respectively
    • Added various other library functions
    • Cleaned up stack traces
    • Improved many error messages
  • Added option for metapatches to filter files using targets
  • There's now a VSCode Extension available!

v1.0.0 [1.20.6]

by MattiDragon on May 12, 2024
Download
  • Updated to 1.20.6
    • Patching is now injected slightly differently to account for the new known pack syncing and other changes to resource loading

v1.0.0-beta.4 [1.20.2]

by MattiDragon on Feb 4, 2024
Download

v1.0.0-beta.4 [1.20.1]

by MattiDragon on Feb 4, 2024
Download

v1.0.0-beta.4 [1.20.4]

by MattiDragon on Feb 4, 2024
Download
  • Fixed incompatibility with EBE by moving mixin injection earlier

v1.0.0-beta.3 [1.20.2]

by MattiDragon on Nov 25, 2023
Download
  • Updated to 1.20.2

v1.0.0-beta.3 [1.20.1]

by MattiDragon on Nov 25, 2023
Download
  • Fixed capitalisation of metapatch library

v1.0.0-beta.2 [1.20.1]

by MattiDragon on Nov 25, 2023
Download
  • Moved core language to its own project
  • Added ternary operator
  • Added option to dump patched files
  • Added metapatches
    • They are patches that don't change a file, but instead add or remove existing files
  • Added priority system for patches
  • Updated language
    • Meta tags can now be empty, will be interpreted as null
    • String keys are now supported in objects
    • Support negative numbers in meta tags

v1.0.0-beta.1 [1.20.1]

by MattiDragon on Nov 15, 2023
Download

Initial release on modrinth

Modrinth is open source.

main@bd61f5d

© Rinth, Inc.

Company

TermsPrivacyRulesCareers

Resources

SupportBlogDocsStatus

Interact

Discord X (Twitter) Mastodon Crowdin
Get Modrinth App Settings
NOT AN OFFICIAL MINECRAFT SERVICE. NOT APPROVED BY OR ASSOCIATED WITH MOJANG OR MICROSOFT.