Guide to how to make a new track using an existing Wreckfest stock track.

Purple44

Well-Known Member
Team Bugbear Member
Guide to how to make a new track using an existing Wreckfest stock track. Or use one of End's Very TrackPack tracks if got permission.

Will do this guide in 3 parts:

Part1: How to get a stock Wreckfest track to load under the \mods folder, as it own track mod.
Part2: How to tweak stock track by removing reset walls, guardrails that are in the way and how to place objects or move them.
Part3: How to do aisectors, startpoints, checkpoints and AI race line.

Note: If looking for a guide to making a track from scratch in 3D Max or Blender, this is not the thread to read. But thread can be useful when you are ready to put your new track into Wreckfest.

*********************************************************************************

Part1: How to get a stock Wreckfest track to load under the \mods folder, as it own track mod.

First you going to need to pick a stock track to use and then find out where the track folder is for that track. I'm going to use End's Rock Bottom track as my example for doing this guide. Since I just made a new track there. :) Will need to use Bagedit, let us edit many of Wreckfest files.



Go to where Steam has installed Wreckfest and look for the \Bagedit folder.

The Wreckfest stock track files are under the \data\art\levels folder. But this time I using End's Rock Bottom track. To find where a certain track files are located, I use BagEdit to look at the .evse file for Rock Bottom: \data\property\event. But Rock Bottom not stock WF track, so I got go here to see End's Very TrackPack track files: \Steam\steamapps\workshop\content\228380\764432700 Use File> Open in Bagedit to change to that folder.



mis_rbRace.evse file:



This evse file says the Rock bottom track file(s) are here: /data/track/rbrace




To load a stock track you want to mod, need to make a folder for it under the \mods folder. I'm putting the Rock Bottom track under my figure8_track_pack mod folder. You can use any name for this folder. Can use caps and space if you want ( Big Test mod ). but folder names under the \data folder is best keep to lower case letters and no spaces.




I use the \data\art\levels\gameplayset folder since that what Bugbear uses. But End uses \data\track to put his track folders in. So I grab End's \rbrace track folder and drop it into my \mods\figure8_track_pack\data\art\levels\gameplayset folder and rename the the scne file to: rbrace_fig8.scne and folder name to \rbrace_fig8. Then I go to my \mods\figure8_track_pack\data\property\event folder and make a copy of one my .evse file and rename it to rbrace_fig8.evse and then make my changes.

If you just getting started with your track mod, will need to grab a envi file and a evse file for the stock track you borrowed ;)






Ok, here a key part if you want your track to load. The envi file and a evse file(s), all got start with the \event folder name. Like: figure8_track_pack Then for the evse file, you add the track folder name, like this: figure8_track_pack_rbrace_fig8.evse Now if add a second track to your mod, just change the name to use the new track folder name, like this: figure8_track_pack_tarmac3_long_fig8.evse

Now edit your figure8_track_pack_rbrace_fig8.evse file. Here where you give your new track a name and description and enter the path to your new track folder. Got get this path right to track or you will get this error message:





You will also need a tcat file for your track, if Wreckfest does not see a tcat file, track will crash when you go to load it. But if working with an existing track, there is already a tcat file. :)

If making a track from scratch, can grab one of the stock Wreckfest tcat files and just rename that tcat file to the name of your track. Then later you can tweak the tcat. If your custom track from scratch has any alt routes in the main track file thou, track will crash when a car tries to use alt route, if tcat file is not setup for the Alt route too.

Bugbear keeps tcat files here \data\property\track:



So I grab End's Rock Bottom tcat file: rbrace.tcat and drop file into my \mods\figure8_track_pack\data\property\track folder and rename it to rbrace_fig8.tcat. The tcat files need to have the same name of your main track file: rbrace_fig8.scne



Now start Wreckfest and then see if your new track mod is listed in the Mods list, if so enable track mod. see if Wreckfest will start it with out an error. Then you can go to Custom Event and scroll far right, should see an under construction track icon, click it and see if new track will load.



That enough for now. This a lot work!! Let me know if I made any mistake in my post.
 
Last edited:

Purple44

Well-Known Member
Team Bugbear Member
Part2: How to tweak stock track by removing reset walls, guardrails that are in the way and how to place objects or move them.

Now that you got your track mod to load in Wreckfest, we can move on to tweaking the stock track:



If working with a stock Wreckfest track and track has many versions, like rev, alt, etc, you will see a base scne file in the track's main folder:




