Overview

BlueprintXML is a lightweight plugin that brings full XML support to Unreal Engine. You can load XML from files or strings, navigate the tree, read/write attributes and content, and save back to disk – all with simple Blueprint nodes and async operations to keep your game responsive.

Working Examples

Simple XML Loading from a file

Load XML example

Simple XML Save to file

Save XML to file example

Classes

XmlFile

A class representing an XML file. It contains a root node used to access the whole XML tree.

Methods

  • Get Last Error – Output FString – The last error that occurred for this XML file.
  • Is Valid – Output boolean – If this file has been successfully parsed and thus it's safe to access its root node.
  • Get Root Node – Output boolean (Is Valid), XmlNode (Root Node) – If this root node is valid and can be accessed.

XmlNode

A class representing an XML node (a tag).

Methods

  • Find Child Node – Input: Tag (FString) – Output: Found (boolean), Child Node (XmlNode) – The found direct child node or nullptr.
  • Get Children Node – Output: Out Nodes (TArray<XmlNode>) – All this node's direct children.
  • Get First Child Node – Output: First Child (XmlNode) – This node's first child.
  • Get Next Node – Output: Next Node (XmlNode) – The next node on the same level as this node.
  • Get Attribute – Input: In Tag (FString) – Output: Attribute (FString) – This attribute's value.
  • Get Attributes – Output: Attributes (TMap<FString>) – All the attributes of this node.
  • Get Content – Output: Content (FString) – This node's content.
  • Get Tag – Output: Tag (FString) – This node's tag.
  • Set Content – Input: Content (FString) – This node's new content.
  • Append Child Node – Input: Tag (FString), Content (FString) – The new child node's tag and content.

Custom Nodes (Async)

These nodes are asynchronous and perform the heavy operation outside of the game thread.

  • Load XML File Async – Input: File Path (FString) – Output: XmlFile – The new virtual XML file created.
  • Load XML String Async – Input: Xml String (FString) – Output: XmlFile – The new virtual XML file created.
  • Save XML File Async – Input: File to Save (XmlFile), Path (FString) – The location we want to save this file to.

Support

If you need help, have a feature request, or experience troubles, please contact us at pandores.marketplace@gmail.com