Merge pull request #3407 from rommapp/playmatch-metadata-souce

Add playmatch as explicit metadata source
This commit is contained in:
Georges-Antoine Assi
2026-05-23 13:20:56 -04:00
committed by GitHub
26 changed files with 98 additions and 98 deletions

View File

@@ -159,6 +159,8 @@ async def metadata_heartbeat(source: str) -> bool:
return await meta_launchbox_handler.heartbeat()
case MetadataSource.HASHEOUS:
return await meta_hasheous_handler.heartbeat()
case MetadataSource.PLAYMATCH:
return await meta_playmatch_handler.heartbeat()
case MetadataSource.TGDB:
return await meta_tgdb_handler.heartbeat()
case MetadataSource.SGDB:

View File

@@ -179,13 +179,17 @@ def _should_scan_rom(
(
scan_type == ScanType.UPDATE
and rom.is_identified
and any(getattr(rom, f"{source}_id") for source in metadata_sources)
and any(
getattr(rom, f"{source}_id", None)
for source in metadata_sources
)
)
# Unmatched scan should scan ROMs that are not identified by the selected metadata sources
or (
scan_type == ScanType.UNMATCHED
and any(
not getattr(rom, f"{source}_id") for source in metadata_sources
not getattr(rom, f"{source}_id", None)
for source in metadata_sources
)
)
)

View File

