The Ship Level Design: Tips & Tricks
From Valve Developer Community
Written by [OL]ReNo
As for tips? I always start with a pad of paper, a pencil, and an eraser. Draw some overlays - just sketchy things - to plan the layout. Don't worry too much about specifics just now, and if you're anything like me the level will end up deviating quite a bit from the original design once you get to building it, but planning things out on paper to begin with can help you more than you might expect. Feel free to sketch out some room designs as well as the layout too; you don't have to be artistic, but its very quick and painless to put pencil to paper and get your ideas solidified. If you've got some grand vision of a large open lobby with 2 sweeping stair cases and arched viewing galleries overlooking the fountain below, sketch it out in 3D or at least do a plan the layout. Some people like to be precise and use graph paper and rulers, but personally I just do things very roughly at this stage.
Once you've got your plans, start blocking things out. I use, as standard, a wall thickness of 8 units - most of the "transitional" props like door frames and windows are designed for 8 unit thick walls so it makes sense. Try and be consistent in the height difference between your floors, particularly if you intend on using elevators which will only move the same distance between floors. Most of the standard maps leave 128 units for the internal space between each floor (with a further 8 or 16 for the ceiling/floor) however I'd advocate giving a bit more as it allows you more freedom in detailing your level - 160 is the next standard measurement, so thats what I'd suggest leaving for the internal space (again, with a further 8 or 16 units for the ceiling/floor brushes).
Ensure there is enough space for everything - if you've got a section of the ship where there are 2 corridors and 2 rooms to fit within the ship's width, make sure that your ship is wide enough to accommodate! Throw in some temporary props to get a rough idea of the room layout - put in the beds, wardrobes, chairs, etc... Don't worry about being precise, just make sure you've made your room spacious enough. If things turn out too large you can always extend walls and build brushes to shrink them down. Doing that also allows for some secrets to be built in retroactively (though planning them in early is always good!). On the other hand you don't want to make things giant and shrink them down too often, as you'll end up with needlessly long corridors to trek down which could hurt gameplay.
Once you've got things blocked out you can get started on detailing (something I'm rather guilty of falling into while blocking things out). Use the cordon tool a whole lot as it saves you so much time on compiling, particularly if you're making quite a large ship and you're compiling with HDR. Doing this means you can compile far more often - its an absolute godsend when you're tweaking lighting.
I'm also a huge fan of elaborate visgrouping as it gives you so much control over what the editor renders, and can make complex maps so much easier to work with. At the very least get into the habit of assigning visgroups to each deck of the ship, and think about putting the ceiling brushes into their own sub-visgroup of their respective floor. It makes it really easy to fly around whatever deck you are working on from above and make tweaks, and gives you a really nice and clear way to look at the layout. I also suggest creating a "filter" visgroup, and within that visgroup create several others such as "room triggers" and "interactions" (to which you should add all your ship_trigger_rooms and ship_base_interaction entities respectively for easy hiding), and whatever else you find clutters your view often. Note that there are auto-visgroups that do some of the job for you - hint brushes and clip brushes, for example, can be hidden from there. Note that you can de-anchor the visgroup box, resize it to make it taller, and then re-anchor it to the sidebar at its new length if you have the screenspace to do so - I'd be lost without my tall visgroup box
Familiarise yourself with using the texture application tool as efficiently as possible. Switch to "lift and select" mode, and left click a face to select it then alt-right click on other faces to apply it already lined up properly. This feature comes into its own when you are working with angled geometry; its one I've seen a few people unfamiliar with but is an easy productivity increase. Likewise, try and get to grips with using keyboard shortcuts for all the tools. Once you know them by heart you'll work more efficiently than moving the mouse around the screen needlessly, and as a plus you can remove the toolbar and earn yourself a wee bit of extra screen for the editing views.
Hmm, this is getting a little long and general purpose now, apologies for lack of Ship specific advice. Hope there's a few trinkets of useful knowledge in there anyways.