EvilEngine/SIMP: Difference between revisions

From Heavy Iron Modding
Content added Content deleted
No edit summary
m (Seil moved page SIMP to EvilEngine/SIMP)
 
(4 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<onlyinclude>
{{AssetInfobox
{{#vardefine:typeid|SIMP}}<nowiki/>
|subtitle=Simple Object
{{#vardefine:name|Simple Object}}<nowiki/>
|type=[[Placeable]]
{{#vardefine:type|[[Entity]]}}<nowiki/>
|objectid=0x0B
{{#vardefine:basetype|0x0B}}<nowiki/>
|games=Night of 100 Frights<br>Battle for Bikini Bottom<br>The SpongeBob SquarePants Movie<br>The Incredibles<br>Rise of the Underminer}}
{{#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 simple, stationary object which may or may not be visible and collidable.
This asset usually defines an entry for a simple, stationary object which may or may not be visible and collidable.


==Format==
==Format==
SIMPs are [[Placeable Asset|placeable assets]], so they start with their 0x54 byte header, then are followed by:
SIMPs are [[Entity|entity assets]], so they start with their 0x54 byte header, then are followed by:


{| class="wikitable"
{| class="wikitable"
Line 40: Line 45:


{{Assets}}
{{Assets}}
{{AutoGameNavs}}


[[Category:Asset]]
[[Category:Asset]]

Latest revision as of 22:53, 15 September 2022

SIMP
Simple Object
TypeEntity
Base Type0x0B
Games usedNight of 100 Frights

Battle for Bikini Bottom
The SpongeBob SquarePants Movie
The Incredibles
Rise of the Underminer

Ratatouille Prototype
Source codezEntSimpleObj.h

This asset usually defines an entry for a simple, stationary object which may or may not be visible and collidable.

Format

SIMPs are entity assets, so they start with their 0x54 byte header, then are followed by:

Offset Type Variable Description
0x54 float animSpeed
0x58 int initAnimState
0x5C byte collType Collision type. Set to None to disable collision and Static to enable collision.

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.

0x5D byte flags Always 0
0x5E - - padding
Events
0x60 Event[numberOfEvents] Events

Events