2021-04-06 08:43:38 +00:00
|
|
|
hlmaterials - Nuclide Documentation
|
|
|
|
Written by Gethyn ThomasQuail, 6th April 2021
|
|
|
|
|
|
|
|
This document gives a general overview of what the materials.txt files is,
|
|
|
|
and how it's used in Nuclide, and why the decisions were chosen for the
|
|
|
|
current implementation. It is not an in-depth explanation of the format
|
|
|
|
itself.
|
|
|
|
|
|
|
|
The materials.txt is how the GoldSrc engine defined sounds for various
|
|
|
|
textures throughout the game. For example, crates make "wood" sounds,
|
|
|
|
vents produce metallic feedback, etc. It is an analogue to surfaceparms
|
|
|
|
for those familiar with idTech engines, this was just Valve Software's
|
|
|
|
way of doing it before adopting standards.
|
|
|
|
|
|
|
|
In stock Half-Life, this file is located at:
|
|
|
|
|
|
|
|
sounds/materials.txt
|
|
|
|
|
|
|
|
It is allowed to be overwritten by a modification, and users could customize
|
|
|
|
the file on the client-side only for themselves. This means there was no
|
|
|
|
map specific materials, and mods could not inherit HL's materials, so
|
|
|
|
mods would always have to manage a nearly duplicate file if they desired
|
|
|
|
custom texture sounds.
|
|
|
|
|
|
|
|
A few mods tried to remedy this problem, the following below is methods
|
|
|
|
documented so far:
|
|
|
|
|
|
|
|
- maps/MAPNAME.mat
|
|
|
|
Introduced in The Wastes.
|
|
|
|
|
|
|
|
- maps/MAPNAME_materials.txt
|
|
|
|
Convention by Andrew Lucas, creator of Trinity SDK, modeled after
|
|
|
|
MAPNAME_details.txt
|
|
|
|
|
|
|
|
- materials_file "PATH/FILE.txt" via "worldspawn" entity
|
|
|
|
Introduced in Sven Co-op 5.0
|
|
|
|
|
|
|
|
All these methods are supported by Nuclide, as one goal is to implement
|
|
|
|
conventions by not only Valve but the community as well.
|
|
|
|
|
|
|
|
In addition Nuclide has also implemented a way of giving modifications
|
|
|
|
their own inheritable materials file:
|
|
|
|
|
|
|
|
sounds/materials_UNIQUENAME.txt
|
|
|
|
|
|
|
|
The idea here is that any mod or even map pack can include ONLY the textures
|
|
|
|
used, and no longer will anyone have to manage a near-clone of materials.txt
|
|
|
|
|
|
|
|
For repackaging or modding purposes, if you desire to give your map custom
|
|
|
|
sound definitions, we recommend The Wastes method for individual maps, while
|
|
|
|
the Nuclide method should be used for Mods or Map Packs. We find these to be
|
|
|
|
the most clean and efficient way.
|
|
|
|
|
2021-07-19 09:25:28 +00:00
|
|
|
NOTE: We recommend only using materials text files for GoldSrc related modding
|
|
|
|
purposes. It is inefficient for modern projects as there are much better
|
2021-04-06 08:43:38 +00:00
|
|
|
standards already supported in Nuclide. Keep in mind, it takes memory to load
|
|
|
|
big text files, and lots of text files adds up over play sessions.
|