.enl Engine List file format - PatPL/Generic-Engines GitHub Wiki

(This guide shows Serializer v.2, but future versions should look more or less the same. Let me know if it gets too outdated)

How Generic Engines reads .enl file?

Example list: (Color coded)

Deserializer returns the amount of bytes it took to read the engine. Engines have no length header, or any kind of null terminator. Therefore, one byte more or less in the file might break the file and cause crashes on load. Please, DO NOT EDIT THE FILE MANUALLY, BECAUSE IT MAY GET CORRUPTED.

Engine byte length and Engine byte array composition.

Every static sized property of the engine (double, int, bool) has length of the size of the property type it represents.

  • double: 8B
  • int: 4B
  • bool: 1B Properties with dynamic sizes (Lists, strings) have length of 2B + (property size * amount of properties). The 2B header specifies the amount of properties.

This image shows the length and order of various engine properties.

Contact me if you need more in depth explanation ([email protected])