Momentum Mod is a standalone game built on the Source Engine, aiming to centralize movement gametypes found in CS:S, CS:GO, and TF2.
Lumper is a program for viewing and manipulating the various "lumps" that constitute Source Engine map files (BSPs).
It is not a map authoring tool like Hammer, which operates on map source files (VMFs) that are then compiled to BSPs. Lumper is intended for small, destructive tweaks to existing maps. It's most similar to VIDE, which is unfortunately closed-source, inactive, and doesn't support more recent BSP versions.
View and edit the contents of the entity lump à la EntSpy/VIDE. Includes a "Raw Entities" view for editing the entire lump as plaintext.
View and edit the contents of the pakfile lump with a built-in file tree, text editor, and VTF viewer. It supports importing files/directories, exporting to the filesystem, and can automatically update references to paths in other lumps when items are moved.
Displays every VTF file packed into the pakfile, like Hammer's texture UI.
Jobs are a way of automating repetitive tasks, particularly for Momentum map porting. Multiple jobs can be ordered sequentially, and export/imported as JSON "workflow" files. The current jobs we support are:
Lumper can load and save LZMA compressed BSPs, including the pakfile, producing
the same result
as bspzip
.
Lumper can serialize the contents of the BSP to JSON files, helpful for analysing a BSP in a human-readable format and diffing BSP versions in Git.
See the Releases tab on the right! This program is very new, and we don't currently have any kind of auto-updater, so worth checking back here for updates regularly.
Lumper is developed by the Momentum Mod team and contributors. We frequently need to adjust BSPs slightly when porting for official map submission. Out of respect for mappers we avoid modifying the original BSP as much as we possibly can. Manipulating existing BSPs is much less intrusive than decompiling, adjusting, then recompiling. Lumper lets us:
sound/music/
directory of the paklump so
they're affected by the right volume sliders
ingame.Lumper is written in C#, targeting .NET. It's divided into three subprojects:
See our wiki for more info!
We are happy to accept contributions! Whilst we prioritize Momentum-related use-cases ourselves, we hope this tool is helpful to anyone using Source 1, and we welcome contributions and bug reports from people not involved with Momentum.
Besides this repo the best way to contact us is on
the Momentum Mod Discord server, ideally in
the #tooling
channel.