NFSAddons Forums

Mar 29, 2024, 4:27 AM

Show Posts - DrSpeed

Welcome to NFSAddons Forums - Add your own description in your admin center.

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - DrSpeed

Pages: [1]
1
General NFS / NFS4 Career Editing
« on: May 31, 2022, 9:56 AM »
Hello!
I'm here again with more hex editing magic. This time it's the career mode for NFS4. The game is working with two files: CircDef.cdb and TierDef.cdb, both located in the Text folder.

Let's start with CircDef.cdb, One Circuit is 150 blocks big.
In this example, we're gonna look into the all addresses that define European Tour - Circuit 1.

00000150
Circuit ID number. I highly recommend you only look at this address.

00000154
Event type. The known values here is not the same as the replay/ghost files. Which means Hot Pursuit can't be loaded in the career mode unfortunately.
00 = Tournament
01 = Knockout
02 = High Stakes

00000158
Entry fee, written in float.

0000015C
Number of tracks, can't be more than 8.

00000160
Number of opponents. Max number in tournament is 7, you can have 11, but the point system breaks and the game will crash after the last race. Knockout can safely have 8 opponents. High Stakes better have 1.

00000164
Number of laps, normally set to 2, 4 or 8. Other values is untested.

00000168
This sets the restriction of the Circuit. The next address depends on what value this have.
00 = Class
01 = Class and under
02 = Open Entry
03 = Model
04 = Manufacturer

0000016C
If you set "Class" or "Class and under" these are the possible values:
00 = Class AAA
01 = Class AA
02 = Class A
03 = Class B

If it's set to "Model" you can restrict the circuit to one specific model (like in Porsche Pro Cup). The known values are the same as the serial number of the car.
01 = Ferrari F50
02 = McLaren F1 GTR
03 = BMW Z3
04 = Mercedes SLK-230
05 = Chevrolet Camaro
06 = BMW M5
0D = Pontiac Firebird
0E = Porsche 911 Turbo
10 = Lamborghini Diablo SV
12 = Mercedes CLK-GTR
13 = Chevrolet Corvette
1F = Ferrari 550 Maranello
23 = Jaguar XKR

And if it's set to "Manufacturer", the game only accept cars with the specific manufacturer (Chevrolet Pro Cup for example). These values comes from MAN.DAT, also in the Text folder. You can modify that file to add more manufacturers.
00 = Ferrari
01 = Lamborghini
02 = Ford
03 = Mercedes
04 = Italdesign
05 = McLaren
06 = Jaguar
07 = BMW
08 = Porsche
09 = Chevrolet
0A = Pontiac
0B = Nissan

00000170-0000018C
Price money for 1st to 8th place, written in float. Only first place can have a car as a price. This address will also set what your opponent will drive in High Stakes mode.

Pro Cup price cars:
01 = Bonus Camaro
02 = Bonus Porsche
09 = La Niña

High Stakes opponent:
03 = Mercedes SLK 230
04 = Jaguar XKR
05 = Ferrari 550 Maranello
06 = Lamborghini Diablo SV
07 = Mercedes CLK-GTR
08 = McLaren F1 GTR

00000190-000001AC
Possible it's price money for 9th to 16th place.

000001B0
Unknown. Values that are used here are: 0, 1, 3.

000001B4
Opponent skill level.
02 = Beginner
05 = Pro
08 = Champion

000001B8
Unknown. Values that are used here are: 1, 3, 4, 6, 8.

000001BC
Unknown. No idea what this is.

000001C0
The first track of a Tournament and Knockout or the one track for High Stakes mode.
00 = Celtic Ruins
01 = Landstrasse
02 = Dolphin Cove
03 = Kindiak Park
04 = Route Adonf
05 = Durham Road
06 = Snowy Ridge
07 = Raceway 1
08 = Raceway 2
09 = Raceway 3
0A = Hometown
0B = Redrock Ridge
0C = Atlantica
0D = Rocky Pass
0E = Country Woods
0F = Lost Canyons
10 = Aquatica
11 = Summit
12 = Empire City

000001C4
Weather.
0 = Off
1 = On

000001C8
Time of day.
0 = Day
1 = Night

000001C
Mirrored.
0 = Off
1 = On

000001D0
Direction.
0 = Forward
1 = Backward

000001D4
Unknown.

000001D8
Unknown.

000001DC
And this is the second track in a Tournament or Knockout. You should now see the pattern (1C from the first track).


Next file is TierDef.cdb. This controls where each circuit shows up in a Tier.

0000006C
This is most likely the ID of the Event.

