Creating a working mini-map for CS:GO: Difference between revisions
Jump to navigation
Jump to search
Loothelion (talk | contribs) |
Loothelion (talk | contribs) |
||
Line 30: | Line 30: | ||
<li>Switch to orthographic mode with the console command <code>"cl_leveloverview ''x''"</code>, where ''x'' is the scale factor.</li> | <li>Switch to orthographic mode with the console command <code>"cl_leveloverview ''x''"</code>, where ''x'' is the scale factor.</li> | ||
<li>Set <code>"cl_leveloverviewmarker 1024"</code> to show a red helper line on the right. You will need to briefly toggle <code>cl_drawhud 1</code>, line it up, and then toggle the HUD off again.</li> | <li>Set <code>"cl_leveloverviewmarker 1024"</code> to show a red helper line on the right. You will need to briefly toggle <code>cl_drawhud 1</code>, line it up, and then toggle the HUD off again.</li> | ||
[[Image:dust2_overview.jpg|200px|thumb|Sample level overview (de_dust2)]] | [[Image:dust2_overview.jpg|200px|thumb|Sample level overview (de_dust2)]] |
Revision as of 06:26, 23 July 2013
Intro and Basics
Some mods (Counter-Strike:Source, Day of Defeat:Source) have a mini-map mode, that shows a level overview and projects players and objects on that map. An overview map is an image made from in-game screenshots and must be created once a new map is finished.
Counter-Strike:_Global_Offensive also has a mini-map feature. From the player's point of view, the mini-map behaves the same in game as in previous versions of Counter-Strike. But from a developer point of view quite a few things have changed from creating a level overview in Counter-Strike: Source.
The big differences are:
- In CS:GO the map overview is referred to as the "radar."
- CS:GO doesn't use VTFs and VMTs for the radar.
- In CS:GO radar files are saved as a ".DDS" file.
- There are only two necessary files to get a basic mini-map working the '.DDS" and a ".txt". The ".DDS" serves as the map overview image, and the ".txt" tells the Source engine how to display the overview.
To compare the differences in finer detail, read: Level_Overviews and see how to make a level overview for Counter-Strike: Source.
Make the raw overview image
- Start the game. Click Options and switch to the Video tab. Change Resolution to "1280x1024" pixels and the Aspect Ratio to "Normal".
- Load the new level with the map
<mapname>
console command and enable"sv_cheats 1"
. - Join a team.
- Turn off bots in the map.
"bot_quota 1"
using the console. - Bind the "screenshot" command to a key, etc.
"bind p screenshot"
using the console. This is important, as using the default screenshot key (F5) will take a compressed JPEG rather than a raw TGA.
- Remove any HUD elements with console commands
"cl_drawhud 0"
and"hidepanel all"
. - Remove disturbing world effects like skyboxes (
"r_skybox 0"
), fog ("fog_override 1"
and"fog_enable 0"
), props (optional:"r_drawstaticprops 0"
), etc. - Turn off player clipping.
"noclip"
using the console. Then move to a position where you can see the whole level from above. - Switch to orthographic mode with the console command
"cl_leveloverview x"
, where x is the scale factor. - Set
"cl_leveloverviewmarker 1024"
to show a red helper line on the right. You will need to briefly togglecl_drawhud 1
, line it up, and then toggle the HUD off again. - You can move around while cl_leveloverview mode is on. You are still in spectator mode and moving, so move the arrow keys to change the position. Now change scale so the map fits into the square defined by the red line. The right edge of your map should be on the left of the red line, anything to the right of the red line will be chopped off in a later step. Check the attached screenshot to see how this step looks in
de_dust2
running under Counter-strike:Source. - The current projection data (position and scale) will be updated in the console, eg "Overview:
scale 6.00, pos_x -2651, pos_y 4027
". - Once everything is perfect, take a screenshot (using the key you bound to "screenshot") and write down the projection data values. You will need them in a later step.