@@ -78,6 +78,7 @@ class MetadataSource(enum.StrEnum):
HLTB = "hltb" # HowLongToBeat
GAMELIST = "gamelist" # ES-DE gamelist.xml
LIBRETRO = "libretro" # Libretro thumbnails
PLAYMATCH = "playmatch" # Playmatch
def get_main_platform_igdb_id(platform: Platform):
@@ -375,9 +376,8 @@ async def scan_rom(
async def fetch_playmatch_hash_match() -> PlaymatchRomMatch:
if (
meta_playmatch_handler.is_enabled()
and any(
source in metadata_sources for source in PLAYMATCH_SUPPORTED_SOURCES
)
and MetadataSource.PLAYMATCH in metadata_sources
and any(PLAYMATCH_SUPPORTED_SOURCES.intersection(metadata_sources))
and (
newly_added
or scan_type == ScanType.COMPLETE

View File

@@ -11,6 +11,7 @@ from handler.metadata import (
meta_launchbox_handler,
meta_libretro_handler,
meta_moby_handler,
meta_playmatch_handler,
meta_ra_handler,
meta_sgdb_handler,
meta_ss_handler,
@@ -48,6 +49,7 @@ class ScanLibraryTask(PeriodicTask):
MetadataSource.RA: meta_ra_handler.is_enabled(),
MetadataSource.LAUNCHBOX: meta_launchbox_handler.is_enabled(),
MetadataSource.HASHEOUS: meta_hasheous_handler.is_enabled(),
MetadataSource.PLAYMATCH: meta_playmatch_handler.is_enabled(),
MetadataSource.SGDB: meta_sgdb_handler.is_enabled(),
MetadataSource.FLASHPOINT: meta_flashpoint_handler.is_enabled(),
MetadataSource.HLTB: meta_hltb_handler.is_enabled(),

View File

@@ -30,6 +30,7 @@ from handler.metadata import (
meta_launchbox_handler,
meta_libretro_handler,
meta_moby_handler,
meta_playmatch_handler,
meta_ra_handler,
meta_sgdb_handler,
meta_ss_handler,
@@ -181,6 +182,7 @@ def process_changes(changes: Sequence[Change]) -> None:
MetadataSource.RA: meta_ra_handler.is_enabled(),
MetadataSource.LAUNCHBOX: meta_launchbox_handler.is_enabled(),
MetadataSource.HASHEOUS: meta_hasheous_handler.is_enabled(),
MetadataSource.PLAYMATCH: meta_playmatch_handler.is_enabled(),
MetadataSource.SGDB: meta_sgdb_handler.is_enabled(),
MetadataSource.FLASHPOINT: meta_flashpoint_handler.is_enabled(),
MetadataSource.HLTB: meta_hltb_handler.is_enabled(),

View File

@@ -29,18 +29,16 @@ const calculateHashes = computed(() => !config.value.SKIP_HASH_CALCULATION);
const metadataOptions = computed(() => {
return heartbeat.getMetadataOptionsByPriority().map((option) => {
const requiresHashes = option.value === "hasheous" || option.value === "ra";
// Check if option requires hashes but hash calculation is disabled
const requiresHashes =
option.value === "hasheous" ||
option.value === "ra" ||
option.value === "playmatch";
const hashingDisabled = !calculateHashes.value;
let disabled = option.disabled;
if (hashingDisabled && requiresHashes) {
if (option.value === "hasheous") {
disabled = t("scan.hasheous-requires-hashes");
} else if (option.value === "ra") {
disabled = t("scan.retroachievements-requires-hashes");
}
}
const disabled =
hashingDisabled && requiresHashes
? t("scan.requires-hashes", { source: option.name })
: option.disabled;
return {
...option,

View File

@@ -17,11 +17,10 @@
"firmware-scanned-n": "Фърмуер: {n} сканирани",
"firmware-scanned-with-details": "Фърмуер: {n_scanned_firmware} сканирани, от които {n_new_firmware} нови",
"hash-calculation-disabled": "Изчисляването на хешове е деактивирано",
"hasheous-requires-hashes": "Hasheous изисква активирано изчисляване на хешове",
"hashes": "Преизчисли хешове",
"hashes-desc": "Преизчисляване хешовете за избраните платформи",
"hashes-disabled-tooltip": "Изчисляването на хешове е деактивирано.<br><br>Хешовете (MD5, SHA1, CRC32) са уникални отпечатъци които идентифицират ROM файловете прецизно.<br><br>Без тях Hasheous и RetroAchievements не могат да разпознаят игри в своите бази данни, но сканирането ще бъде по-бързо.",
"hashes-enabled-tooltip": "Изчисляването на хешове е активирано.<br><br>Хешовете (MD5, SHA1, CRC32) ще бъдат изчислени за създаване на уникални отпечатъци за всеки ROM файл.<br><br>Това позволява на Hasheous и RetroAchievements да разпознаят точно игрите в своите бази данни.",
"hashes-disabled-tooltip": "Изчисляването на хешове е деактивирано.<br><br>Хешовете (MD5, SHA1, CRC32) са уникални отпечатъци които идентифицират ROM файловете прецизно.<br><br>Без тях Hasheous, Playmatch и RetroAchievements не могат да разпознаят игри в своите бази данни, но сканирането ще бъде по-бързо.",
"hashes-enabled-tooltip": "Изчисляването на хешове е активирано.<br><br>Хешовете (MD5, SHA1, CRC32) ще бъдат изчислени за създаване на уникални отпечатъци за всеки ROM файл.<br><br>Това позволява на Hasheous, Playmatch и RetroAchievements да разпознаят точно игрите в своите бази данни.",
"manage-library": "Управление на библиотека",
"metadata-sources": "Източници на метаданни",
"new-platforms": "Нови платформи",
@@ -32,7 +31,7 @@
"platforms-scanned-with-details": "Платформи: {n_scanned_platforms} сканирани от {n_total_platforms}, от които {n_new_platforms} нови и {n_identified_platforms} идентифицирани",
"quick-scan": "Бързо сканиране",
"quick-scan-desc": "Сканирай само нови игри",
"retroachievements-requires-hashes": "RetroAchievements изисква активирано изчисляване на хешове",
"requires-hashes": "{source} изисква активирано изчисляване на хешове",
"roms-scanned-n": "ROM-ове: {n} сканирани",
"roms-scanned-with-details": "ROM-ове: {n_scanned_roms} сканирани от {n_total_roms}, от които {n_new_roms} нови и {n_identified_roms} идентифицирани",
"scan": "Сканирай",

View File

@@ -17,11 +17,10 @@
"firmware-scanned-n": "Firmware: {n} naskenováno",
"firmware-scanned-with-details": "Firmware: naskenováno {n_scanned_firmware}, z toho {n_new_firmware} nových",
"hash-calculation-disabled": "Výpočet hash je zakázán",
"hasheous-requires-hashes": "Hasheous vyžaduje povolené počítání hashů",
"hashes": "Přepočítat hashe",
"hashes-desc": "Přepočítá hashe pro vybrané platformy",
"hashes-disabled-tooltip": "Výpočet hashů zakázán.<br><br>Hashe (MD5, SHA1, CRC32) jsou jedinečné otisky, které přesně identifikují soubory ROM.<br><br>Bez nich nemohou Hasheous a RetroAchievements porovnávat hry se svými databázemi, ale skenování bude rychlejší.",
"hashes-enabled-tooltip": "Výpočet hashů povolen.<br><br>Budou vypočítány hashe (MD5, SHA1, CRC32) pro vytvoření jedinečných otisků každého souboru ROM.<br><br>To umožňuje Hasheous a RetroAchievements přesně identifikovat hry ve svých databázích.",
"hashes-disabled-tooltip": "Výpočet hashů zakázán.<br><br>Hashe (MD5, SHA1, CRC32) jsou jedinečné otisky, které přesně identifikují soubory ROM.<br><br>Bez nich nemohou Hasheous, Playmatch a RetroAchievements porovnávat hry se svými databázemi, ale skenování bude rychlejší.",
"hashes-enabled-tooltip": "Výpočet hashů povolen.<br><br>Budou vypočítány hashe (MD5, SHA1, CRC32) pro vytvoření jedinečných otisků každého souboru ROM.<br><br>To umožňuje Hasheous, Playmatch a RetroAchievements přesně identifikovat hry ve svých databázích.",
"manage-library": "Správa knihovny",
"metadata-sources": "Zdroje metadat",
"new-platforms": "Nové platformy",
@@ -32,7 +31,7 @@
"platforms-scanned-with-details": "Platformy: {n_scanned_platforms} naskenováno z {n_total_platforms}, {n_new_platforms} nových a {n_identified_platforms} identifikovaných",
"quick-scan": "Rychlý sken",
"quick-scan-desc": "Skenovat pouze nové hry",
"retroachievements-requires-hashes": "RetroAchievements vyžaduje povolené počítání hashů",
"requires-hashes": "{source} vyžaduje povolené počítání hashů",
"roms-scanned-n": "ROMy: {n} naskenovány",
"roms-scanned-with-details": "ROMy: {n_scanned_roms} naskenováno z {n_total_roms}, {n_new_roms} nových a {n_identified_roms} identifikovaných",
"scan": "Skenovat",

View File

@@ -17,11 +17,10 @@
"firmware-scanned-n": "Firmware: {n} gescannt",
"firmware-scanned-with-details": "Firmware: {n_scanned_firmware} gescannt, davon {n_new_firmware} neu",
"hash-calculation-disabled": "Hash-Berechnung ist deaktiviert",
"hasheous-requires-hashes": "Hasheous erfordert aktivierte Hash-Berechnung",
"hashes": "Hashes neu berechnen",
"hashes-desc": "Berechnet Hashes für ausgewählte Plattformen neu",
"hashes-disabled-tooltip": "Hash-Berechnung deaktiviert.<br><br>Hashes (MD5, SHA1, CRC32) sind eindeutige Fingerabdrücke, die ROM-Dateien präzise identifizieren.<br><br>Ohne sie können Hasheous und RetroAchievements Spiele nicht mit ihren Datenbanken abgleichen, aber das Scannen wird schneller.",
"hashes-enabled-tooltip": "Hash-Berechnung aktiviert.<br><br>Hashes (MD5, SHA1, CRC32) werden berechnet, um eindeutige Fingerabdrücke für jede ROM-Datei zu erstellen.<br><br>Dies ermöglicht es Hasheous und RetroAchievements, Spiele in ihren Datenbanken genau zu identifizieren.",
"hashes-disabled-tooltip": "Hash-Berechnung deaktiviert.<br><br>Hashes (MD5, SHA1, CRC32) sind eindeutige Fingerabdrücke, die ROM-Dateien präzise identifizieren.<br><br>Ohne sie können Hasheous, Playmatch und RetroAchievements Spiele nicht mit ihren Datenbanken abgleichen, aber das Scannen wird schneller.",
"hashes-enabled-tooltip": "Hash-Berechnung aktiviert.<br><br>Hashes (MD5, SHA1, CRC32) werden berechnet, um eindeutige Fingerabdrücke für jede ROM-Datei zu erstellen.<br><br>Dies ermöglicht es Hasheous, Playmatch und RetroAchievements, Spiele in ihren Datenbanken genau zu identifizieren.",
"manage-library": "Bibliothek verwalten",
"metadata-sources": "Quellen für Metadaten",
"new-platforms": "Neue Platformen",
@@ -32,7 +31,7 @@
"platforms-scanned-with-details": "Plattformen: {n_scanned_platforms} gescannt aus {n_total_platforms}, darunter {n_new_platforms} neue und {n_identified_platforms} identifizierte",
"quick-scan": "Schneller Scan",
"quick-scan-desc": "Nur neue Spiele scannen",
"retroachievements-requires-hashes": "RetroAchievements erfordert aktivierte Hash-Berechnung",
"requires-hashes": "{source} erfordert aktivierte Hash-Berechnung",
"roms-scanned-n": "ROMs: {n} gescannte | ROMs: {n} gescannt",
"roms-scanned-with-details": "ROMs: {n_scanned_roms} gescannt aus {n_total_roms}, darunter {n_new_roms} neue und {n_identified_roms} identifizierte",
"scan": "Scannen",

View File

@@ -17,11 +17,10 @@
"firmware-scanned-n": "Firmware: {n} scanned",
"firmware-scanned-with-details": "Firmware: {n_scanned_firmware} scanned, with {n_new_firmware} new",
"hash-calculation-disabled": "Hash calculation is disabled",
"hasheous-requires-hashes": "Hasheous requires hash calculation to be enabled",
"hashes": "Recalculate hashes",
"hashes-desc": "Recalculates hashes for selected platforms",
"hashes-disabled-tooltip": "File hash calculation disabled.<br><br>Hashes (MD5, SHA1, CRC32) are unique fingerprints that identify ROM files precisely.<br><br>Without them, Hasheous and RetroAchievements cannot match games to their databases, but scanning will be faster.",
"hashes-enabled-tooltip": "File hash calculation enabled.<br><br>Hashes (MD5, SHA1, CRC32) will be calculated to create unique fingerprints for each ROM file.<br><br>This enables Hasheous and RetroAchievements to accurately identify games in their databases.",
"hashes-disabled-tooltip": "File hash calculation disabled.<br><br>Hashes (MD5, SHA1, CRC32) are unique fingerprints that identify ROM files precisely.<br><br>Without them, Hasheous, Playmatch and RetroAchievements cannot match games to their databases, but scanning will be faster.",
"hashes-enabled-tooltip": "File hash calculation enabled.<br><br>Hashes (MD5, SHA1, CRC32) will be calculated to create unique fingerprints for each ROM file.<br><br>This enables Hasheous, Playmatch and RetroAchievements to accurately identify games in their databases.",
"manage-library": "Manage library",
"metadata-sources": "Metadata sources",
"new-platforms": "New platforms",
@@ -32,7 +31,7 @@
"platforms-scanned-with-details": "Platforms: {n_scanned_platforms} scanned out of {n_total_platforms}, with {n_new_platforms} new and {n_identified_platforms} identified",
"quick-scan": "Quick scan",
"quick-scan-desc": "Scan new games only",
"retroachievements-requires-hashes": "RetroAchievements requires hash calculation to be enabled",
"requires-hashes": "{source} requires hash calculation to be enabled",
"roms-scanned-n": "ROMs: {n} scanned",
"roms-scanned-with-details": "ROMs: {n_scanned_roms} scanned out of {n_total_roms}, with {n_new_roms} new and {n_identified_roms} identified",
"scan": "Scan",

View File

@@ -17,11 +17,10 @@
"firmware-scanned-n": "Firmware: {n} scanned",
"firmware-scanned-with-details": "Firmware: {n_scanned_firmware} scanned, with {n_new_firmware} new",
"hash-calculation-disabled": "Hash calculation is disabled",
"hasheous-requires-hashes": "Hasheous requires hash calculation to be enabled",
"hashes": "Recalculate hashes",
"hashes-desc": "Recalculates hashes for selected platforms",
"hashes-disabled-tooltip": "File hash calculation disabled.<br><br>Hashes (MD5, SHA1, CRC32) are unique fingerprints that identify ROM files precisely.<br><br>Without them, Hasheous and RetroAchievements cannot match games to their databases, but scanning will be faster.",
"hashes-enabled-tooltip": "File hash calculation enabled.<br><br>Hashes (MD5, SHA1, CRC32) will be calculated to create unique fingerprints for each ROM file.<br><br>This enables Hasheous and RetroAchievements to accurately identify games in their databases.",
"hashes-disabled-tooltip": "File hash calculation disabled.<br><br>Hashes (MD5, SHA1, CRC32) are unique fingerprints that identify ROM files precisely.<br><br>Without them, Hasheous, Playmatch and RetroAchievements cannot match games to their databases, but scanning will be faster.",
"hashes-enabled-tooltip": "File hash calculation enabled.<br><br>Hashes (MD5, SHA1, CRC32) will be calculated to create unique fingerprints for each ROM file.<br><br>This enables Hasheous, Playmatch and RetroAchievements to accurately identify games in their databases.",
"manage-library": "Manage library",
"metadata-sources": "Metadata sources",
"new-platforms": "New platforms",
@@ -32,7 +31,7 @@
"platforms-scanned-with-details": "Platforms: {n_scanned_platforms} scanned out of {n_total_platforms}, with {n_new_platforms} new and {n_identified_platforms} identified",
"quick-scan": "Quick scan",
"quick-scan-desc": "Scan new games only",
"retroachievements-requires-hashes": "RetroAchievements requires hash calculation to be enabled",
"requires-hashes": "{source} requires hash calculation to be enabled",
"roms-scanned-n": "ROMs: {n} scanned",
"roms-scanned-with-details": "ROMs: {n_scanned_roms} scanned out of {n_total_roms}, with {n_new_roms} new and {n_identified_roms} identified",
"scan": "Scan",

View File

@@ -17,11 +17,10 @@
"firmware-scanned-n": "Firmware: {n} analizado",
"firmware-scanned-with-details": "Firmware: {n_scanned_firmware} analizados, con {n_new_firmware} nuevos",
"hash-calculation-disabled": "El cálculo de hash está deshabilitado",
"hasheous-requires-hashes": "Hasheous requiere que el cálculo de hashes esté habilitado",
"hashes": "Recalcular hashes",
"hashes-desc": "Recalcula los hashes de las plataformas seleccionadas",
"hashes-disabled-tooltip": "Cálculo de hash deshabilitado.<br><br>Los hashes (MD5, SHA1, CRC32) son huellas digitales únicas que identifican archivos ROM con precisión.<br><br>Sin ellos, Hasheous y RetroAchievements no pueden comparar juegos con sus bases de datos, pero el escaneo será más rápido.",
"hashes-enabled-tooltip": "Cálculo de hash habilitado.<br><br>Se calcularán hashes (MD5, SHA1, CRC32) para crear huellas digitales únicas de cada archivo ROM.<br><br>Esto permite a Hasheous y RetroAchievements identificar juegos con precisión en sus bases de datos.",
"hashes-disabled-tooltip": "Cálculo de hash deshabilitado.<br><br>Los hashes (MD5, SHA1, CRC32) son huellas digitales únicas que identifican archivos ROM con precisión.<br><br>Sin ellos, Hasheous, Playmatch y RetroAchievements no pueden comparar juegos con sus bases de datos, pero el escaneo será más rápido.",
"hashes-enabled-tooltip": "Cálculo de hash habilitado.<br><br>Se calcularán hashes (MD5, SHA1, CRC32) para crear huellas digitales únicas de cada archivo ROM.<br><br>Esto permite a Hasheous, Playmatch y RetroAchievements identificar juegos con precisión en sus bases de datos.",
"manage-library": "Gestionar biblioteca",
"metadata-sources": "Fuentes de metadatos",
"new-platforms": "Plataformas nuevas",
@@ -32,7 +31,7 @@
"platforms-scanned-with-details": "Plataformas: {n_scanned_platforms} escaneadas de {n_total_platforms}, con {n_new_platforms} nuevas y {n_identified_platforms} identificadas",
"quick-scan": "Escaneo rápido",
"quick-scan-desc": "Escanea solo juegos nuevos",
"retroachievements-requires-hashes": "RetroAchievements requiere que el cálculo de hashes esté habilitado",
"requires-hashes": "{source} requiere que el cálculo de hashes esté habilitado",
"roms-scanned-n": "ROMs: {n} escaneado | ROMs: {n} escaneados",
"roms-scanned-with-details": "ROMs: {n_scanned_roms} escaneados de {n_total_roms}, con {n_new_roms} nuevos y {n_identified_roms} identificados",
"scan": "Escanear",

View File

@@ -17,11 +17,10 @@
"firmware-scanned-n": "Firmware : {n} analysé",
"firmware-scanned-with-details": "Firmware : {n_scanned_firmware} analysés, dont {n_new_firmware} nouveaux",
"hash-calculation-disabled": "Le calcul de hachage est désactivé",
"hasheous-requires-hashes": "Hasheous nécessite que le calcul de hachage soit activé",
"hashes": "Recalculer les hachages",
"hashes-desc": "Recalculer les hachages des plateformes sélectionnées",
"hashes-disabled-tooltip": "Calcul de hachage désactivé.<br><br>Les hachages (MD5, SHA1, CRC32) sont des empreintes uniques qui identifient les fichiers ROM avec précision.<br><br>Sans eux, Hasheous et RetroAchievements ne peuvent pas faire correspondre les jeux à leurs bases de données, mais l'analyse sera plus rapide.",
"hashes-enabled-tooltip": "Calcul de hachage de fichier activé.<br><br>Les hachages (MD5, SHA1, CRC32) seront calculés pour créer des empreintes uniques pour chaque fichier ROM.<br><br>Ceci permet à Hasheous et RetroAchievements d'identifier précisément les jeux dans leurs bases de données.",
"hashes-disabled-tooltip": "Calcul de hachage désactivé.<br><br>Les hachages (MD5, SHA1, CRC32) sont des empreintes uniques qui identifient les fichiers ROM avec précision.<br><br>Sans eux, Hasheous, Playmatch et RetroAchievements ne peuvent pas faire correspondre les jeux à leurs bases de données, mais l'analyse sera plus rapide.",
"hashes-enabled-tooltip": "Calcul de hachage de fichier activé.<br><br>Les hachages (MD5, SHA1, CRC32) seront calculés pour créer des empreintes uniques pour chaque fichier ROM.<br><br>Ceci permet à Hasheous, Playmatch et RetroAchievements d'identifier précisément les jeux dans leurs bases de données.",
"manage-library": "Gérer la bibliothèque",
"metadata-sources": "Sources de métadonnées",
"new-platforms": "Nouvelles plateformes",
@@ -32,7 +31,7 @@
"platforms-scanned-with-details": "Plateformes : {n_scanned_platforms} scannées sur {n_total_platforms}, avec {n_new_platforms} nouvelles et {n_identified_platforms} identifiées",
"quick-scan": "Scan rapide",
"quick-scan-desc": "Scanner uniquement les nouveaux jeux",
"retroachievements-requires-hashes": "RetroAchievements nécessite que le calcul de hachage soit activé",
"requires-hashes": "{source} nécessite que le calcul de hachage soit activé",
"roms-scanned-n": "ROMs : {n} scannée | ROMs : {n} scannées",
"roms-scanned-with-details": "ROMs : {n_scanned_roms} scannées sur {n_total_roms}, avec {n_new_roms} nouvelles et {n_identified_roms} identifiées",
"scan": "Scanner",

View File

@@ -17,11 +17,10 @@
"firmware-scanned-n": "Firmware: {n} beolvasva",
"firmware-scanned-with-details": "Firmware: {n_scanned_firmware} beolvasva, ebből {n_new_firmware} új",
"hash-calculation-disabled": "A hash számítás le van tiltva",
"hasheous-requires-hashes": "A Hasheous megköveteli a hash számítás engedélyezését",
"hashes": "Hash-értékek újraszámítása",
"hashes-desc": "Hash-értékek újraszámítása a kiválasztott platformokon",
"hashes-disabled-tooltip": "Fájl hash számítás letiltva.<br><br>A hash-ek (MD5, SHA1, CRC32) egyedi ujjlenyomatok, amelyek pontosan azonosítják a ROM fájlokat.<br><br>Ezek nélkül a Hasheous és a RetroAchievements nem tudja a játékokat az adatbázisukhoz rendelni, de a szkennelés gyorsabb lesz.",
"hashes-enabled-tooltip": "Fájl hash számítás engedélyezve.<br><br>Hashes (MD5, SHA1, CRC32) lesz kiszámítva, hogy egyedi ujjlenyomatokat hozzon létre minden ROM fájlhoz.<br><br>Ez lehetővé teszi a Hasheous és a RetroAchievements számára, hogy pontosan azonosítsák a játékokat az adatbázisaikban.",
"hashes-disabled-tooltip": "Fájl hash számítás letiltva.<br><br>A hash-ek (MD5, SHA1, CRC32) egyedi ujjlenyomatok, amelyek pontosan azonosítják a ROM fájlokat.<br><br>Ezek nélkül a Hasheous, a Playmatch és a RetroAchievements nem tudja a játékokat az adatbázisukhoz rendelni, de a szkennelés gyorsabb lesz.",
"hashes-enabled-tooltip": "Fájl hash számítás engedélyezve.<br><br>Hashes (MD5, SHA1, CRC32) lesz kiszámítva, hogy egyedi ujjlenyomatokat hozzon létre minden ROM fájlhoz.<br><br>Ez lehetővé teszi a Hasheous, a Playmatch és a RetroAchievements számára, hogy pontosan azonosítsák a játékokat az adatbázisaikban.",
"manage-library": "Könyvtár Menedzsment",
"metadata-sources": "Metaadat források",
"new-platforms": "Új platformok",
@@ -32,7 +31,7 @@
"platforms-scanned-with-details": "Platformok: {n_scanned_platforms} beolvasva a {n_total_platforms} közül,ebből {n_new_platforms} új és {n_identified_platforms} azonosított",
"quick-scan": "Gyors szkennelés",
"quick-scan-desc": "Csak új játékokat szkenneljen",
"retroachievements-requires-hashes": "A RetroAchievements-hez engedélyezni kell a hash-számítást.",
"requires-hashes": "A {source}-hez engedélyezni kell a hash-számítást.",
"roms-scanned-n": "ROM-ok: {n} szkennelve",
"roms-scanned-with-details": "ROM-ok: {n_scanned_roms} beolvasva a {n_total_roms} közül,ebből {n_new_roms} új és {n_identified_roms} azonosított",
"scan": "Szkennelés",

View File

@@ -17,11 +17,10 @@
"firmware-scanned-n": "Firmware: {n} scansionato",
"firmware-scanned-with-details": "Firmware: {n_scanned_firmware} scansionati, di cui {n_new_firmware} nuovi",
"hash-calculation-disabled": "Il calcolo dell'hash è disabilitato",
"hasheous-requires-hashes": "Hasheous richiede che il calcolo degli hash sia abilitato",
"hashes": "Ricalcola hash",
"hashes-desc": "Ricalcola gli hash per le piattaforme selezionate",
"hashes-disabled-tooltip": "Calcolo hash disabilitato.<br><br>Gli hash (MD5, SHA1, CRC32) sono impronte digitali uniche che identificano i file ROM con precisione.<br><br>Senza di essi, Hasheous e RetroAchievements non possono confrontare i giochi con i loro database, ma la scansione sarà più veloce.",
"hashes-enabled-tooltip": "Calcolo hash abilitato.<br><br>Verranno calcolati gli hash (MD5, SHA1, CRC32) per creare impronte digitali uniche di ogni file ROM.<br><br>Questo consente a Hasheous e RetroAchievements di identificare accuratamente i giochi nei loro database.",
"hashes-disabled-tooltip": "Calcolo hash disabilitato.<br><br>Gli hash (MD5, SHA1, CRC32) sono impronte digitali uniche che identificano i file ROM con precisione.<br><br>Senza di essi, Hasheous, Playmatch e RetroAchievements non possono confrontare i giochi con i loro database, ma la scansione sarà più veloce.",
"hashes-enabled-tooltip": "Calcolo hash abilitato.<br><br>Verranno calcolati gli hash (MD5, SHA1, CRC32) per creare impronte digitali uniche di ogni file ROM.<br><br>Questo consente a Hasheous, Playmatch e RetroAchievements di identificare accuratamente i giochi nei loro database.",
"manage-library": "Gestisci libreria",
"metadata-sources": "Fonti metadati",
"new-platforms": "Nuove piattaforme",
@@ -32,7 +31,7 @@
"platforms-scanned-with-details": "Piattaforme: {n_scanned_platforms} scansionate su {n_total_platforms}, con {n_new_platforms} nuove e {n_identified_platforms} identificate",
"quick-scan": "Scansione rapida",
"quick-scan-desc": "Scansiona solo i nuovi giochi",
"retroachievements-requires-hashes": "RetroAchievements richiede che il calcolo degli hash sia abilitato",
"requires-hashes": "{source} richiede che il calcolo degli hash sia abilitato",
"roms-scanned-n": "Rom: {n} scansionate",
"roms-scanned-with-details": "Rom: {n_scanned_roms} scansionate su {n_total_roms}, con {n_new_roms} nuove e {n_identified_roms} identificate",
"scan": "Scansiona",

View File

@@ -17,11 +17,10 @@
"firmware-scanned-n": "ファームウェア: {n} 件をスキャン",
"firmware-scanned-with-details": "ファームウェア: {n_scanned_firmware} 件をスキャン、うち新規 {n_new_firmware} 件",
"hash-calculation-disabled": "ハッシュ計算が無効になっています",
"hasheous-requires-hashes": "Hasheousはファイルハッシュが必要です",
"hashes": "ハッシュ値の再計算",
"hashes-desc": "選択されたプラットフォームのハッシュ値を再計算します",
"hashes-disabled-tooltip": "ファイルハッシュ計算が無効。<br><br>ハッシュMD5、SHA1、CRC32はROMファイルを正確に識別するユニークな指紋です。<br><br>これがないと、HasheousRetroAchievementsはゲームをデータベースとマッチングできませんが、スキャンは高速になります。",
"hashes-enabled-tooltip": "ファイルハッシュ計算が有効です。<br><br>各ROMファイルの一意の指紋を作成するために、ハッシュMD5、SHA1、CRC32が計算されます。<br><br>これにより、HasheousRetroAchievementsがデータベース内のゲームを正確に識別できます。",
"hashes-disabled-tooltip": "ファイルハッシュ計算が無効。<br><br>ハッシュMD5、SHA1、CRC32はROMファイルを正確に識別するユニークな指紋です。<br><br>これがないと、Hasheous、Playmatch、RetroAchievementsはゲームをデータベースとマッチングできませんが、スキャンは高速になります。",
"hashes-enabled-tooltip": "ファイルハッシュ計算が有効です。<br><br>各ROMファイルの一意の指紋を作成するために、ハッシュMD5、SHA1、CRC32が計算されます。<br><br>これにより、Hasheous、Playmatch、RetroAchievementsがデータベース内のゲームを正確に識別できます。",
"manage-library": "ライブラリを編集",
"metadata-sources": "メタデータ取得元",
"new-platforms": "新規プラットフォーム",
@@ -32,7 +31,7 @@
"platforms-scanned-with-details": "プラットフォーム: {n_scanned_platforms}/{n_total_platforms} スキャン済み 新規: {n_new_platforms} 識別済み: {n_identified_platforms}",
"quick-scan": "クイックスキャン",
"quick-scan-desc": "新規ゲームのみを検索",
"retroachievements-requires-hashes": "RetroAchievementsはファイルハッシュが必要です",
"requires-hashes": "{source}はファイルハッシュが必要です",
"roms-scanned-n": "Rom: {n} スキャン済み",
"roms-scanned-with-details": "Rom: {n_scanned_roms}/{n_total_roms} スキャン済み 新規: {n_new_roms} 識別済み: {n_identified_roms}",
"scan": "スキャン",

View File

@@ -17,11 +17,10 @@
"firmware-scanned-n": "펌웨어: {n}개 스캔됨",
"firmware-scanned-with-details": "펌웨어: {n_scanned_firmware}개 스캔됨, 새 항목 {n_new_firmware}개",
"hash-calculation-disabled": "해시 계산이 비활성화되어 있습니다",
"hasheous-requires-hashes": "Hasheous는 파일 해시가 필요합니다",
"hashes": "해시",
"hashes-desc": "선택된 플랫폼의 해시를 다시 계산",
"hashes-disabled-tooltip": "해시 계산이 비활성화됨.<br><br>해시(MD5, SHA1, CRC32)는 ROM 파일을 정확히 식별하는 고유한 지문입니다.<br><br>해시 없이는 Hasheous와 RetroAchievements가 데이터베이스와 게임을 매치할 수 없지만, 스캔이 더 빨라집니다.",
"hashes-enabled-tooltip": "해시 계산이 활성화됨.<br><br>각 ROM 파일의 고유한 지문을 생성하기 위해 해시(MD5, SHA1, CRC32)가 계산됩니다.<br><br>이를 통해 Hasheous와 RetroAchievements가 데이터베이스에서 게임을 정확히 식별할 수 있습니다.",
"hashes-disabled-tooltip": "해시 계산이 비활성화됨.<br><br>해시(MD5, SHA1, CRC32)는 ROM 파일을 정확히 식별하는 고유한 지문입니다.<br><br>해시 없이는 Hasheous, Playmatch와 RetroAchievements가 데이터베이스와 게임을 매치할 수 없지만, 스캔이 더 빨라집니다.",
"hashes-enabled-tooltip": "해시 계산이 활성화됨.<br><br>각 ROM 파일의 고유한 지문을 생성하기 위해 해시(MD5, SHA1, CRC32)가 계산됩니다.<br><br>이를 통해 Hasheous, Playmatch와 RetroAchievements가 데이터베이스에서 게임을 정확히 식별할 수 있습니다.",
"manage-library": "라이브러리 관리",
"metadata-sources": "메타데이터 DB",
"new-platforms": "새 플랫폼",
@@ -32,7 +31,7 @@
"platforms-scanned-with-details": "플랫폼: {n_scanned_platforms}/{n_total_platforms}개 스캔됨, 새로운 플랫폼: {n_new_platforms}개, 확인된 플랫폼: {n_identified_platforms}개",
"quick-scan": "빠른 스캔",
"quick-scan-desc": "새 게임만 검색",
"retroachievements-requires-hashes": "RetroAchievements는 파일 해시가 필요합니다",
"requires-hashes": "{source}는 파일 해시가 필요합니다",
"roms-scanned-n": "롬: {n}개 스캔됨",
"roms-scanned-with-details": "롬: {n_scanned_roms}/{n_total_roms}개 스캔됨, 새로운 롬: {n_new_roms}개, 확인된 롬: {n_identified_roms}개",
"scan": "스캔",

View File

@@ -17,11 +17,10 @@
"firmware-scanned-n": "Firmware: zeskanowano {n}",
"firmware-scanned-with-details": "Firmware: zeskanowano {n_scanned_firmware}, w tym {n_new_firmware} nowych",
"hash-calculation-disabled": "Obliczanie skrótów jest wyłączone",
"hasheous-requires-hashes": "Hasheous wymaga włączonego obliczania skrótów",
"hashes": "Przelicz sumy kontrolne",
"hashes-desc": "Przelicza sumy kontrolne dla wybranych platform",
"hashes-disabled-tooltip": "Obliczanie skrótów wyłączone.<br><br>Skróty (MD5, SHA1, CRC32) to unikalne odciski palców, które precyzyjnie identyfikują pliki ROM.<br><br>Bez nich Hasheous i RetroAchievements nie mogą dopasować gier do swoich baz danych, ale skanowanie będzie szybsze.",
"hashes-enabled-tooltip": "Obliczanie skrótów włączone.<br><br>Zostaną obliczone skróty (MD5, SHA1, CRC32) w celu utworzenia unikalnych odcisków palców każdego pliku ROM.<br><br>To pozwala Hasheous i RetroAchievements na dokładną identyfikację gier w ich bazach danych.",
"hashes-disabled-tooltip": "Obliczanie skrótów wyłączone.<br><br>Skróty (MD5, SHA1, CRC32) to unikalne odciski palców, które precyzyjnie identyfikują pliki ROM.<br><br>Bez nich Hasheous, Playmatch i RetroAchievements nie mogą dopasować gier do swoich baz danych, ale skanowanie będzie szybsze.",
"hashes-enabled-tooltip": "Obliczanie skrótów włączone.<br><br>Zostaną obliczone skróty (MD5, SHA1, CRC32) w celu utworzenia unikalnych odcisków palców każdego pliku ROM.<br><br>To pozwala Hasheous, Playmatch i RetroAchievements na dokładną identyfikację gier w ich bazach danych.",
"manage-library": "Zarządzaj biblioteką",
"metadata-sources": "Źródła metadanych",
"new-platforms": "Nowe platformy",
@@ -32,7 +31,7 @@
"platforms-scanned-with-details": "Platformy: {n_scanned_platforms} zeskanowano z {n_total_platforms}, z {n_new_platforms} nowych i {n_identified_platforms} zidentyfikowanych",
"quick-scan": "Szybkie skanowanie",
"quick-scan-desc": "Skanuj tylko nowe gry",
"retroachievements-requires-hashes": "RetroAchievements wymaga włączonego obliczania skrótów",
"requires-hashes": "{source} wymaga włączonego obliczania skrótów",
"roms-scanned-n": "ROM-y: zeskanowano {n}",
"roms-scanned-with-details": "ROM-y: {n_scanned_roms} zeskanowano z {n_total_roms}, z {n_new_roms} nowych i {n_identified_roms} zidentyfikowanych",
"scan": "Skanuj",

View File

@@ -17,11 +17,10 @@
"firmware-scanned-n": "Firmware: {n} escaneado",
"firmware-scanned-with-details": "Firmware: {n_scanned_firmware} escaneados, com {n_new_firmware} novos",
"hash-calculation-disabled": "O cálculo de hash está desabilitado",
"hasheous-requires-hashes": "Hasheous requer que o cálculo de hash esteja habilitado",
"hashes": "Recalcular hashes",
"hashes-desc": "Recalcula hashes das plataformas selecionadas",
"hashes-disabled-tooltip": "Cálculo de hash desabilitado.<br><br>Hashes (MD5, SHA1, CRC32) são impressões digitais únicas que identificam arquivos ROM com precisão.<br><br>Sem eles, Hasheous e RetroAchievements não podem comparar jogos com seus bancos de dados, mas a varredura será mais rápida.",
"hashes-enabled-tooltip": "Cálculo de hash habilitado.<br><br>Hashes (MD5, SHA1, CRC32) serão calculados para criar impressões digitais únicas de cada arquivo ROM.<br><br>Isso permite que Hasheous e RetroAchievements identifiquem jogos com precisão em seus bancos de dados.",
"hashes-disabled-tooltip": "Cálculo de hash desabilitado.<br><br>Hashes (MD5, SHA1, CRC32) são impressões digitais únicas que identificam arquivos ROM com precisão.<br><br>Sem eles, Hasheous, Playmatch e RetroAchievements não podem comparar jogos com seus bancos de dados, mas a varredura será mais rápida.",
"hashes-enabled-tooltip": "Cálculo de hash habilitado.<br><br>Hashes (MD5, SHA1, CRC32) serão calculados para criar impressões digitais únicas de cada arquivo ROM.<br><br>Isso permite que Hasheous, Playmatch e RetroAchievements identifiquem jogos com precisão em seus bancos de dados.",
"manage-library": "Gerenciar biblioteca",
"metadata-sources": "Fontes de metadados",
"new-platforms": "Novas plataformas",
@@ -32,7 +31,7 @@
"platforms-scanned-with-details": "Plataformas: {n_scanned_platforms} escaneadas de {n_total_platforms}, com {n_new_platforms} novas e {n_identified_platforms} identificadas",
"quick-scan": "Escaneamento rápido",
"quick-scan-desc": "Escanear apenas novos jogos",
"retroachievements-requires-hashes": "RetroAchievements requer que o cálculo de hash esteja habilitado",
"requires-hashes": "{source} requer que o cálculo de hash esteja habilitado",
"roms-scanned-n": "ROMs: {n} escaneado | ROMs: {n} escaneados",
"roms-scanned-with-details": "ROMs: {n_scanned_roms} escaneados de {n_total_roms}, com {n_new_roms} novos e {n_identified_roms} identificados",
"scan": "Escanear",

View File

@@ -17,11 +17,10 @@
"firmware-scanned-n": "Firmware: {n} scanat",
"firmware-scanned-with-details": "Firmware: {n_scanned_firmware} scanate, dintre care {n_new_firmware} noi",
"hash-calculation-disabled": "Calculul hash-ului este dezactivat",
"hasheous-requires-hashes": "Hasheous necesită hash-uri de fișiere",
"hashes": "Recalculează hash-urile",
"hashes-desc": "Recalculează hash-urile pentru platformele selectate",
"hashes-disabled-tooltip": "Calculul hash-urilor dezactivat.<br><br>Hash-urile (MD5, SHA1, CRC32) sunt amprente digitale unice care identifică fișierele ROM cu precizie.<br><br>Fără ele, Hasheous și RetroAchievements nu pot potrivi jocurile cu bazele lor de date, dar scanarea va fi mai rapidă.",
"hashes-enabled-tooltip": "Calculul hash-urilor activat.<br><br>Se vor calcula hash-uri (MD5, SHA1, CRC32) pentru a crea amprente digitale unice pentru fiecare fișier ROM.<br><br>Aceasta permite lui Hasheous și RetroAchievements să identifice cu precizie jocurile în bazele lor de date.",
"hashes-disabled-tooltip": "Calculul hash-urilor dezactivat.<br><br>Hash-urile (MD5, SHA1, CRC32) sunt amprente digitale unice care identifică fișierele ROM cu precizie.<br><br>Fără ele, Hasheous, Playmatch și RetroAchievements nu pot potrivi jocurile cu bazele lor de date, dar scanarea va fi mai rapidă.",
"hashes-enabled-tooltip": "Calculul hash-urilor activat.<br><br>Se vor calcula hash-uri (MD5, SHA1, CRC32) pentru a crea amprente digitale unice pentru fiecare fișier ROM.<br><br>Aceasta permite lui Hasheous, Playmatch și RetroAchievements să identifice cu precizie jocurile în bazele lor de date.",
"manage-library": "Gestionează biblioteca",
"metadata-sources": "Surse de metadate",
"new-platforms": "Platforme noi",
@@ -32,7 +31,7 @@
"platforms-scanned-with-details": "Platforme: {n_scanned_platforms} scanate din {n_total_platforms}, cu {n_new_platforms} noi și {n_identified_platforms} identificate",
"quick-scan": "Scanare rapidă",
"quick-scan-desc": "Scanează doar jocuri noi",
"retroachievements-requires-hashes": "RetroAchievements necesită hash-uri de fișiere",
"requires-hashes": "{source} necesită hash-uri de fișiere",
"roms-scanned-n": "ROMs: {n} scanată | ROMs: {n} scanate",
"roms-scanned-with-details": "Rom-uri: {n_scanned_roms} scanate din {n_total_roms}, cu {n_new_roms} noi și {n_identified_roms} identificate",
"scan": "Scanează",

View File

@@ -17,11 +17,10 @@
"firmware-scanned-n": "Прошивки: отсканировано {n}",
"firmware-scanned-with-details": "Прошивки: отсканировано {n_scanned_firmware}, новых {n_new_firmware}",
"hash-calculation-disabled": "Вычисление хешей отключено",
"hasheous-requires-hashes": "Hasheous требует хеши файлов",
"hashes": "Пересчитать хеши",
"hashes-desc": "Пересчитывает хеши для выбранных платформ",
"hashes-disabled-tooltip": "Вычисление хешей отключено.<br><br>Хеши (MD5, SHA1, CRC32) - это уникальные отпечатки, которые точно идентифицируют файлы ROM.<br><br>Без них Hasheous и RetroAchievements не могут сопоставить игры с своими базами данных, но сканирование будет быстрее.",
"hashes-enabled-tooltip": "Вычисление хешей включено.<br><br>Будут вычислены хеши (MD5, SHA1, CRC32) для создания уникальных отпечатков каждого файла ROM.<br><br>Это позволяет Hasheous и RetroAchievements точно идентифицировать игры в своих базах данных.",
"hashes-disabled-tooltip": "Вычисление хешей отключено.<br><br>Хеши (MD5, SHA1, CRC32) - это уникальные отпечатки, которые точно идентифицируют файлы ROM.<br><br>Без них Hasheous, Playmatch и RetroAchievements не могут сопоставить игры с своими базами данных, но сканирование будет быстрее.",
"hashes-enabled-tooltip": "Вычисление хешей включено.<br><br>Будут вычислены хеши (MD5, SHA1, CRC32) для создания уникальных отпечатков каждого файла ROM.<br><br>Это позволяет Hasheous, Playmatch и RetroAchievements точно идентифицировать игры в своих базах данных.",
"manage-library": "Управление библиотекой",
"metadata-sources": "Источники мета<D182><D0B0>анных",
"new-platforms": "Новые платформы",
@@ -32,7 +31,7 @@
"platforms-scanned-with-details": "Платформы: {n_scanned_platforms} из {n_total_platforms} отсканировано, {n_new_platforms} новых и {n_identified_platforms} опознано",
"quick-scan": "Быстрое сканирование",
"quick-scan-desc": "Сканировать только новые игры",
"retroachievements-requires-hashes": "RetroAchievements требует хеши файлов",
"requires-hashes": "{source} требует хеши файлов",
"roms-scanned-n": "Ромы: {n} отсканировано",
"roms-scanned-with-details": "Ромы: {n_scanned_roms} из {n_total_roms} отсканировано, {n_new_roms} новых и {n_identified_roms} опознано",
"scan": "Сканировать",

View File

@@ -17,11 +17,10 @@
"firmware-scanned-n": "固件:已扫描 {n} 个",
"firmware-scanned-with-details": "固件:已扫描 {n_scanned_firmware} 个,新增 {n_new_firmware} 个",
"hash-calculation-disabled": "哈希计算已禁用",
"hasheous-requires-hashes": "Hasheous 需要文件哈希",
"hashes": "哈希",
"hashes-desc": "重新计算选定平台的哈希值",
"hashes-disabled-tooltip": "哈希计算已禁用。<br><br>哈希值MD5、SHA1、CRC32是精确识别 ROM 文件的唯一指纹。<br><br>没有它们Hasheous 和 RetroAchievements 无法将游戏与其数据库进行匹配,但扫描速度会更快。",
"hashes-enabled-tooltip": "文件哈希计算已启用。<br><br>将计算哈希值MD5、SHA1、CRC32为每个 ROM 文件创建唯一指纹。<br><br>这使得 Hasheous 和 RetroAchievements 能够在其数据库中准确识别游戏。",
"hashes-disabled-tooltip": "哈希计算已禁用。<br><br>哈希值MD5、SHA1、CRC32是精确识别 ROM 文件的唯一指纹。<br><br>没有它们Hasheous、Playmatch 和 RetroAchievements 无法将游戏与其数据库进行匹配,但扫描速度会更快。",
"hashes-enabled-tooltip": "文件哈希计算已启用。<br><br>将计算哈希值MD5、SHA1、CRC32为每个 ROM 文件创建唯一指纹。<br><br>这使得 Hasheous、Playmatch 和 RetroAchievements 能够在其数据库中准确识别游戏。",
"manage-library": "管理游戏库",
"metadata-sources": "元数据源",
"new-platforms": "新平台",
@@ -32,7 +31,7 @@
"platforms-scanned-with-details": "平台:{n_scanned_platforms}/{n_total_platforms} 已扫描,新增 {n_new_platforms},识别 {n_identified_platforms}",
"quick-scan": "快速扫描",
"quick-scan-desc": "仅扫描新游戏",
"retroachievements-requires-hashes": "RetroAchievements 需要文件哈希",
"requires-hashes": "{source} 需要文件哈希",
"roms-scanned-n": "ROMs{n} 已扫描",
"roms-scanned-with-details": "ROMs{n_scanned_roms}/{n_total_roms} 已扫描,新增 {n_new_roms},识别 {n_identified_roms}",
"scan": "扫描",

View File

@@ -17,11 +17,10 @@
"firmware-scanned-n": "韌體:已掃描 {n} 個",
"firmware-scanned-with-details": "韌體:已掃描 {n_scanned_firmware} 個,新增 {n_new_firmware} 個",
"hash-calculation-disabled": "雜湊計算已停用",
"hasheous-requires-hashes": "Hasheous 需要檔案哈希",
"hashes": "雜湊",
"hashes-desc": "重新計算選定平台的雜湊值",
"hashes-disabled-tooltip": "哈希計算已停用。<br><br>哈希值MD5、SHA1、CRC32是唯一識別 ROM 檔案的數字指紋。<br><br>沒有它們Hasheous 和 RetroAchievements 無法將遊戲與資料庫匹配,但掃描速度會更快。",
"hashes-enabled-tooltip": "哈希計算已啟用。<br><br>將計算哈希值MD5、SHA1、CRC32為每個 ROM 檔案建立唯一指紋。<br><br>這使 Hasheous 和 RetroAchievements 能夠準確識別其資料庫中的遊戲。",
"hashes-disabled-tooltip": "哈希計算已停用。<br><br>哈希值MD5、SHA1、CRC32是唯一識別 ROM 檔案的數字指紋。<br><br>沒有它們Hasheous、Playmatch 和 RetroAchievements 無法將遊戲與資料庫匹配,但掃描速度會更快。",
"hashes-enabled-tooltip": "哈希計算已啟用。<br><br>將計算哈希值MD5、SHA1、CRC32為每個 ROM 檔案建立唯一指紋。<br><br>這使 Hasheous、Playmatch 和 RetroAchievements 能夠準確識別其資料庫中的遊戲。",
"manage-library": "管理遊戲庫",
"metadata-sources": "元數據來源",
"new-platforms": "新平台",
@@ -32,7 +31,7 @@
"platforms-scanned-with-details": "平台:{n_scanned_platforms}/{n_total_platforms} 已掃描,新增 {n_new_platforms},識別 {n_identified_platforms}",
"quick-scan": "快速掃描",
"quick-scan-desc": "只掃描新遊戲",
"retroachievements-requires-hashes": "RetroAchievements 需要檔案哈希",
"requires-hashes": "{source} 需要檔案哈希",
"roms-scanned-n": "已掃描 {n} 個 Rom",
"roms-scanned-with-details": "Rom{n_scanned_roms}/{n_total_roms} 已掃描,新增 {n_new_roms},識別 {n_identified_roms}",
"scan": "掃描",

View File

@@ -91,9 +91,7 @@ export default defineStore("heartbeat", {
getAllMetadataOptions(): MetadataOption[] {
return [
{
name: this.value.METADATA_SOURCES?.PLAYMATCH_API_ENABLED
? "IGDB + Playmatch"
: "IGDB",
name: "IGDB",
value: "igdb",
logo_path: "/assets/scrappers/igdb.png",
disabled: !this.value.METADATA_SOURCES?.IGDB_API_ENABLED
@@ -108,6 +106,14 @@ export default defineStore("heartbeat", {
? i18n.global.t("scan.disabled-by-admin")
: "",
},
{
name: "Playmatch",
value: "playmatch",
logo_path: "/assets/scrappers/playmatch.png",
disabled: !this.value.METADATA_SOURCES?.PLAYMATCH_API_ENABLED
? i18n.global.t("scan.disabled-by-admin")
: "",
},
{
name: "Screenscraper",
value: "ss",

View File

@@ -68,6 +68,12 @@ const metadataOptions = computed(() => [
logo_path: "/assets/scrappers/hasheous.png",
disabled: !heartbeat.value.METADATA_SOURCES?.HASHEOUS_API_ENABLED,
},
{
name: "PlayMatch",
value: "playmatch",
logo_path: "/assets/scrappers/playmatch.png",
disabled: !heartbeat.value.METADATA_SOURCES?.PLAYMATCH_API_ENABLED,
},
{
name: "Launchbox",
value: "launchbox",

View File

@@ -46,18 +46,15 @@ const calculateHashes = computed(
const metadataOptions = computed(() => {
return heartbeat.getMetadataOptionsByPriority().map((option) => {
// Check if option requires hashes but hash calculation is disabled
const requiresHashes = option.value === "hasheous" || option.value === "ra";
const requiresHashes =
option.value === "hasheous" ||
option.value === "ra" ||
option.value === "playmatch";
const hashingDisabled = !calculateHashes.value;
let disabled = option.disabled;
if (hashingDisabled && requiresHashes) {
if (option.value === "hasheous") {
disabled = t("scan.hasheous-requires-hashes");
} else if (option.value === "ra") {
disabled = t("scan.retroachievements-requires-hashes");
}
}
const disabled =
hashingDisabled && requiresHashes
? t("scan.requires-hashes", { source: option.name })
: option.disabled;
return {
...option,