EvilEngine/MINF: Difference between revisions
Content added Content deleted
No edit summary |
EnergyDrink (talk | contribs) mNo edit summary |
||
Line 4: | Line 4: | ||
{{#vardefine:type|[[Binary]]}}<nowiki/> |
{{#vardefine:type|[[Binary]]}}<nowiki/> |
||
{{#vardefine:basetype|}}<nowiki/> |
{{#vardefine:basetype|}}<nowiki/> |
||
{{#vardefine:games|Scooby BFBB TSSM Incredibles ROTU}}<nowiki/> |
{{#vardefine:games|Scooby BFBB TSSM Incredibles ROTU RatProto}}<nowiki/> |
||
{{#vardefine:sourcecode|[https://github.com/bfbbdecomp/bfbb/blob/master/src/Core/x/xModel.h xModel.h]}}<nowiki/> |
{{#vardefine:sourcecode|[https://github.com/bfbbdecomp/bfbb/blob/master/src/Core/x/xModel.h xModel.h]}}<nowiki/> |
||
{{#vardefine:image|}}<nowiki/> |
{{#vardefine:image|}}<nowiki/> |
Revision as of 20:00, 25 June 2022
MINF | |
---|---|
Model Info | |
Type | Binary |
Games used | Night of 100 Frights Battle for Bikini Bottom |
Source code | xModel.h |
This asset defines information for enemies and NPCs. For example, they contain the asset IDs of the object's model, animations and possibly other data.
Format
Offset | Type | Description |
---|---|---|
0x00 | uint32 | Magic - MINF |
0x04 | uint32 | NumMinfReference - number of model reference entries |
0x08 | AssetID | AnimTableID - ATBL id |
0x0C | AssetID | CombatID - Always null. Not present in Scooby |
0x10 | AssetID | BrainID - only used by jellyfish_pink_bind.MINF. Not present in Scooby |
0x14 | MinfReference[NumMinfReference] | Model references |
- | MinfParam[] | Model parameters |
MinfReference
Offset | Type | Description |
---|---|---|
0x00 | AssetID | ModelID - MODL or another MINF |
0x04 | uint16 | Flags |
0x06 | uint8 | Parent |
0x07 | uint8 | Bone |
Matrix | ||
0x08 | Vector3 | Right - usually (1, 0, 0) |
0x14 | Vector3 | Up - usually (0, 1, 0) |
0x20 | Vector3 | At - usually (0, 0, 1) |
0x2C | Vector3 | Pos - usually (0, 0, 0) |
MinfParam
Offset | Type | Description |
---|---|---|
0x00 | uint32 | Param Type - a BKDR hash of the name of the parameter type |
0x04 | uint8 | Length - packed length of entry. To get the actual length of the entry (including trailing padding zeroes, but not including the 4 bytes of the param type), add 1 to this then multiply by 4. |
0x05 | string | Value - Zero-terminated string, usually representing a floating point value or a vector. |
- | uint8[] | Padding - 1 to 3 zeroes to align to 4 bytes |
Param Types
Note: the lists are possibly incomplete.
Scooby
- Parm_AttackDmgBegTime
- Parm_AttackDmgEndTime
- Parm_Bubbled_Time
- Parm_Chase_Rate
- Parm_Dazed_Time
- Parm_Detect_Height
- Parm_Detect_HeightOffset
- Parm_Detect_Radius
- Parm_DmgVert_Buttbounce
- Parm_Extend_Range
- Parm_Extend_Rate
- Parm_Extend_Time
- Parm_Extend_Width
- Parm_FOV_Angle
- Parm_Gloat_Time
- Parm_Gummed_Time
- Parm_GumVert_CustomA
- Parm_GumVert_CustomB
- Parm_GumVert_Elbow
- Parm_GumVert_LeftFoot
- Parm_GumVert_RightFoot
- Parm_Hit_Points
- Parm_Lob_Arcness
- Parm_Lob_Heaviness
- Parm_Lob_ProjectileTypeName
- Parm_Lob_Range
- Parm_Lob_Reload_Time
- Parm_Lob_Salvo
- Parm_Lob_Speed
- Parm_LOSVert_Eyeball
- Parm_MinDifficulty
- Parm_ModelScale_Base
- Parm_Move_Rate
- Parm_Pursue_Radius
- Parm_SAnim_Chase
- Parm_SAnim_Idle
- Parm_SAnim_Move
- Parm_SBound2OffsetVec
- Parm_SBound2Radius
- Parm_SBoundOffsetVec
- Parm_SBoundRadius
- Parm_SpawnMask
- Parm_Turn_Rate
- Parm_Wander_Angle
- Parm_WepVert_Attach
- Parm_WepVert_Launch
- Parm_WepVert_LaunchAlt
- Parm_WepVert_RBSwordHandle
- Parm_WepVert_RBSwordPivot
BFBB
- AlertTime
- AttackFOV
- AttackFrames01
- AttackFrames01a
- AttackFrames01b
- AttackFrames02
- AttackFrames02a
- AttackFrames02b
- AttackFrames03
- AttackFrames03a
- AttackFrames03b
- AttackPeriod
- AttackRadius
- AttackSize01
- Bogus_Share
- BoundMainCenter
- BoundMainExtent
- BoundMainIsBox
- DelayFidget
- DetectHeight
- DetectOffset
- DetectRadius
- DistShadowCast
- Empty
- EndTag_INIOnly
- EndTag_PropsOnly
- EndTag_Shared
- EsteemSlotA
- EsteemSlotB
- EsteemSlotC
- EsteemSlotD
- EsteemSlotE
- FactorAccel
- FactorDrift
- FactorElasticity
- FactorGravKnoc
- FactorMass
- FirstMovepoint
- HitPoints
- MoveSpeed
- NonRandomTalkAnims
- ScaleModel
- ShadowCacheRadius
- ShadowRasterRadius
- SoundRadius
- StunTime
- TestCount
- TurnSpeed
- VtxAttack
- VtxAttack1
- VtxAttack2
- VtxAttack3
- VtxAttack4
- VtxAttackBase
- VtxDmgFlameA
- VtxDmgFlameB
- VtxDmgFlameC
- VtxDmgSmokeA
- VtxDmgSmokeB
- VtxDmgSmokeC
- VtxExhaust
- VtxEyeball
- VtxGen01
- VtxGen02
- VtxGen03
- VtxGen04
- VtxGen05
- VtxPropel
TSSM
- BoundBone
- BoundCenter
- BoundOffset
- BoundRadius
- BoundScale
- IsBucketHead
- Shrapnel
- UseBoundingBox
Incredibles
- AboveAttackRadius
- Acceleration
- ApproachRadius
- ArmorHitPoints
- AttackRadius
- AttackTable
- BallPhysicsRadius
- BankForce
- BeepSoundGroup
- BladeBone
- BoneSpinDegreesPerSec
- BoundBone
- BoundCenter
- BoundOffset
- BoundRadius
- BoundScale
- CastShadow
- ChargeNoiseGroup
- ChargePastDistance
- ChargeTurnSpeed
- ChaseRadius
- Damage
- DeathBounce
- DeathShrapnel
- DestroyedModel
- DetectRadius
- ExhaustEffectOffset
- ExhaustEffectRadius
- ExhaustModel
- ExhaustSurface
- ExplodeTimer
- eyeBone
- EyeBoneOffset
- EyeModel
- FaceJumpDirection
- FactorAccel
- FactorDrift
- FactorMass
- FlyingNoiseGroup
- GrabBone
- GrabOffset
- GroupDelay
- GunBone
- HitPoints
- HitShrapnel
- IncrediPowerPoints
- LOSAngle
- LOSDistance
- Mass
- ME
- MinSpeed
- MoveSpeed
- MoveSpeedMult
- MPAngleBeforeMove
- MPArriveThreshold
- MPBankBlendK
- MPBankForce
- MPBeginTurnDistance
- MPOrientationBlendSpeed
- MPOrientToPath
- MPSpeed
- MPSpeedForce
- MPStopDistance
- MPVelocityBlendSpeed
- MU
- NeverHurtThings
- PauseTime
- ProjectileHitShrapnel
- Scale
- ShootAttackRadius
- ShotDelay
- ShotsInGroup
- SpeedForce
- TurnSpeed
- UpdateCullDistance
- UseBoundingBox
- WaitTime
- WeaponBone1
- WeaponModel1