Patching levels with lump files: Difference between revisions
(Removed notice that vbspinfo isn't released.) |
m (restored category) |
||
Line 1: | Line 1: | ||
[[Category:Level Design]][[Category:Publicity & Publication]] | |||
[[Half-Life 2: Episode One]] added a simple system to allow mapmakers to patch levels by shipping only the level lumps that have changed. It was written to handle any .bsp file lump, but right now it's really only useful for lumps that don't depend on other lumps, until a tool exists that will find all the changed lumps. For example, changing geometry in a map changes many lumps, and each changed lump would need to be selected by hand. Once many lumps have been changed, you may as well ship a new .bsp. | [[Half-Life 2: Episode One]] added a simple system to allow mapmakers to patch levels by shipping only the level lumps that have changed. It was written to handle any .bsp file lump, but right now it's really only useful for lumps that don't depend on other lumps, until a tool exists that will find all the changed lumps. For example, changing geometry in a map changes many lumps, and each changed lump would need to be selected by hand. Once many lumps have been changed, you may as well ship a new .bsp. | ||
Revision as of 11:12, 14 September 2006
Half-Life 2: Episode One added a simple system to allow mapmakers to patch levels by shipping only the level lumps that have changed. It was written to handle any .bsp file lump, but right now it's really only useful for lumps that don't depend on other lumps, until a tool exists that will find all the changed lumps. For example, changing geometry in a map changes many lumps, and each changed lump would need to be selected by hand. Once many lumps have been changed, you may as well ship a new .bsp.
For now, it's a great way of shipping new entity lumps, or new game data lumps without having to re-ship the entire .bsp.
Creating and using new lumps
The steps involved are as follows (assuming that a previous version of the .bsp file has already been shipped):
- Make a backup copy of the current .bsp.
- Make the desired changes to the level, and compile a new .bsp.
- Use
"%sourcesdk%\bin\vbspinfo" -X bspname
to extract the desired lumps into .lmp files.Note:The .lmp file will be created in the same directory as the input .bsp.
- Put the .lmp files into your gamedir\maps directory (if they aren't already), and ensure their <id> numbers are correct (see below).
- Make a backup copy of the revised .bsp.
- Restore the backup of the old .bsp, and test it with the new .lmp.
- Ship the .lmp files only.
ID numbers
.lmp files are automatically named in the following format:
<bsp name>_l_<id>.lmp
After loading the .bsp, the engine will then load .lmp files starting at id 0, and stopping as soon as it fails to find a .lmp for the next id. Each .lmp file overrides any existing lump in the .bsp, or preceding .lmp files. If a new lump has already been shipped as a <bsp_name>_l_0.lmp
file, that lump can overridden with a <bsp_name>_l_1.lmp
file.