Hosting and domain costs until October 2024 have been generously sponsored by dumptruck_ds. Thank you!
Editing FTEQW File Formats
From Quake Wiki
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.
The edit can be undone.
Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 1: | Line 1: | ||
This is a list of all the file formats that can be used by FTEQW and some of the other commonly used engines. The engines are: FTEQW, DarkPlaces, Quakespasm, Quakespasm Spiked, VK Quake, Mark V, and EZ-Quake. | This is a list of all the file formats that can be used by FTEQW and some of the other commonly used engines. The engines are: FTEQW, DarkPlaces, Quakespasm, Quakespasm Spiked, VK Quake, Mark V, and EZ-Quake. | ||
− | + | {| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1" | |
− | |||
− | |||
==Model and/or Animation== | ==Model and/or Animation== | ||
− | |||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
! Format | ! Format | ||
Line 26: | Line 23: | ||
| style="background:green; color:white;" | Y <!-- MkV --> | | style="background:green; color:white;" | Y <!-- MkV --> | ||
| style="background:green; color:white;" | Y <!-- EZ --> | | style="background:green; color:white;" | Y <!-- EZ --> | ||
− | | style="text-align:left;" | Echo: These became known as Alias models, even though that‘s not correct. John Carmack always called these Alias models, so the name stuck. Squirmy when animating | + | | style="text-align:left;" | Echo: These became known as Alias models, even though that‘s not correct. John Carmack always called these Alias models, so the name stuck. Squirmy when animating. |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
Line 38: | Line 35: | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
− | | | + | | Swimmy when animating. Yuck. |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
Line 234: | Line 231: | ||
|} | |} | ||
− | |||
{| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1" | {| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1" | ||
+ | ==Map Source File (load a .map without compiling it)== | ||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
! Format | ! Format | ||
Line 271: | Line 268: | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | none |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
Line 311: | Line 308: | ||
|} | |} | ||
+ | {| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1" | ||
==Map Data File== | ==Map Data File== | ||
− | |||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
! Format | ! Format | ||
Line 419: | Line 416: | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | none |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
Line 504: | Line 501: | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
| style="text-align:left;" | LH: DP can use .obj as a map if you provide a .ent file with it. You can also use it as a standard model in DP. | | style="text-align:left;" | LH: DP can use .obj as a map if you provide a .ent file with it. You can also use it as a standard model in DP. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
Line 547: | Line 539: | ||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
− | | BSPX lump: | + | | BSPX lump: LMSHIFT, LMOFFSET, LMSTYLE |
| (.bsp) | | (.bsp) | ||
| style="background:green; color:white;" | Y <!-- FTE --> | | style="background:green; color:white;" | Y <!-- FTE --> | ||
| style="background:darkred; color:white;" | N <!-- DP --> | | style="background:darkred; color:white;" | N <!-- DP --> | ||
| style="background:darkred; color:white;" | N <!-- QS --> | | style="background:darkred; color:white;" | N <!-- QS --> | ||
− | | style="background: | + | | style="background:green; color:white;" | Y <!-- QSS --> |
| style="background:darkred; color:white;" | N <!-- VK --> | | style="background:darkred; color:white;" | N <!-- VK --> | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | Allows per-surface lightmap scaling, for higher resolution lightmaps. This is why .lit2 was basically abandoned. |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
− | | BSPX lump: | + | | BSPX lump: VERTEXNORMALS |
| (.bsp) | | (.bsp) | ||
| style="background:green; color:white;" | Y <!-- FTE --> | | style="background:green; color:white;" | Y <!-- FTE --> | ||
| style="background:darkred; color:white;" | N <!-- DP --> | | style="background:darkred; color:white;" | N <!-- DP --> | ||
| style="background:darkred; color:white;" | N <!-- QS --> | | style="background:darkred; color:white;" | N <!-- QS --> | ||
− | | style="background: | + | | style="background:darkred; color:white;" | N <!-- QSS --> |
| style="background:darkred; color:white;" | N <!-- VK --> | | style="background:darkred; color:white;" | N <!-- VK --> | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
− | | style="text-align:left;" | Allows | + | | style="text-align:left;" | Allows rtlights+specular lighting effects to respect 'phong'/edge smoothing. ericw stripped support for this from his tool. |
− | |||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
− | | BSPX lump: | + | | BSPX lump: BRUSHLIST |
| (.bsp) | | (.bsp) | ||
| style="background:green; color:white;" | Y <!-- FTE --> | | style="background:green; color:white;" | Y <!-- FTE --> | ||
Line 581: | Line 572: | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | Allows an engine to support collisions using arbitrary sizes. Compile with ericw's qbsp using the -wrbrushes argument. |
+ | |||
+ | |} | ||
− | | | + | {| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1" |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | ==Map Misc. Data File== | ||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
− | + | ! Format | |
− | + | ! Ext | |
− | + | ! FTE | |
− | + | ! DP | |
− | + | ! QS | |
− | + | ! QSS | |
− | + | ! VK | |
− | + | ! MkV | |
− | + | ! EZ | |
− | + | ! Notes | |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
− | | | + | | Quake1 external lightmap |
− | | (. | + | | (.lit) |
| style="background:green; color:white;" | Y <!-- FTE --> | | style="background:green; color:white;" | Y <!-- FTE --> | ||
− | | style="background: | + | | style="background:green; color:white;" | Y <!-- DP --> |
− | | style="background: | + | | style="background:green; color:white;" | Y <!-- QS --> |
− | | style="background: | + | | style="background:green; color:white;" | Y <!-- QSS --> |
− | | style="background: | + | | style="background:green; color:white;" | Y <!-- VK --> |
− | | style="background: | + | | style="background:green; color:white;" | Y <!-- MkV --> |
− | | style="background: | + | | style="background:green; color:white;" | Y <!-- EZ --> |
− | | style="text-align:left;" | | + | | style="text-align:left;" | This is a hack to allow colored lighting in Quake1 maps. |
− | + | |-valign="top" style="background:#F8F8F8" | |
− | + | | Entity Replacement | |
− | + | | (.ent) | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |-valign="top" style="background:#F8F8F8" | ||
− | | | ||
− | | (. | ||
| style="background:green; color:white;" | Y <!-- FTE --> | | style="background:green; color:white;" | Y <!-- FTE --> | ||
| style="background:green; color:white;" | Y <!-- DP --> | | style="background:green; color:white;" | Y <!-- DP --> | ||
Line 647: | Line 613: | ||
| style="background:green; color:white;" | Y <!-- MkV --> | | style="background:green; color:white;" | Y <!-- MkV --> | ||
| style="background:green; color:white;" | Y <!-- EZ --> | | style="background:green; color:white;" | Y <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | LH: DP can use .obj as a map if you provide a .ent file with it. Can be used to fix z-fighting bugs, fix entities in walls, remove quad in small deathmatch maps, etc. |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
− | + | | LightDirectionMap | |
− | + | | (.dlit) | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | | LightDirectionMap | ||
− | | (.dlit) | ||
| style="background:green; color:white;" | Y <!-- FTE --> | | style="background:green; color:white;" | Y <!-- FTE --> | ||
| style="background:green; color:white;" | Y <!-- DP --> | | style="background:green; color:white;" | Y <!-- DP --> | ||
Line 711: | Line 665: | ||
|} | |} | ||
+ | {| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1" | ||
==Texture File== | ==Texture File== | ||
− | |||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
! Format | ! Format | ||
Line 735: | Line 689: | ||
| style="background:green; color:white;" | Y <!-- MkV --> | | style="background:green; color:white;" | Y <!-- MkV --> | ||
| style="background:green; color:white;" | Y <!-- EZ --> | | style="background:green; color:white;" | Y <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | none |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
Line 747: | Line 701: | ||
| style="background:green; color:white;" | Y <!-- MkV --> | | style="background:green; color:white;" | Y <!-- MkV --> | ||
| style="background:green; color:white;" | Y <!-- EZ --> | | style="background:green; color:white;" | Y <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | none |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
− | | | + | | Targa |
| (.tga) | | (.tga) | ||
| style="background:green; color:white;" | Y <!-- FTE --> | | style="background:green; color:white;" | Y <!-- FTE --> | ||
Line 759: | Line 713: | ||
| style="background:green; color:white;" | Y <!-- MkV --> | | style="background:green; color:white;" | Y <!-- MkV --> | ||
| style="background:green; color:white;" | Y <!-- EZ --> | | style="background:green; color:white;" | Y <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | none |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
− | | | + | | Image |
| (.pcx) | | (.pcx) | ||
| style="background:green; color:white;" | Y <!-- FTE --> | | style="background:green; color:white;" | Y <!-- FTE --> | ||
Line 771: | Line 725: | ||
| style="background:green; color:white;" | Y <!-- MkV --> | | style="background:green; color:white;" | Y <!-- MkV --> | ||
| style="background:green; color:white;" | Y <!-- EZ --> | | style="background:green; color:white;" | Y <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | none |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
Line 782: | Line 736: | ||
| style="background:darkred; color:white;" | N <!-- VK --> | | style="background:darkred; color:white;" | N <!-- VK --> | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
− | | style="background: | + | | style="background:darkred; color:white;" | N <!-- EZ --> |
− | | style="text-align:left;" | | + | | style="text-align:left;" | none |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
− | | | + | | Image |
| (.jpg) | | (.jpg) | ||
| style="background:green; color:white;" | Y <!-- FTE --> | | style="background:green; color:white;" | Y <!-- FTE --> | ||
Line 794: | Line 748: | ||
| style="background:darkred; color:white;" | N <!-- VK --> | | style="background:darkred; color:white;" | N <!-- VK --> | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
− | | style="background: | + | | style="background:darkred; color:white;" | N <!-- EZ --> |
− | | style="text-align:left;" | | + | | style="text-align:left;" | none |
Line 808: | Line 762: | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | none |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
− | | | + | | Texture Wad (of other game) |
| (.wad) | | (.wad) | ||
| style="background:green; color:white;" | Y <!-- FTE --> | | style="background:green; color:white;" | Y <!-- FTE --> | ||
Line 820: | Line 774: | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:green; color:white;" | Y <!-- EZ --> | | style="background:green; color:white;" | Y <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | Required for halflife bsp support. |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | Required for halflife bsp support. | ||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
Line 945: | Line 886: | ||
|} | |} | ||
+ | {| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1" | ||
==Sprite File== | ==Sprite File== | ||
− | |||
− | |||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
! Format | ! Format | ||
Line 1,006: | Line 946: | ||
| style="background:darkred; color:white;" | N <!-- MkV --> | | style="background:darkred; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
− | | style="text-align:left;" | Like Quake 1 sprites, but with dedicated color palette, and additional translucency modes | + | | style="text-align:left;" | Like Quake 1 sprites, but with dedicated color palette, and additional translucency modes. |
− | + | https://www.the303.org/tutorials/gold_sprite.htm | |
|} | |} | ||
+ | {| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1" | ||
==Particle File== | ==Particle File== | ||
− | |||
− | |||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
! Format | ! Format | ||
Line 1,052: | Line 991: | ||
|} | |} | ||
+ | {| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1" | ||
==Shader File== | ==Shader File== | ||
− | |||
− | |||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
! Format | ! Format | ||
Line 1,093: | Line 1,031: | ||
|} | |} | ||
− | |||
{| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1" | {| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1" | ||
+ | ==Script File== | ||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
! Format | ! Format | ||
Line 1,118: | Line 1,056: | ||
| style="background:green; color:white;" | Y <!-- MkV --> | | style="background:green; color:white;" | Y <!-- MkV --> | ||
| style="background:green; color:white;" | Y <!-- EZ --> | | style="background:green; color:white;" | Y <!-- EZ --> | ||
− | | style="text-align:left;" | | + | | style="text-align:left;" | none |
|} | |} | ||
+ | {| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1" | ||
==Sound Effect File== | ==Sound Effect File== | ||
− | |||
− | |||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
! Format | ! Format | ||
Line 1,186: | Line 1,123: | ||
|} | |} | ||
+ | {| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1" | ||
==Music Track File== | ==Music Track File== | ||
− | |||
− | |||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
! Format | ! Format | ||
Line 1,235: | Line 1,171: | ||
| style="background:olive; color:white;" | N <!-- MkV --> | | style="background:olive; color:white;" | N <!-- MkV --> | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
− | | style="text-align:left;" | QS only supports oggs for music, not game sounds. | + | | style="text-align:left;" | QS only supports oggs for music, not game sounds. MKV only plays ogg vorbis music when the files are misnamed as '.mp3', and is dependant upon system codecs, and cannot be inside a pak, so basically doesn't play them. They're otherwise the most widely supported compressed music format. |
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
Line 1,275: | Line 1,211: | ||
|} | |} | ||
+ | {| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1" | ||
==Video File== | ==Video File== | ||
− | |||
− | |||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
! Format | ! Format | ||
Line 1,484: | Line 1,419: | ||
|} | |} | ||
+ | {| class="wikitable" style="width:100%; background:#999; text-align:center;" cellpadding="4" cellspacing="1" | ||
==Pathfinding== | ==Pathfinding== | ||
− | |||
− | |||
|-valign="top" style="background:#F8F8F8" | |-valign="top" style="background:#F8F8F8" | ||
! Format | ! Format | ||
Line 1,522: | Line 1,456: | ||
| style="background:darkred; color:white;" | N <!-- EZ --> | | style="background:darkred; color:white;" | N <!-- EZ --> | ||
| style="text-align:left;" | Text files that follow a specific syntax. | | style="text-align:left;" | Text files that follow a specific syntax. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|} | |} |