Quick Mapping Tips and tricks

Discussion in 'Tutorials & Resources' started by Fantasma, Sep 7, 2014.

  1. Fantasma

    aa Fantasma

    Messages:
    882
    Positive Ratings:
    969
    The idea of this thread
    In this thread I think we should share small little tricks that we have come across to make life easier for mapping.

    For example:

    When mapping at a 45 Degree angle, use an instance and rotate that instead of the original map
    or
    To test optimistaion, place hundreds of barrels on your map and use mat_wireframe 1 to see how many are rendered at a time

    Where can I read all of this?

    I'll update the following post with all the comments
     
    • Thanks Thanks x 3
    Last edited: Sep 8, 2014
  2. Fantasma

    aa Fantasma

    Messages:
    882
    Positive Ratings:
    969
    Small Tips and Tricks
    (Credit is given to the poster, not the person who came up with the idea)

    Bakscratch:
    Fantasmos:
    Dain:
    Idolon:
    Freyja:
    Waffe:
    Tumbolisu

    Hanke37:
    Wareya:
     
    • Thanks Thanks x 2
    Last edited: Jul 11, 2015
  3. Dain

    Dain L3: Member

    Messages:
    106
    Positive Ratings:
    40
    Memorize and use as many keyboard shortcuts as you can. You should be frustrated at your map, not the interface.
     
    • Thanks Thanks x 1
  4. Idolon

    aa Idolon the worst admin

    Messages:
    1,421
    Positive Ratings:
    4,154
    Word of warning about using instances to rotate bits of your map: In most situations, you won't be able to line up your rotated instance and your "real" map on the grid, ever. There's mathematical reasoning behind it (tl;dr: the diagonal of most (maybe all?) right triangles with integer angles are irrational), so just watch out. Not saying you can't do it, but you should just be cautious of these kinds of issues, and plan accordingly.

    Tips:

    -Enable "Arrow keys nudge selected object/vertex" in Options > 2D views. Really useful when you want to move stuff that's built on a small grid size.

    -When you want to rotate something around a point that isn't its origin, you can do it one of two ways:
    A) Make it an instance, and move it so that the rotation point is at 0, 0, 0 in the new .vmf.
    B) Put a big brush around it (preferably skip textured) with its center where you want to rotate the object. Make sure that the brush is bigger than the object!

    -Learn how to use the morph tool (vertex edit tool) properly. It's super useful for resizing buildings, because you can just select the entire side of a building and move it out. There's countless other situations where it comes in handy.

    -If you want to put a prop on a slope, but you're not sure what angle to stick it at, use some trigonometry! I personally use this website to figure out the angles and lengths of slopes.

    -It's been said that you should learn keyboard shortcuts, but I'd like to point out [ and ] in particular. They change the grid size, and they should probably be your most used shortcut keys. Don't limit yourself to building on one grid size.
     
    • Thanks Thanks x 1
  5. Freyja

    aa Freyja ¯\_(ツ)_/¯

    Messages:
    2,819
    Positive Ratings:
    4,661
    Learn to use quickhide and quickhide unselected. Makes working on isolated portions of your map very easy without cordon.

    func_respawnroom will automatically inherit the team of the info_player_teamspawns inside of it.

    info_no_dynamic_shadows exists and you use it by selecting faces, and no shadows (pickups or players showing through walls, etc) will appear on that face.

    You can control koth timers with i/o by targeting zz_red_koth_timer and the corresponding one for blue. They have all the i/o of a team_round_timer entity.

    Hit the help button in the properties panel of an entity to get a window showing all the valid inputs/outputs for that entity ( a BIG one people don't seem to know ).

    When flipping your map, create a skip brush on the seam, and drag your copied half around by that skip brush. It will make sure your map half stays on grid.

    There's a button in hammer that will turn prop fade distances on in the 3d view.

    Place a prop_static with a sentry model in your map, and set it's fade distance to 1024/1024. If you toggle display fade distances in the 3d view, you can see it's range by flying around: if you can see it, you're in range. As it's a prop_static, it won't even appear once the map is compiled.

    The player can receive inputs IgnitePlayer and ExtinguishPlayer, useful for waterfalls or lava. (Target with !activator).

    The player can also recieve the input SpeakResponseConcept with the override of a response. These are in scripts/response_rules and you can use a trigger to make the player call out voice lines, or scream when they fall into a pit (with HalloweenLongFall).

    If you have a trigger_push, the player will only be affected by it if they're in the air already, or they jump. You can force them into it by putting a small, 4 unit or so ledge around the trigger. The player won't notice it, but they'll be forced to fall off it for a split second and be affected by the trigger.

    You can replace any sound in the game by using a <yourmapname>_level_sounds.txt file and creating soundscripts (will write a tutorial on this one).

    Your respawn room visualizer can be any texture. This is most useful for wide doors - instead of stretching the no entry overlay, make a brush in the middle with that, and then surround it with nodraw to cover the rest of the door. Then tie all of it to the same func_respawnroom_visualizer.
     
    • Thanks Thanks x 6
  6. Seba

    aa Seba DR. BIG FUCKER, PHD

    Messages:
    2,363
    Positive Ratings:
    2,365
    Players 'teleport' up and down ledges <18u tall, so they're never in the air while going up/down unclipped stairs; the ledge must be 18u or taller in order for the player to start falling and be affected by the t_push.
     
    • Thanks Thanks x 1
  7. Waffe

    Waffe L4: Comfortable Member

    Messages:
    192
    Positive Ratings:
    184
    Here's a trick I use to rotate brushwork.
    If you want to rotate some brushwork by, for instance 45 degrees, select it all and do just that (with Ctrl+M). Then scale it in order to fit the grid (I used 3/4 *square root of 2. Different angles need different values). Select all vertices with the vertex tool, choose a fitting grid size and press ctrl+B to align them all.

    Also I just recently got the hang of VisGroups. I don't even know how I was able to map before...
     
    • Thanks Thanks x 1
    Last edited: Sep 7, 2014
  8. puxorb

    aa puxorb

    Messages:
    436
    Positive Ratings:
    576
    The vertex tool is your friend. You can adjust the length of several brushes at once without stretching anything dis-proportionally by ctrl+selecting brushes and in a 2D viewport, dragging a box around vertexes and hitting enter.

    Also, click on a yellow node and press ctrl+f to create a new face to the brush that is selected, and drag its coordinates around without ever having to use the clipping tool.
     
  9. henke37

    aa henke37

    Messages:
    1,836
    Positive Ratings:
    420
    Quickhide is a massive help when working with overlapping geometry. No more fiddling around trying to fight z-fighting, just select and hide until you get the one you wanted.
     
    • Thanks Thanks x 1
  10. Waffe

    Waffe L4: Comfortable Member

    Messages:
    192
    Positive Ratings:
    184
    You can also just click and hold to shuffle through everything beneath the cursor
     
  11. Muddy

    Server Staff Muddy Muddy

    Messages:
    2,372
    Positive Ratings:
    4,167
    I don't know why this one in particular jumped out at me. That's a really neat touch, that...
     
  12. henke37

    aa henke37

    Messages:
    1,836
    Positive Ratings:
    420
    It's possible to set the advanced compile system to check for the existence of files before continuing. This lets you avoid wasting time when you have a leak, since the *.prt file will be missing for normal, non areaportal, leaks.

    You can use the command line switch "-hijack" when launching the game, this will not only skip the "game already running" MessageBox, but actually reuse the existing instance of the game. No need to manually load the map and no need to restart the game.
     
    • Thanks Thanks x 2
  13. wareya

    wareya L7: Fancy Member

    Messages:
    493
    Positive Ratings:
    172
    You can "clip" overlays by turning Texture Lock off and scaling the bounding box with the selection tool.
     
  14. Faux Rhinoceros

    aa Faux Rhinoceros Also known as Dr. Element

    Messages:
    1,471
    Positive Ratings:
    1,363
    First, you make it simple.
    Then you make it fun.
    Then you make sure it doesn't look like dung.

    When that's all done, ready or not,
    you can top it off with spires and a gay roamer spot.
     
    • Thanks Thanks x 2
  15. Fantasma

    aa Fantasma

    Messages:
    882
    Positive Ratings:
    969
    Updated the 2nd post, now I think we should have a "best-of" post in the main one as well, what do you guys reckon?

    Also feel free to do more than just technical stuff, like art or gameplay mechanics
     
  16. Fantasma

    aa Fantasma

    Messages:
    882
    Positive Ratings:
    969
    If a texture comes up as plain white (Like the no_entry texture) Get out of shaded texture mode, and just plain textured mode.
    ~From Aly.
     
  17. takabuschik

    aa takabuschik

    Messages:
    660
    Positive Ratings:
    308
    I've got a few:

    1) when having an overlay selected, you can select the overlay tool and then change the shape of the overlay by dragging the edges. Select multiple overlays and then shift+drag to snap two edges together

    2) a few keyboard shortcuts I accidentally discovered (and I don't think they appear in the shortcuts' page):
    ctrl+a- resize all 4 2d/3d windows to their original position and size. useful with ctrl+z (fullscreen)
    x- show edge drag points in 3d view (useful for props)
    p- show grid in 3d view
    num keys 1-0- change zoom in 2d views (like the scroll mouse button)

    3) ctrl+m has, apart from famous "rotate" option, a "scale" option, useful when you want to make parts of your map into 3d skybox parts
     
    Last edited: Oct 6, 2014
  18. Muddy

    Server Staff Muddy Muddy

    Messages:
    2,372
    Positive Ratings:
    4,167
    I quick thing I like to do is set the scale of all my tool textures (trigger, hint, areaportal, skybox) to 10. Not 0.10, but 10. Basically, fuckin huge. It makes it a lot easier on the eyes.
     
    • Thanks Thanks x 1
  19. Fantasma

    aa Fantasma

    Messages:
    882
    Positive Ratings:
    969
    Added tumbolisu's quote from this thread
     
  20. takabuschik

    aa takabuschik

    Messages:
    660
    Positive Ratings:
    308
    I just found out the hard way:
    While you can save a .vmf file from hammer with spaces in it's name (instead of the usual _'s), you cannot load a .bsp map file with those spaces. (But you can cmmpile!)

    Naming an object with Punctuation marks will cause malfunction with it's inputs. This will happen because the .vmf file uses them to mark the different output fields.
    So if you call your cp, for example, "cp3.2", once you reload the .vmf you'll find that the name field, in all outputs that previously named "cp3.2", will now say "cp3" (which doesn't exist), and in the Via this input field, there will be "2".