Difference between revisions of "KCL flag"

From Custom Mario Kart
Jump to navigation Jump to search
Line 810: Line 810:
 
|unknown
 
|unknown
 
|}
 
|}
 
+
==== Wall (0x14) ====
==== Wall 4 (0x14) ====
+
Allows objects to pass through it like 0x0D, with the same properties as 0x0C.
 
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
! Basic effect (Z, octal)
+
! ID
 
! What is it?
 
! What is it?
 
|-
 
|-
|0
+
|000
|unknown
+
|Normal Wall
 
|-
 
|-
|1
+
|001
|unknown
+
|Rock Wall
 
|-
 
|-
|2
+
|002
|unknown
+
|Metal Wall
 
|-
 
|-
|3
+
|003
|unknown
+
|Guard Rail
 
|-
 
|-
|4
+
|004
|unknown
+
|Short tree wall sound effect
 
|-
 
|-
|5
+
|005
|unknown
+
|Tree Wall
 
|-
 
|-
|6
+
|006
|unknown
+
|Tree Wall without leaf effect
 +
|-
 +
|007
 +
|Rubber Wall
 +
|-
 +
|008
 +
|Hollow Wall
 +
|-
 +
|009
 +
|Wall without being bumped
 +
|-
 +
|40x
 +
|The "bump" depends on the angle you hit the wall.
 
|-
 
|-
|7
 
|unknown
 
 
|}
 
|}
  

Revision as of 04:12, 13 December 2012

This page describes the flags of KCL files.



Mario Kart Wii Collision Flags

In Mario Kart Wii the collision flag values are normally split. The 5 least significant bits determine the basic type of the flag. The next 11 bits determine the variation upon the type. The list below describes these types and their variants. The numerical relation is:

FLAG = TYPE | VARIANT << 5

Wiimm has made a statistical analysis about the usage of flags in all 32 tracks: kcl-types.txt

Collision Types (basic type)

Type Variant type What is it?
0x00 A Road
0x01 A Slippery Road 1
0x02 A Weak Off-road
0x03 A Off-road
0x04 A Heavy Off-road
0x05 A Slippery Road 2
0x06 A Boost Panel
0x07 A Boost Ramp
0x08 A Jump Pad
0x09 A Out of Bounds
0x0A A Solid Fall
0x0B B Moving Water
0x0C unknown Wall
0x0D unknown Invisible Wall
0x0E unknown Obstacle Wall
0x0F unknown Wall
0x10 unknown Fall Boundary
0x11 B Cannon Activator
0x12 unknown Does nothing
0x13 unknown Half-pipe Ramp
0x14 unknown Wall
0x15 B Moving Terrain
0x16 A Sticky Road
0x17 A Road
0x18 unknown Sound Trigger
0x19 unknown Does nothing
0x1A unknown Does nothing
0x1B unknown Does nothing
0x1C unknown Does nothing
0x1D A Road
0x1E unknown Special Walls
0x1F unknown Wall

Variant types

Type A

Variant type A is split in 4 bit-groups. The first and last 2 groups are 3 bits each, and the second group is 2 bits.

Group W Group X Group Y Group Z
Amount of bits 3 2 3 3
Function Collision effect Intensity Shadow effect Basic effect

To write this structure down, you can write each group as an octal number, but be aware of the 2-bits group, calculating hex to octal will not work right. A good way to get the right variant in hex is this:

  • write down each group in octal (X can be max. 3)
  • convert each group to binary (X is 2 bits, others 3 bits)
  • write them in the order: wxyz, you'll get www|xx|yyy|zzz in binary, you can convert that number to hex.

Note: hex shows only W right, octal only Y and Z.

So, www in binary controls the collision effect, xx controls intensity, yyy controls shadow effect, and zzz controls the basic effect (such as grass vs. dirt). For example, www represents a binary number of three digits. This 3-digit number controls which effect is used. The same applies to yyy and zzz, except xx can only go up to 3 as there are only 2 binary digits. A complete string of binary numbers (wwwxxyyyzzz in that order) is converted as a whole to hex to get the variant that is entered into the SZS Modifier or CTools.