00000070
This is the name of the Event. I've tested 28 long sting of text with no problems.

00000098
I thought this controlled if the event was locked or not, but doens't seem to work correctly. So I stopped bothering with it.

0000009C
This is the number of Circuits in the Event. Can't be more than 5.

000000A0-000000B0
The ID number of the 1-5 circuits (4 bytes each). European Tour has nr 1 and 2. High Stakes Tour has 3, 4 and 5, and so on. The ID's comes from CircDef.cdb.

000000D0 and 000000D4
This unlocks the next tier (second address is if you're unlocking a Pro Cup). This also doens't work half the time if you edit it.


And that's pretty much it. Be aware that your game will crash if you're not careful (sometimes it will simply return to the menu). I decided to post my research so far and hopefully we can have a fully documented list of these files.

Before I forget, I've discovered it's possible to expand career mode so it's even longer. I'm playtesting it as I'm writing this post.

2
Editing Projects / Citroen ZX Police
« on: Mar 08, 2019, 1:57 PM »
Time for my next project that I've been working on. This is the Citroën ZX police car that appears in the playstation version of NFS Porsche.
It'll be recreation on how it appears in the game, more than how it's supposed to look like. When I release it, people are allowed to modify it (if they want to correct my inaccuarcy :P ).

Here's the first draft:

3
Editing Projects / Titan Hotrod (NFS4 PS1)
« on: Mar 18, 2018, 1:17 AM »
Time for the second bonus car from the Playstation version, the Titan. This thing was hard to replicate, but at least the most important parts is there: the "Oh Yeah" horn and the fuzzy dice.  :D


Credits:
Wheels and side mirrors from: 2003 Acura RSX Type S by Viper Jay 5.

4
Editing Projects / Phantom (NFS4 PS1)
« on: Jan 06, 2018, 11:27 AM »
Title is pretty much self explanatory, this is one of the bonus cars from the Playstation version of High Stakes. I was unable to get the original model from the game but did get some textures (that I ended up not using). I decided to give it more 3D details and some higher quality head/tail lights. So don't expect a 100% accurate model, I'm a real rookie when it comes to 3D. :P

Wheels are from Mazda Miata MX5, side mirrors from Ferrari F360 Modena (both by Viper Jay 5).
The model itself is pretty much done. If you have feedback, feel free to post them. :)

Comparison:
https://i.imgur.com/lDqwMfj.png
https://i.imgur.com/XJjkkyx.png

5
General NFS / Using ghost files to customize a race [NFS4]
« on: Oct 01, 2016, 8:10 AM »
Greetings!
This thread will teach you how you can add additional AI drivers to a race by simply edit a ghost data file. Want to have more and unique police cars in a Hot Pursuit race? Tired of only having 7 AI opponents? More traffic cars to dodge? How about additional racers and cops in two player mode? All is possible!


What you'll need:
A HEX editor - I'm using HxD
or use Cheat Engine (see below)
Knowledge in HEX numbers.

If you don't know how to use HEX editors, follow Zalcus method on using Cheat Engine instead, which is also much easier. The rest in this post can also be ignored.



