RadGen: Difference between revisions
(Initial page creation) |
m (Corrected links to images) |
||
Line 56: | Line 56: | ||
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. | 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. | ||
Mesh entities such as bombsites are drawn. For bombsites, | Mesh entities such as bombsites are drawn. For bombsites, it will use their bombsite letter set in the entity's keyvalue in hammer. | ||
However, you might prefer to create separate meshes using the RadGen bombsite materials, for example. These take priority over entities. | However, you might prefer to create separate meshes using the RadGen bombsite materials, for example. These take priority over entities. | ||
Line 79: | Line 79: | ||
|- id="Path" | |- id="Path" | ||
| [[File: | | [[File:RadGen_Path.png|64px]] | ||
|'''radgen/path''' | |'''radgen/path''' | ||
| Displays a Path. | | Displays a Path. | ||
|- id="Overlap" | |- id="Overlap" | ||
| [[File: | | [[File:RadGen_Overlap.png|64px]] | ||
|'''radgen/overlap''' | |'''radgen/overlap''' | ||
| Displays an Overlap. | | Displays an Overlap. | ||
|- id="Cover" | |- id="Cover" | ||
| [[File: | | [[File:RadGen_Cover.png|64px]] | ||
|'''radgen/cover''' | |'''radgen/cover''' | ||
| Displays cover. | | Displays cover. | ||
|- id="Remove" | |- id="Remove" | ||
| [[File: | | [[File:RadGen_Remove.png|64px]] | ||
|'''radgen/remove''' | |'''radgen/remove''' | ||
| Defines a volume to not display anything in. | | Defines a volume to not display anything in. | ||
|- id="Door" | |- id="Door" | ||
| [[File: | | [[File:RadGen_Door.png|64px]] | ||
|'''radgen/door''' | |'''radgen/door''' | ||
| Defines a volume as a Door. | | Defines a volume as a Door. | ||
|- id="Ladder" | |- id="Ladder" | ||
| [[File: | | [[File:RadGen_Ladder.png|64px]] | ||
|'''radgen/ladder''' | |'''radgen/ladder''' | ||
| Defines a volume as a Ladder. | | Defines a volume as a Ladder. | ||
|- id="Danger" | |- id="Danger" | ||
| [[File: | | [[File:RadGen_Danger.png|64px]] | ||
|'''radgen/danger''' | |'''radgen/danger''' | ||
| Defines a volume as a Danger. | | Defines a volume as a Danger. | ||
|- id="Buyzone" | |- id="Buyzone" | ||
| [[File: | | [[File:RadGen_Buyzone.png|64px]] | ||
|'''radgen/buyzone''' | |'''radgen/buyzone''' | ||
| Defines a volume as a Buyzone. | | Defines a volume as a Buyzone. | ||
|- id="Bombsite_A" | |- id="Bombsite_A" | ||
| [[File: | | [[File:RadGen_Bombsite_A.png|64px]] | ||
|'''radgen/bombsite_a''' | |'''radgen/bombsite_a''' | ||
| Defines a volume as a Bombsite A. | | Defines a volume as a Bombsite A. | ||
|- id="Bombsite_B" | |- id="Bombsite_B" | ||
| [[File: | | [[File:RadGen_Bombsite_B.png|64px]] | ||
|'''radgen/bombsite_b''' | |'''radgen/bombsite_b''' | ||
| Defines a volume as a Bombsite B. | | Defines a volume as a Bombsite B. | ||
|- id="Rescue_Zone" | |- id="Rescue_Zone" | ||
| [[File: | | [[File:RadGen_Rescue_Zone.png|64px]] | ||
|'''radgen/rescue_zone''' | |'''radgen/rescue_zone''' | ||
| Defines a volume as a Rescue Zone. | | Defines a volume as a Rescue Zone. | ||
|- id="Hostage" | |- id="Hostage" | ||
| [[File: | | [[File:RadGen_Hostage.png|64px]] | ||
|'''radgen/hostage''' | |'''radgen/hostage''' | ||
| Defines a volume as a Hostage. | | Defines a volume as a Hostage. | ||
|- id="T_Spawn" | |- id="T_Spawn" | ||
| [[File: | | [[File:RadGen_T_Spawn.png|64px]] | ||
|'''radgen/t_spawn''' | |'''radgen/t_spawn''' | ||
| Defines a volume as T Spawn. | | Defines a volume as T Spawn. | ||
|- id="CT_Spawn" | |- id="CT_Spawn" | ||
| [[File: | | [[File:RadGen_CT_Spawn.png|64px]] | ||
|'''radgen/ct_spawn''' | |'''radgen/ct_spawn''' | ||
| Defines a volume as CT Spawn. | | Defines a volume as CT Spawn. | ||
|- id="Ignore" | |- id="Ignore" | ||
| [[File: | | [[File:RadGen_Ignore.png|64px]] | ||
|'''radgen/ignore''' | |'''radgen/ignore''' | ||
| Does nothing, an option for unused mesh sides. | | Does nothing, an option for unused mesh sides. | ||
|- id="RadGen_overlays" | |- id="RadGen_overlays" | ||
| [[File: | | [[File:RadGen_Overlays.png|64px]] | ||
|'''radgen/radgen_overlays''' | |'''radgen/radgen_overlays''' | ||
| Example for use on info_overlay and radgen_info_overlay entities. Optional. | | Example for use on info_overlay and radgen_info_overlay entities. Optional. | ||
|- id="RadGen_Box" | |- id="RadGen_Box" | ||
| [[File: | | [[File:RadGen_Box.png|64px]] | ||
|'''radgen/radgen_box''' | |'''radgen/radgen_box''' | ||
| Example for use on radgen_box entities. Optional. | | Example for use on radgen_box entities. Optional. | ||
Line 225: | Line 225: | ||
|- id="radgen_config" | |- id="radgen_config" | ||
| [[File: | | [[File:RadGen_Config.png|64px]] | ||
|'''radgen_config''' | |'''radgen_config''' | ||
| Configure the main functionality. | | Configure the main functionality. | ||
Line 321: | Line 321: | ||
|- id="radgen_divider" | |- id="radgen_divider" | ||
| [[File: | | [[File:RadGen_Divider.png|64px]] | ||
|'''radgen_divider''' | |'''radgen_divider''' | ||
| A divider between different levels of the radar. | | A divider between different levels of the radar. | ||
Line 329: | Line 329: | ||
|- id="radgen_ceiling" | |- id="radgen_ceiling" | ||
| [[File: | | [[File:RadGen_Ceiling.png|64px]] | ||
|'''radgen_ceiling''' | |'''radgen_ceiling''' | ||
| Overrides the minimum height value of a radar level that is used for gradients. | | Overrides the minimum height value of a radar level that is used for gradients. | ||
Line 335: | Line 335: | ||
|- id="radgen_floor" | |- id="radgen_floor" | ||
| [[File: | | [[File:RadGen_Floor.png|64px]] | ||
|'''radgen_floor''' | |'''radgen_floor''' | ||
| Overrides the maximum height value of a radar level that is used for gradients. | | Overrides the maximum height value of a radar level that is used for gradients. | ||
Line 341: | Line 341: | ||
|- id="radgen_info_overlay" | |- id="radgen_info_overlay" | ||
| [[File: | | [[File:RadGen_Info_Overlay.png|64px]] | ||
|'''radgen_info_overlay''' | |'''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. | | An info_overlay with the ability to set a colour for this overlay instead of using the radgen_config's overlay colour. | ||
Line 357: | Line 357: | ||
|- id="radgen_box" | |- id="radgen_box" | ||
| [[File: | | [[File:RadGen_Box.png|64px]] | ||
|'''radgen_box''' | |'''radgen_box''' | ||
| A [[Mesh_entity|Mesh Entity]] that can specify showing a unique colour when displayed in a radar. Increases customisability for what users can do. | | A [[Mesh_entity|Mesh Entity]] that can specify showing a unique colour when displayed in a radar. Increases customisability for what users can do. | ||
Line 376: | Line 376: | ||
! Image | ! Image | ||
|- id=" | |- id="radgen_config_customisation" | ||
| [[File: | | [[File:Radgen config customisation.png|768px]] | ||
|} | |} | ||
Revision as of 19:52, 25 September 2023


RadGen | |
---|---|
Download | |
Type | Third Party Tool |
Engine | ![]() |
Platforms | ![]() |
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 5 runtime
- Download and install the latest .NET Core 3.1 runtime
- Download and install the latest .NET Framework 4.5 runtime
- This file may also be needed to create VTFs for Danger Zone maps: https://www.microsoft.com/en-ie/download/details.aspx?id=48145
- Copy Files
- Extract the contents of the zip folder into your Game folder. It should be somewhere like C:\Program Files (x86)\Steam\steamapps\common\Counter-Strike Global Offensive\game

- FGD
- Copy
radgen_entities.fgd
to your /game/csgo folder. - Copy
gameinfo.gi
to your /game/csgo_core folder and overwrite the file currently there. Alternatively, just add the line '"radgen_entities.fgd" "1"' under Hammer -> fgd_files in the hierarchy. - This last step currently disables you from playing on official Valve servers. Remove this change to be able to play on Valve servers again.
- Command Sequences
- Source 2's Hammer does not allow you to set custom compile settings, meaning that RadGen cannot be ran from within Hammer currently. To generate your radar, you will need to run the .exe provided in a console window, like so (Windows):
- Search for "cmd" in Windows search bar
- Depending on where CSGO/CS2 is stored on your machine, replacing the "...", type cd ...\Counter-Strike Global Offensive\game\bin\JERC2\JERC2
- Depending on where CSGO/CS2 is stored on your machine, replacing the "...", type RadGen.exe -g "...\Counter-Strike Global Offensive\game\csgo" -vmapFilepath "...\Counter-Strike Global Offensive\content\csgo_addons\{addonnameHere}\maps\{mapnameHere}.vmap.txt"
Bundled Software
Included with RadGen is Yanzl's radargen_radgen.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 radargen_radgen.sbsar into Substance Designer, and use the raw mask files as inputs.
- Save as .tga file format.
Usage
To get started, add a radgen_config entity into the map.
Two auto Selection Sets 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.
There are two workflows supported by RadGen:
- Material based workflow
- Selection Set based workflow
Workflow 1 (Material based)
You may want to use separate meshes to your playable map itself. I find this a much cleaner way to work with overviews, and it removes the annoyance of having to check Selection Sets every time you duplicate a mesh to make sure you don't accidentally leave it inside a wrong Selection Set. 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 (except Ignore). These include Path, Overlap, Cover, Door, Ladder and Danger. Remove is the exception, which will not allow anything to display within its volume. Ignore 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.
Mesh entities such as bombsites are drawn. For bombsites, it will use their bombsite letter set in the entity's keyvalue in hammer. However, you might prefer to create separate meshes using the RadGen bombsite materials, for example. These take priority over entities.
Selection Set
Name | Works with | What to add | Description |
---|---|---|---|
radgen | Meshes, Mesh Entities, Point Entities | Everything. | Everything in here will be used when generating the overview. |
Materials
These are the materials that can be used with the Material based workflow.
Workflow 2 (Selection Set based)
You can also use the same workflow as TAR, 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 | Accessible path areas. | The accessible ground areas the player can walk on. |
radgen_overlap | Meshes, Mesh Entities | 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 | 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 | Doors. | The doors in the level. |
radgen_ladder | Meshes, Mesh Entities | Ladders. | The ladders in the level. |
radgen_danger | Meshes, Mesh Entities | 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 | Meshes, Mesh Entities, Point Entities | 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. |
Entities
These entities allow for greater customisation of radars.
Icon | Classname | Description | Keyvalues |
---|---|---|---|
![]() |
radgen_config | Configure the main functionality. |
|
![]() |
radgen_divider | A divider between different levels of the radar. |
|
![]() |
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. |
|
![]() |
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. |
|
Customisation
The options that can be tweaked to create the radar how you want it.
Image |
---|
![]() |