Another way is using the following formula: Variant (in hexadecimals) = 0x100W+0x40X+0x8Y+Z Of course is this formula basic on the theory stated above.

Functions:

Collision effect:

Bit Effect
0 0 = Not trickable
1 = Trickable
1 0 = Drivable
1 = Not drivable. Forces a player to change direction which makes the player unable to drive on that surface.
2 Value 1 is used for walls that don't make you bounce when colliding on them

Intensity:
Exact values unknown

Shadow effect:
All light effects pertain to the light IDs in posteffect.blight. These colors can be modified by hex editing it in the SZS file (./posteffect/posteffect.blight).

Basic effect:
Different for each basic flag

Type B

Variant type B refers to an ID in the kmp file, which section is different for each flag: "Triggers" means that it's variant refers to a group or point of the specified section.

Type (value) Triggers
Moving road (0x0B) AREA entry If the area has a route it makes the water follow the route, else it moves towards the area point.
Cannon activator (0x11) Cannon (CNPT entry)
Moving road (0x15) Object

Basic Effects (for type A, and type A-like variants)

Road (0x00)

A type of road that's solid for both players and items.

Basic effect (Z, octal) What is it?
0 Normal Road
1 Dirt Road
2 Sand/Carpet
3 Slippery Road
4 Wood Road
5 Snow Road
6 Metal Grid/Chain Link Road
7 Another Normal Road

Slippery Road 1 (0x01)

A type of road that is slippery, but does not slow you down.

Basic effect (Z, octal) What is it?
0 Sand
1 Dirt
2 Water
3 Snow
4 Grass
5 Sand
6 Sand, no effect
7 Dirt, no effect

Weak Off-road (0x02)

Basic effect (Z, octal) What is it?
0 Sand
1 Dirt
2 Water
3 Grass
4 White sand
5 Sand/Gravel
6 Gravel
7 Gravel, different sound

Off-road (0x03)

Basic effect (Z, octal) What is it?
0 Black sand
1 Dirt
2 Mud
3 Water
4 Grass
5 Sand
6 Gravel
7 Sand/Gravel

Heavy Off-road (0x04)

Basic effect (Z, octal) What is it?
0 Sand
1 Dirt
2 Mud
3 Flowers
4 Grass
5 Snow
6 Sand
7 Dirt, no effect

Slippery Road 2 (0x05)

A type of road that is slippery and slightly slows you down.

Basic effect (Z, octal) What is it?
0 Ice
1 Mud
2 Water
3 Water
4 Water
5 Water
6 Normal road, different sound
7 Normal road, different sound

Boost Panel (0x06)

Basic effect (Z, octal) What is it?
0 unknown
1 unknown
2 unknown
3 unknown
4 unknown
5 unknown
6 unknown
7 unknown

Boost Ramp (0x07)

Basic effect (Z, octal) What is it?
0 normal
1 unknown (it's in Mdush.kcl)
2 unknown
3 unknown
4 unknown
5 a little bit lower (with other jump effects)
6 unknown
7 unknown

Jump Pad (0x08)

Basic effect (Z, octal) What is it?
0 unknown
1 unknown
2 unknown
3 unknown
4 unknown
5 unknown
6 unknown
7 unknown

Out of Bounds (0x09)

A type of road that's solid for items only.

Basic effect (Z, octal) What is it?
0 unknown
1 unknown
2 unknown
3 unknown
4 unknown
5 unknown
6 unknown
7 unknown

Solid Fall (0x0A)

Basic effect (Z, octal) What is it?
0 unknown
1 unknown
2 unknown
3 unknown
4 unknown
5 unknown
6 unknown
7 Sand effect

Shallow Water (0x0B)

Basic effect (Z, octal) What is it?
0 unknown
1 unknown
2 unknown
3 unknown
4 unknown
5 unknown
6 unknown
7 unknown

Wall (0x0C)

A type of wall that's solid for both players and items. Similar to A as the last 3 bits are the basic effect and the first 3 bits are the collision effect. Shadow effect and intensity is ignored or unused.

ID What is it?
000 Normal Wall
001 Rock Wall
002 Metal Wall
003 Guard Rail
004 Short tree wall sound effect
005 Tree Wall
006 Tree Wall without leaf effect
007 Rubber Wall
008 Hollow Wall
009 Wall without being bumped
40x The "bump" depends on the angle you hit the wall.

Invisible Wall (0x0D)

A type of wall that's solid for players only.

Basic effect (Z, octal) What is it?
0 unknown
1 unknown
2 unknown
3 unknown
4 unknown
5 unknown
6 unknown
7 unknown

Obstacle Wall (0x0E)

A type of wall that's solid for items only.

Basic effect (Z, octal) What is it?
0 unknown
1 unknown
2 unknown
3 unknown
4 unknown
5 unknown
6 unknown
7 unknown

Wall 3 (0x0F)

Basic effect (Z, octal) What is it?
0 unknown
1 unknown
2 unknown
3 unknown
4 unknown
5 unknown
6 unknown
7 unknown

Fall Boundary (0x10)

Note: this is an A-like variant type kcl. Probably it's divided in 2 sections of 8 and 3 bits. The 3 bits one is the basic type (column Z) The 8 bits section defines the index, KMP can also refer to this index. (only for the pocha's)

