Modding NHeat - Car Import To Heat

Assuming there's already a nice car 3D model at hand, this is now about the basic steps how to get it into NHeat

  1. First of all create a new subfolder in NASCAR Heat main directory.
  2. Name that folder newmod for now; you can rename it later on.
  3. Create a text file mod.cfg in newmod folder. Put in lines :

        short_name NEWMOD
        pretty_name NEW MOD FOR NASCAR HEAT
        author NEWBIE N00B

  4. Copy drivers.txt from NASCAR Heat main folder to newmod folder
  5. Copy PAINT.RES from NASCAR Heat run/data or main folder to newmod folder
  6. Load STOCK.CAR file from NASCAR Heat run/data or main folder to WinresToolsWizard and unpack it to some new folder (we'll name it mycar for example) on your workspace drive.
  7. Load physics file to mycar folder and save it as physics.txt
Next thing to do is to import the new car's model to Zmodeler, while making sure that the texture files that have been mapped to this model are in the same folder as the 3D file. If there's no texture files, or the mapping looks weird for now, don't mind, we'll go for this a little later.

The car model's center should be located at x,z (length, width) = 0,0 in Zmodeler, but it should be placed so that it's lower end should be above y (height) = 0. If it doesn't, move the car's object(s) by using Modify... -> Move function in Zmodeler

Now check dimensions. Switch to Object mode and have a look what objects there are. If there's any objects that are not part of the car body, such like car a shadow object or tire objects or headlight flash objects, delete them. In NHeat, the car's 3D file only has to have the car 3D model object.

For the example car (BMW M3) we know from some internet research that it should have about these dimensions
  • Length = 4.450m
  • Height = 1.250m
  • Width = 1.850m
Check Edit -> Attributes to get info about the the actual car model's dimensions. The model's dimensions should match (in Zmodeler's units) the real world car's dimensions (in meter). If it doesn't match, you'll have to do some scaling, best done in Object mode (Modify...-> Scale). Generally I'd suggest to do any scaling always only along one axis at the same time. On scaling height, have in mind that the real world car's height probably includes tires, while the car model doesn't have tires. You'll have to subtract the real world car's ride height to get the car model's supposed body height.

Export to Heat
Once dimensions are set right, the car can be exported to NHeat for the first time.

  1. In Object mode, merge all objects (Create...-> Objects... -> UniteSelect)
  2. Rename the resulting object car[0]. The [0] is important !
  3. Export the car[0] to MOD format to file mycar.mod
  4. Copy mycar.mod to high1.mod - high9.mod and to low1.mod - low6.mod in mycar folder
  5. Switch to WinresToolsWizard in MKRES mode and create a file from mycar folder's content
  6. Copy to newmod folder
  7. Open drivers.txt in newmod folder with notepad (or any other text editor)
  8. Substitute all drivers.txt's content by this single table
        table Driver
          number 999
          name test
          chassis mycar
          rank 1
          race_image 100
          body_style fcar
  9. Save drivers.txt
  10. Run NHeat.exe -mod:newmod -noautoplay
  11. On Driver Selection screen, select driver "test"
  12. Head for some road (!) track (Default camber on oval tracks makes checking correct dimensions difficult)
  13. The car will show up red. Don't mind for now, this first import to Heat is for adjusting dimensions only
  14. Check ride height, wheelbase, front/rear track and tire dimensions
  15. Adjust dimensions
  16. Start over at 3 by skipping 7-9 until all looks fine
That's the basic steps to import a new car to NHeat. On the way up to here perhaps some questions have come to your mind. Such as
  • How do I make the car's texture show up in Heat ? That will be explained on next step, in the Mapping Tutorial
  • Why are there high1-high9 and low1-low6 when there's only one car model ? It's for LOD Modeling
  • What's the use of lod.val and lod_hi.val ? Again LOD Modeling
  • What's high0.mod and low0.mod for ? It's the Cockit's 3D model
  • What's highb.mod and lowb.mod for ? It's the Brakelights
  • How do I put in different tires ? Check here
Patience, grashopper - there's quite some more steps to go... ;)

[ Importing Cars ]