Meta - VoyVivika/shapeshift GitHub Wiki

Meta is a feature introduced in Shapeshift 2.3

Meta is data that is appended to the end of an SGRM file.

All Meta Data must always begin with [meta] at the start of the data to signal to the loader that Meta Data is now being read.

While developers may modify the Loader and make use of their own format or an existing format and are encouraged to if they so need or desire, The Shapeshift Loader comes with it's own format for storing, and reading meta data.

Going Forward for consistency sake we'll refer to this default format as "Default Meta Format" for the Format Itself and "Default Meta Data" for the Data Stored within the Format. These will be abbreviated.

Default Meta Format

DMF is a Very Basic Text Based Data Format Designed Very Specifically for Clickteam Fusion 2.

DMF relies on Line Breaks/New Lines, it reads each line of text sequentially and will sequentially ignore each character of the Meta Line

DMF is intended to be Read Only.

Data Types

DMF has 3 Data Types

  • Groups
  • String
  • Value
  • Comments

Variables are stored sequentially within a "DMF Group" Object. Each Type of Data Requires it's own line.

Groups

DMF has a concept of "groups", groups are signals of hierarchy. > is the signal to the loader of a group and < ends the group. Groups can also contain more groups.

Groups are each their own Instance of the "DMF Group" Object, the First Alterable String is the name of the Group, the Second Alterable String is the Preceding Group.

In Order to Avoid Instances of Multiple DMF Group Objects having the same names and the same subgroups, it is Highly Encouraged that Group Names Be Unique. This is a limitation of the method in which data is stored at runtime in DMF.

Strings

Strings contain text, objects such as dummys contain an abundance of strings. Strings are signaled with s'.

There is a Maximum of 16 Strings Per Group.

Values

Values contain integers or floats. Values are signaled with v'. There is a Maximum of 16 Values Per Group.

Comments

Comments are not stored in the DMF Group Object. They are purely a tool for development and easy of understanding

Comments are signaled with //

Example DMF

[meta]
>group
   >subgroup
      //example comment
      //example string
      s'string
      //example value
      v'276
      //example float
      v'52.34
      //and now we exit the groups
   <
<