mirror of https://github.com/zeldaret/mm.git
1.4 KiB
1.4 KiB
ZAPD XML specification
ZAPD XMLs use a restrictive subset of the XML standard: any ZAPD XML must be a valid XML (All elements starting with <tag> ending appropriately with </tag>, single "empty-element" tags with / at the end, etc.).
Reminder that in
<a>
<b1>
<c/>
</b1>
<b2>
<d/>
</b2>
<e/>
</a>
<b1>, <b2>, <e/> are children of <a>, but <c/> is not. <c/> is a descendent of <a> and a child of <b>.
-
Every XML's outermost element start/end tag is a single
<Root>. -
The children of a
<Root>must be<File>s. -
A
<File>has resources as children. A resource is almost always single empty-element tag, and has one of the types<Texture><Background><Blob><DList><TextureAnimation><Scene><Room><AltHeader><Animation><PlayerAnimation><CurveAnimation><LegacyAnimation><Skeleton><LimbTable><Limb><Symbol><Collision><Scalar><Vector><Vtx><Mtx><Cutscene><Array><Path><PlayerAnimationData>
-
A
<File>cannot descend from a<File>. -
All resources must be children of a
<File>. -
<Array>is the only paired resource tag enclosing an element; the element must be a single resource tag, one of<Scalar><Vector><Vtx>