The porting rules of _p.

by rulesofp

One of the things we were aiming for when we started the porting project was to both graphically improve the maps for the new engine and adjust them a bit for the engine changes. We had noticed that most ports were extremely low quality recompiles (often disregarding VVIS optimization or baked lightmaps quality VRAD calculations by compiling in fast mode). Some ports also suffered from severe console spam and excessive advertising, added by porters that wanted to appear themselves on the maps.

For the first points, that are directly linked to the look and feel of maps as a whole, we devised the following rules:

  1. No ported props should be used from CS:S/HL2, unless there is no possible match (like, for example, combine props). If a ported prop is to be used, it has to be recompiled (we have been using the following tool: link). Custom props can be kept.
  2. Use as few textures from CS:S/HL2 as possible, only when there are no matches. The textures should be resaved as version 7.5 .vtfs, but it is not completely necessary (although recommended). Custom textures can be kept.
  3. Lighting should be overhauled and adjusted to be compatible with CS:GO’s HDR lighting (which is always enabled and, thus, makes LDR even silly to compile). At times, VRAD will choke on relatively large maps so you will need to increase the lightgrid. CS:GO’s cascade lighting system will make that, despite having lower resolution baked lightmaps, the map will come out well.
  4. Post processing effects and color corrections should be used and added. Color corrections are a perfect way to improve how a map looks with little to no effort. Using the default color corrections (check materials/correction for details) is encouraged to avoid packing issues.
  5. Gameplay must be adjusted as much as possible, including but not limitted to changing crouch areas’ heights so they’re enterable (we’d recommend 56 units in height as it is a nice multiple of 8), adding teleports on maps that lack those and adjusting breakables’ health points since CS:GO’s weapons deal more damage.

This 5 rules, if applied correctly, end up yielding low sized maps (since they rely on GO assets) that are adjusted to CS:GO’s engine. It requires effort, of course, as well as series of tests, but we’ll get to that later.