Remaking mini_dust2
by nappy (view all articles)

unrated
A short story on a 1.6 to source conversion
by nappy (view all articles)

unrated

Hi,
No idea where to put this. It covers most of the tutorial subjects. Lets put it in mod specifc since its for the counterstrike:source MOD.
It's is a work in progress so layout, text, etc etc it in notebook format.
Please let me know if you think this is usefull so i know i won't be wasting my (and your
time completing it.
It's at the 40% stage
The fy_mini_dust2 map can be found in the maps section. Some screenshots of the intermidate stages can be found via my site (the flickr link)
N4ppy
------------------ tutotial starts here --------------------
In this article i describe the building process of fy_mini_dust2. Here and there you'll find some TIPS. Nothing serious, more a note to myself if i have a similar project in the future
The proces started with a request from a [MVC] member if i could remake an old 1.6 favorite mini_dust2 for source. I had made some other maps and said ok i'll have a go.
Converting the map
First step was to convert the old 1.6 bsp file to something i could load in hammer. With BSPTwoMap i got a map file that i could open in Hammer.
TIP: Don't try to use what you get after the conversion! It's crap. Use it for reference only
I tried to clean up the file but the problem is that the BSP file only contains the visible bits, so all you get are pieces. A box is made up of the individual sides and if you want to resize it you need to resize all individual parts.
There were lotst of small errors in the allignment of brushes and loads of other little problems. And even if you fix all errors you still have a collection of loose brushes.
So after a while i decided to rebuild the whole map.
Changes to the original map
I have no idea who build the original mini_dust2. All credits for the great layout go there.
The only change to the layout is the credits room. The reason i added the room was that i wanted the double doors (they are in dust2
in the map but there was no place where i could place it without changing the map layout, so it ended up at ctspawn.
And then i had to block the door with stuff (and a player clip) so nobody could get in there. It was however a nice place to put the credits. I wish i had not, but more on the decal troubles it caused me in the pakrat section.
Visgroups are your friend!
One handly tool are the visgroups. I gave all surfaces in the converted file a texture and used the nodraw texture for all the new bits.
Step 1 was rebuilding all walls. By switching the old and new visgroups its easy to see all holes in the nodraw walls and find out what i missed.
After that it was the same for ceilings, "sand", floors etc etc.
TIP: be clear in the naming of your visgroups! At a later stage you can move stuff over to other groups but in the begining it makes for easier testing.
With the sand i started with loose pieces but ended up making one big displacement. The ?roads? you see are overlays.
Props
One of the major changes to the original layout is the use of props. In the 1.6 maps all crates etc were made up with brushes whilst in source you have the props.
The big advantage with props is that they are very easy to place and move and rotate and no hassle with textures etc. It also makes the map have a more consistant look and in this case come closer to dust2.
Disadvantage is the size. It's fixed so i had to sink some of the carates a bit into the sand so it's easy to jump on them. Fun part is the sunken crates add to the dust theme.
Compiling
I tend to do loads of compiling just to see how the map looks in the game. Lots off errors don't show in Hammer but show up in the game. One problem area only visible in game is light leaking past brush edges and lighting problems in general.
Testing at first is done without vis and vrad for layout, but after a while you need the light. I find that using the fast compile option shows most problems and gives a good feel for the light in the map. But after a while you need the normal full compile.
One thing to take into account is the number of NAMED lightsources. They all add to the compile time even if you don't do any thing with the named light. The lights inside can be switched on and off (see lighting) so the compiler has to do a pass for light on and a pass for light off. So be carefull or pe patient!
Adding depth to the map
Environment
So here i was with a working map layout but how to put some life into the map. "Whats behind those walls??" Here i copied some stuff from one of the dust2 remakes i found.
The houses behind the T and CT spawn points are copies from the T side of dust2. The "castle" like structure near the T spawn is also from dust2 (directly above the CT spwan)
I added some dust domes here and there and added the big dome at the T spawn end. Some grafity and a few bulletholes in the big wall.
I did not want to add the original windows there as well but needed some more "texture" there.
3D skybox
To make that erea more interesting i created a 3d skybox. The basics can be found here. I placed some trees near the wall and used a displacement surface to create the dunes in the background.
To add some more texture to the skybox i made copies of the houses in the map, shrinking them to 1/16th size and placing them on one of the "hills" (again just like dust2
I also copied one of the towers and placed them on top of the hills. It took just a few minutes but it looks great
More props
I added dynamic props inside. They are placed near the wall but somtimes with a granade it can create a lot of tripping troubles.
In front of the T Spawn there was some space so i added some dust2 stones and a car wreck (can't not have a car wreck in a dust themed map). Also added a little easter egg.
Lighting
One the map was done i found an other area where i ran into the DON'T USE THE OLD STUFF rule. The light_environment i used from the old map.
The problem was that the settings in the light_env was offline with the skybox texture. What you get is that the shadows are offline to the sun in the skybox.
I found the official info and used the vales there to correct the light. One change to the original is that i made it a bit less bright to get a good dark basement (a nice place to hide
One other Ah! was that the trees in the skybox where casting shadows that were TOO BIGGGGGG
The outdoors area near the T spawn had shadows i could not explain.
I disabled shadows on the props and that fied it!
One area where the lighting is different to the original map is the fact that the lights break. It makes for nice camping in the dark.
TIP: you can break both lights with one nade
Nav
Creating and editing the navigation grid to add the zone names you see in the messages. In the game type these command:
Adding these names will make the bots tell you where they are. You are limmited to the names Valve have place in the game but with a bit of fantasy you can name most area's
BUT!! Only do this after the layout of the map is fixed. It's a lot of work and if you change the layout and have to rebuild the nav file you lose all that work!!
Short how-to:
-sv_cheats 1
-nav_generate
-nav_edit 1
-nav_toggle_place_mode
-nav_use_place
-nav_toggle_place_painting (every area you point at will get )
-nav_edit 1
-nav_save
Usefull:
-nav_split will split an area (in the direction you are looking)
-sv_cheats 1 nav_analyse (will build the final nav file, also usefull after a mapsave to update the nav to the new build without losing place names)
ps pakrat has an option to "fix" the nav version if you embed the nav in the bsp file (see pakrat section)
Sound
I added two kinds of sound. The radios you hear at the spawn points (the antennas are there for a reason
and soundscapes.
To get the radios working all the time i had to add some logic or you will only hear the first round on a server.
The soundscapes are basicaly the background noise you hear plus some extras valve added. There are 3 soundscapes one indoor and one outdoor, both original dust2 and a special one in a special corner of the map
To get the soundcapes working you need soundscape switches at every place where you want the soundscape to change.
Cubemaps
place env_cubemaps in the map (64 units above ground in all areas and especially where there is somthing shiny)
compile map
start map and run buildcubemaps in console
restart (this saves the cubemaps in the bsp!!)
Why we need cubemaps? In short the maps uses it to know how it should look. The long story can be found here and in the Wiki
Textfile
Here you tell people what to do
Pakrat
stuffs everything in the bsp file
nav (with fix) txt,
troubles with decals/textures??
No idea where to put this. It covers most of the tutorial subjects. Lets put it in mod specifc since its for the counterstrike:source MOD.
It's is a work in progress so layout, text, etc etc it in notebook format.
Please let me know if you think this is usefull so i know i won't be wasting my (and your

It's at the 40% stage
The fy_mini_dust2 map can be found in the maps section. Some screenshots of the intermidate stages can be found via my site (the flickr link)
N4ppy
------------------ tutotial starts here --------------------
Building fy_mini_dust2
In this article i describe the building process of fy_mini_dust2. Here and there you'll find some TIPS. Nothing serious, more a note to myself if i have a similar project in the future

The proces started with a request from a [MVC] member if i could remake an old 1.6 favorite mini_dust2 for source. I had made some other maps and said ok i'll have a go.
Converting the map
First step was to convert the old 1.6 bsp file to something i could load in hammer. With BSPTwoMap i got a map file that i could open in Hammer.
TIP: Don't try to use what you get after the conversion! It's crap. Use it for reference only
I tried to clean up the file but the problem is that the BSP file only contains the visible bits, so all you get are pieces. A box is made up of the individual sides and if you want to resize it you need to resize all individual parts.
There were lotst of small errors in the allignment of brushes and loads of other little problems. And even if you fix all errors you still have a collection of loose brushes.
So after a while i decided to rebuild the whole map.
Changes to the original map
I have no idea who build the original mini_dust2. All credits for the great layout go there.
The only change to the layout is the credits room. The reason i added the room was that i wanted the double doors (they are in dust2

And then i had to block the door with stuff (and a player clip) so nobody could get in there. It was however a nice place to put the credits. I wish i had not, but more on the decal troubles it caused me in the pakrat section.
Visgroups are your friend!
One handly tool are the visgroups. I gave all surfaces in the converted file a texture and used the nodraw texture for all the new bits.
Step 1 was rebuilding all walls. By switching the old and new visgroups its easy to see all holes in the nodraw walls and find out what i missed.
After that it was the same for ceilings, "sand", floors etc etc.
TIP: be clear in the naming of your visgroups! At a later stage you can move stuff over to other groups but in the begining it makes for easier testing.
With the sand i started with loose pieces but ended up making one big displacement. The ?roads? you see are overlays.
Props
One of the major changes to the original layout is the use of props. In the 1.6 maps all crates etc were made up with brushes whilst in source you have the props.
The big advantage with props is that they are very easy to place and move and rotate and no hassle with textures etc. It also makes the map have a more consistant look and in this case come closer to dust2.
Disadvantage is the size. It's fixed so i had to sink some of the carates a bit into the sand so it's easy to jump on them. Fun part is the sunken crates add to the dust theme.
Compiling
I tend to do loads of compiling just to see how the map looks in the game. Lots off errors don't show in Hammer but show up in the game. One problem area only visible in game is light leaking past brush edges and lighting problems in general.
Testing at first is done without vis and vrad for layout, but after a while you need the light. I find that using the fast compile option shows most problems and gives a good feel for the light in the map. But after a while you need the normal full compile.
One thing to take into account is the number of NAMED lightsources. They all add to the compile time even if you don't do any thing with the named light. The lights inside can be switched on and off (see lighting) so the compiler has to do a pass for light on and a pass for light off. So be carefull or pe patient!
Adding depth to the map
Environment
So here i was with a working map layout but how to put some life into the map. "Whats behind those walls??" Here i copied some stuff from one of the dust2 remakes i found.
The houses behind the T and CT spawn points are copies from the T side of dust2. The "castle" like structure near the T spawn is also from dust2 (directly above the CT spwan)
I added some dust domes here and there and added the big dome at the T spawn end. Some grafity and a few bulletholes in the big wall.
I did not want to add the original windows there as well but needed some more "texture" there.
3D skybox
To make that erea more interesting i created a 3d skybox. The basics can be found here. I placed some trees near the wall and used a displacement surface to create the dunes in the background.
To add some more texture to the skybox i made copies of the houses in the map, shrinking them to 1/16th size and placing them on one of the "hills" (again just like dust2

I also copied one of the towers and placed them on top of the hills. It took just a few minutes but it looks great

More props
I added dynamic props inside. They are placed near the wall but somtimes with a granade it can create a lot of tripping troubles.

In front of the T Spawn there was some space so i added some dust2 stones and a car wreck (can't not have a car wreck in a dust themed map). Also added a little easter egg.
Lighting
One the map was done i found an other area where i ran into the DON'T USE THE OLD STUFF rule. The light_environment i used from the old map.
The problem was that the settings in the light_env was offline with the skybox texture. What you get is that the shadows are offline to the sun in the skybox.
I found the official info and used the vales there to correct the light. One change to the original is that i made it a bit less bright to get a good dark basement (a nice place to hide

One other Ah! was that the trees in the skybox where casting shadows that were TOO BIGGGGGG

I disabled shadows on the props and that fied it!
One area where the lighting is different to the original map is the fact that the lights break. It makes for nice camping in the dark.
TIP: you can break both lights with one nade
Nav
Creating and editing the navigation grid to add the zone names you see in the messages. In the game type these command:
Adding these names will make the bots tell you where they are. You are limmited to the names Valve have place in the game but with a bit of fantasy you can name most area's
BUT!! Only do this after the layout of the map is fixed. It's a lot of work and if you change the layout and have to rebuild the nav file you lose all that work!!
Short how-to:
-sv_cheats 1
-nav_generate
-nav_edit 1
-nav_toggle_place_mode
-nav_use_place
-nav_toggle_place_painting (every area you point at will get )
-nav_edit 1
-nav_save
Usefull:
-nav_split will split an area (in the direction you are looking)
-sv_cheats 1 nav_analyse (will build the final nav file, also usefull after a mapsave to update the nav to the new build without losing place names)
ps pakrat has an option to "fix" the nav version if you embed the nav in the bsp file (see pakrat section)
Sound
I added two kinds of sound. The radios you hear at the spawn points (the antennas are there for a reason

To get the radios working all the time i had to add some logic or you will only hear the first round on a server.
The soundscapes are basicaly the background noise you hear plus some extras valve added. There are 3 soundscapes one indoor and one outdoor, both original dust2 and a special one in a special corner of the map

To get the soundcapes working you need soundscape switches at every place where you want the soundscape to change.
Cubemaps
place env_cubemaps in the map (64 units above ground in all areas and especially where there is somthing shiny)
compile map
start map and run buildcubemaps in console
restart (this saves the cubemaps in the bsp!!)
Why we need cubemaps? In short the maps uses it to know how it should look. The long story can be found here and in the Wiki
Textfile
Here you tell people what to do

Pakrat
stuffs everything in the bsp file
nav (with fix) txt,
troubles with decals/textures??