LMP File – What is .lmp file and how to open it?


lightbulb

LMP File Extension

Quake Engine Lump File – file format by id Software

LMP (Quake Engine Lump File) is a file extension developed by id Software for storing game data in their Quake engine. It contains various types of data, such as models, textures, sounds, and scripts, used by the game for rendering and gameplay.

Quake Engine Lump File (LMP)

A LMP file is a Quake Engine Lump File used in the Quake engine, a game engine developed by id Software. It stores game data in a lumped format, which means that different types of data are stored in separate chunks or “lumps”. LMP files typically contain textures, models, sounds, and other assets used by the game. They are essential for the game to run and display its graphics and gameplay elements.

Technical Details

LMP files are binary files and have a specific file structure. Each lump in the file has a header that includes its size and type. The data within each lump is then stored in a compressed format, using various compression algorithms such as RLE (run-length encoding) and Huffman encoding. This compression helps to reduce the overall file size and load times. LMP files are typically used in conjunction with other file formats such as PAK (Quake Pak File) and BSP (Quake Map File) to store the entire game data.

Using a Game Engine Editor:

Quake Engine Lump Files (.LMP) are specifically designed to be used with the Quake engine, a game engine developed by id Software. To open and edit LMP files, you will need a game engine editor capable of working with Quake-based games. Examples of such editors include QuakeEd, GTKRadiant, and T3D. Once you have installed a game engine editor, you can open an LMP file by selecting the “Open” or “Import” option and navigating to the location of the file on your computer.

Using a Hex Editor:

Another way to open LMP files is by using a hex editor, a specialized software tool that allows you to view and edit the raw data of a file. While hex editors do not provide the same level of functionality as game engine editors specifically designed for Quake, they can be useful for performing basic tasks such as extracting or modifying individual data elements within the LMP file. To open an LMP file in a hex editor, simply select the “Open” option and locate the file on your computer.

Lump File Structure

Quake Engine Lump Files (LMPs) serve as data containers within the Quake engine. Each LMP consists of header information followed by a data payload. The header comprises:

  • Magic Value (4 bytes): Magic number “LUMP” to identify the file as an LMP.
  • Lump Tag (4 bytes): Unique ASCII identifier (e.g., “TEXT”), indicating the type of data stored.
  • Version (4 bytes): File version number.
  • File Position (4 bytes): Offset within the file where the data payload begins.
  • Length (4 bytes): Size of the data payload in bytes.

The data payload contains the actual data, which can vary depending on the lump tag. Common lump tags include “TEXT” for text data, “MODEL” for 3D models, and “SKIN” for texture data. LMPs can be chained together, creating a hierarchical file structure where each LMP stores a specific type of data.

Use in Quake Engine

LMP files are an integral part of the Quake engine, used to store a wide range of data:

  • Level Geometry: LMPs containing “MODEL” tags define the geometry of levels, including walls, floors, and objects.
  • Textures: LMPs with “SKIN” tags store texture data, applied to surfaces in the game world.
  • Scripts and Code: “LUA” LMPs contain Lua scripts, providing a means to create dynamic events and interactions.
  • Music and Sound Effects: LMPs with “WAVE” tags hold audio data, such as music tracks and sound effects.

By organizing data into separate LMPs, the Quake engine achieves efficient management and loading of game resources. LMP files can be packaged into “PAK” files, which are compressed archives containing multiple LMPs for convenient distribution.

Other Extensions