Difference between revisions of "ITPT Settings"

From Custom Mario Kart
Jump to navigation Jump to search
Line 36: Line 36:
 
|-
 
|-
 
| align=center | 0x0a
 
| align=center | 0x0a
| When a red/spiny shell reaches a route junction, '''if the targeted player is ''currently'' taking one of its candidate item routes''', then the shell gives it priority and ends up also taking it, '''UNLESS''' its first point (''forward'' lookup) or its last point (''backward'' lookup) is marked with a 0x0A setting. In this case, this route becomes de-prioritized in favour of non-0x0A candidate item routes, if any exist; otherwise, the shell takes the ''default'' item route (either the first candidate, or geometrically the best?).
+
| When a red/spiny shell reaches a route junction, '''if the targeted player is ''currently'' taking one of its candidate item routes''', then the shell gives it priority and ends up also taking it, '''UNLESS''' its first point (''forward'' lookup) or its last point (''backward'' lookup) is marked with a 0x0A setting. In this case, this route becomes de-prioritized in favour of non-0x0A candidate item routes, if any exist; otherwise, the shell takes the ''default'' item route (the first item group).
  
 
Put simply, 0x0A is a marker for ''secondary'' item routes which ''shouldn't'' be taken automatically (when encountered) by red/spiny shells. It is not a formal "Bullet Bill only" property: it may become false if 0x0A is used over the ''default'' item route of the junction (taken if all routes are 0x0A, or if the target is far enough that he/she has already fully cleared any of the routes), or if the shell's user is already in the middle of a 0x0A route.
 
Put simply, 0x0A is a marker for ''secondary'' item routes which ''shouldn't'' be taken automatically (when encountered) by red/spiny shells. It is not a formal "Bullet Bill only" property: it may become false if 0x0A is used over the ''default'' item route of the junction (taken if all routes are 0x0A, or if the target is far enough that he/she has already fully cleared any of the routes), or if the shell's user is already in the middle of a 0x0A route.

Revision as of 20:34, 16 June 2020

This page describes the ITPT settings of a KMP file. These settings control the pathing and "safety" options of items such as the Bullet Bill (most commonly) and Red / Blue / Spiny Shells.

Settings

At all times, the current relevant settings are taken from the current destination point. Whenever the item reaches each point of the route, the next point's settings are then considered until that point is reached, and so on.

ITPT settings at offset 0x10
Value Meaning
0 Bullet Bill follows the route horizontal over the ground ignoring the height, if below the route. Otherwise it follows the route horizontal and vertical. Use this as default over an abyss, if you have set the item point height correctly. If all route points have a perfect height, value 0 is also the best choice.
1 Bullet Bill follows the route horizontal over the ground ignoring height, like a red shell. Use this as general default value.
2 Bullet Bill follows the route horizontal and vertical. Use it, if Bullet Bill should follow the route exactly.
3 Like value 0 (no differences found yet). This value is used by Nintendo from the point before the first mushroom until the first point behind the last mushroom in Mushroom Gorge. Use it over bouncy mushrooms.
Some notes
  • The height is the Y position value.
  • It is good practice to test the item routes (using an offline item cheat). For example, throw red shells (while in 1st place) and use Bullet Bills in various areas to check whether they survive on their own.
    • Preferably, Bullet Bills should neither get stuck, drop players over gap jumps (abysses) or difficult (U-)turns, nor take absurdly wide lines that virtually no player would take.
    • Red shells shouldn't crack into walls nor fall down most of the time.
  • The scale value defines, how far the player can control Bullet Bill to the left/right.
  • The height of the item points are very relevant for Bullet Bill. There are several tools with automated height correction → use them.
ITPT settings at offset 0x12
Value Meaning
0 Neutral value, no special impact.
0x01 Bullet Bill doesn't stop. Use it for the item points over an abyss and in cannon paths including the first item point in the landing zone.
0x0a When a red/spiny shell reaches a route junction, if the targeted player is currently taking one of its candidate item routes, then the shell gives it priority and ends up also taking it, UNLESS its first point (forward lookup) or its last point (backward lookup) is marked with a 0x0A setting. In this case, this route becomes de-prioritized in favour of non-0x0A candidate item routes, if any exist; otherwise, the shell takes the default item route (the first item group).

Put simply, 0x0A is a marker for secondary item routes which shouldn't be taken automatically (when encountered) by red/spiny shells. It is not a formal "Bullet Bill only" property: it may become false if 0x0A is used over the default item route of the junction (taken if all routes are 0x0A, or if the target is far enough that he/she has already fully cleared any of the routes), or if the shell's user is already in the middle of a 0x0A route.

This is used in two Nintendo tracks: Mario Circuit (cutting off-road mid-lap where the ramp lies) and GCN DK Mountain (the gap shortcut at the end of a lap, which involves jumping over an abyss).

0x0b This is the bitwise OR combination of both values above (=0x01|0x0a) → impact of both.

Note: The values above suggest, that the bit with value 0x04 may have (or had) also a special (hidden) impact, because there is no real reason to skip this bit.

Combinations

If looking into all 32 tracks (not _d files) of Mario Kart Wii, we can find the following setting combinations. The slot numbers should help a further analysis.

Settings found in MKW
count setting 1 setting 2 found in (slot numbers)
2370 0 0 all but not T34 T53 T84
44 0 1 T32 T33 T43 T44 T61 T72 T73 T83
1 0 0xa T21
4 0 0xb T83
544 1 0 T11 T14 T22 T24 T31 T32 T34 T41 T44 T51 T53 T63 T64 T83 T84
6 1 1 T14 T44
48 2 0 T14 T32 T44 T81 T83
14 2 1 T44 T81 T83
26 3 0 T13
7 3 1 T13