So be sure to grab the base file if a stock track has one and put it into your track mod folder.




In pic above, you see Models, Subscenes and Antiportals sections. I like to separate the Models and Antiportals sections into there own track file and the Subscenes section into it own track file:

trackmapa.scne ( Models ) and trackmapb.snce ( Subscenes ) or basea and baseb if there a base file for the track.





End did not have any Antiportals in his Rock Bottom track. But Bugbear like use some with their stock tracks.

In the 3 pics, you can see I got rid of some Models stuff ( some grandstands ) and got rid of of some Subscenes stuff, like spectators and some trees. If working with a Bugbear stock track, you will usually find some reset walls you will want to delete and if track has a guardrail in your way, will need to delete it and the collision wall that goes with it.



If you are lucky, the reset wall(s) and guardrails will have proper names in the Models section. But sometimes, they just called a plane. So will have to do some trial and error and delete some plane objects, a few at a time until you find the right plane object(s). Once you know the number for each plane object you want to delete, then go back to a good copy of your trackmapa.scne file and just delete the plane objects you want to get rid of.

Thanks to Mazay getting Blender to now load the Models section of a Wreckfest track file ( Thx Mazay ), you maybe can get Blender to tell you which plane\metalfence\rail is the guardrail you looking for.



Blender can't export out a tweaked Models section, if you tried to delete metalfence008 using Blender. Will need to use Bagedit to delete metalfence008 from trackmapa.scne track file.

*********************************************************************

Now you got the Models and Subscenes sections into their own track file, you will need to get your main track file ( rbrace_fig8.scne ) to load these 2 scne files:




In the main track file, the Models section will be set to 0 and the Subscene section, set it to 2. That get rid of all the objects, that are now getting loaded in the trackmapb.snce file. Point Sub 0 to the trackmapa.snce file and point Sub 1 to the trackmapb.snce file. Be sure the Transformation coordinates are all set to what you see in pic above.

Now try loading your new track and drive your new track route ( ignore the red circle when go off track ) and see what objects need removing, what reset walls and guardrails need removing. Can use Blender to load Subscenes section and use blender to delete objects or move them. Then export your work back out.

***************************************************************************

I'm using Blender 2.81 and I use Mazay Blender SCNE Importer and Exporter tools to delete unwanted objects, like ghost trees and to copy and place objects on my track:


After you get Blender installed and Mazay scripts install into Blender, This how I load a track. Go File>Import> Bugbear Scene> click:



Now need navigate to where you got your track files. I want to load my trackmapa.snce file that has the Models section with the track terrain in it:




Now need to uncheck everything in the right side of import window, except paths, colors and Models. Then click Import SCNE






Now repeat steps above to load the the Subscenes objects in trackmapb.snce file, only select paths, colors and Subscenes this time:





Now all them orange dots are objects, there one more step to turn them dots into object shapes. Go File>Import> Bugbear Scene as Subscene> click:



Then need to navigate to WF \data\art\objects folder:



Then need to click Placeholder update and put mouse marker in window with the list of objects and hit the A key. This will select all the objects in the \data\art\objects folder. Now click Import SCNE:




If click an object, Blender will tell you the name of the object. :)




I did find some the trees are showing up as just colored boxes, but that because some the trees use on End Rock Bottom track are not in the WF \data\art\objects folder. They are in End track mod folder. I could load them if I point Blender to End Workshop folder.

In pic above, I use Blender to delete all the ghost trees in the area I wanted to use for Clueballs fig8 track. Then I started placing my own trees.
 
Last edited:

Purple44

Well-Known Member
Team Bugbear Member
Part2: contiune

