Jump to content

3ds max track/path editor


The Hero

Recommended Posts

Wrote a little script today to edit train tracks or flight paths (same thing really) of gta III:

It also handles camera definitions (train.dat), see my post below.

http://aap.papnet.eu/gta/3dsmax/gtatracks.ms

 

 

trackdlg.png

 

Put into 3ds max' startup directory and open the rollout from the maxscript panel.

You can add train stations by putting the distances in the edit box and click "add stations" with the track spline selected. When you click "info", the default (hardcoded) train stops are printed to the maxscript listener for copy and paste convenience.

The stops are imported as dummies as children of the spline object. On export all objects that are children of that spline are printed as distance values as used by III in the maxscript listener.

 

Have fun.

 

EDIT: Maybe you want to know how to actually edit the train stations:

The calls to CTrain::ReadAndInterpretTrackFile at 54F035 (el-train) and 54F06D (subway) have as arguments the number of stations and the station distances on the path measuring from the first path node.

float StationDist[3] at 602284

float StationDist_S[4] at 602290

Moving and removing stations is easy. Just change the distance value and (optionally) decrease the number of distances in the function call. Adding stations might need increasing of arrays.

Edited by Silent
Link to comment
Share on other sites

Adding stations might need increasing of arrays.

http://gtaforums.com/topic/733982-fastman92-limit-adjuster/

 

 

; Max number of track stations (6)#Max number of track stations = 6; Enables track config loader#Enable track config loader = 0
Edited by fastman92
  • Like 1
Link to comment
Share on other sites

Updated the script. It now handles train.dat files (http://www.gtamodding.com/wiki/Train.dat). All bounding boxes have a child camera that can be free (aimed at train in game) or targeted, it also has near and far clip values set. To export select all boxes (or the group which is created on import).

 

EDIT: After looking at the code it looks like what the wiki suggests might be far clip seems to be unused actually. And the value would be too low for far clip, looks more like FOV.

EDIT2: FOV is fixed at 70, so either unused or something else.

Edited by The Hero
  • Like 3
Link to comment
Share on other sites

Nice work!

Link to comment
Share on other sites

MrGTAmodsgerman

So this is for GTA San Andreas? Could you make one for GTA V?

  • KEKW 1
Link to comment
Share on other sites

No and no.

 

(EDIT: but I really should clarify this is for III, the tags suck)

Edited by The Hero
Link to comment
Share on other sites

Igor Bogdanoff

Isn't this technically LCS too?

rLDswx2.png1626894873381.gifyardies-in-pip-2022.png

Link to comment
Share on other sites

  • 6 years later...
On 3/6/2017 at 2:18 AM, The Hero said:

Wrote a little script today to edit train tracks or flight paths (same thing really) of gta III:

It also handles camera definitions (train.dat), see my post below.

http://aap.papnet.eu/gta/3dsmax/gtatracks.ms

 

 

http://aap.papnet.eu/gta/3dsmax/trackdlg.png

 

Put into 3ds max' startup directory and open the rollout from the maxscript panel.

You can add train stations by putting the distances in the edit box and click "add stations" with the track spline selected. When you click "info", the default (hardcoded) train stops are printed to the maxscript listener for copy and paste convenience.

The stops are imported as dummies as children of the spline object. On export all objects that are children of that spline are printed as distance values as used by III in the maxscript listener.

 

Have fun.

 

EDIT: Maybe you want to know how to actually edit the train stations:

The calls to CTrain::ReadAndInterpretTrackFile at 54F035 (el-train) and 54F06D (subway) have as arguments the number of stations and the station distances on the path measuring from the first path node.

float StationDist[3] at 602284

float StationDist_S[4] at 602290

Moving and removing stations is easy. Just change the distance value and (optionally) decrease the number of distances in the function call. Adding stations might need increasing of arrays.

Thank you

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • 1 User Currently Viewing
    0 members, 0 Anonymous, 1 Guest

×
×
  • Create New...

Important Information

By using GTAForums.com, you agree to our Terms of Use and Privacy Policy.