MNSI:Naming Conventions

From Mischys Awesome Wiki
Jump to navigation Jump to search

This page describes all the special naming quirks MNSI uses.

Physical Material Naming

Physical Materials can have all characters in their name. The only exception is the "-" string.

Example of valid unique names;

CardboardBox_Small, ShotgunShell, Glass_Type2.

Multiple types of Physical Materials can be all instanced to a single name using the "-" to create "instances" of existing physical materials.

For example;

Default_Stone can be a physical material with sounds setup for stone impacts. But one single physical material can't account for all variations needed, like a stone surface that is more slippery. To avoid having to define multiple physical material with the same sounds in a sound library, the instancing feature can be used.

Default_Stone, Default_Stone-Slippery, Default_Stone-ReallyDense, Default_Stone-LowMass will all be treated as Default_Stone by the MNSI parser.

Sound Library Definitions

Sound libraries are a bit more complicated yet hopefully still simple to use.

Here is a basic example of a sound library with the definitions for one Physical Mateiral called "ReallyCoolWood".

PhysMat 06.JPG

Each sound library struct has 4 key-pair values.

  • "Impact_Hard_Sounds" is where Hard impact sounds are added.
  • "Impact_Soft_Sounds" is where Soft impact sounds are added.
  • "Friction_Roll_Sounds" is where looping sounds for rolling are added.
  • "Friction_Linear_Sounds" is where looping sounds for sliding are added.

They are each defined using the names of the actual physical materials and a "-" to separate them. They are either a specific definition; "Name Of Impacting Physical Material"-"Name Of Surface Hit Physical Material." OR a catchall; "Name Of Impacting Physical Material"-DEFINT

specific definition 
This is to specifically define a sound to play for specific physical material collisions. In our example, ReallyCoolWood colliding with Stone can play a different sound than ReallyCoolWood colliding with Grass. In this example the two specific definitions can look like this; ReallyCoolWood-Stone or ReallyCoolWood-Default_Stone and ReallyCoolWood-Grass
To avoid having to have a thousand definitions all using the same sound, a Catchall can be made. If MNSI sees a collision event but the physical material of the surface being hit, it will default to the Catchall, as defined using the token "DEFINT.". In Our example; ReallyCoolWood collides with a surface with a physical material that's isn't defined using a Specific Definition, it will instead play the sound loaded for the DEFINT definition.

Do note that pairs are cross checked.

If ReallyCoolWood-Default_Stone key pair isn't found MNSI will also try looking for Default_Stone-ReallyCoolWood.

It is possible to load different sounds for Wood colliding with stone, and Stone colliding with wood.