NFS-VltEd - usage (update 24.01.2017)

Using NFS-VltEd

Opening the database
  • In NFS-VltEd, on the File menu, click Open.
  • In the Browse For Folder dialog box, choose your game main directory, and then click OK.
The user interface





The user interface has three main sections:

1. Nodes Explorer
The database stores data in the hierarchical structure that can be represented as a tree. Main nodes (like chassis or ecar) represent classes and cannot be modified. Class defines all properties that assigned data items have (base) and/or can have (optional). Data items are displayed as children nodes of class node.


As an example, let's focus on the ecar class from Need For Speed Carbon game. The child node of the ecar class is "default".

2. Property Editor
To view all properties assigned to the node just click on the node name.
The properties will be displayed in the Property Editor window. First noticeable thing is that there are two categories:
- base - those properties are required by the game in order to work, the game will crash when only one of them will be available in the node
- optional - those properties are not required by the game in order to work. When optional property is not present in the particular node, the game loads it from the parent node, if parent node doesn't have it too, then it will be loaded from the parent node of the parent node and so on.  

Additionally the vault name is displayed but it is important only for the gameplay class.

Each node of the ecar class have the following base properties:
  • 0x7ce83504
  • 0xac97d3d1
  • 0xd74c1435
  • 0xdc04988f
  • BodyDive
  • BodyRoll - body roll is a reference to the load transfer of a vehicle towards the outside of a turn
  • BodySquat
  • CamberFront
  • CamberRear
  • CollectionName - internal value used by the game engine that must be the same as the node name. This value is automatically set by the tool after copy, rename and so on.
  • KitWhellOffsetFront - controls front wheels positions for each of body kits
  • KitWhellOffsetRear - controls rear wheels positions for each of body kits
  • ReflectionOffset
  • RideHeight - controls ground clearance
  • SkipFX
  • SlipFX
  • TireOffsets
  • TireSkidWitdh
  • WheelSpokeCount
and can have one of the following optional properties:
  • 0x0c2da793
  • 0x4b675dc8
  • 0x585517f3
  • 0xa9633fde
  • 0xb699b7be
  • 0xccf03cb3
  • EngineBlownEffect
  • FECompressions
  • IsSkinned
  • NOSEffect
  • RoadNoise
  • SteerSpeed
  • WheelHopScale
  • WheelWeel
Next, the default node has 5 sub-nodes: choppers, cops, racers, traffic, trailers. Each of those nodes represents a group of vehicles, for example all racers cars will be a sub-nodes of the racers node and so one.

The racer node contains a sub-nodes that represents all cars available for racing. Let's move to the 240sx node.
This node contains a settings for Nissan 240 SX.

Except base properties there are also two optional: FECompresions and WheelWell, that controls extra things. Next noticeable thing in the Property Editor is that some properties are able to be edited directly. For example the RideHeight property. The original value for this property is 0 and it can be easily changed to 100 or whatever, but there are also more complex properties like KitWheelOffsetFront, that must be expanded in order to edit.

There are two types of complex properties: sets and arrays. 
Sets:
- each of property can have different type, for example first property is a string and second is a numeric value.
- Number of sub-properties cannot be changed
Arrays:
- all items have the same type,
- for base property, capacity is fixed, only count (number of active items) can be changed,
- for optional property, capacity can be changed, capacity and count are the same

Some sets refer to nodes that belong to different class. The 240sx node has such set, which name is 0xd74c1435. 


The set has two properties: Class and Collection. In this case it refers to the 240sx_hood node that belongs to the camerainfo class. Using built-in find function, the node can be easily found. The camerainfo class contains the nodes that represent different camera settings used by the game like bumper, close, drift, far and hood. The the 240sx_hood has the following properties:



3. Script Editor

While editing the database all changes are stored in the Script Editor, for example if the value of the CameraFront property will be changed to 10 then the following line will be added at the end of the Script Editor content:
update_field ecar murcielago CamberFront 10

The main idea of the editor is to prepare mods, for instance user adjusts some car settings like position of wheel, then the changes will be stored as sequence of commands that represent operations done by the user. Next those changes can be exported as the ModScript file (.nfsms). All available commands are described in the ModScript section.

Hotkeys

The Nodes Explorer supports following hotkeys:
  • Left, Right, Up, Down, Home, End, PageUp, PageDown - moves between nodes
  • Ctrl+F - jumps to Find textbox
  • F3 - find next
