Difference between revisions of "Object/coin"

From Custom Mario Kart
Jump to navigation Jump to search
(Undo revision 291884 by AlmostTWD98 (talk) there is no disadvantage to have a second link, but an advantage. So don't remove it again.)
(3 intermediate revisions by 2 users not shown)
Line 124: Line 124:
  
 
=== Notes ===
 
=== Notes ===
* '''Index''' is the zero based internal index to address battle dependent tables (e.g. on the file [minigame.kmg]]).
+
* '''Index''' is the zero based internal index to address battle dependent tables (e.g. on the file [[minigame.kmg]]).
* '''Coins at start''' (number of coins at the start of the battle) and '''Max coins''' (maximum number of available coins) depend on the arena slot and the number of players. The related tables are placed in [[minigame.kmg]] at offsets 0x394 and 0x470.
+
* '''Coins at start''' (number of coins at the start of the battle) and '''Max coins''' (maximum number of available coins) depend on the arena slot and the number of players. The related tables are placed in minigame.kmg at offsets 0x394 and 0x470.
  
 
== More Technical Information ==
 
== More Technical Information ==

Revision as of 11:55, 25 August 2021

Overview

This article is about the coin object. Coins are only used in Coin Runners and in some tournaments.

Settings

Only settings 2 and 3 are used by Nintendo on battle arenas. Setting 1 is used on tournaments, and the rest (4 to 8) are always 0.

Setting 2: Start or Respawn Place

This setting decides about the characteristic starting place or respawn place.

  • Values between 0 and 49 are used for starting places. Nintendo used unique numbers, but it seems that any mix is working. At some slots, numbers ≥50 (sometimes up to 100) will work too.
  • The slots have different limits of usable starting places. It varies between 21 and 42.
  • At the start of the battle, all usable starting places start with a coin.
  • Respawn places have always have a value of -1 (=65535) and are generally used for respawned and new coins. On some slots, they are used as starting places too, if the number of starting places is too small.
  • The total number of coins is limited by the total number of coin objects. Additionally, all slots have different absolute limits for coins (not for coin objects). They are all between 53 and 71.

Setting 3: Spawning type

  • Type 0 and 1: Coins are inserted at place.
  • Type 2: Coins fall down from the sky and keep their X and Z value.
  • Type 3: Coins fall down from the sky. When they fall on a slope, they ricochet.
  • Coins from starting places of all types except type 1 are moved to respawn places at the beginning of Phase 2 (see below).

Phases

There are 3 coin phases:

  • In phase 1, coins are only available at starting places. The game starts usually in phase 1.
  • In phase 2, coins on starting places (except type 1) move to respawn places.
  • In phase 3, additional coins (not starting coins) become available and will be spawned.

The triggering of the phases are not really clear. It seems that there are different triggers for each phase.

Phase 2 is triggered:

  • when a player is damaged (is respawned or hit).
  • when about the half of the starting coins are caught.

If fewer starting places are defined (slot dependent), the game starts directly in phase 2.

Phase 3 is triggered:

  • when phase 2 is activated and a player has lost at least 1 coin.
  • when many coins from respawn places are caught.

If fewer starting places are defined (slot dependent), the game starts directly in phase 3 or skips phase 2.

Observations

For the observations, more than 50 setups with a different number of objects and respawn types were tested by Wiimm. Here are the results:

  • If no respawn places are defined, coins will not be respawned.
  • In 3 setups with 63, 68, and 100 starting places, no coins were respawned. All other setups had 60 or less starting places.
  • Any starting places with indices of ≥60 are ignored. Moreover, it disables any respawning at all.
  • With less than about 20 starting places (the value may depend on the slot):
    • respawn slots were used as additional starting slots.
    • the battle starts directly in coin phase 2 or 3.
  • There are different events (which may be slot dependent) that will trigger phase 2 or 3.
  • The more respawn places are defined, the faster the coins will respawn.
  • Some Nintendo arenas define more starting places than used by the related slot. Either this is a mistake by Nintendo, or another overlooked parameter exists.

Slot dependency

The values of the following table are extracted from the minigame.kmg file and the GOBJ section from KMP files.

Slot Dependent Limits and Usage of Coins
Cup Slot Index Arena Name Coins at Start Max Number of Coins Number of Start Places Number of Respawn Places
Type 0 Type 1 Type 2 Type 0 Type 1 Type 2
Wii Stages.png
Wii Stages
1.1 1 Block Plaza 12–40 21–67 40 0 0 0 0 53
1.2 0 Delfino Pier 12–40 21–71 10 4 28 8 2 82
1.3 3 Funky Stadium 10–42 21–71 12 30 0 3 3 42
1.4 2 Chain Chomp Wheel 10–28 21–55 48 2 0 0 18 39
1.5 4 Thwomp Desert 12–30 21–55 28 0 0 0 0 52
Retro Stages.png
Retro Stages
2.1 7 SNES Battle Course 4 12–30 21–57 32 0 0 60 0 0
2.2 8 GBA Battle Course 3 10–30 21–63 50 0 0 0 0 54
2.3 9 N64 Skyscraper 10–28 21–55 40 0 0 0 0 56
2.4 5 GCN Cookie Land 12–21 21–53 27 0 0 0 0 45
2.5 6 DS Twilight House 10–30 21–57 40 0 0 11 0 45

Notes

  • Index is the zero based internal index to address battle dependent tables (e.g. on the file minigame.kmg).
  • Coins at start (number of coins at the start of the battle) and Max coins (maximum number of available coins) depend on the arena slot and the number of players. The related tables are placed in minigame.kmg at offsets 0x394 and 0x470.

More Technical Information

The coin model is not fully loaded from coin.brres. Instead, there is raw model data which contains vertex, UV and normal information into StaticR.rel. The data is found at:

  • offset 0x3A1A40 (address 0x808ad9a0) for NTSC-U.
  • offset 0x3A2000 (address 0x808b22e0) for PAL.
  • offset 0x3A17E0 (address 0x808b1440) for NTSC-J.
  • offset 0x3a2440 (address 0x808a0740) for NTSC-K.

However, texture and animation data, as well as the coin's shadow and the pile of coins above the player are still used from coin.brres.

Tips to Make a Good Custom Arena

  • Use between 20 and 42 starting places. Additional places are simply ignored. If using less than 20 starting places, curious effects like starting in phase 2 or 3 will happen depending on the slot.
  • Use unique identifiers for setting 2 of starting places. A zero based unique index is preferred. These identifiers are most likely irrelevant. Indices greater than or equal to the slot limit will be ignored. Values ≥60 may disable the respawn functionality. It is best to use values ≤42.
  • Use 20 to 80 respawn places. If using few respawn places, the respawning process is slowed down.
  • If using many coins, give the user a recommendation about the slot usage, because some slots have small limits.
  • Think about the respawn modes. Only coins of type 1 will stay at the defined position until caught and only coins of type 2 fall from the sky. The choices for start and respawn places can differ.
  • Use different positions for all coin objects, so that 2 coins are never placed at the same position. An exception is a starting place with any coin type other than 1 and a respawn place; they never hold a coin at same time.
  • Give automated height correction a chance to adjust positions.
  • Scatter the coins around the whole arena, but only in places where enemies will drive. Good places are along the enemy routes. Read the enemy routes in battle arenas tutorial to understand how they work.