Because i can compile script with some dummy data, but restore it in another application with another offsets.
Example.
Compile with
Application1 compile and save script to bytecodestruct MyDataDummy{ int DummyA; // 0 int DummyB; // 4}RegisterObjectProperty("SomeClass","uint A",offsetof(MyDataDummy,DummyA)); // Saved as 0RegisterObjectProperty("SomeClass","uint B",offsetof(MyDataDummy,DummyB)); // Saved as 4Application2 restore script from bytecodestruct MyData{ int C; // 0 int A; // 4 int D; // 8 int E; // 12 int B; // 16 int G; // 20}RegisterObjectProperty("SomeClass","uint A",offsetof(MyData,A)); // Restored as 0, but need 4RegisterObjectProperty("SomeClass","uint B",offsetof(MyData,B)); // Restored as 4, but need 16