0x0ade / FEZMod-Legacy

Kinda dead FEZ mod. Check the linked issue comment for further info.
https://github.com/0x0ade/FEZMod-Legacy/issues/5#issuecomment-341082111
MIT License
22 stars 2 forks source link

Incompatibilities between xnb_parse XML output and XmlHelper XML *put #14

Closed 0x0ade closed 9 years ago

0x0ade commented 9 years ago

Notifying @fesh0r because he created xnb_parse and knows xnb_parse the best. Maybe you can help.

XmlHelper sometimes fails to find / apply special data simply because the naming of XML attributes / nodes is not the same as the naming of the fields / properties / types of FEZ. Such an example is maptree.xml, which required this commit to make XmlHelper import the xnb_parse output.

I understand that xnb_parse's goal is to make the FEZ data human-readable, which means changes in xnb_parse should be omitted. Instead, my goal is to find most, if not all, differences between the naming conventions in the xnb_parse XMLs and FEZ's internals and patch them into XmlHelper.FindSpecialType and XmlHelper.HandleSpecialDataDeserialize.

HandleSpecialData{Pre,Post}Serialize are not important as backwards compatibility is not a goal.

Only important incompatibilities will be listed. For example, the orientation of trile instances in levels being stored as bytes is not such an incompatibility, but rather an inconvenience. On the other hand, the naming of the type attribute varies of some nodes varies between the XML files (Level XML file: Entity.Type: entityType; MapTree XML file: MapNode.NodeType: type).

Known incompatibilities:

0x0ade commented 9 years ago

As I seem to forget to update this issue, it will be closed for now. I may re-open it at a future point if someone wants to list all the incompatibilities.