Talk:Nav Mesh Editing: Difference between revisions
Jump to navigation
Jump to search
(→what) |
|||
Line 62: | Line 62: | ||
:::Wait, cs_havana you say? There are doors that spawn open or closed randomly every round. (30 min later:) As far as I've just seen, the transient areas are actually used right at those critical spots! You can observe in-game, if the door spawns closed, then the nav area underneath becomes ''blocked'' (blue inner rectangle) for pathfinding. For a moment I thought that [[func_nav_blocker]]s do the job of blocking, but there aren't any. So maybe it's the transient areas that – as opposed to normal areas – check whether they are blocked by something or not. Apparently we're getting close to something that is worth mentioning on the page! Thanks! | :::Wait, cs_havana you say? There are doors that spawn open or closed randomly every round. (30 min later:) As far as I've just seen, the transient areas are actually used right at those critical spots! You can observe in-game, if the door spawns closed, then the nav area underneath becomes ''blocked'' (blue inner rectangle) for pathfinding. For a moment I thought that [[func_nav_blocker]]s do the job of blocking, but there aren't any. So maybe it's the transient areas that – as opposed to normal areas – check whether they are blocked by something or not. Apparently we're getting close to something that is worth mentioning on the page! Thanks! | ||
:::Btw, in case you may find it interesting, I just remember that for csgo I wrote a program to convert the exported nav text file to squirrel source code such that you can find (and view) areas in-game (however not to edit them, obviously). --[[User:Popcorn|popcorn]] ([[User talk:Popcorn|talk]]) 11:49, 3 May 2025 (PDT) | :::Btw, in case you may find it interesting, I just remember that for csgo I wrote a program to convert the exported nav text file to squirrel source code such that you can find (and view) areas in-game (however not to edit them, obviously). --[[User:Popcorn|popcorn]] ([[User talk:Popcorn|talk]]) 11:49, 3 May 2025 (PDT) | ||
::::I was hoping that was the case for transient areas but the blocking happens even if you remove transient areas. I tried spawning func_brush in that map via <code>ent_create func_brush model *41</code> in the middle of random nav squares and they get blocked when the round resets too. I have too little motivation to check {{csgo}} as it was pretty much replaced by {{cs2}}. So {{csgo}} also doesn't have a command to select areas with attributes ? I find that so ridiculous. How someone programs a command like "nav_select_stairs" instead of spending 5 more minutes creating "nav_select_with_attributes" lmao --[[User:Nescius|Nescius]] ([[User talk:Nescius|talk]]) 11:58, 3 May 2025 (PDT) |
Revision as of 11:58, 3 May 2025
These two commands are handy for forcing creation of nav areas and connections that would otherwise be impossible to make normally. This is because nav_save_selected
stores the information for a selected set in a file, that can be edited, and then added through nav_merge_mesh
.
The two commands in theory would be particularly handy for dealing with area portals in the nav mesh. I think they should be mentiond on this page, but I am uncertain how to describe them in an understandable way. - Amicdict (talk) 14:38, 26 August 2021 (PDT)
- Well, I never heard about them, but I guess you can just go ahead and try to write everything you found out so far in a new subsection, probably under the Advanced editing techniques. As soon as you have written something, there will be the chance that others investigate about that topic, too. --Popcorn (talk) 15:55, 26 August 2021 (PDT)
Select areas by attribute? / Transient areas
Is there no nav command to select all areas with a certain attribute in or I am blind ??!? --Nescius (talk) 15:15, 2 May 2025 (PDT)
- The former, I presume. Unless there's VScript ways by now, but I just tested it. There is a
CNavMesh
instance but its methods don't seem to work because they access some null instance. Unfortunate. --popcorn (talk) 20:15, 2 May 2025 (PDT) - May be overcomplicated, but you can
nav_save_selected
all areas to a text file and find all areas with an "Attributes" int that has the bit flag you want and edit them if desired. If it's just about adding/removing some flag from the entire mesh, you cannav_select_radius 999999; nav_(mark|clear)_attribute (NO_JUMP|STAND|JUMP);
. --popcorn (talk) 20:42, 2 May 2025 (PDT)- Oh I was too pissed off such a basic command is missing to even start thinking of alternatives and just abandoned all efforts lol. But knowing vscript's CNavMesh doesn't work is quite disappointing. I suppose nav_save_selected will work for what I want after I remove all undesired attributes and then save so I can ctrl+f the one I want. What I wanted to do was check if there is any official map using the TRANSIENT attribute --Nescius (talk) 00:13, 3 May 2025 (PDT)
- Did some cfg script for automation and found some TRANSIENT attributes in cs_havana. Though they don't seem to do anything. At first I thought it's related to areas being blocked automatically at start of the round but it had the same behavior without transient.
alias nextmap 1; alias 1 "alias nextmap 2; dostuff; map cs_assault" alias 2 "alias nextmap 3; dostuff; map cs_compound" alias 3 "alias nextmap 4; dostuff; map cs_havana" alias 4 "alias nextmap 5; dostuff; map cs_italy" alias 5 "alias nextmap 6; dostuff; map cs_militia" alias 6 "alias nextmap 7; dostuff; map cs_office" alias 7 "alias nextmap 8; dostuff; map de_aztec" alias 8 "alias nextmap 9; dostuff; map de_cbble" alias 9 "alias nextmap 10; dostuff; map de_chateau" alias 10 "alias nextmap 11; dostuff; map de_dust" alias 11 "alias nextmap 12; dostuff; map de_dust2" alias 12 "alias nextmap 13; dostuff; map de_inferno" alias 13 "alias nextmap 14; dostuff; map de_nuke" alias 14 "alias nextmap 15; dostuff; map de_piranesi" alias 15 "alias nextmap 16; dostuff; map de_port" alias 16 "alias nextmap 17; dostuff; map de_prodigy" alias 17 "alias nextmap 18; dostuff; map de_tides" alias 18 "alias nextmap 19; dostuff; map de_train" alias 19 "alias nextmap; dostuff;" nav_edit 1; alias t "nav_toggle_selected_set; wait 2" alias c1 "t;nav_clear_attribute CROUCH" alias c2 "t;nav_clear_attribute JUMP" alias c3 "t;nav_clear_attribute PRECISE" alias c4 "t;nav_clear_attribute NO_JUMP" alias c5 "t;nav_clear_attribute STOP" alias c6 "t;nav_clear_attribute RUN" alias c7 "t;nav_clear_attribute WALK" alias c8 "t;nav_clear_attribute AVOID" //alias c9 "t;nav_clear_attribute TRANSIENT" alias c10 "t;nav_clear_attribute DONT_HIDE" alias c11 "t;nav_clear_attribute STAND" alias c12 "t;nav_clear_attribute NO_HOSTAGES" alias c13 "t;nav_clear_attribute STAIRS" alias c14 "t;nav_clear_attribute NO_MERGE" alias c15 "t;nav_clear_attribute OBSTACLE_TOP" alias c16 "t;nav_clear_attribute CLIFF" alias dostuff "clear_non_transient; t; nav_save_selected; wait 30;" alias clear_non_transient "c1;c2;c3;c4;c5;c6;c7;c8;c9;c10;c11;c12;c13;c14;c15;c16;"
--Nescius (talk) 02:59, 3 May 2025 (PDT)- Wait, cs_havana you say? There are doors that spawn open or closed randomly every round. (30 min later:) As far as I've just seen, the transient areas are actually used right at those critical spots! You can observe in-game, if the door spawns closed, then the nav area underneath becomes blocked (blue inner rectangle) for pathfinding. For a moment I thought that func_nav_blockers do the job of blocking, but there aren't any. So maybe it's the transient areas that – as opposed to normal areas – check whether they are blocked by something or not. Apparently we're getting close to something that is worth mentioning on the page! Thanks!
- Btw, in case you may find it interesting, I just remember that for csgo I wrote a program to convert the exported nav text file to squirrel source code such that you can find (and view) areas in-game (however not to edit them, obviously). --popcorn (talk) 11:49, 3 May 2025 (PDT)
- I was hoping that was the case for transient areas but the blocking happens even if you remove transient areas. I tried spawning func_brush in that map via
ent_create func_brush model *41
in the middle of random nav squares and they get blocked when the round resets too. I have too little motivation to checkas it was pretty much replaced by
. So
also doesn't have a command to select areas with attributes ? I find that so ridiculous. How someone programs a command like "nav_select_stairs" instead of spending 5 more minutes creating "nav_select_with_attributes" lmao --Nescius (talk) 11:58, 3 May 2025 (PDT)
- I was hoping that was the case for transient areas but the blocking happens even if you remove transient areas. I tried spawning func_brush in that map via