Table of Contents

DAT Rules

DAT rules allow you to define locations for your ROMs and settings for how you want those ROMs stored. These settings offer a lot of flexibility and control over your collection. To get the most value out of RomVault its best to spend time understanding exactly what options are available and how they work.

The RomVault UI will allow you map multiple DATs to a single directory. Do NOT map multiple DATs to the same ROM directory. Doing so may result in unintentional file deletions during a fix operation if the “Double Check Delete” global setting is disabled.

Directory rules can only be applied to standard directories, not auto-created virtual directories in the DatRoot. If you place multiple DATs into a single directory, you cannot apply a rule to an individual DAT within that directory. If you need to apply a directory rule to a specific DAT, then the DAT should reside in its own directory in the DatRoot.

The directory settings can be accessed in two ways:




Rule Path and Directory Location




Rule Path

This field is for reference and is not editable. The root of your entire setup is always called “RomVault”. “RomVault” is mapped to where ever you keep all of your ROMs.

This may not seem intuitive at first, but this mapping ensures that the path references to your ROMs are stored in a relative fashion in the cache. For example, lets say you start by storing all your ROMs at C:\ROMs\. At some point in the future you may run out of space on C:\ and you need to move your ROMs to a NAS accessed with a mapped network drive of Y:\. You can make this change to the RomRoot location without needing to rescan all of your ROMs.

Dir Location

The Dir Location is the path to your ROMs. The folder icon allows you to choose the location by browsing.

The ROM locations can be modified directly in the RomVault config XML. This should not be required unless you want to use the long path syntax or reference a remote server. Examples:


Directory / Merge Rules




Don't Auto Add DAT Directories

If two or more DATs share a directory in the DATRoot then RomVault will automatically create a virtual subdirectory for each DAT so they don't conflict with each other. If the “Don't Auto Add DAT Directories” option is enabled then these directories will not be automatically created and the contents of the DATs will be effectively merged together. The result is that all of your ROMs from these DATs will be placed in the same directory.

Because this option causes DATs to be merged its likely you may encounter a DAT merge conflict if used haphazardly. This option is only useful under very specific circumstances.

Archive Type

This option allows you to specify your preferred way packaging your ROMs. Options include:

If a DAT explicitly specifies a forced packing type in its header then that will be used. The Override DAT option allows you to override that specification and use your preferred settings instead.

Merge Type

This option allows you to specify your preferred way of merging your ROMs. This is primarily used for MAME DATs. Options include:

If a DAT explicitly specifies a forced merging type in its header then that will be used. The Override DAT option allows you to override that specification and use your preferred settings instead.

For more information, refer to the Merge Types guide.

ROM/CHD Filter

This option allows you to specify what types of files to allow. This is primarily used for MAME DATs. Options include:

Header Type

This option allows you to specify how you want to handle ROM headers.

The “Headered” setting applies to all files in the DAT, even files where a header would not apply such as BIOS files. This means you may have missing ROMs if the DAT includes both types of files. This is normal and currently by design.

Single Archive

Enabling this option will turn the DATs in these directories into single archives. If enabled, this option allows you to specify how to handle subdirectories. The options are:

This setting is extremely powerful and enables you to build a collection to match TOSEC torrents. It can also be used to create uncompressed sets without requiring subdirectories.

The Single Archive subdirectory settings are outlined in more detail here: Single Archive Options

Use description (instead of name) for auto added paths

If two or more DATs share a directory in the DATRoot then RomVault will automatically create a virtual subdirectory for each DAT so they don't conflict with each other. If the “Use description (instead of name) for auto added paths” option is disabled then these subdirectories will be named as follows:

If the “Use description (instead of name) for auto added paths” option is enabled then these subdirectories will be named as follows:


Advanced Options




Use ID for Numbered DAT Names (No-Intro DATs)

This option will prefix the set name with the value of the id attribute in the DAT. This is typically only applicable for No-Intro DATs that have release numbers.

Only Keep Complete Sets

This option will prevent incomplete sets. This is useful when you only want to collect a subset of games in DAT or you want to ensure everything you collect has all files for playability in a frontend.


Filename Exclude



Filenames not to remove

This setting allows you to specify rules for files to ignore. Any ignored files are still scanned by RomVault, but they are flagged with an “ignore” status and will not be removed due to being unneeded according to the DAT. This setting is useful for ignoring a specific filenames or matching on patterns using wildcards or regex. Some examples include:

Match ModeExampleDescription
Exact_readme_.txtIgnores the file named exactly _readme_.txt
Wildcard*.sbiIgnores all .sbi files which are sometimes packaged with PS1 dumps
Regexregex:(\.stignore|\.stfolder)Ignores .stfolder and .stignore files which may be present if you sync a directory with syncthing to another location

Each ignore rule must be on its own line. Wildcard rules support ? to match a single character and * to match any number of characters. Regex rules must be prefixed with regex:

For assistance with regex, try regex101.com



Cascading Directory Rules

Settings for a directory will cascade to all of that directory's descendants until overwritten by a higher priority rule. Rules for descendant directories are always a higher priority than the rules for ancestor directories.

Individual directory settings of descendants are not “merged” with the settings of their ancestors. All directory rules are complete overrides.

These cascading rules allow for a great deal of control over your ROM storage strategy. For example, you can apply settings at the root level that you would like to apply to all directories, and then override those settings on a case by case basis for certain DATs.

The example above shows that Sony - PlayStation inherits the directory rule for RomVault (the root level). MAME and Microsoft - Xbox do not inherit because those directories have their own settings.

If Redump had its own directory rule, then Sony - PlayStation would inherit that rule instead of the rule from RomVault.

Video Tutorial