What is MIME type "application/vnd.valve.source.material"?

A MIME type is a string that tells browsers and other tools how to handle a particular kind of file.

application/vnd.valve.source.material is a MIME type used by Valve’s Source engine to define how surfaces should look in games.
It is associated with material definition files. One common file uses the extension VMT.
These files contain data that tells the engine which textures, shaders, and lighting effects to apply.

They ensure consistent visual styles and proper integration of graphical elements in games.
Learn more at the Valve Developer Documentation.

Associated file extensions

Usage Examples

HTTP Header

When serving content with this MIME type, set the Content-Type header:


    Content-Type: application/vnd.valve.source.material    
  

HTML

In HTML, you can specify the MIME type in various elements:


    <a href="file.dat" type="application/vnd.valve.source.material">Download file</a>    
  

Server-side (Node.js)

Setting the Content-Type header in Node.js:


    const http = require('http');    
    
    http.createServer((req, res) => {    
      res.setHeader('Content-Type', 'application/vnd.valve.source.material');    
      res.end('Content here');    
    }).listen(3000);    
  

Associated file extensions

FAQs

What is the application/vnd.valve.source.material MIME type used for?

This MIME type represents Valve Material Type (VMT) files, which are text-based configuration files used by the Source game engine. They define how surfaces appear in games like Counter-Strike or Team Fortress 2 by specifying shaders, textures, and physical properties. You can learn more about the specific file format at vmt.

How do I configure a FastDL server to serve .vmt files?

To ensure game clients can download custom materials, add the MIME type to your web server configuration. For Apache, use AddType application/vnd.valve.source.material .vmt in your .htaccess. For Nginx, add application/vnd.valve.source.material vmt; to your mime.types file.

Can web browsers render application/vnd.valve.source.material files?

No, standard browsers like Chrome or Firefox cannot render Source Engine materials natively. If you navigate directly to a file served with this type, the browser will likely prompt you to download it or display it as plain text if the server configuration allows.

What is the difference between VMT and VTF files?

The VMT file (associated with application/vnd.valve.source.material) is a text script that describes how a texture behaves, including reflection and transparency settings. The VTF file contains the actual image data (pixels). The VMT file references the VTF file path.

How do I open or edit a file with this MIME type?

Since these files contain plain text code, you can open them with any text editor like Notepad++, Sublime Text, or VS Code. Specialized tools like VTFEdit are also commonly used by modders to create and validate these materials.

Why does this MIME type include 'vnd'?

The vnd prefix stands for vendor, indicating that this is a proprietary format controlled by a specific organization—in this case, Valve Corporation. unlike standard types like text/html, it is specific to the Source engine ecosystem.

Is application/vnd.valve.source.material safe to download?

Generally, yes. These files are typically simple text scripts that define graphical parameters. However, like any downloaded content, they should only be accepted from trusted servers to avoid malicious modifications or exploits within the game engine.

General FAQ

What is a MIME type?

A MIME (Multipurpose Internet Mail Extensions) type is a standard that indicates the nature and format of a document, file, or assortment of bytes. MIME types are defined and standardized in IETF's RFC 6838.

MIME types are important because they help browsers and servers understand how to process a file. When a browser receives a file from a server, it uses the MIME type to determine how to display or handle the content, whether it's an image to display, a PDF to open in a viewer, or a video to play.

MIME types consist of a type and a subtype, separated by a slash (e.g., text/html, image/jpeg, application/pdf). Some MIME types also include optional parameters.

How do I find the MIME type for a file?

You can check the file extension or use a file identification tool such as file --mime-type on the command line. Many programming languages also provide libraries to detect MIME types.

Why are multiple MIME types listed for one extension?

Different applications and historical conventions may use alternative MIME identifiers for the same kind of file. Showing them all helps ensure compatibility across systems.