SMBX Block Offsets

From Moondust Wiki
Revision as of 15:41, 20 September 2015 by Megabyte (talk | contribs)
Jump to navigation Jump to search


This is the memory map for the Block struct. This struct is not fully analysed. Any help is appreciated! Please note that the data may not be fully 100% accurate.


Block Memory
Name Memory address Memory type Description
SMBX Block+0x00 0x00 short integer Makes block slippery
SMBX Block+0x02 0x02 short integer Unknown 02
SMBX Block+0x04 0x04 short integer Unknown 04
SMBX Block+0x06 0x06 short integer Block type 2
SMBX Block+0x08 0x08 short integer Content ID related
SMBX Block+0x10 0x10 short integer Unknown 10
SMBX Block+0x0C 0x0C VB6 String, Pointer Event that triggers when block is hit.
SMBX Block+0x10 0x10 VB6 String, Pointer Event that triggers when block is destroyed.
SMBX Block+0x14 0x14 VB6 String, Pointer Event that triggers when there are no more objects in layer.
SMBX Block+0x18 0x18 VB6 String, Pointer Layer the block belongs to.
   short               Slippery;                           // 0x00 0xFFFF = yes
   short               Unknown02;                          // 0x02
   short               Unknown04;                          // 0x04
   short               BlockType2;                         // 0x06
   short               ContentIDRelated;                   // 0x08
   short               Unknwon10;                          // 0x0A
   VB6StrPtr           pHitEventName;                      // 0x0C
   VB6StrPtr           pDestroyEventName;                  // 0x10
   VB6StrPtr           pNoMoreObjInLayerEventName;         // 0x14
   VB6StrPtr           pLayerName;                         // 0x18
   short               IsHidden;                           // 0x1C
   short               BlockType;                          // 0x1E
   Momentum            mometum;                            // 0x20
   short               ContentsID;                         // 0x50
   short               BeingHitStatus1;                    // 0x52
   short               BeingHitTimer;                      // 0x54
   short               BeingHitStatus2;                    // 0x56
   short               Unknown58;                          // 0x58
   short               IsInvisible2;                       // 0x5A
   unsigned short      IsInvisible3;                       // 0x5C (todo: verify!)
   short               Unknown5E;                          // 0x5E
   short               Unknown60;                          // 0x60
   short               Unknown62;                          // 0x62
   short               Unknown64;                          // 0x64
   short               Unknown66;                          // 0x66