Now that I got my base track square away, remove reset walls, guardrails + collision box and stock track objects in the way of my track, I can now start placing my objects. I will use a new track scne file to add my objects. I can take the trackmapb.snce file, make a copy and then rename track file to something like this: rbrace_rocks.scne ( I use the underscore _ if file uses more than one word. Can't have any spaces in a track file name )

Now my new rbrace_rocks.scne file has 944 objects from the trackmapb.snce file. I will change Subscenes window to just 1 and start there, adding new objects.



Also make sure Scale is set to 1,1,1. It use be 0,0,0 but now need be 1,1,1 for object not to ghost in-game.

Now I can make a copy\ Duplicate of first object and then use the in game-tool to get new coordinates for my next object and change the object to something else if I want, if doing object placing by hand:










Or last month, I was able to use Mazay Blender to import new rbrace_rocks.scne file ( along with trackmapa.snce file for the terrain ) and make a copy of prop_boulder3. Then place the second boulder where I want it. I loaded trackmapa.snce file first, then rbrace_rocks.scne, then I do the Bugbear Scene as Subscene option to get my objects to have correct shape.

Here some pics:


Right click object and select Duplicate Object or select object and do Shift+D to make a copy of object:



Then you can free move object a bit:



When done moving object with mouse, let go of object, will get the movement arrows back and you can finish moving object to where you want it:



Here what trackmap look like after I got done placing objects in the rbrace_rocks.scne file:




To move your view camera around, I like using the Walk Navigation option. use mouse to "look", use WASD keys to move cam around and mouse scroll wheel to speed up travel of camera around your map. Cam will move slow unless speed it up some.





The Walk Navigation option did not have a hotkey. I ask Mazay if I be OK using Shift+F and he said it be good. Here a couple of pics of how I assign a new hotkey for Walk Navigation:






When you ready to go test your work, will need to export the Subscenes section back out. Go Export> Bugbear Scene




Now need to tell Blender where to save scne file:



I save my work back to the track folder I'm working with and overwrite my track file ( rbrace_rocks.scne ). But before I do this, sometimes I make copy of older file, just to be safe, encase I screw something up. Also I leave the 3 checked settings on the right side of export window alone.



Will clean up all them extra copies when I get done with the track.

Now I can start Wreckfest and checkout my work. See if any object still need to be move a little more. Or maybe I need add some more objects. I usually work on one area of the track until I happy, then move to another part of track and start adding some more objects with Blender. Then export my work out again and go test. And if it a big trackmap I'm working on, I may start a new track file. Like I did for my Extreme fig8 track.



stuff.scene
stuff2.scene
stuff3-dakar.scene

Each stuff track file was a different area of this big track I did.

 
Last edited:

Purple44

Well-Known Member
Team Bugbear Member
Part3: How to do aisectors and checkpoint.

After I get done placing my objects, it time to do aisectors. I been using the stock aisectors, startpoints, checkpoints form the Rock Bottom track. Now time to redo the aisectors for my new track design. I start off with a few Aisectors in the start area of my track and add a few more to make a circle:



Look like this in Game:




I do my aisectors by hand and use 2 monitors. So at first, I use the stock aisectors that came with the Rock bottom to load the track and then use F11 to go free cam, that show me the coordinates of where my free cam is. And I go to where I want first aisector to start:



Say this the coordinates for the left side in pic above, I would type them into the 0 sector Left Border, then I would move my cam right, to where I want the right side coordinates and type them into the 0 sector Right Border:



I do kept an eye on the y coordinate ( height ). I try and keep it around +1 above ground level. My thinking is if I keep aisectors above ground level, cars should not reset under the trackmap.

In the red section in pic above, you see the Safe Border line and Raceline Border settings. These are the settings I use in the first aisector. Then when I make a copy, the same Border settings are there for the next aisector. I like having a wide border. Give me more room to move the raceline left or right. But some turns, the aisector may be pretty wide, so will push the outside Safe line and Raceline more to the middle of aisector and the inside Safe Border line and Raceline Border closer to the blue line aisector wall.



I usually do 3-4 aisectors before the aisector I'm going use for the start\finish line:



So after doing the coordinates for aisector #0, I make a copy of #0:



Now I use free cam and find the coordinates for aisector #1, then #2, #3 and #4 where I want my start\finish line. I do a couple more aisectors after start line. Then 2 more to help make my circle and I place the last aisector ( right now, #9 in pic above ) 1 point behind the left and right coordinates for aisector #0:



I cheat and make a copy of aisector #0 and then move that copy to the end of the list of aisectors, Then tweak the left and right coordinates so there a small 1 point gap between first aisector ( #0 ) and last aisector ( #9 ). Do not over lap these 2 aisectors.

Now before we start Wreckfest up again, need to delete all but the first checkpoint from the old Rock Bottom track. Wreckfest need to see at least 1 checkpoint. Now got to get new coordinates for the start\finish line checkpoint for your new track.



The first checkpoint need to be where you want the finish line for your track and you need an aisector blue wall where you want the finish line. Checkpoint will attach itself to the nearest aisector wall. In visualizer pic above, Checkpoint #0 attach itself to aisector #4.



When it comes to checkpoints I follow what Andrei posted back in May, 2016:

Hey Purple,

I've never actually used BagEdit for tweaking the AI routes or checkpoints (we use 3DS MAX to design those things here at Bugbear), so what I say in the following is only theory. Here goes anyway:

The checkpoint is a "gate", with the "Left Vertex" and "Right Vertex" marking the left and right edges of the gate, respectively.
The "Position In Ai Route" is the location of the center point of the checkpoint - it should lie at the (exact) center of those Left and Right Vertices.

So, if you want to move a checkpoint, do it like this:

1) move the Left and Right vertices to where you want
2) calculate the center point (just take the average for each of the x, y, z of Left and Right Vertices).

