Just a test track

Is there any change that we "regular" people can use the script for pacenotes?:)

Thanks

If you start your project with BTB 0.6, I can tell you what to do and I can share my script (it a first version, written in half an hour). If you use BTB 0.7 my script is useless as there is only one way to change the project files: running BTB. With BTB 0.6 some things can be changed "by-hand" in the project file because it is a text file.
 
If you start your project with BTB 0.6, I can tell you what to do and I can share my script (it a first version, written in half an hour). If you use BTB 0.7 my script is useless as there is only one way to change the project files: running BTB. With BTB 0.6 some things can be changed "by-hand" in the project file because it is a text file.

Im still having both versions of btb.:fingers-crossed: waiting for instructions...
 
I have written the idea behind my first atempt to automatically set the pacenotes:

http://zaxxon.host22.com/2_13_Pacenotes.html

The idea will be changed as soon as I find a more reliable way of detecting the shape of the curves, but the steps needed will be those described on the web page:

1) Extracting track anchors info from the Venue.xml (absolute position and position relative to nodes)
2) Use of an algorithm to detect parameters of the curves, based on absolute position of the track anchors
3) Make a decision on detected parameters and asign pacenotes
3) Write a file with the pacenotes, using information of track anchors position relative to track nodes

The scripts I used for this first attempt of generating pacenotes automatically:
http://www.mediafire.com/?zm4wnittlwn

You need some of the scripts I used to create the Herman test track:
http://www.mediafire.com/?5wv2juynz1k

If you want to play with the scripts just copy "pacenotes" folder as a subfolder of the Herman's files (same directory level as "scripts" or "s1_mesh"). Then you can follow the steps described on the web page.
 
  • jharro

I have written the idea behind my first atempt to automatically set the pacenotes:

http://zaxxon.host22.com/2_13_Pacenotes.html

The idea will be changed as soon as I find a more reliable way of detecting the shape of the curves, but the steps needed will be those described on the web page...

since you're looking for ideas have a look at "driveline.ini", it contains the knots of a spline in the format:
- position (- 3 floats),
- tangent (3 floats),
- distance from start along curve(1 float),
- (and an unused 0 and the end).

now if you ignore the tangents you can use the positions to calculate normalized directions from a node to the next one. you can then use dot product of 2 consecutive vectors to determine the left/right and even elevation change. (dot product of 2 vectors gives you the cosine of the angle between those 2 vectors; in some situation you may even use a 3rd vector, say if the knots are A, B, C you'll have vectors AB, BC and AC).
i think if you plot a graf with the dot values against distance from start you'll see what i mean.

imho using the driveline.ini is a better choice because all the data needed is there regardless which version of BTB you're using but correct me if i miss something.
 
  • jharro

I have written the idea behind my first atempt to automatically set the pacenotes:

http://zaxxon.host22.com/2_13_Pacenotes.html

The idea will be changed as soon as I find a more reliable way of detecting the shape of the curves, but the steps needed will be those described on the web page...

since you're looking for ideas, ave a look at "driveline.ini", it contains the knots of a spline in the format:
- position (- 3 floats),
- tangent (3 floats),
- distance from start along curve(1 float),
- (and an unused 0 and the end).

now if you ignore the tangents you can use the positions to calculate normalized directions from a node to the next one. you can then use dot product of 2 consecutive vectors to determine the left/right.
(dot product of 2 vectors gives you the cosine of the angle between those 2 vectors; in some situation you may even use a 3rd vector, say if the knots are A, B, C you'll have vectors AB, BC and AC).
i think if you plot a graf with the dot values against distance from start you'll see what i mean :).

imho using the driveline.ini is a better choice because all the data needed is there regardless which version of BTB you're using but correct me if i miss something.
 
Thanks for your help.

I think it could be possible to use driveline.ini as an input, working with a new algorithm to detect curvature (as the data I used as input, the position of track anchors, would be missing). Let's assume we have that. Then I could generate a new "pacenotes.ini". The process of generating new pacenotes would be really easy for the user, as you only have to execute a script with one input file and one output file, without having to extract info by hand from text files.

If that works, the problem I see is that with BTB 0.7 there is still no chance to import the pacenotes so you can make final changes to them. The process of setting pacenotes will be done outside from BTB. Three solutions: 1) generating perfect pacenotes so no further changes are desired, 2) user has to edit by hand pacenotes.ini or 3) change the scripts to make by-hand changes on the pacenotes (move,remove,add) easy.

