MIX: Difference between revisions
m Shifted VXL/HVA from ecache to expands due to the classic modding doing it. Also fixed some typos. |
Updated list. |
||
(8 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
.mix | Mix files (file extension .mix) are archive files used by [[Westwood]] to store most game files from {{td}} to [[Renegade]]. For [[Generals]] and following, [[BIG|BIG files]] took this part. | ||
==Editing Mix | ==Editing Mix Files== | ||
Mix | Mix files can be read, edited and created using the [[XCC Mixer]] and the [[XCC MIX Editor]], both created by [[Olaf van der Spek]]. They can be downloaded at [http://xhp.xwis.net/ xhp.xwis.net]. | ||
== | Alternatively, there's a command line tool called [https://github.com/OmniBlade/ccmix ccmix] by [[OmniBlade]] which can generate and extract from mix files. | ||
==Mix Types== | |||
There are several types of mix files, each for a specific purpose as detailed below. Using mix files correctly is important for the correct execution of your mod. | |||
: | |||
{| class="wikitable sortable" | |||
!colspan=3|Index in... | |||
!rowspan=2|Mix File | |||
!colspan=3|Available in... | |||
!rowspan=2|Description | |||
!rowspan=2|Cached? | |||
|- | |||
![[Image:Game_ts_yes.png]] | |||
![[Image:Game_ra2_yes.png]] | |||
![[Image:Game_yr_yes.png]] | |||
![[Image:Game_ts_yes.png]] | |||
![[Image:Game_ra2_yes.png]] | |||
![[Image:Game_yr_yes.png]] | |||
|- | |||
|N/A | |||
|N/A | |||
|0 | |||
|LANGMD.MIX | |||
|{{N}} | |||
|{{N}} | |||
|{{Y}} | |||
|Localized files for the '''M'''ission '''D'''isk ({{yr}}): audio, cameos, etc. | |||
|{{N}} | |||
|- | |||
|TBA | |||
|TBA | |||
|1 | |||
|LANGUAGE.MIX | |||
|{{Y}} | |||
|{{Y}} | |||
|{{Y}} | |||
|Localized files: audio, cameos, etc. | |||
|{{N}} | |||
|- | |||
|N/A | |||
|N/A | |||
|2 | |||
|EXPANDMD##.MIX | |||
|{{N}} | |||
|{{N}} | |||
|{{Y}} | |||
|Expansion mix for YR: various files, more information below.<br/>The {{tt|##}} is any two-digit number between 01–99, with higher numbers loaded first. | |||
|{{N}} | |||
|- | |||
|N/A | |||
|N/A | |||
|3 | |||
|RA2MD.MIX | |||
|{{N}} | |||
|{{N}} | |||
|{{Y}} | |||
|Main mix file for YR. Most mix files are stored within this file, except for expansion mixes. | |||
|{{N}} | |||
|- | |||
|N/A | |||
|TBA | |||
|4 | |||
|RA2.MIX | |||
|{{N}} | |||
|{{Y}} | |||
|{{Y}} | |||
|Main mix file for RA2. Most mix files are stored within this file, except for expansion mixes. | |||
|{{N}} | |||
|- | |||
|N/A | |||
|N/A | |||
|5 | |||
|CACHEMD.MIX | |||
|{{N}} | |||
|{{N}} | |||
|{{Y}} | |||
|Cached files for YR. Usually palettes and certain [[SHP|shape files]]. | |||
|{{Y}} | |||
|- | |||
|TBA | |||
|TBA | |||
|6 | |||
|CACHE.MIX | |||
|{{Y}} | |||
|{{Y}} | |||
|{{Y}} | |||
|Cached files. Usually palettes and certain [[SHP|shape files]]. | |||
|{{Y}} | |||
|- | |||
|N/A | |||
|N/A | |||
|7 | |||
|LOCALMD.MIX | |||
|{{N}} | |||
|{{N}} | |||
|{{Y}} | |||
|[[VXL|Voxels]], most [[INI]]s, and certain UI graphics are stored here. YR only. | |||
|{{N}} | |||
|- | |||
|TBA | |||
|TBA | |||
|8 | |||
|LOCAL.MIX | |||
|{{Y}} | |||
|{{Y}} | |||
|{{Y}} | |||
|Voxels, most INIs, and certain UI graphics are stored here. | |||
|{{N}} | |||
|- | |||
|N/A | |||
|N/A | |||
|9 | |||
|AUDIOMD.MIX | |||
|{{N}} | |||
|{{N}} | |||
|{{Y}} | |||
|Audio files (except music) for YR. | |||
|{{N}} | |||
|- | |||
|TBA | |||
|TBA | |||
|10 | |||
|ECACHE*.MIX | |||
|{{Y}} | |||
|{{Y}} | |||
|{{Y}} | |||
|Expansion cache. Works like cache.mix. | |||
|{{Y}} | |||
|- | |||
|TBA | |||
|TBA | |||
|11 | |||
|ELOCAL*.MIX | |||
|{{Y}} | |||
|{{Y}} | |||
|{{Y}} | |||
|Local files for an expansion pack. Works like local.mix. | |||
|{{N}} | |||
|- | |||
|N/A | |||
|N/A | |||
|12 | |||
|CONQMD.MIX | |||
|{{N}} | |||
|{{N}} | |||
|{{Y}} | |||
|Infantry [[shapes]] and non-theater-specific, non-building [[animations]]. YR only. | |||
|{{Y}} | |||
|- | |||
|N/A | |||
|N/A | |||
|13 | |||
|GENERMD.MIX | |||
|{{N}} | |||
|{{N}} | |||
|{{Y}} | |||
|Generic, non-theater-specific building graphics, [[TerrainTypes|terrain objects]], and [[overlay]]. YR only. | |||
|{{N}} | |||
|- | |||
|N/A | |||
|TBA | |||
|14 | |||
|GENERIC.MIX | |||
|{{N}} | |||
|{{Y}} | |||
|{{Y}} | |||
|Generic, non-theater-specific building graphics, terrain types, and [[overlay]]. | |||
|{{N}} | |||
|- | |||
|N/A | |||
|N/A | |||
|15 | |||
|ISOGENMD.MIX | |||
|{{N}} | |||
|{{N}} | |||
|{{Y}} | |||
|Generic, non-theater-specific building and [[TMP|tile set]] graphics. YR only. | |||
|{{N}} | |||
|- | |||
|N/A | |||
|TBA | |||
|16 | |||
|ISOGEN.MIX | |||
|{{N}} | |||
|{{Y}} | |||
|{{Y}} | |||
|Generic, non-theater-specific building and [[TMP|tile set]] graphics. | |||
|{{N}} | |||
|- | |||
|TBA | |||
|TBA | |||
|17 | |||
|CONQUER.MIX | |||
|{{Y}} | |||
|{{Y}} | |||
|{{Y}} | |||
|Infantry [[shapes]] and non-theater-specific, non-building [[animations]]. | |||
|{{Y}} | |||
|- | |||
|N/A | |||
|N/A | |||
|18 | |||
|CAMEOMD.MIX | |||
|{{N}} | |||
|{{N}} | |||
|{{Y}} | |||
|[[Cameo]] shapes. YR only. | |||
|{{N}} | |||
|- | |||
|N/A | |||
|TBA | |||
|19 | |||
|CAMEO.MIX | |||
|{{N}} | |||
|{{Y}} | |||
|{{Y}} | |||
|[[Cameo]] shapes. | |||
|{{N}} | |||
|- | |||
|N/A | |||
|N/A | |||
|20 | |||
|MAPSMD03.MIX | |||
|{{N}} | |||
|{{N}} | |||
|{{Y}} | |||
|Mission [[maps]]. YR only. | |||
|{{N}} | |||
|- | |||
|N/A | |||
|N/A | |||
|21 | |||
|MULTIMD.MIX | |||
|{{N}} | |||
|{{N}} | |||
|{{Y}} | |||
|Multiplayer maps. YR only. | |||
|{{N}} | |||
|- | |||
|N/A | |||
|N/A | |||
|22 | |||
|THEMEMD.MIX | |||
|{{N}} | |||
|{{N}} | |||
|{{Y}} | |||
|Music files. YR only. | |||
|{{N}} | |||
|- | |||
|N/A | |||
|N/A | |||
|23 | |||
|MOVMD03.MIX | |||
|{{N}} | |||
|{{N}} | |||
|{{Y}} | |||
|[[Movies|Video]] files. YR only. | |||
|{{N}} | |||
|- | |||
|TBA | |||
|TBA | |||
|24 | |||
|... | |||
|{{Y}} | |||
|{{Y}} | |||
|{{Y}} | |||
|Theater-specific mixes - see [[Theatres]] for a list. | |||
|{{Q}} (iso*.mix are not cached, the rest are) | |||
|- | |||
|TBA | |||
|TBA | |||
|25 | |||
|SIDEC##.MIX | |||
|{{Y}} | |||
|{{Y}} | |||
|{{Y}} | |||
|[[Side]]-specific UI elements, like sidebar graphics. The {{tt|##}} stands for the side you're playing as: e.g. 01 for Allies, 02 for Soviets, etc. | |||
|{{Y}} | |||
|- | |||
|TBA | |||
|TBA | |||
|26 | |||
|SIDENC##.MIX | |||
|{{Y}} | |||
|{{Y}} | |||
|{{Y}} | |||
|Side-specific elements for the campaign progression/mission selection map screen. Unused in RA2/YR. | |||
|{{N}} | |||
|- | |||
|TBA | |||
|N/A | |||
|N/A | |||
|SOUNDS.MIX | |||
|{{Y}} | |||
|{{N}} | |||
|{{N}} | |||
|In-game sound effects ([[AUD]] files). | |||
|{{Y}} | |||
|- | |||
|TBA | |||
|N/A | |||
|N/A | |||
|SOUNDS01.MIX | |||
|{{Y}} | |||
|{{N}} | |||
|{{N}} | |||
|In-game sound effects ([[AUD]] files) for an expansion pack. | |||
|{{Y}} | |||
|- | |||
|TBA | |||
|N/A | |||
|N/A | |||
|PCACHE.MIX | |||
|{{Y}} | |||
|{{N}} | |||
|{{N}} | |||
|Patch cache. Works like cache.mix. | |||
|{{Y}} | |||
|- | |||
|TBA | |||
|N/A | |||
|N/A | |||
|E##SC##.MIX | |||
|{{Y}} | |||
|{{N}} | |||
|{{N}} | |||
|[[Side]]-specific UI elements in an expansion pack. Works like sidec##.mix. | |||
|{{Y}} | |||
|} | |||
===Loading Hierarchy=== | ===Loading Hierarchy=== | ||
The game searches the | The game searches the mix files for contents in the above order. Once a file is found in a mix, the next mixes don't even get checked for its presence. | ||
* For {{tt|ecache*}} and {{tt|elocal*}} files, order is not guaranteed - standard WinAPI functionality is used to locate them, and no sorting is done. | * For {{tt|ecache*}} and {{tt|elocal*}} files, order is not guaranteed - standard WinAPI functionality is used to locate them, and no sorting is done. | ||
:: Quoting [http://msdn.microsoft.com/en-us/library/aa364428(VS.85).aspx MSDN - FindNextFile]: | :: Quoting [http://msdn.microsoft.com/en-us/library/aa364428(VS.85).aspx MSDN - FindNextFile]: | ||
Line 22: | Line 341: | ||
:: Additionally, files that have any of the "Hidden", "System" or "Temporary" attributes set are not loaded. | :: Additionally, files that have any of the "Hidden", "System" or "Temporary" attributes set are not loaded. | ||
===Expansion Mix Files=== | |||
As a result of their high priority and versatility, it is common to store mod assets in the so-called '''expansion mix files'''. There are three different expansion mix types as explained below. | |||
{{HorizontalBar|Instead of using these mix files as catch-all archives, it is recommended to follow the original mix file organization where possible to avoid potential issues.}} | |||
# | ==== EXPAND{{co|MD|#D2691E}}##.MIX ==== | ||
# | <nowiki>##</nowiki> is a number between 01 and 99, and {{tt|{{co|md|#D2691E}}}} is added if the the file is for {{yr}}. | ||
# | |||
This file is used for addon or expansion purpose where new or modified files can be placed. Most filetypes can be placed in it, except the files from lang*.mix which are higher in loading hierarchy. | |||
*[[INIs]] | *[[INIs]] | ||
*[[File_Types#.TEM.2C .SNO.2C .URB.2C .UBN.2C .LUN.2C .DES|.TEM, .SNO, .URB, .UBN, .LUN, .DES]] | *[[File_Types#.TEM.2C .SNO.2C .URB.2C .UBN.2C .LUN.2C .DES|.TEM, .SNO, .URB, .UBN, .LUN, .DES]] | ||
Line 63: | Line 358: | ||
*[[HVA]]s | *[[HVA]]s | ||
=== {{tt|ecache | In RA2, even though expand##.mix is above ecache*.mix in loading hierarchy, the SHP files of buildings/infantry/trees etc. which already exist in original game mix files becomes invisible in-game when those files or files with the same filenames are placed in expand##.mix. Modified files of those should be placed in ecache*.mix for RA2. | ||
As the name suggests, this is | |||
==== ECACHE*.MIX ==== | |||
<nowiki>*</nowiki> can be any string for both {{ra2}} and {{yr}}. {{ts}} uses {{tt|ecache##.mix}} where ## is 2-digit number. | |||
As the name suggests, this is an expansion mix file for files that should be cached. This file is lower in file loading hierarchy than many other mix files. So the game will read new or modified SHP files from it but only VXL/HVA files with different filenames over the original mix files. Both RA2 and YR read the files placed in ecache*.mix, so it could be used as common resource file. | |||
*[[SHP]]s (normal buildings, infantry etc.) | *[[SHP]]s (normal buildings, infantry etc.) | ||
*[[AUD]] files (Not used in [[Red Alert 2]]/[[Yuri's Revenge]]) | *[[AUD]] files (Not used in [[Red Alert 2]]/[[Yuri's Revenge]]) | ||
=== | ==== ELOCAL*.MIX ==== | ||
RA2/YR only. * can be any string. | |||
This file is practically not used in the community, but works for "unofficial SHP, VXL, HVA and MAP files" according to {{theguide}}. Since, in the original game, local.mix holds almost all object-related graphics, and elocal*.mix works for the same file types, it is likely it was originally conceived as an expansion file specifically for local.mix. It is unknown why the community started using ecache*.mix for unit graphics instead. | This file is practically not used in the community, but works for "unofficial SHP, VXL, HVA and MAP files" according to {{theguide}}. Since, in the original game, local.mix holds almost all object-related graphics, and elocal*.mix works for the same file types, it is likely it was originally conceived as an expansion file specifically for local.mix. It is unknown why the community started using ecache*.mix for unit graphics instead. | ||
==Loose Files== | |||
The following file types are usually not stored in a mix file: | |||
*[[CSF]] | *[[CSF]] | ||
*[[PKT]], Only 1 can exist loose, otherwise you get maps listed multiple times. | *[[PKT]], Only 1 can exist loose, otherwise you get maps listed multiple times. | ||
Line 81: | Line 383: | ||
Note that, despite this common distribution of files, many files (especially graphics) work in an expand{{co|md|#D2691E}}##.mix as well. | Note that, despite this common distribution of files, many files (especially graphics) work in an expand{{co|md|#D2691E}}##.mix as well. | ||
==How to make a new | ==How to make a new mix file == | ||
'''Important:''' In order to be read by the game, your new mix has to reside in the game's folder, and has to be [[#File Names and Loading Hierarchy|named correctly]]. | '''Important:''' In order to be read by the game, your new mix has to reside in the game's folder, and has to be [[#File Names and Loading Hierarchy|named correctly]]. | ||
===Using [[XCC | ===Using [[XCC MIX Editor]]=== | ||
Click {{Tt|New}} and choose where to save it. To add files to a mix file you can go to import or you can use the faster method of "drag 'n drop" you can select files from explorer and drag them into the XCC | Click {{Tt|New}} and choose where to save it. To add files to a mix file you can go to import or you can use the faster method of "drag 'n drop" you can select files from explorer and drag them into the XCC mix Editor window. Next press the "Compact" button, this saves and compresses the file. | ||
'''Note:''' XCC MIX Editor is known to sometimes corrupt mix files. It is therefore recommended to use XCC Mixer instead, as it can perform all the same functions and more. | |||
===Using [[XCC Mixer]]=== | ===Using [[XCC Mixer]]=== | ||
Click {{Tt|File - New}} and select where to save it. Then, navigate there and open that file in the | Click {{Tt|File - New}} and select where to save it. Then, navigate there and open that file in the mixer. Now you can actually drag and drop files to the mixer as well to add them, there is an option to compact in the context menu that appears when you right click on a file in that mix. | ||
Line 100: | Line 404: | ||
==See also== | ==See also== | ||
*[[File Types#. | *[[File Types#.mix|.mix on the File Types Page]] | ||
*[http://xccu.sourceforge.net/documents/ | *[http://xccu.sourceforge.net/documents/mix_Format.html Explanation of the mix format by Olaf van der Spek] | ||
*[[Reserved | *[[Reserved mix Files]] | ||
*[[ | *[[mix protectors]] | ||
[[Category:General Editing Information]] | [[Category:General Editing Information]] | ||
[[Category:XCC Tutorials]] | [[Category:XCC Tutorials]] | ||
[[Category:XCC | [[Category:XCC mix Editor Tutorials]] | ||
[[Category:File Formats]] | [[Category:File Formats]] |
Latest revision as of 07:42, 26 October 2023
Mix files (file extension .mix) are archive files used by Westwood to store most game files from Tiberian Dawn to Renegade. For Generals and following, BIG files took this part.
Editing Mix Files
Mix files can be read, edited and created using the XCC Mixer and the XCC MIX Editor, both created by Olaf van der Spek. They can be downloaded at xhp.xwis.net.
Alternatively, there's a command line tool called ccmix by OmniBlade which can generate and extract from mix files.
Mix Types
There are several types of mix files, each for a specific purpose as detailed below. Using mix files correctly is important for the correct execution of your mod.
Index in... | Mix File | Available in... | Description | Cached? | ||||
---|---|---|---|---|---|---|---|---|
N/A | N/A | 0 | LANGMD.MIX | Localized files for the Mission Disk (Yuri's Revenge): audio, cameos, etc. | ||||
TBA | TBA | 1 | LANGUAGE.MIX | Localized files: audio, cameos, etc. | ||||
N/A | N/A | 2 | EXPANDMD##.MIX | Expansion mix for YR: various files, more information below. The ## is any two-digit number between 01–99, with higher numbers loaded first. |
||||
N/A | N/A | 3 | RA2MD.MIX | Main mix file for YR. Most mix files are stored within this file, except for expansion mixes. | ||||
N/A | TBA | 4 | RA2.MIX | Main mix file for RA2. Most mix files are stored within this file, except for expansion mixes. | ||||
N/A | N/A | 5 | CACHEMD.MIX | Cached files for YR. Usually palettes and certain shape files. | ||||
TBA | TBA | 6 | CACHE.MIX | Cached files. Usually palettes and certain shape files. | ||||
N/A | N/A | 7 | LOCALMD.MIX | Voxels, most INIs, and certain UI graphics are stored here. YR only. | ||||
TBA | TBA | 8 | LOCAL.MIX | Voxels, most INIs, and certain UI graphics are stored here. | ||||
N/A | N/A | 9 | AUDIOMD.MIX | Audio files (except music) for YR. | ||||
TBA | TBA | 10 | ECACHE*.MIX | Expansion cache. Works like cache.mix. | ||||
TBA | TBA | 11 | ELOCAL*.MIX | Local files for an expansion pack. Works like local.mix. | ||||
N/A | N/A | 12 | CONQMD.MIX | Infantry shapes and non-theater-specific, non-building animations. YR only. | ||||
N/A | N/A | 13 | GENERMD.MIX | Generic, non-theater-specific building graphics, terrain objects, and overlay. YR only. | ||||
N/A | TBA | 14 | GENERIC.MIX | Generic, non-theater-specific building graphics, terrain types, and overlay. | ||||
N/A | N/A | 15 | ISOGENMD.MIX | Generic, non-theater-specific building and tile set graphics. YR only. | ||||
N/A | TBA | 16 | ISOGEN.MIX | Generic, non-theater-specific building and tile set graphics. | ||||
TBA | TBA | 17 | CONQUER.MIX | Infantry shapes and non-theater-specific, non-building animations. | ||||
N/A | N/A | 18 | CAMEOMD.MIX | Cameo shapes. YR only. | ||||
N/A | TBA | 19 | CAMEO.MIX | Cameo shapes. | ||||
N/A | N/A | 20 | MAPSMD03.MIX | Mission maps. YR only. | ||||
N/A | N/A | 21 | MULTIMD.MIX | Multiplayer maps. YR only. | ||||
N/A | N/A | 22 | THEMEMD.MIX | Music files. YR only. | ||||
N/A | N/A | 23 | MOVMD03.MIX | Video files. YR only. | ||||
TBA | TBA | 24 | ... | Theater-specific mixes - see Theatres for a list. | (iso*.mix are not cached, the rest are) | |||
TBA | TBA | 25 | SIDEC##.MIX | Side-specific UI elements, like sidebar graphics. The ## stands for the side you're playing as: e.g. 01 for Allies, 02 for Soviets, etc. | ||||
TBA | TBA | 26 | SIDENC##.MIX | Side-specific elements for the campaign progression/mission selection map screen. Unused in RA2/YR. | ||||
TBA | N/A | N/A | SOUNDS.MIX | In-game sound effects (AUD files). | ||||
TBA | N/A | N/A | SOUNDS01.MIX | In-game sound effects (AUD files) for an expansion pack. | ||||
TBA | N/A | N/A | PCACHE.MIX | Patch cache. Works like cache.mix. | ||||
TBA | N/A | N/A | E##SC##.MIX | Side-specific UI elements in an expansion pack. Works like sidec##.mix. |
Loading Hierarchy
The game searches the mix files for contents in the above order. Once a file is found in a mix, the next mixes don't even get checked for its presence.
- For ecache* and elocal* files, order is not guaranteed - standard WinAPI functionality is used to locate them, and no sorting is done.
- Quoting MSDN - FindNextFile:
- The order in which this function returns the file names is dependent on the file system type. With the NTFS file system and CDFS file systems, the names are usually returned in alphabetical order. With FAT file systems, the names are usually returned in the order the files were written to the disk, which may or may not be in alphabetical order. However, as stated previously, these behaviours are not guaranteed.
- Additionally, files that have any of the "Hidden", "System" or "Temporary" attributes set are not loaded.
- Quoting MSDN - FindNextFile:
Expansion Mix Files
As a result of their high priority and versatility, it is common to store mod assets in the so-called expansion mix files. There are three different expansion mix types as explained below.
EXPANDMD##.MIX
## is a number between 01 and 99, and md is added if the the file is for Yuri's Revenge.
This file is used for addon or expansion purpose where new or modified files can be placed. Most filetypes can be placed in it, except the files from lang*.mix which are higher in loading hierarchy.
- INIs
- .TEM, .SNO, .URB, .UBN, .LUN, .DES
- WAVs (EVA voices, not the audio normally stored in audio.bag)
- SHPs (interface-/screen-elements, including side-related GUI ones)
- FNTs (general game font which can be edited by a FNT editor)
- VXLs
- HVAs
In RA2, even though expand##.mix is above ecache*.mix in loading hierarchy, the SHP files of buildings/infantry/trees etc. which already exist in original game mix files becomes invisible in-game when those files or files with the same filenames are placed in expand##.mix. Modified files of those should be placed in ecache*.mix for RA2.
ECACHE*.MIX
* can be any string for both Red Alert 2 and Yuri's Revenge. Tiberian Sun uses ecache##.mix where ## is 2-digit number.
As the name suggests, this is an expansion mix file for files that should be cached. This file is lower in file loading hierarchy than many other mix files. So the game will read new or modified SHP files from it but only VXL/HVA files with different filenames over the original mix files. Both RA2 and YR read the files placed in ecache*.mix, so it could be used as common resource file.
- SHPs (normal buildings, infantry etc.)
- AUD files (Not used in Red Alert 2/Yuri's Revenge)
ELOCAL*.MIX
RA2/YR only. * can be any string.
This file is practically not used in the community, but works for "unofficial SHP, VXL, HVA and MAP files" according to DeeZire's Red Alert 2 and Yuris Revenge INI Editing Guide. Since, in the original game, local.mix holds almost all object-related graphics, and elocal*.mix works for the same file types, it is likely it was originally conceived as an expansion file specifically for local.mix. It is unknown why the community started using ecache*.mix for unit graphics instead.
Loose Files
The following file types are usually not stored in a mix file:
Note that, despite this common distribution of files, many files (especially graphics) work in an expandmd##.mix as well.
How to make a new mix file
Important: In order to be read by the game, your new mix has to reside in the game's folder, and has to be named correctly.
Using XCC MIX Editor
Click New and choose where to save it. To add files to a mix file you can go to import or you can use the faster method of "drag 'n drop" you can select files from explorer and drag them into the XCC mix Editor window. Next press the "Compact" button, this saves and compresses the file.
Note: XCC MIX Editor is known to sometimes corrupt mix files. It is therefore recommended to use XCC Mixer instead, as it can perform all the same functions and more.
Using XCC Mixer
Click File - New and select where to save it. Then, navigate there and open that file in the mixer. Now you can actually drag and drop files to the mixer as well to add them, there is an option to compact in the context menu that appears when you right click on a file in that mix.
Location of files in the game's mix files
RA2/YR
- The INI files are in RA2.mix → local.mix and RA2md.mix → localmd.mix. rulesmd.ini and soundmd.ini for YR 1.001 are in expandmd01.mix.
- Cameos (build icons), which are single frame SHPs, can found in language.mix → cameo.mix and in langmd.mix → cameomd.mix.
- Infantry, which are multi frame SHPs, can be found in RA2.mix → conquer.mix and ra2md.mix → conqmd.mix.
- The voxels (and their associated hva files), Tanks, naval vessels, and aircraft, can be found in ra2.mix → local.mix and ra2md.mix → localmd.mix.