Formula: 0x8Y + Z
Y = index
Z = basic type

Basic effect (Z, octal) What is it?
0 Air fall
1 Water (pocha.brres), Setting 1 refers to the index in KMP.
2 Lava (pochaYogan.brres), Setting 1 refers to the index in KMP.
3 Ice Water (pocha.brres, ice.brres on respawn), Setting 1 refers to the index in KMP.
4 Water (used in MT).
5 Air Fall but with entry a burning air fall.
6 Quicksand
7

4 must be verified.

Cannon Activator (0x11)

Basic effect (Z, octal) What is it?
0 unknown
1 unknown
2 unknown
3 unknown
4 unknown
5 unknown
6 unknown
7 unknown

Does nothing (0x12)

Basic effect (Z, octal) What is it?
0 unknown
1 unknown
2 unknown
3 unknown
4 unknown
5 unknown
6 unknown
7 unknown

Half-pipe Ramp (0x13)

Basic effect (Z, octal) What is it?
0 unknown
1 unknown
2 unknown
3 unknown
4 unknown
5 unknown
6 unknown
7 unknown

Wall (0x14)

Allows objects to pass through it like 0x0D, with the same properties as 0x0C.

ID What is it?
000 Normal Wall
001 Rock Wall
002 Metal Wall
003 Guard Rail
004 Short tree wall sound effect
005 Tree Wall
006 Tree Wall without leaf effect
007 Rubber Wall
008 Hollow Wall
009 Wall without being bumped
40x The "bump" depends on the angle you hit the wall.

Moving Terrain (0x15)

Basic effect (Z, octal) What is it?
0 unknown
1 unknown
2 unknown
3 unknown
4 unknown
5 unknown
6 unknown
7 unknown

Sticky Road (0x16)

Basic effect (Z, octal) What is it?
0 Wood
1 Sand/Gravel
2 Gravel
3 Dirt
4 Sand/Gravel
5 Slot-bound drift sound effect, normal road.
6 Normal Road
7 Mud

Road (0x17)

Basic effect (Z, octal) What is it?
0 Normal road, different sound
1 Gravel
2 Grass
3 Normal road, different sound
4 Grass
5 Glass road with sound-effect
6 Dirt
7 Dirt effect with no sound

Does nothing (0x19)

Basic effect (Z, octal) What is it?
0 unknown
1 unknown
2 unknown
3 unknown
4 unknown
5 unknown
6 unknown
7 unknown

Does nothing (0x1A)

Basic effect (Z, octal) What is it?
0 unknown
1 unknown
2 water splash (pocha.brres), reused only if a fall boundary is triggered
3 unknown
4 unknown
5 unknown
6 unknown
7 unknown

Does nothing (0x1B)

Basic effect (Z, octal) What is it?
0 unknown
1 unknown
2 unknown
3 unknown
4 unknown
5 unknown
6 unknown
7 unknown

Does nothing (0x1C)

