Skip to content

Map Compilers

Blixibon edited this page Aug 6, 2020 · 3 revisions

Mapbase has its own custom map compilers. In order to compile maps in Mapbase, users are required to use either Mapbase's custom map compilers or Slartibarty's Slammin' Source mapping tools. This is because both sets of tools have the required adjustments to recognize custom shaders, but the original Source 2013 compilers do not.

The recommended setup for compiling maps in Mapbase is to use Mapbase's custom vbsp.exe while using Slammin' Source for all of the other tools. This is because Mapbase's VRAD, VVIS, etc. are barely different from Source 2013's regular compilers while Slammin' Source's tools are much more powerful and advanced. Mapbase's VBSP is an exception; it supports almost everything Slammin' Source's VBSP supports and supports features unique to Mapbase, like parallax corrected cubemaps or the buildcubemaps fix.

Download Mapbase Compile Tools:

Mapbase Compile Tools


Here's an actual list of changes Mapbase makes to the compile tools:

All

VBSP

  • Removed warnings for occluders straddling multiple brushes, as this is believed to have only been a problem in 2004-2006 versions of Source
  • Fixed func_detail smoothing groups (from ValveSoftware/source-sdk-2013 #391)
  • Applied various manifest fixes (from DeathByNukes/source-sdk-2013)
  • Allowed all models with $staticprop to be used as prop_static (replicated from Slammin' Source)
  • Parallax corrected cubemap support (from the VDC article)
  • -leaktest enabled by default and replaced with a -noleaktest command (replicated from Slammin' Source)
  • %compileNoShadows command (replicated from Slammin' Source)
  • Areaportal leaks terminate VBSP, just like regular leak testing (disabled when -noleaktest is used)
  • Default cubemaps not generated by default due to an in-shader alternative used by Mapbase; new -defaultcubemap command to reinstate behavior (was previously just -nodefaultcubemap, which was replicated from Slammin' Source)
  • Raised limits based on research from ficool2:
    • Raised maximum VBSP entities from 8192 to 65536 (Not in-game entities! This is for static props and other internal entities)
    • Raised maximum VBSP worldlights from 8192 to 65536
    • Raised maximum VBSP overlays from 512 to 8192

VVIS

  • N/A

VRAD

Using other compilers

The main reason Mapbase maps cannot be compiled using the original compile tools is because the original VBSP does not recognize custom shaders and therefore cannot mark faces with them for lightmap compilation. This is fixed by changing the way the material system is initialized in VBSP so it loads mod shaders. Mapbase and Slammin' Source compilers already use this fix, so they're usually said to be the required tools, but technically all you need is a version of VBSP which uses this patch.

For more information, please see this issue reply on the original Source 2013 repository.

Clone this wiki locally