RadGen (Radar Generator) is a tool for Counter-Strike 2. This tool can generate highly customisable overviews for maps using meshes, entities and/or materials, by assigning them to specific Selection Sets.
It can also be used in either a Material based workflow, or a Selection Set based workflow.
Installation
- Download .NET Runtimes
- Download and install the latest .NET 8 runtime
- Install RadGen
- Download and unzip the latest release. Then, inside the unzipped folder, run RadGen_Install.bat (located in the 'Setup' folder).
Note:Make sure to unzip these files into their own folder, named the same as the zip. It should be something like this: RadGen - v0.10.1
- Enabling/Disabling RadGen (unable to play online or see RadGen stuff in Hammer?)
- The changes to the two gameinfo.gi files currently disables you from playing online on official Valve servers.
- Run RadGen_Enable.bat and RadGen_Disable.bat to enable/disable the ability to play online vs the ability to see RadGen materials and entities inside Hammer.
Note:CS2 must be closed to run these.
Note:If CS2 receives an update, you may need to run RadGen_Enable.bat again.
Note:RadGen can generate radars without being 'Enabled'.
- Generating a radar
- When opening the game with the tools, open the console and change the Convar Helper's 'Page' dropdown to one of the 'User Page' options.
- Click the cog on the right hand side, and choose 'Import Page'. Select the 'RadGen_vconsole_template.ini' file.
Note:The template can be regenerated again to include new addons by clicking the 'Update Page Template' button, or running the 'RadGen_SetupConvarPage.bat' file in your 'Counter-Strike Global Offensive/RadGen' folder. This file will need to be imported again to show any changes.
- You should now see a list of buttons for the the main maps in your addons.
Note:This will only work if your vmap is named the same as your addon in the /maps folder, or if it is the only vmap in there. You may need to edit those buttons to point to your vmap if this is not the case.
- 'Generate Radar' buttons will generate a radar for your map, and update it in-game.
- 'Update radar' buttons will update your existing radar it in-game. Useful when wanting to manually tweak a previously generated radar.
Bundled Software
Included with RadGen is Yanzl's RadarGen .sbsar file, which allows you to create a Valve style radar with ease using RadGen and Substance Designer.
- Enable Export Raw Masks in radgen_config.
- Generate the overview using RadGen. Raw mask files will be exported to the /_radgen_extras folder
- Drag the RadarGen .sbsar file (located in your Counter-Strike Global Offensive/RadGen folder) into Substance Designer, and use the raw mask files as inputs.
- Overwrite the original .tga radar file in your addon's /panorama/images/overheadmaps folder.
Usage
To get started, add a radgen_config entity into the map.
Two auto Visgroups are created automatically: 'RadGen - Point Entities' & 'RadGen - Mesh Entities'.
It is potentially recommended to disable these when compiling a level, as some meshes may be visible in-game when tied to certain entities.
Mesh Entities including Buyzones, Bombsites and Rescue Zones, are drawn by default.
For bombsites, it will use their bombsite letter set in the entity's keyvalue in hammer for the .txt file outputted.
Props are supported and will display correctly for whichever selection set they are placed in. Props in the 'RadGen' selection set will be shown as cover as a default.
Overlays are supported. You can use either the info_overlay entity or the more thorough radgen_info_overlay entity for this.
There is support for both prefabs and instances.
Subdivision of all power levels is supported.
There are two workflows supported by RadGen:
- Material based workflow
- Selection Set based workflow
Note:These workflows can be used interchangeably, and at the same time. There are no configuration changes needed to work in either way.
To generate and update a radar, click the 'Generate' radar button for your addon's map in VConsole's Convar Helper page that uses the RadGen_vconsole_template.ini file (check the installation instructions).
To update a radar in game only, click the 'Update' radar button for your addon's map instead.
A '*vmap_name*.radgen.log' file is created next to your .vmap file when running RadGen. Take a look at this to view your radar's generation progress, or to search for errors.
Workflow 1 (Material based)
You may want to use separate meshes to your playable map itself.
Everything for the radar should go into a custom Selection Set named RadGen (including radgen_box mesh entities), excluding the point entities.
RadGen will only display mesh faces with a RadGen texture applied to them. These include Path, Overlap, Cover, Door, Ladder and Danger.
The Remove texture will disallow anything to display within its volume.
The Ignore texture will be completely ignored, and is just a nice way to show mesh faces you don't want to draw.
You can apply the textures to all faces on a mesh, but it may cause slight issues when using stroke around your meshes, so if you notice any slight issues with stroke then that is likely the cause. In this scenario, only apply the texture to the top face.
If you wish to create separate meshes using the RadGen materials for objectives, such as Buyzones, Bombsites and Rescue Zones, these meshes will take priority over the mesh entities.
Selection Set
These are the materials that can be used with the Material based workflow.
Image
|
Material name
|
Description
|
|
radgen/path
|
Displays a Path.
|
|
radgen/overlap
|
Displays an Overlap.
|
|
radgen/cover
|
Displays cover.
|
|
radgen/remove
|
Defines a volume to not display anything in.
|
|
radgen/door
|
Defines a volume as a Door.
|
|
radgen/ladder
|
Defines a volume as a Ladder.
|
|
radgen/danger
|
Defines a volume as a Danger.
|
|
radgen/buyzone
|
Defines a volume as a Buyzone.
|
|
radgen/bombsite_a
|
Defines a volume as a Bombsite A.
|
|
radgen/bombsite_b
|
Defines a volume as a Bombsite B.
|
|
radgen/rescue_zone
|
Defines a volume as a Rescue Zone.
|
|
radgen/hostage
|
Defines a volume as a Hostage.
|
|
radgen/t_spawn
|
Defines a volume as T Spawn.
|
|
radgen/ct_spawn
|
Defines a volume as CT Spawn.
|
|
radgen/ignore
|
Does nothing, an option for unused mesh sides.
|
|
radgen/radgen_overlays
|
Example for use on info_overlay and radgen_info_overlay entities. Optional.
|
|
radgen/radgen_box
|
Example for use on radgen_box entities. Optional.
|
Workflow 2 (Selection Set based)
You can also use the same workflow as TAR and JERC (CS:GO auto radar tools), avoiding the need of using the RadGen materials, and allowing you to use your already placed meshes for the overview.
The available selection sets are: 'radgen_remove', 'radgen_path', 'radgen_overlap', 'radgen_cover', 'radgen_door', 'radgen_ladder', 'radgen_danger'.
You will want to place anything else in the normal 'radgen' Selection Set, as done in the Material based workflow.
Selection Sets
Name |
Works with |
What to add |
Description
|
radgen_path
|
Meshes, Mesh Entities, Props
|
Accessible path areas.
|
The accessible ground areas the player can walk on.
|
radgen_overlap
|
Meshes, Mesh Entities, Props
|
Accessible overlapping ground areas.
|
The accessible path areas the player can walk on that are above a radgen_path area in the same overview level.
|
radgen_cover
|
Meshes, Mesh Entities, Props
|
Cover.
|
The cover in the level, displayed on top of paths.
|
radgen_remove
|
Meshes, Mesh Entities
|
Inaccessible path areas.
|
The inaccessible path areas. Stops the overview including anything in this area. A workaround to messy meshwork.
|
radgen_door
|
Meshes, Mesh Entities, Props
|
Doors.
|
The doors in the level.
|
radgen_ladder
|
Meshes, Mesh Entities, Props
|
Ladders.
|
The ladders in the level.
|
radgen_danger
|
Meshes, Mesh Entities, Props
|
Any dangerous places in the level.
|
Adds a semi-transparent overlay on top of accessible paths in a level, denoting that these areas can damage players.
|
radgen
|
Mesh Entities, Point Entities, Props, Overlays
|
Everything else.
|
Any other materials/entities that do not have their own selection set should be added here, as they support the Material Based workflow only.
|
These entities allow for greater customisation of radars.
Icon
|
Classname
|
Description
|
Keyvalues
|
|
radgen_config
|
Configure the main functionality.
|
- Workshop ID (workshopId) <string>
- Used for Danger Zone maps for duplicating the overview (for the tablet) into the correct location for packing
- Overview Gamemode Type (overviewGamemodeType) <choices>
-
- 0: Standard
- 1: Danger Zone
- Danger Zone Uses (dangerZoneUses) <choices>
- Defines which filepaths to export the overview to (only used if Overview Gamemode Type is set to Danger Zone)
- 0: Both
- 1: Tablet
- 2: Spawn Select
- Alternate Output Directory (alternateOutputPath) <string>
- DO NOT USE BACKSLASHES. An alternate base output directory. Leave blank if you want to output to /game/csgo/ only. Don't include /resource/overviews/. Eg. C:/Dropbox/RadGen/
- Only Output to Alternate Path (onlyOutputToAlternatePath) <choices>
-
- Export Multilevel Radar (exportRadarAsSeparateLevels) <choices>
- Exports multiple separate radars (if there are any radgen_divider entities)
- Separate Multilevel Radar Gradients (useSeparateGradientEachLevel) <choices>
- Uses a new gradient for each level instead of one gradient for all levels combined
- Ignore Displacement X/Y Changes (ignoreDisplacementXYChanges) <choices>
- Ignores changes on the X and Y axis for subdivision displacements, as they can cause graphical bugs on overviews
- Use Model Vertices Instead of Bounding Box (useModelVertices) <choices>
- Uses model vertices to calculate faces to show as cover on the overview. When disabled, it uses bounding boxes.
- Background Image Filename (backgroundFilename) <string>
- For custom images, place them inside your addon's folder, like so: .../Counter-Strike Global Offensive/content/csgo_addons/{addon_name}/materials/RadGen/backgrounds/{filename}
- Radar Size Multiplier (float) (radarSizeMultiplier) <float>
- A multiplier for altering the size of the level in the radar
- Overlap Alpha (Whole Number) (overlapAlpha) <integer>
- The alpha value for overlap mesh sides (0-255)
- Danger Alpha (Whole Number) (dangerAlpha) <integer>
- The alpha value for danger mesh sides (0-255)
- Path Colour High (pathColourHigh) <color255>
- Colour of path world meshes at the highest point
- Path Colour Low (pathColourLow) <color255>
- Colour of path world meshes at the lowest point
- Overlap Colour High (overlapColourHigh) <color255>
- Colour of overlap world meshes at the highest point
- Overlap Colour Low (overlapColourLow) <color255>
- Colour of overlap world meshes at the lowest point
- Cover Colour High (coverColourHigh) <color255>
- Colour of cover world meshes at the highest point
- Cover Colour Low (coverColourLow) <color255>
- Colour of cover world meshes at the lowest point
- Door Colour (doorColour) <color255>
- Colour of door world meshes
- Ladder Colour (ladderColour) <color255>
- Colour of ladder world meshes
- Danger Colour (dangerColour) <color255>
- Colour of danger world meshes
- Overlays Colour (overlaysColour) <color255>
- Colour of info_overlay and radgen_info_overlay (unless overridden) entities
- Stroke Width (Whole Number) (strokeWidth) <integer>
- Width of stroke to use
- Stroke Colour (strokeColour) <color255>
- Colour of the stroke
- Stroke Around Path Materials (strokeAroundPathMaterials) <choices>
-
- Stroke Around Overlap Materials (strokeAroundOverlapMaterials) <choices>
-
- Stroke Around Remove Materials (strokeAroundRemoveMaterials) <choices>
-
- Stroke Around Entities (strokeAroundEntities) <choices>
-
- Stroke Around Mesh Entities (strokeAroundMeshEntities) <choices>
- Currently, if there is more than one mesh in an entity, it will not combine them, so they will keep their individual borders
- Stroke Around Overlays (strokeAroundOverlays) <choices>
-
- Default Level Num (Whole Number) (defaultLevelNum) <integer>
- Enable Levels As Backgrounds (levelBackgroundEnabled) <choices>
- Adds all levels as a background for each level when using multiple radar levels
- Levels Background Darken Alpha (Whole Number) (levelBackgroundDarkenAlpha) <integer>
- The alpha value of the black overlay to apply onto the background levels (0-255)
- Levels Background Blur Alpha (Whole Number) (levelBackgroundBlurAmount) <integer>
- The amount of gaussian blur to apply to the background levels
- Higher Level Output Name (higherLevelOutputName) <string>
- The higher level radar name RadGen uses for naming
- Lower Level Output Name (lowerLevelOutputName) <string>
- The lower level radar name RadGen uses for naming
- Export .TXT (exportTxt) <choices>
- Exported into your `...\content\csgo_addons\*addon_name*\panorama\images\overheadmap\` folder. Only exported if overview Gamemode Type is set to Standard
- Export .TGA (exportTga) <choices>
- Exported into your `...\content\csgo_addons\*addon_name*\panorama\images\overheadmap\` folder
- Export .PNG (exportPng) <choices>
- Exported into your `...\content\csgo_addons\*addon_name*\panorama\images\overheadmap\` folder
- Export .JPG (exportJpg) <choices>
- Exported into your `...\content\csgo_addons\*addon_name*\panorama\images\overheadmap\` folder
- Export Raw Masks (exportRawMasks) <choices>
- Exported into your `...\content\csgo_addons\*addon_name*\_radgen_extras\Overview\` folder. Exports raw masks which are designed for use with Yanzl's Substance Designer .sbsar file to make a clean radar imitating Valve's style
- Export Background Levels Image (exportBackgroundLevelsImage) <choices>
- Exported into your `...\content\csgo_addons\*addon_name*\_radgen_extras\` folder. Exports background levels image (if 'Export Multilevel Radar' is selected and there are any radgen_divider entities)
- Export Resolution (Whole Number) (exportResolution) <integer>
- Export resolution for each file format
- Max Num of Vertices Per Mesh Face (Whole Number) (maxNumberOfVerticesPerMeshFaceLimit) <integer>
- The maximum number of vertices a face can have for it to be included when creating the overview. Faces with more vertices than this will be ignored. Use with caution, as a high number and messy mesh topology can cause this to take a very long time.
- Use Subdivision (useSubdivision) <choices>
- EXPERIMENTAL - Uses subdivision displacement changes on appropriate meshes, rather than just the mesh's position.
|
|
radgen_divider
|
A divider between different levels of the radar.
|
- Mins (mins) <vector>
- Maxs (maxs) <vector>
|
|
radgen_ceiling
|
Overrides the minimum height value of a radar level that is used for gradients.
|
|
|
radgen_floor
|
Overrides the maximum height value of a radar level that is used for gradients.
|
|
|
radgen_info_overlay
|
An info_overlay with the ability to set a colour for this overlay instead of using the radgen_config's overlay colour.
|
- Pitch Yaw Roll (Y Z X) (angles) <string>
- This is the overlay direction. Pitch is rotation around the Y axis, yaw is the rotation around the Z axis, and roll is the rotation around the X axis. (Yaw is used for rotating the overlay in the overview)
- Material (material) <material>
- Order Num (Whole Number) (orderNum) <integer>
- Override Colour (overrideColour) <choices>
- Uses the colour set on this entity instead of the radgen_config's overlay colour value
- Colour (R G B) (rendercolor) <color255>
- Colour Alpha (Whole Number) (colourAlpha) <integer>
- The alpha value of the overlay (0-255)
- Stroke Colour (R G B) (colourStroke) <color255>
- Stroke Colour Alpha (Whole Number) (colourStrokeAlpha) <integer>
- The alpha value of the overlay stroke (0-255)
|
|
radgen_box
|
A Mesh Entity that can specify showing a unique colour when displayed in a radar. Increases customisability for what users can do.
An example of this would be to showcase the connections between different teleporters in a map.
|
- Order Num (Whole Number) (orderNum) <integer>
- Colour (R G B) (rendercolor) <color255>
- Colour Alpha (Whole Number) (colourAlpha) <integer>
- The alpha value of the RadGen box (0-255)
- Stroke Colour (R G B) (colourStroke) <color255>
- Stroke Colour Alpha (Whole Number) (colourStrokeAlpha) <integer>
- The alpha value of the RadGen box stroke (0-255)
- Stroke Width (Whole Number) (strokeWidth) <integer>
- Width of stroke to use
|
Customisation
The options that can be tweaked to create the radar how you want it.
Image
|
|
Useful Links
See also
|
---|
| Mod tools | |
---|
| Map editors |
There are currently no tools in this list. |
---|
| Map compilers |
There are currently no tools in this list. |
---|
| Map converters | |
---|
| Map tools | |
---|
| Model compilers |
There are currently no tools in this list. |
---|
| Model converters | |
---|
| Model tools | |
---|
| Particle converters | |
---|
| Texture converters | |
---|
| Texture tools | |
---|
| Sound tools | |
---|
| VPK tools | |
---|
| Libraries |
There are currently no tools in this list. |
---|
| Plugins | |
---|
| Other | |
---|
|