Skip to main content

Avoid Duplicates When Importing Non-Arcade MAME Content

📋Summary

Improve the MAME import process to detect and avoid duplicate entries across all supported systems, not just Arcade. As MAME now supports handhelds, gambling machines, plug-and-play systems, and more, users often split these into their own platforms—but LaunchBox currently re-imports them as duplicates on each new MAME import.


❗Problem

When re-importing MAME content:

  • Arcade games are correctly recognized and not duplicated.

  • Other categories (like Handhelds, Plug-and-Play, or Devices) are not checked for duplicates and are imported again, even if they already exist elsewhere in the library.

  • Deleting and re-importing these platforms removes user-specific customizations (e.g. playlists, media, metadata).

  • LaunchBox’s Audit feature only detects duplicates via LaunchBox ID—not helpful when many of these games lack IDs or share them erroneously.


💡Proposal

Implement a ROM-path-based duplicate check for the MAME import wizard to prevent duplicate entries across all platforms. Suggestions:

  • During import, skip games whose ROM path is already in the database (as a main or additional app).

  • Optionally, add an advanced Audit tool to search for and manage duplicates by ROM path.

  • Allow user control over whether to match duplicates by ROM path, LaunchBox ID, or both.


✅Benefits

  • Prevents accidental re-import of hundreds of non-Arcade MAME games

  • Maintains user customizations across MAME updates

  • Supports cleaner, more modular libraries for users separating MAME content by category

  • Adds greater flexibility to how duplicates are detected and handled

Status: Open To Community3 comments

Log in to comment and vote

Comments3

  • AstroBob changed status to Open To Community
    Team•

    May 18, 2025

    Pinned

    Hi there!

    Thanks so much for submitting this request and for taking the time to explain your use case — that context is always super helpful.

    I’ve gone ahead and fleshed out the main idea using the info you provided, and I’m opening it up to the community for further discussion and feedback. Please let me know if this fleshed-out version doesn’t match your original intended request.

    Feel free to let me know if you have any extra thoughts, examples, or edge cases you think might be relevant!

    Cheers,
    The LaunchBox team

    • The T

      •

      May 20, 2025

      Looks perfect to me. Hope it can get implemented!

  • The T

    •

    May 18, 2025

    When importing MAME, check for duplicates on all consoles, not just Arcade

    MAME currently supports a lot of different types of devices, not just Arcade. Many of them are actually worth having around, but don’t really fit into the “Arcade” category. Personally I create a Handheld Electronic Games section (which scans from the “Game & Watch” LaunchBox platform), Plug and Play Game, and Video Gambling. I also have a category for “Devices” which I keep hidden.

    I initially created those by filtering from the MAME Genres that more or less represent those, and it works out well.

    But when I update to a new version of MAME, and re-import, it handles the Arcade games correctly, but imports duplicates of all the games in other categories.

    I could delete the entire category and re-add them, but then I lose any customization I may have made to their entries.

    I could delete all the newly imported ones, but then I may miss out on a rom imported in this new version.

    The audit feature currently matches “duplicate” games based on Launchbox ID. If the audit feature matched them based on the rom file path, this might be a useful solution. But the Launchbox ID doesn’t help, since most of them don’t have Launchbox IDs. (It also leads to false positives; some games, accidentally or intentionally, grab the same Launchbox ID.)

    So I’d prefer if, when importing, it checks the rom path and doesn’t import if an entry with that rom path already exists (as a main game or as an alternate). Alternately, if there was a way to audit for rom paths, to search for duplicate rom path entries.