The March sale is here! Save 50% on select products now through March 21.

Kantan AutoJSON

Kantan Dev - Code Plugins - May 9, 2018
8
4.88 out of 5 stars(8 ratings)
  • 88%
  • 13%
  • 0%
  • 0%
  • 0%

Automated single-node conversion between Blueprint types and JSON. Works with any Blueprint/class, struct, array, map or set.

  • Supported Platforms
  • Supported Engine Versions
    4.17 - 4.27
  • Download Type
    Engine Plugin
    This product contains a code plugin, complete with pre-built binaries and all its source code that integrates with Unreal Engine, which can be installed to an engine version of your choice then enabled on a per-project basis.

Kantan AutoJSON provides Blueprint nodes for converting data between UE4 types and JSON. It harnesses the UE4 property system to create mappings automatically so there is no need for direct JSON manipulation. Simply wire up any object, struct or container (array, map, set) to a single node and the plugin will map the data to, or import from, an equivalent JSON representation.


Possible use cases:

  • Initialization of data-driven systems (the JSON representation is very intuitive; to author data directly, simply ensure the JSON field keys match the UE4 variable names of your struct/class).
  • Runtime saving/loading of game state.
  • Custom networking code.
  • Design time editor scripting with Blutilities, such as asset generation and procedural level building.


LIMITATIONS AND NOTES:

  • This plugin does not provide any low level JSON manipulation nodes, but converts to/from JSON text in a single operation. Any further composition/modification of the JSON would require another plugin or solution.
  • Since Blueprint is statically typed, it is assumed you always know in advance the structure of the JSON data you want to load. As such, dynamic creation of objects from JSON is not supported - you must have an existing object, which you plug into the Deserialize node, and will then be populated with the JSON data.
  • Recursive serialization of sub-object properties is currently not supported. For example, if serializing an actor, properties on its components will not be included (though you can of course explicitly serialize components yourself if needed).

Technical Details

Features:

  • Two way conversion between Blueprint types and JSON text.
  • Custom nodes allow any compatible variable to be plugged in. The plugin works out the equivalent JSON format based on the wired in variable.
  • Can automatically serialize any object, struct, array, set, or map with a string/name key. Multiple layers of nesting is automatically handled, with the exception of instanced sub-objects.
  • Variables within a class/struct can optionally be filtered from serialization by use of the Transient/SaveGame flags.
  • Custom serializers can be added by the user (in C++) if more control is needed.
  • Provides simple utility nodes for reading/writing text from/to file.


Code Modules:

AutoJson (Runtime)

AutoJsonCustomNodes (Developer)

AutoJsonEditor (Editor)


Network Replicated: N/A


Supported Development Platforms: Windows

Supported Target Build Platforms: Windows, Android


Node Reference | User Guide