The Property Editor supports following hotkeys:
  • Left, Right, Up, Down, Home, End, PageUp, PageDown - moves between properties
  • Ins - marks current property as modified (new line will be added to the Script Editor
  • NumpadPlus, NumpadMinus - expands / collapses collection of properties 
The Script Editor supports following hotkeys:
  • Ins - switches between Insert Mode and Overwrite Mode
  • Left, Right, Up, Down, Home, End, PageUp, PageDown - moves caret
  • Shift+(Left, Right, Up, Down, Home, End, PageUp, PageDown) - moves caret with selection
  • Ctrl+F, Ctrl+H - shows Find and Replace dialogs
  • F3 - find next
  • Ctrl+G - shows GoTo dialog
  • Ctrl+(C, V, X) - standard clipboard operations
  • Ctrl+A - selects all text
  • Ctrl+Z, Alt+Backspace, Ctrl+R - Undo/Redo operations
  • Tab, Shift+Tab - increase/decrease left indent of selected range
  • Ctrl+Home, Ctrl+End - go to first/last char of the text
  • Shift+Ctrl+Home, Shift+Ctrl+End - go to first/last char of the text with selection
  • Ctrl+Left, Ctrl+Right - go word left/right
  • Shift+Ctrl+Left, Shift+Ctrl+Right - go word left/right with selection
  • Ctrl+-, Shift+Ctrl+- - backward/forward navigation
  • Ctrl+U, Shift+Ctrl+U - converts selected text to upper/lower case
  • Ctrl+Shift+C - inserts/removes comment prefix in selected lines
  • Ctrl+Backspace, Ctrl+Del - remove word left/right
  • Alt+Mouse, Alt+Shift+(Up, Down, Right, Left) - enables column selection mode
  • Alt+Up, Alt+Down - moves selected lines up/down
  • Shift+Del - removes current line
  • Ctrl+B, Ctrl+Shift-B, Ctrl+N, Ctrl+Shift+N - add, removes and navigates to bookmark
  • Esc - closes all opened tooltips, menus and hints
  • Ctrl+Wheel - zooming
  • Ctrl+M, Ctrl+E - start/stop macro recording, executing of macro
  • Alt+F [char] - finds nearest [char]
  • Ctrl+(Up, Down) - scrolls Up/Down
  • Ctrl+(NumpadPlus, NumpadMinus, 0) - zoom in, zoom out, no zoom
  • Ctrl+I - forced AutoIndentChars of current line
Editing the database


When the database is loaded you can start modifying it. The ModScript script import  
  • In NFS-VltEd, on the File menu, click Import, and then ModScript. 
  • In the Import ModScript file dialog box, choose your .nfsms file, and then click OK. 
  • The ModScript Import results window will show up. 
 
The dialogue shows information related to the import process. 
There are three sections:
  1. description - it will be generated automatically if no description was loaded from the script, 
  2. images - similar to description, will be visible only when will be added to the script, 
  3. logs - are displayed as a table and contain information required to determine errors like script name, line, affected command and error message. By default logs will be collapsed when all commands were run successfully. 
  • To exit the dialog just press the Close button. Only commands that were run successfully will be added to the Script Editor. 
  • To save changes, on the File menu, click Save. 
Keep in mind that deletion of original nodes can cause game crash.

The ModScript

It's a simple scripting language that supports several commands and comments. The format is text-based, so .nfsms files can be edited by any text editor, for example Notepad.

The following commands are supported:
Comment, starts with # and continue until the end of the line.
Examples:
#comment

game arg1
defines target game, allowed parameters are: MW, C, PS, UC and W. It's allowed to pass more than one parameter.

Examples:
game MW # the script can be imported for the Most Wanted only
game C PS W # the script can be imported for the following games: Carbon, ProStreet and World

ui_text... continue until the end of the line.
optional message that will be displayed during the import process. This command can be used multiple times.

Examples:
ui_text1st line of the message
ui_text2nd line of the message

copy_file FILE.BIN CARS\FILE.BIN #comment

More descriptions will be added successively..............

Comments

  1. Waiting for info about adding hashes like in VLTEdit!
    Ex.:
    MiHaN 0xe8c24416 Max Heat Level by BlackList position!!!*

    ReplyDelete
  2. Czy planujesz wydać coś podobnego do U2 lub dodać wsparcie jeśli jest to możliwe? I jak idzie progres nad Mod Tool do Undecovera i czy planujesz też stworzyć Mod Tool do Hot Pursuit 2010?

    ReplyDelete
    Replies
    1. english only, anyway Undergound 2 won't be supported by NFS-VltEd because this game doesn't have a VLT database and at the moment I am not planning to create any tool for other game than (NFS UG-UC + WO)

      Delete
  3. Looks cool. Any idea how one can create new races with this? Like in Underground 2 is it's possible?

    ReplyDelete
  4. A small question: how to make traffic faster?

    ReplyDelete
    Replies
    1. And why doesn't nfsmwres work with this?

      Delete

Post a Comment

Popular posts from this blog

NFS-VltEd v3.1 Released