First things first:
  • Simply launch the game and choose either a normal Race or Hot Pursuit. I recommend that you don't choose Career, Knockout or Tournament modes, because the game might crash later on.
  • Start the race. When the lights turn green and the AI starts to drive away, pause the game and exit. A gst file will be created in the SaveData folder. Note: If you want to edit a 2 player race, you need to copy config.dat and rename it into a gst file.
  • (Since we can't save a ghost file in Hot Pursuit mode, you need to get it manually.) Navigate to the SaveData folder and locate the ghost.gst file. This is the ghost file that records the latest race you did, even if you didn't complete it. Make a copy and change the name of it. Like: cop_07a.gst. Remember: when you're done with the editing, move it to the SaveData/Saves folder (or move it there before you edit).
  • Now open the Hex-editor and start editing, here's the addresses that's possible to change:



00000FEC-00000FEE = XYZ Start Location (Getaway mode only)



00000FF0 = Gamemode
00 = Single Race
01 = Tournament
02 = Knockout
03 = Hot Pursuit
04 = High Stakes (Will crash the game when the race is done. The car upgrades is activated in this mode.)

0000109C = Hot Pursuit Gamemode (only activated if 00000FF0=3)
00 = Classic
01 = Getaway
02 = Time Trap



00001098 = Opponent Skill
00 = Amateur
01 = Pro
02 = Champion
03 = Getaway Mode



000010A4 = Tickets Quota
Number of tickets for the police team. This value should be the total number of tickets for the speeders. I changed my game to have 4 speeders instead of 2, so for me this will be: 4*5=20 (14 in HEX).
NumberOfRacers * MaxTickets = TicketsQuota

000010A8 = Max Tickets for each speeder
Since the police team must deliver 20 tickets, each speeder needs to have 5 tickets. So this value must be 05.



000010E8 = Number of Laps: 2, 4 or 8. You can use any number here, but I wouldn't personally recommend it since I don't know how the game will keep any track records.
000010EC = Direction (0=Forward, 1=Backward)
000010F0 = Mirrored (0=Off, 1=On)
000010F4 = Nighttime (0=Off, 1=On)
000010F8 = Weather (0=Off, 1=On)



000010E0 = Track
00 = Celtic Ruins
01 = Landstrasse
02 = Dolphin Cove
03 = Kindiak Park
04 = Route Adonf
05 = Durham Road
06 = Snowy Ridge
07 = Raceway 1
08 = Raceway 2
09 = Raceway 3
0A = Hometown
0B = Redrock Ridge
0C = Atlantica
0D = Rocky Pass
0E = Country Woods
0F = Lost Canyons
10 = Aquatica
11 = The Summit
12 = Empire City



0000112C = Cheat Codes
00 = Deactivated
01 = GOFAST
08 = MOON
0A = MADLAND
14 = SKYVIEW
28 = OUTMYWAY
50 = RESETYA
02 00 00 xx = TR00 - TR15 (00-0F)
To add 2 cheats, simply add the two values together. Example: MOON and MADLAND: 8 + A = 12



0000115C = Enable/Disable Helicopter (0=Disable, 1=Enable)
0000114C = Helicopter Sounds (0=Off, 1=On)
000010AE = Helicopter Lights and countdown timer (0=Off, 1=On)



00001140 = Number of Cars in total (Max=10)
00001144 = Number of Humans in total (Max=02)

00001148 = Number of Human Drivers (Max=02)
0000114C = Number of Human Cops (Max=02)
00001150 = Number of AI Drivers (Max=0E)
00001154 = Number of AI Cops (Max=08)
00001158 = Number of AI Traffic (Max=0F)
All addresses above is to help the game to spawn the cars correctly. Always double check the AI types for each racer, cop or traffic driver. Otherwise the game crashes or will not spawn them correctly.




The following adresses here is for Player One, to change for the next player simply add 70 in the address, and another 70 for the next one.
Note: Each player always starts with the name, so it's quite easy to keep them apart.
00001160 is Player One.
000011D0 is Player Two.

00001160 = Name
Believe 10-12 characters is the max limit. 7 if you want to make it fit the number plate. Note: if you have 9-15 racers at once, their number plate will be blank.



00001170 = Car
This is the cars serial number. To load from the traffic folder, this value must be: FF FF FF FF.

00001174 = Car in your menu list and the traffics "serial number"
Where in the carlist does your car appear? Starts with 0. If your car is selectable in the menu, this value is not required to change. Traffic cars have the following values:
32 00 = Minivan
33 00 = Pickup
34 00 = Sedan 2
35 00 = Stationwagon
36 00 = Sedan 4
37 00 = Hatchback
38 00 = Bus
39 00 = 50's Truck
3A 00 = SUV
3B 00 = European Sedan
3C 00 = European Bus
3D 00 = European Semi
3E 00 = Semi
3F 00 = Snowplow
40 00 = Water Truck
F4 01 = Police Sedan
F5 01 = Police SUV
F6 01 = Police Hatchback
F7 01 = Police Caprice



0000117C = AI Type
This is a very important value to change. Players can't be AI controlled and AI's can't be playable.
Player values: 01=Racer, 09=Cop
AI values: 02=Racer, 04=Traffic, 08=Cop

00001188-0000118B = Primary Color
The color of the car: RGB + Transparency.

00001180 = Transmission (0=Manual, 1=Auto)
00001184 = Convertible Mode (0=Top up, 1=Top down)

000011CC = AI driver ID (Values: 00-47, 71 in total)
This is the AI driver ID, hair color, skin color and I think even their driving style. It's hard to observe their behaviour, but their looks will change however. An example is: 35 - Jammin (from the Career mode), he has cool green hair.  8)



That's all you need to know. I hope you'll get it to work and I bet you'll have more fun with NFS4 as I'm having.
If you want to help me out with this and providing research, you're more than welcome to do so. This post will be updated with additional information or discoveries.

Big thanks to Zalcus20 for finding additional addresses! Also big thanks for everyone that have tested and confirmed various values.

Have fun racing! :D


Pages: [1]

Support NFSAddons: