Documentation:XP Format

List of all Uniplex fileformats here.
This article is about the encoding format. For information about entity memory data, see XP Memory Data.
...
The Extensive Package Format is a proprietary binary-based file format used by Uniplex to store information in the form of named tags and packages.
It uses a system of delimiter bytes to form a nested tree of objects, each of which may have a name and data field (or child field if a folder-type).
The format supports a number of features, such as compression, encryption, integrity checks, custom serialization formats, metadata, etc.
== Usage ==
The XP format was originally made as its own file type (*.XP), used to store core entity memory data. However, it was later repurpose to also store object/world data in LEVEL, XTT, and UXOBJ files, addon data in LNB files, and for other general-purpose organization purposes.
the XP format is semi-binary (uses all 256 characters, but still includes Safe Set characters as-is). (old terminology)
XP-Lib, a library developed by Uniplex, is made available for the handling of XP-format-based files. It is maintained and supports all features.
(idontgottalinkrn)
== Encoding ==
All XP files begin with a header, consisting of a file signature between 4 and 7 bytes long. This is followed by a 0x00 padding byte. After this, a sequence of any number of optional header properties begins.
File Signatures
Extension	Text 	Hexadecimal
.xp 	\XPb\XPc 	5C 58 50 625C 58 50 63
.level 	\LEVELb\LEVELh	5C 4C 45 56 45 4C 625C 4C 45 56 45 4C 68
.xtt 	\XTTd\XTTn 	5C 58 54 54 645C 58 54 54 6E
.xpdb 	\XPDBr\XPDBf 	5C 58 50 44 42 725C 58 50 44 42 66
.uxobj 	\UXOBJv 	5C 55 58 4F 42 4A 76
.uniplex
.ux	\UNIPLEXs 	5C 55 4E 49 50 4C 45 58 73
Other
Extensions	\XPn 	5C 58 50 6E
====== ================================= ======
After the file's header, the data tree begins. Each object consists of 3 delimiter bytes. 
An object begins with any byte between 0x92 and 0x9F, which also determines the item's type. 
for each component, the type byte (see below) is written first, followed by the item's name, then <0x90>, then the item's data / sub-items, then <0x91>. 
== Components ==
In the XP format, there are 14 types of components, using the bytes <0x92> through <0x9F>. They are listed below:
Package - A container used for storing other items inside, Can be named. Items are sorted by their literal location in the file, but some editors may mess this up.
UXC - A piece of Uniplex Code (UXC) that can be stored inside an XP file. Characters are restricted to the Safe Set, like any UXC format. Context is determined by where it is selected to run.
Rundler - A 
ImagePlex - Used to store visual information for various purposes, such as both entity memory and world data.
AudioPlex - Used to store sound-related data. Can be used for entity memory and world data, similar to ImagePlex.
Instance / Form Controller - 
Database - An array of binary data. Uses length escaping to allow for all 256 bytes to be used.
TextPlex - A file of TextPlex-encoded definition data. Used in all data types.
Experience / Vector Matrix - 
SensePlex / Particle Matrix - 
Anatlex Root Package - 
MLX - Used to store MLX data, similar to a .MLX file. Uses length escaping to allow for all 256 bytes to be used.
Number - A basic tag used for storing a single number. Has no limits and supports integer, decimal, and fractional values, negative values, and infinity.
Text - A basic tag used for storing text. Supports all bytes except for control bytes (<0x90> through <0x9F>).
== Package Format ==
== Byte Definitions ==