That should work.

Some notes that might help you:
  • Checkpoints should be located in correct order on the route ... so if you have checkpoint #3 appear later on the track than, say, checkpoint #7, strange things may happen. (Most likely you'll get the red "Wrong Way" circle.)

  • Checkpoint #0 always marks the start/finish line, so it is special. There are some restrictions concerning where or how much you can move it.

  • On some tracks, there are extra, Alternative Routes (like on Valkenswaard) - but Route Index #0 is always the Main Route.

  • The "pit lanes", for example, are Alternative Routes with their own checkpoints. On Valerbanen, checkpoint #15 is on the pit lane (as you can see in BagEdit: Route Index = 1 ).

  • If you set the "Is Split Point" to 1, the HUD will show you the "split times" (car ahead and car behind) when you cross the checkpoint. Typically, this is set for the start/finish checkpoint, and also some checkpoints in straights -- but not for checkpoints that are in places where it would cause distraction to the driver (in corners or jumps, and the like).

Cheers,
Andrei
I place the right and left coordinates for checkpoint outside of the blue lines and the checkpoint need to be before the blue aisector wall or after it. Don't have say left checkpoint coordinate before blue line and right checkpoint coordinate after the blue aisector wall.

The toughest part of doing checkpoints by hand, is calculating the midpoint coordinate. You need to divide the distance between the left vertex and the right vertex. So I use coordinates for left and right that can be divide by 2. So in pic above:

Left x=808 Right x=826 a distance of 18, divide by 2=9, x=808 +9=817 Position in AI Route ( midpoint ) x=817
Left y=92 Right y=98 a distance of 6, divide by 2=3, y=92 +3=95 Position in AI Route ( midpoint ) y=95
Left z=-510 Right z=-522 a distance of -12, divide by 2=-6, z=-510 -6=-516 Position in AI Route ( midpoint ) z=-516



If you get the math wrong, can end up with a midpoint like this and it won't show up in game:



This why I use Mazay's [TOOL] ai route visualizer v0.12 to double check my checkpoint after I have done a few. :)

Now when ready to do more checkpoints, I make a copy of last checkpoint, then go to next spot you want a checkpoint, with the aisectors showing and get my new coordinates for next checkpoint. I do a few checkpoints, then check in game to make sure they are showing up. Even drive through checkpoints to see if they are triggered.



As you drive through a checkpoint, the next checkpoint turns green. If the wrong checkpoint turns green, then something wrong.



Here what it look like in Mazay's visualizer tool:



Checkpoint can be on either side of the aisector wall. I usually do it in front of aisector wall, but sometimes I had need to to it after aisector wall.

Now to do startpoints. In the old days of modding Wreckfest, you had to do custom checkpoints for your track. But now you can let the game do auto startpoints for you using the tcat file. Much easier! :)



If open tcat file for your track with Bagedit, clicking Grid Generation Info will expand and give you options for setting up the start grid. like how far back from start line first row of cars start, spacing between cars and spacing between rows of cars and how many cars in a row. I usually use this auto startpoint grid option now for my tracks. :)

But sometimes I want to be different and maybe start the cars backwards from the start line. ;)

 
Last edited:

Purple44

Well-Known Member
Team Bugbear Member
Part4: How to do startpoints and AI race line.

Now to do startpoints. In the old days of modding Wreckfest, you had to do custom checkpoints for your track. But now you can let the game do auto startpoints for you, using the tcat file. Much easier! :)



If open tcat file for your track with Bagedit, clicking Grid Generation Info will expand and give you options for setting up the start grid. like how far back from start line first row of cars start, spacing between cars and spacing between rows of cars and how many cars in a row. I usually use this auto startpoint grid option now for my tracks. :)

But sometimes I want to be different and maybe start the cars backwards from the start line. ;)




To do custom startpoints, first you going have to turn off auto start grid by clicking Grid Generation Disabled box and save the tcat file.

