How to use Qlumpy...(and makels)
What is Qlumpy?
Qlumpy is a very, very, very old tool which was made back in the days of Quake 1 and modified by Valve to create the new WAD3 format, which doesn't require the strict use of one palette over all the images in a WAD file, but allows the use of a different palette for every bitmap in the WAD.
Qlumpy uses an .ls file (LS in caps), which is like a script file, similar to a .qc file, which would be used to create things like models. The .ls file contains 4 main tokens:
write the .ls file by hand with a text editor such as Notepad or Notepad++, buuuut there's a much better alternative...Makels!What is makels?
Makels, as the name suggests(make LS), takes three parameters: directory, WAD name, and .ls file name."What do these parameters do?", you may ask. Well, they basically tell makels where to find your bitmaps, what the resulting WAD file will be named, and what the .ls script's name will be."But what about lumps?", you may ask again. Well, my dear reader, I have no idea (yet...) what lumps are... But all I know is that it's something used in an old WAD file format, so not for Goldsource.But! I do have a useful link which you can access to read more about lumps!https://doomwiki.org/wiki/Lump
But now you may be wondering: "How do I give makels these parameters?"
<directory of bitmaps> <output WAD name> <output .ls script name>
To answer that, we need to talk about...Opening the command prompt.(or CMD for short)
Now, you may say to yourself that it's programming and that it's scary and you want mommy to come pick you up, well forget about all that, it's ludicrously simple!Finding CMD
All you need to do to find CMD is go to your search bar, and type CMD. Now all you need to do is click on the Command Prompt app...
This tab should pop up!
Okay, now we're getting to the fun part!
"What is this?", you may wonder. Well, it's how we are going to run makels with the aformentioned parameters!
What we want to do now is set this app to the directory in which makels is situated. If you downloaded the Half-Life SDK from Steam correctly, it should be in Steam>steamapps>common>Half-Life SDK>Texture Wad Tools.
Keep in mind that you will need to mention the user first, for example, I am users>crist, and my Steam folder is located in Documents.
To change the directory, we will need to use the "cd" command, which stand for change directory(cd
).In my case, I will need to use the command <cd "c:\users\crist\documents\steam\steamapps\common\Half-Life SDK\texture wad tools">
Okay, almost done!
Now you will need to write the following line:
In my case, I put my bmp folder in the same folder as makels (Texture Wad Tools), so I will write:"c:\users\crist\documents\steam\steamapps\common\Half-Life SDK\Texture Wad Tools\my bmps"
makels "directory of your bmp folder" "resulting WAD file name" "resulting .ls file name"
Next, I will write "mywadname" (for the wad name, no extension needed)
And the last step, "myscriptname.ls"(extension needed, just place .ls at the end, it's LS)
Now, just press Enter!
Now go to your Texture Wad Tools location in File Explorer! Now, for the final step, drag and drop the .ls file into qlumpy.
A wad file named after your specifications should appear! Good job! Now just use the .wad file with Hammer 3.x, J.A.C.K. or Sledge to have your magnificent textures appear in the world of Goldsource!
Modifying the .ls file
While opening the .ls file in a text editor, you will find a series of $loadbmp tokens, each with a directory and a command. In our case, the command will be miptex, a command used for creating mipmaps. A mipmap is basically the same bitmap you placed into your folder, but copied a few times, with each copy decreasing in quality.But don't worry, these mipmaps are used to decrease texture quality in-game, and will only come into effect at longer distances. This is used to conserve space.
The font command
The font command is used to create...a font! It is used in-game for things like chapter text, the pause text and others. As seen on the VDC website, linked below, it takes 3 parameters:
The height parameter will determine the height of each block. A block is determined by the horizontal space between pixels of the color noted as #254 in the used bitmap's palette. The blocks parameter will note the number of blocks that there are. The rows parameter will determine the number of rows in the font .bmp file. A value of -1 will result in automatic separation automatic.
Honestly, this command isn't really used too often, unless you want to make this for a custom mod. For normal textures, just use the normal miptex
command! For more commands, check out https://developer.valvesoftware.com/wiki/Qlumpy ,there you will find every command, as well as the parameters it needs.Beware, some are unused!
- Sources and help:
- Valve Developer Community Website
- Half-Life SDK Tutorial Documents
- Zode, from the TWHL Discord Server!