Newer games that are using the VPK file format usually have their maps stored directly on the file system of the operating system. They can be extracted from the GCF files using Nemesis' GCFScape for perusal outside of Steam. Official map files are stored in the Steam Game Cache File (GCF) format, and are accessed through the Steam file system by the game engine. Because of the way the Source engine file system works, these external files may also be embedded in the BSP file's Pakfile lump, though usually they are not. Information not stored in the BSP file includes the map description text displayed by multiplayer games (such as Counter-Strike: Source or Half-Life 2: Deathmatch) after loading the map (stored in the file mapname.txt) and the AI navigation file used by non-player characters (NPCs) which need to navigate the map (stored in the file mapname.nav). Optionally, the map file can also contain any custom textures and models used on the level, embedded inside the map's Pakfile lump (see below).
This includes the geometry of all the polygons in the level references to the names and orientation of the textures to be drawn on those polygons the data used to simulate the physical behaviour of the player and other items during the game the location and properties of all brush-based, model (prop) based, and non-visible (logical) entities in the map and the BSP tree and visibility table used to locate the player location in the map geometry and to render the visible map as efficiently as possible. The BSP file contains the vast majority of the information needed by the Source engine to render and play a map. Sometimes the structures as shown are modified from their actual definitions in the SDK header files, for reasons of clarity and consistency.
What does gmod mean code#
Code (mostly C structures) is given in a fixed width font. Most of the information in this document comes from the Max McGuire article, from the source code included in the Source SDK (particularly the C header file public/bspfile.h), and from Rof's own experimentation during the writing of VMEX.Ī certain familiarity with C/C++, geometry, and Source mapping terms is assumed on the part of the reader. It therefore focuses on those parts of the format necessary to perform map decompilation (conversion of the BSP file back into a VMF file which can be loaded by the Hammer map editor). This document is an extension of notes made by Rof during the writing of his Half-Life 2 BSP file decompiler, VMEX. Because of this, Max McGuire's article, Quake 2 BSP File Format is also of invaluable help in understanding the overall structure of the format and the parts of it that have remained the same or similar to its predecessors.
What does gmod mean plus#
The format is similar but not identical to the BSP file formats of the Half-Life 1 engine (GoldSrc), which is in turn based on the Quake, Quake II and QuakeWorld file formats, plus that of the later Quake III Arena. This is the structure of the BSP file format used by the Source engine. BSP is yet another file format you may encounter.