EvilEngine/SIMP: Difference between revisions

m
Seil moved page SIMP to EvilEngine/SIMP
Battlepedia>Igorseabra4
(Created page with "==PLAT== This asset usually defines an entry for a moving object. ==Format== {| class="wikitable" ! Offset !! Type !! Description |- ! colspan="3" | Header |- | 0x00 || Ass...")
 
m (Seil moved page SIMP to EvilEngine/SIMP)
 
(15 intermediate revisions by 4 users not shown)
Line 1:
<onlyinclude>
==PLAT==
{{#vardefine:typeid|SIMP}}<nowiki/>
This asset usually defines an entry for a moving object.
{{#vardefine:name|Simple Object}}<nowiki/>
{{#vardefine:type|[[Entity]]}}<nowiki/>
{{#vardefine:basetype|0x0B}}<nowiki/>
{{#vardefine:games|Scooby BFBB TSSM Incredibles ROTU RatProto}}<nowiki/>
{{#vardefine:sourcecode|[https://github.com/bfbbdecomp/bfbb/blob/master/src/Game/zEntSimpleObj.h zEntSimpleObj.h]}}<nowiki/>
{{#vardefine:image|}}<nowiki/>
</onlyinclude>
{{AutoAssetInfobox}}
 
This asset usually defines an entry for a movingsimple, stationary object which may or may not be visible and collidable.
 
==Format==
SIMPs are [[Entity|entity assets]], so they start with their 0x54 byte header, then are followed by:
 
{| class="wikitable"
! Offset !! Type !! Variable !! Description
|-
| 0x54 || float || '''UnknownanimSpeed''' ||
! colspan="3" | Header
|-
| 0x000x58 || [[AssetID]]int || '''Asset IDinitAnimState'''. ||
|-
| 0x040x5C || byte || '''Asset typecollType''' || Collision type. 0x0BSet to None to disable collision and Static to forenable SIMPcollision.
 
The other types listed here do not affect SIMPs in any way, and are only used internally by a variety of entity types. Interestingly, this value is used as a bitmask during initialization, so it is possible to set multiple types at once, with Static (0x2) being the only functional type.
 
* 0 - None
* 1 - Trigger ([[TRIG]])
* 2 - Static ([[SIMP]])
* 4 - Dynamic ([[PLAT]], [[BUTN]], [[DSTR]])
* 8 - NPC ([[VIL]])
* 16 - Player ([[PLYR]])
|-
| 0x050x5D || byte || '''Number of Eventsflags'''. || Always 0
|-
| 0x060x5E || short- || '''Flags'''.- Usually 00|| 1Dpadding
|-
! colspan="34" | ButtonEvents
|-
| 0x60 || Event[numberOfEvents] || '''[[Events]]''' ||
| 0x08 || byte || isVisible
|-
| 0x09 || byte[2] || Unknown.
|-
| 0x0B || byte || isSolid
|-
| 0x0C || int || null
|-
| 0x10 || int || null
|-
| 0x14 || Vector3 || '''Rotation'''
|-
| 0x20 || Vector3 || '''Position'''
|-
| 0x2C || Vector3 || '''Scale'''
|-
| 0x38 || Vector4 || '''Color'''
|-
| 0x48 || float || '''Unknown'''
|-
| 0x4C || [[AssetID]] || '''[[MINF]]'''
|-
| 0x50 || [[AssetID]] || '''Unknown'''
|-
| 0x54 || float || '''Unknown'''
|-
| 0x58 || int || null
|-
| 0x5C || int || Solidity mode?
|-
! colspan="3" | Events
|-
| 0x60 || Event[numberOfEvents] || '''[[Events]]'''
|}
 
=== Events ===
 
{{Assets}}
{{AutoGameNavs}}
 
[[Category:Asset]]