User Tools

Site Tools


How DATVault Works

DATVault acts as an indexing, updating, and delivery service for DATs. DATVault is designed to be flexible and it does not force you to organize your DATs in any specific way.

When are the DATs updated?

DATVault checks various sources for updates multiple times per day on a fixed schedule. Any updated DATs are processed and enriched with MIA tracking information. The table below outlines when regular DAT updates are processed and made available to download in the DATVault interface shortly thereafter:

Update Time
DAT Category 3:00 AM CT 7:00 AM CT 11:00 AM CT 4:00 PM CT 9:00 PM CT
Archive X X X X X
DeDupe X X X X X
EmuArc X X X X X
Emulators X X X X X
FruitMachine X X X X X
NoIntro X* X* X* X* X*
Others X X X X X
Pinball X X X X X
Pleasuredome X X X X X
ReDump X X X X X
Scene X X X X X
Snaps X X X X X
Tosec X X X X X

* No-Intro DATs are sourced from the Daily Pack which is generated once per day on the No-Intro site. Although new DATs may not be available for every update, the MIA information for No-Intro DATs is refreshed on every update.

What are the DATVault JSON files?

DATVault works by detecting special JSON files in your DatRoot. Each DAT you would like to manage has its own corresponding JSON file. Each file provides info about the DAT version you currently have.

The DATVault JSON files are not meant to be manually edited. Modifying the JSON files may cause DAT updates to not work properly. The information provided is for reference only.

The DATVault JSON files contain the following keys:

  • group: The group the DAT belongs to. Used for filters.
  • system: The name of the system.
  • date: The date the DAT was was last updated on the DATVault server.
  • dateCreated: The date the DAT was first added to DATVault. Used for the configurable “New” filter.
  • version: The version of the DAT.
  • datURL: The download filename for the current DAT.
  • cueURL: The download filename for cue pack of the DAT (if applicable).
  • datName: The file name of the current DAT.
  • directory: The default subdirectory the DAT will be downloaded to if the “Use default subdirectories” option is used when adding new DATs with the DATVault UI.
  • datROMsSize: The total uncompressed size of all ROMs in the DAT.

Example DATVault JSON for MAME:

   "system":"MAME ROMS (listxml)",
   "date":"2/23/2022 9:55:34 AM",
   "dateCreated":"9/7/2021 1:19:26 PM",
   "datURL":"MAME V0.241 ROMS (listxml).zip",
   "datName":"MAME V0.241 ROMS (listxml).dat",
   "directory":"MAME ROMS (listxml)",

The information in the JSON file is compared against the DATVault repository to determine if there are updates available to download. If the JSON file you have does not match the latest version available by DATVault, then the corresponding DAT has an update. When you update a DAT, the JSON file is also updated.

DATVault only manages DAT updates for DATs it has downloaded. It will NOT update DATs you have placed into your DATRoot manually. Its advised to remove any manually managed DATs before having DATVault manage those DATs.

DATVault will download any updates into the same directory that contains the respective JSON file. Before a DAT is updated, the current DAT you have (which is referenced in your JSON file) will be renamed with a .old extension. DATVault does not automatically remove these .old DATs, so you may want to periodically delete them if you do not wish to archive old DATs.

Some DATs for disc based systems have accompanying cue sheets. DATVault will download cue packs to a folder called cues in your Primary ToSort directory.

Now that you understand how DATVault works at a high level, refer to the next section to get started using DATVault.

how_datvault_works.txt · Last modified: 2023/07/04 08:38 by johnsanc