Now start Bagedit and go to your main track file, open to the startpoints section:






Need go in-game and get the coordinates of where you want your first car to start at. Say 360, 18. -542. In bagedit pic above, I use a spacing between cars of 5 points, like this:

340, 18. -542
345, 18. -542 - second car
360, 18. -542 - first car
365, 18. -542

The second row use the same x coordinates as first row of cars. But for y coordinate I have a spacing of 7 points:

360, 18. -542 - first row
360, 18. -535 - second row

So the trick is to find the spacing you want to use between the cars in a row and how many cars you want in a row. Want 4 cars in a row, need 6 rows of cars. 24 divided by 4 = 6 Then figue out how close you want the rows of cars to be.




One big problem doing custom startpoints by hand, is getting the orientation coordinate to point car toward the start line. Now that you can load trackmap into Blender, you could place a car object near the start\ finish line and rotate car until you got direction you want. Save object car back out, then load object car into Bagedit to see what orientation numbers are. Then copy the the whole orientation box and paste into startpoint01.

Before Blender and back in my Flatout 2 track modding days, I use this orientation text file to get my orientation coordinates to use that got me close:




This text file is attach below
 

Attachments

EmDzei

Active Member
Nice stuff man!

I would like to see the day when 3rd party tracks can load directly from Wreckfest itself. Like line el_add=mods\12341234 in server_config.cfg file track section. Then the new track just downloaded from Steam. Simple.
 

Purple44

Well-Known Member
Team Bugbear Member
Modding tips:

Saw this posted by Mazay over at WF Discord:

MazayToday at 1:54 PM
Wow, what is this magic, I just learned new shortcut, Alt + D to duplicate, then Shift + R, to repeat ... that's the easiest way

MazayToday at 2:01 PM
So for example: Alt+D, X, 5, Enter, Shift+R, Shift+R, Shift+R...

 

Purple44

Well-Known Member
Team Bugbear Member
Checkpoint tip.

Was checking checkpoints for End's new harbor track and found a checkpoint missing:



Using Mazay's visualizer program, it show there should be 2 checkpoints there:





I got to looking at the pic and I notice the midpoint of checkpoint #6 was outside the blue aisector line. Long time ago, a Bugbear Dev said the midpoint of a checkpoint need be inside the blue lines of aisector. So I shorten the checkpoint gate of #6 and #7 so midpoint is now inside the blue line. Checkpoints show now. :)



Both checkpoints show now. But left side atl route checkpoint trigger the red circle. so I move checkpoint #5 back a couple of aisectors, now both checkpoints work. :)







Loading screen before starting a race or derby tip:

Was working on my Cops and Robbers mod today and my V8mover was spawning on top of a roof on Nevada Depot pit:





So I ask for some help in Wreckfest Discord modding channel and Sam told me I could use #startpointpit01 in the startpoints section of main track file:

Purple44Yesterday at 5:48 PM
Big Thanks Sam, the #startpointpit01 did the trick I did have a #startpointpit01 and that why my car spawned on that roof. So I use in-game cam, found me a spot where I like have "garage" background, did a little tweaking of coordinates and orientation numbers and I got this: :)



#startpointpit01



Then this morning End did some posting at Discord and with his help, we figure out how to do the "garage" screen before you start a race or derby. :)




Purple44Today at [2:00 AM]
I happy now, this is what I did, I have no #startpointpit01 or #startpointcarchange now, I use in-game cam and got coordinates of where I thought I would like the "garage" and still get some background buildings of Nevada Depot and put those coordinates in for the
coordinates for prop_start_tent8c_pitstop.scne Seem Wreckfest take care of spawning car to wherever prop_start_tent8c_pitstop.scne object is:





Add prop_start_tent8c_pitstop.scne object to your Subscence section:
 
Last edited:

Purple44

Well-Known Member
Team Bugbear Member
Guys in Discord today asking about the track cam:

peterToday at 5:17 AM
When the track is loaded, just before it goes to the "garage view" where you can adjust Difficulty, Tune etc, there is a certain view on the track for a few seconds which I wonder how I can define it. Currently its just showing track from far far away.

MazayToday at 8:15 AM
Theveryend04.05.2019
Tcat file defines the trackside cameras, while start camera is done by making an object in the scene named "resultcamera" and "resultcamera_target" (without "). Target is the point that camera focus on while the camera is the location from where it's filmed from.
 
Top