The 10 mapping commandments
Started by Neon_Knight
Neon_Knight Rep. 113
#1   17 Aug 2016
I thought about this in 10 minutes after fixing some maps for OA3. Is there something similar? Any suggestions?

#1: Thou shalt ALWAYS use common/caulk for new brushes
#2: Thou shalt NOT use brushes where thou shalt be using patches
#3: Thou shalt ALWAYS mapmodel thy decorative brushes
#4: Thou shalt NOT make a map composed by over 90% of structural brushes
#5: Thou shalt NOT use the CSG Subtract tool
#6: Thou shalt NOT abuse the CSG Hollow tool
#7: Thou shalt ALWAYS use the brush clipper and vertex editing tools
#8: Thou shalt NOT abuse of doors and areaportals in thy map
#9: Thou shalt ALWAYS include an .aas file with thy map
#10: If thy map has areas reachable only by trickjumping, thou shalt ALWAYS give a good reason (powerup or holdable) of why that area must be navigated

PaN61 Rep. 337
#2   19 Aug 2016

#1: Generally speaking yes, it saves time by you only needing to texture the sides of the brush you want instead of going back and caulking all the sides of the brushes that are not going to be visible within your map.
#2: If you are looking to create smooth curves then patches are the most efficient way to go about this. Though, you'll still need to encase the patch from the void by caulk brushes to (I believe) stop HOM effects and the likes showing up.
#3: Don't have a lot of experience with this but the general rule of thumb is if the "model" is complicated and cannot be easily created via brushes then use models. No second thoughts.
#4: It's not really based on a percentage. Change all brushes that don't seal the map from the void to detail brushes. Structural brush only those that make up the perimeter of your map. This one is more so used for VIS stage optimization (by minimizing the amount of portal areas).
#5: From memory, CSG Subtract could create undesirable results so it's not recommended. Better to just manually brush things out.
#6: CSG Hollow can have its uses, but in the end manually creating a hollow box with a few smart clips would be a far better options, as well as it being slightly better for optimization purposes. Not to mention that it will look a lot cleaner too. So it can be used, nothing wrong with it, but manually done is a superior option.
#7: Use the brush clipper tool when you need to use it.
#8: This one gets into a more technical discussion. Same can be applicable to Hint Brushing. Used mainly for VIS stage optimization in creating clever portals so that the whole map (or large portion of a map) that you can't see does not get rendered. Like Hint Brushing, incorrect use of this can produce worse results instead of better results.
#9: Generally speaking yes, unless there are issues with limitations such as maps being overly complex thus resulting in errors when trying to compile an .ass file for the specific map.
#10: It's up to the author where they want players to be able to go or where they can't go. Player Clip is your best friend with this one. Likewise for Bot Clip.

Just my 2 cents.

CZghost Rep. 1581
#3   22 Aug 2016
To number #9: There is a way to actually compile an AAS for overly complex map: It's quite cheating, but it works (sometimes). Make a simplified version of your map for bots. This version should be averagely the same size as the original map.

Terrain needs to be clipped properly to prevent bots' legs sink down to the terrain mesh (yes, bots do not navigate the BSP map, they use the AAS map, their movements & appearing are then projected in the BSP map on the server). If the terrain is subtly divided into some sloppy hills and averagely flat surfaces, then you can simplify the terrain mesh in those averagely same plains (hills slopes and the flat surface). Make sure to follow the actual average profile of the terrain.

Models are unnecessary and may be removed. That makes for every unneccessary detail (detail brushes that do not alter the gameplay and so with patches without gameplay altering). Textures are irrevelant, just use some textures that reflect the surface & volume parameters (so use water textures for water, lava textures for lava, slime textures for slime, wall textures for walls, floor textures for floors; it's important to use the same shader parameters for the same surfaces in the original map). You do not need to use much textures.

Get rid of decorative textures (e.g. flags) that do not actually modify the collision model of the map. But you should always use textures that modify the volume & surface parameters (except for visual and audible appeareance). The map should contain all the original spawnpoints in their original locations (in all 3 axes) and all original items in their original locations (in all 3 axes). That's the must for the map work correctly.

Visibility calculating & ligthmap generating is irrelevant for this map and may be skipped. When simplified map compiled (you can use simple test Q3Map2 BSP only command, compiles whole map in "boxed" mode and without lightmap, which makes the map "fullbright" - that does not matter as we won't play this simplified map) - you can actually compile the AAS for the simplified map. If the compiler throws error for you, try to simplify the map more. But keep in mind to keep the collision model of the map averagely the same as the original one has. Some minor alters do not matter much as long as it won't look much weird in the game.

When AAS successfully compiled, you just need to append it to the original map. Rename generated AAS file to the original map filename (let's say your original map is named quebec.bsp - then new name for the AAS will be quebec.aas) - that makes the AAS file corrupted and not working. Do not worry. That's only the half of the progress.

Start new Q3map2 command - fixaas. Link to the original map file and launch. This will repair the AAS file and corrupt it again. But it now points to the original map instead of the simplified. To actually make the AAS work again, you need to use BSPC -reach command for the original map. That will finally make the AAS working as it relinks the AAS file with the original map and repairs the reachability. It's a bit cheating, but it works. Ask Sock for details:

CZghost Rep. 1581
#4   22 Aug 2016
This is quite good guide to cheat on AAS compiler issues :)
Neon_Knight Rep. 113
#5   13 Sep 2016
About #10 I was talking mostly about the game objectives, such as flags and obelisks (both team and neutral) and in OA's case also Domination CPs, which should be easily reachable by everyone. Though "lesser" game items such as health, armor, weapons and ammo also fit in that consideration.

Only registered members can post a reply.
Already registered? Sign in.