User:SirYodaJedi/Notepad

From Valve Developer Community
Jump to navigation Jump to search

Various unsorted notes. Feel free to copy this information elsewhere, but please don't remove or edit any information. If something is inaccurate, please post on my talk page or ping/PM me on Discord, so that I notice promptly.

General

Tip.pngTip:If you want your level to be believably structured, don't greybox! Instead, use simple brushwork with simple low-quality placeholder textures that get the point across. Have textures for different surface types (grass, dirt, concrete, brick, sand, computer, etc.), but don't spend too much time making the placeholders look pretty. This ensures that different areas of your map are unique, without hassling over fine-grain specifics. It also allows for a better idea of how a map will be lit, as it provides a better indication of what areas are what general colors.

id Tech 2 id Tech 2

Tip.pngTip:For VHLT-style autophong in ericw-tools, add the following KVs to Worldspawn:
"_phong" "1" "_phong_angle" "44"
The angle threshold might require the latest dev builds.

GoldSrc GoldSrc

Tip.pngTip:Half-Life MDLs store a path and filename in their header, but GoldSrc GoldSrc usually doesn't care what's written there; you can rename the model and change what folder it is located in, unlike Source Source. This can be used to add a signature to your model without affecting performance; just compile the model to an existing subfolder with the appropriate name.

Example: $modelname "my_nickname\my_model.mdl"
Using relative paths instead of absolute paths is recommended, for privacy reasons.

Warning.pngWarning:The internally stored filenames are used for reading from textures and animations which are stored in separate MDLs. Make sure to remove $externaltextures and $sequencegroupsize from the QC file, if present (these commands shouldn't be used; they cause more issues than they fix).
Note.pngNote:Source Source mostly doesn't care, except for CS:GO engine branch CS:GO engine branch. Some tools do use the internal names, however. Additionally, Sorse models are compiled directly into the game's models directory instead of the QC file location, so this process is more tedious there.
Warning.pngWarning:Shower thought: Ordinarily, zhlt_embedlightmap breaks water textures, because it results in textures that start with __, but water textures need to start with !. This results in the texture no longer being animated, waves no longer appearing, and backface culling being enabled. Additionally, the brush face is no longer subdivided every 64 units, which is required for waves to work correctly.
Tip.pngIdea:What might be possible to do is to:
  1. Compile the map with the embedded lightmaps.
  2. Decompile the resulting map using BSP tree method.
  3. Extract the textures from the BSP. Change the prefix from __ to !.
  4. Create a WAD with the renamed textures using WadMaker WadMaker (This streamlines the process of fog).
  5. Open the decompiled MAP in a text editor, and do a find-and-replace edit to reflect the changed names of the func_water textures. Save the file.
  6. Open the .MAP in the map editor, and delete everything that isn't the water.
  7. Clean up any faulty geometry, then paste special into your original uncompiled map.
  8. If certain generated textures are identical, change the faces used by them to use the same texture (saving texture usage).

Source Source

Icon-Important.pngImportant:The barbed wire model in Day of Defeat: Source Day of Defeat: Source shouldn't be used as a prop_static, as it has multiple submodels and lacks a collision mesh. I'm working on separating it into separate models, but I currently only have the first submodel done.