Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

(Website Documentation) Language filter DAT and ROM file behavior #1373

Open
retrobit opened this issue Oct 16, 2024 · 1 comment
Open

(Website Documentation) Language filter DAT and ROM file behavior #1373

retrobit opened this issue Oct 16, 2024 · 1 comment
Assignees
Labels
enhancement New feature or request

Comments

@retrobit
Copy link

retrobit commented Oct 16, 2024

Paste the command

N/A

Describe the bug

The documentation states that if language information isn't specified, it will be inferred from the region. What isn't clear is if the language and region information is expected in the DAT, the ROM filename, or both (do DATs have entries for these, typically?). The documentation then goes on to give examples of filenames that it can filter language by, but again, is this after looking at DAT information? I think this can be clarified in both the language filtering and language preference sections of the documentation.

As an example, language filter does not seem to work with official FinalBurn Neo (arcade) DATs and the average FinalBurn Neo (arcade) ROM set. Based on what I've seen from MAME (arcade) DATs and ROM files, I expect it to be the same there

Official DATs: https://github.com/libretro/fbneo/tree/master/dats, specifically https://github.com/libretro/FBNeo/blob/40a25f849fd6719080bb7496f3f3c4751930c714/dats/FinalBurn%20Neo%20(ClrMame%20Pro%20XML%2C%20Arcade%20only).dat

ROM set has .zip files that match DAT's name attribute of the game tag, e.g.:

mslug.zip

and

<game name="mslug" romof="neogeo" sourcefile="neogeo/d_neogeo.cpp">

The ROM filename nor the DAT entry include region or language information - so the behavior where no ROMs are copied to output directory makes sense. However, language preference --prefer-language EN still works for 1G1R, presumably doing nothing as language and region information aren't present in either the DAT or the ROM filenames. Again, also makes sense, but could be more clear why this happens.

If the DATs were to have this information, would the behavior be different?

Expected behavior

For FBNeo, I originally expected behavior is that ROMs would be filtered by language (possibly inferred by region).

It's impossible because the information is not in the DAT or the ROM filename, but it's unclear in the documentation if both the DAT and the ROM filename are evaluated for this information, or just the ROM filename.

Debug logs

N/A - I can rerun if this isn't desired behavior and provide all other required details

DAT(s) used

https://github.com/libretro/FBNeo/blob/40a25f849fd6719080bb7496f3f3c4751930c714/dats/FinalBurn%20Neo%20(ClrMame%20Pro%20XML%2C%20Arcade%20only).dat

igir version

N/A

Node.js version

N/A

Operating system

N/A

Additional context

No response

@retrobit retrobit added the potential-bug A potential issue that needs confirmation and/or triage label Oct 16, 2024
@emmercm
Copy link
Owner

emmercm commented Feb 26, 2025

To give a quick answer: filtering & preferences happen after input files are matched to a DAT (whether explicit with the --dat <path> option or inferred). The region is parsed from the <game> or <machine> name in the DAT.

Though keep an eye on #1392, there are known issues with how Igir is handling regions and languages today. I'll plan on updating the documentation as part of that.

@emmercm emmercm self-assigned this Feb 26, 2025
@emmercm emmercm added enhancement New feature or request and removed potential-bug A potential issue that needs confirmation and/or triage labels Feb 26, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants