Cruis'n USA (Nintendo 64)/Notes: Difference between revisions

From Data Crystal
Jump to navigation Jump to search
m (→‎Force roadkill-type collisions: delete a trailing whitespace so PJ64 won't misbehave when you paste the code in)
m (Xkeeper moved page Cruis'n USA (Nintendo 64):Notes to Cruis'n USA (Nintendo 64)/Notes: normalize subpages and titles)
 
(No difference)

Latest revision as of 02:41, 24 January 2024

Chip tiny.png The following article is a Notes Page for Cruis'n USA (Nintendo 64).

Roadkill Collision

In the arcade version of Cruis'n USA, there are cows and deer on the road that will explode into chunks if you hit them. This was removed from the Nintendo 64 version.

In the Nintendo 64 version, there are different collision types. There's one for objects that go flying like mailboxes, and another for road signs that flatten when you hit them. There is also an unused collision type 0xF0. When you crash into an object of this type, the object disappears and you spin out. As it turns out, this is the roadkill collision that was removed from the Nintendo 64 version of Cruis'n USA. There is also an explosion of chunks just like in the arcade version, but all the chunks are invisible.

Codes

Force roadkill-type collisions

The code below will turn many collisions (like with mailboxes, barrels, and orange-and-white signs) into roadkill collisions. The chunks will still be invisible.

Cruis'n USA (U) (V1.0 + V1.2)
Force many collisions to be roadkill collision
81040D08 0000
81040D0A 0000
81041A20 0000
81041A22 0000
81041A2C 0000
81041A2E 0000

The first two lines force 0xF0-type collision for those objects, and the last four keep the game from freezing.

One sign in Iowa explodes into chunks (other models)

The code below will make the first orange-and-white sign at the tollbooth in Iowa explode into chunks when you hit it. The chunks will be other models found in the stage. You must turn off racers and traffic before entering the race, and don't enable the codes until you can see the tollbooth in Iowa.

Cruis'n USA (U) (V1.0)
First orange and-white sign at Iowa tollbooth explodes into various models when hit
* Turn off Racers and Traffic before entering the race
* Don't enable these codes until you see the tollbooth
801FA36B 00F0
81045418 8015
8104541A 8FC4
81045428 8015
8104542A 8D5C
81045438 8015
8104543A 8E58
81045448 8015
8104544A 8DCC
81041A20 0000
81041A22 0000
81041A2C 0000
81041A2E 0000

The first line changes the collision type of that sign to 0xF0. The next eight lines turn the invisible chunk models into other models. As before, the last four lines keep the game from freezing. This code will not work on other stages because of how models and objects move around in memory.

Details

When you run into the first orange-and-white sign in Iowa, the values for the roadkill chunk models are read from four places in memory:

address: value: model:
80045410: 00000000 no model
80045420: 00000000 no model
80045430: 00000000 no model
80045440: 00000000 no model

As you see, all four of these places normally have a value of 00000000, which is why the roadkill chunks are invisible.

Using the addresses above, the game creates roadkill chunks in this order upon collision. (Only showing the last two digits of each address):

10 20 20 30 40 10
10 20 20 30 40 10
10 20 20 30 40 10

That's a total of 18 roadkill chunks. All of the chunks are created during the same frame except the last one (italicized above), which is created during the next frame.