With BTB 0.6 the option of importing the generated pacenotes would be possible. So final adjustments could be easily done.
 
  • jharro

Thanks for your help.

I think it could be possible to use driveline.ini as an input, working with a new algorithm to detect curvature (as the data I used as input, the position of track anchors, would be missing). Let's assume we have that. Then I could generate a new "pacenotes.ini". The process of generating new pacenotes would be really easy for the user, as you only have to execute a script with one input file and one output file, without having to extract info by hand from text files.

If that works, the problem I see is that with BTB 0.7 there is still no chance to import the pacenotes so you can make final changes to them. The process of setting pacenotes will be done outside from BTB. Three solutions: 1) generating perfect pacenotes so no further changes are desired, 2) user has to edit by hand pacenotes.ini or 3) change the scripts to make by-hand changes on the pacenotes (move,remove,add) easy.

With BTB 0.6 the option of importing the generated pacenotes would be possible. So final adjustments could be easily done.

there is a 4th solution but is not exactly straight forward and kinda lets BTB out of the loop.

some years ago Kegetys made a tool called RBRDLL which along with other features it can edit pacenotes ingame.

the issue with using it along with RX tracks is the fact the RX tracks are loaded into the track-41_M slot, so RBRDLL will operate on the file called
track-41_M.dls which means we have some file replacing and renaming to do.

i can see 2 scenarios, first starting with an empty pacenotes.ini, load your track, use the RBRDLL to create and save the pacenotes then extract the notes from dls.

in a second scenario, you start with a pacenotes.ini created by BTB or your script; in this case:
- load the track once to have the \RX_CONTENT\TRACKS\yourtrack\CACHE\dls.dls produced;
- copy the dls.dls file created in the step above and paste it inside \Richard Burns Rally\Maps\ folder, then rename it as track-41_M.dls.
- load your track again and use RBRDLL to edit and save the pacenotes.
- extract the pacenotes from track-41_M.dls.

what's missing here is a tool to extract the pacenotes from track-41_M.dls into a ini file, you can use the program attached below; use Menu->Open to select track-41_M.dls, a track-41_M.dls.ini file will be created. all you need to do next is to rename this track-41_M.dls.ini into pacenotes.ini and move it into your RX track folder.

i know this by now seems quite ugly and complicated process but i belive is viable with a little patience :).
 

Attachments

  • dls.zip
    30.5 KB · Views: 150
  • Steely69

A nice idea black.f, pace notes are a very cumbersome thing to do at the moment and they are very important to make a track work well. One would have to be careful to keep a back up of the pacenotes.ini file seperate so it never got over-ridden with track updates but this scenerio would make creating pacenotes much easier. You could even use this concept to create the pacenotes.ini then once you are happy with it use the pacenotes.ini to manually do the pace notes in BTB.

Your dls.zip didn't seem to contain a program??
 
  • Steely69

Winrar reckons there's a file called dls size 31,262 in there, XP and winzip seem to think it's invaid or corrupt??
 
  • jharro

Winrar reckons there's a file called dls size 31,262 in there, XP and winzip seem to think it's invaid or corrupt??

that's weird, i've used XP to zip, i've redownloaded the file, extracted and worked, is strange, anyway here is zipped with 7z.

edit: just checked the file on a windows 7 machine and it also worked, so i'm quite sure there is nothing wrong on this end.
 

Attachments

  • dls.zip
    29.7 KB · Views: 137

Latest News

Online or Offline racing?

  • 100% online racing

    Votes: 86 7.4%
  • 75% online 25% offline

    Votes: 122 10.5%
  • 50% online 50% offline

    Votes: 170 14.7%
  • 25% online 75% offline

    Votes: 321 27.7%
  • 100% offline racing

    Votes: 455 39.3%
  • Something else, explain in comment

    Votes: 4 0.3%
Back
Top