Basic effect (Z, octal) What is it?
0 unknown
1 unknown
2 unknown
3 unknown
4 unknown
5 unknown
6 unknown
7 unknown

Road (0x1D)

Basic effect (Z, octal) What is it?
0 Gravel
1 Dirt, different sound
2 Normal road
3 Glass road with echo
4 Gravel, different sound
5 No sound effect
6 Sand
7 Dirt

Special walls (0x1E)

Basic effect (Z, octal) Visual Sound Effect
0 Fast: spark (stars) Fast: nothing Fast: bump
Slow: spark (stars) Slow: nothing Slow: bump
1 Fast: nothing Fast: nothing Fast: bump (rubber wall)
Slow: nothing Slow: nothing Slow: nothing
2 Fast: spark Fast: hollow Fast: bump
Slow: nothing Slow: nothing Slow: many bumps (rubber wall)
3 Fast: nothing Fast: nothing Fast: bump
Slow: nothing Slow: nothing Slow: nothing
4 Fast: spark Fast: nothing Fast: bump
Slow: nothing Slow: nothing Slow: nothing
5 Fast: spark Fast: cracking Fast: bump
Slow: nothing Slow: nothing Slow: nothing
6 Fast: spark Fast: metal Fast: bump
Slow: nothing Slow: nothing Slow: nothing
7 Fast: spark Fast: nothing Fast: bump
Slow: nothing Slow: nothing Slow: nothing
8 Fast: spark (stars) Fast: nothing Fast: bump
Slow: spark (stars) Slow: nothing Slow: bump
9 Fast: nothing Fast: nothing Fast: bump (rubber wall)
Slow: nothing Slow: nothing Slow: nothing
10 Fast: spark (stars) Fast: nothing Fast: bump
Slow: spark (stars) Slow: nothing Slow: bump

Wall 5 (0x1F)

Basic effect (Z, octal) Speed Visual Sound Effect
0-9 Fast: nothing nothing bump (Players can't go through it, items can)
Slow: nothing nothing nothing (Players can't go through it, items can)



Sound Trigger (0x18)

Bowser Castle Wii

ID What is it?
000 Disable one time use Sound Trigger (like Bowser Howl).
001 Bowser's Howl + Echo (put 007 at the end of a turn to be able to reuse Bowser Howl!)
002 Sound Distortion + Echo.
003 Deactivate above.
004 Add Drums + Echo on music + Koopa ball / koopa figure sound
005 Unknown or nothing (but tested.)
006 Add Drums without Echo
007 Back to normal - Allow reuse for one time use Sound Trigger.

Little Info in order to have Twromp effect just disable every sound trigger (put 003 then 007).

Koopa Cape

ID What is it?
000 Unknown or nothing (but tested.)
001 Unknown or nothing (but tested.)
002 Unknown or nothing (but tested.)
003 Music change (water tunnel music)
004 Music Change + Echo + Water Background sound.
005 Deactivate all only keep Echo.
006 Music Change 2
007 Add Echo on every trigger.
008 Back To normal.
009 Unknown or nothing (but tested.)
00A Unknown or nothing (but tested.)
00B Unknown or nothing (but tested.)
00C Music Change (Water Tunnel)
00D Music change + echo + water sound.
00E music normal + echo + water sound
00F Back to normal + echo

Rainbow Road

ID What is it?
000 Turn Off button.
001 Gate Sound 1 (Add a turn off button before and after if you use only one gate.
002 Gate Sound 2
003 Gate Sound 3
004 Gate Sound 4
005 Gate Sound 5
006 Tunnel Sound (Add a turn off button to stop it)
007 Nothing or unknown.


Little info about that gate it seem easy but it need little Logic.
Here a good example : 000 -> 001 -> 002 -> 003 -> 004 -> 005 -> 000
That how original Rainbow Road do , That play all get when you pass them and don't play back until you don't have reach the End point "000"
here an idea to make gate every time you pass it : 000 -> 001 -> 000 -> 001 -> ect...
Note: 000 -> 002 and 001 -> 001 doesn't play or play it only once. That will play each gate every time you pass it.
You will see that really easy , same goes with the tunnel one variant to activate it one to stop it.
Good luck :3