Viewing Issue Advanced Details
ID Category [?] Severity [?] Reproducibility Date Submitted Last Update
07313 Interface Minor Always May 1, 2019, 22:55 Dec 6, 2021, 15:09
Tester MetalGod View Status Public Platform MAME (Official Binary)
Assigned To Resolution Reopened OS Windows Vista/7/8 (64-bit)
Status [?] Confirmed Driver
Version 0.209 Fixed in Version Build 64-bit
Fixed in Git Commit Github Pull Request #
Summary 07313: Search function got worse since mame 0.206.
Description Search function got worse since mame 0.206.

For example, in mame 0.205 when typing "champion edition" you got all editions of sf2 champion edition and 2 pacman games, well, you receive ALL games that include those 2 words. Since mame 0.206 you got NOTHING on the list including those 2 words, you just get some games that start with the word "Champion".

Typing "Golden Axe" in mame 0.205 you received a list of all golden axe versions and sequels. Now since mame 0.206 the first results you see are "Golden Hexa" and "Golden Cue"... I really don't see that correct at all....

There are even games that, even been written perfectly, are not showed as a first result, for example "Street Fighter EX2".......

In mameinfo for mame 0.206 I found this line:
. UI
    . Improved search function (use algorithm derived from Jaro-Winkler similarity to match search strings)
I really don't find any improvement in using that algorithm. Searchings worked better before this.
Steps To Reproduce Just compare searchs in mame 0.205 and any version since mame 0.206
Additional Information
Github Commit
Regression Version 0.206
Affected Sets / Systems
Attached Files
jpg file icon fail buscador.jpg (141,686 bytes) May 10, 2019, 18:18 Uploaded by MetalGod
jpg file icon fail.jpg (674,166 bytes) Jun 28, 2019, 11:01 Uploaded by MetalGod
related to 08142Closed Strange filter results and sort order in the machine list 
User avatar
May 2, 2019, 16:52
I'll have to leave it to cuavas to explain the differences and reasoning behind the search results changes. It is doing it's job, just not focusing on entire hits and giving more variety. Whether or not it is the best way to present searches is yet to be determined. The same fuzzy search I think is part of the suggestions MAME shows when you try to run a non-existent machine or software list entry.
User avatar
May 2, 2019, 17:29
It's based on prefix-weighted edit distance now, and it can match on shortname, manufacturer and description, or description. I'm aware of the weirdness with descriptions that have a long region/version/publisher suffix on them. The reason for this is that the edit distance to the description you're looking for is higher, because of all the extra characters that would have to be added. I realise the algorithm could be improved to better fit the use case, but it's a huge performance improvement over the previous code (search is a lot more responsive), it always gives a perfect match when you type a set name, searching for stuff like "nes" and "neo geo" now gives the results you'd expect, and so does "olivetti m20", and slight misspellings. The old algorithm definitely isn't coming back.

(Using your "golden axe" example, "Golden Axe (set 1, World) (FD1094 317-0110)" has an edit distance of 33 because of all the additional letters on the end, while "Golden Hexa" has an edit distance of 2 because it's just insertion of the "H" and transposition of the "a" and "e". I'm not entirely sure how to solve it in a way that doesn't make it worse at finding the expected result for misspellings, e.g. "thompson" vs "thomson".)
User avatar
Senior Tester
May 2, 2019, 22:04
Thanks for the explanation.
Closing then.
User avatar
Senior Tester
May 3, 2019, 13:10
Maybe splitting the longnames into two strings - base name, and version info? could help?
User avatar
Senior Tester
May 10, 2019, 18:17
edited on: May 10, 2019, 18:19
Reopening this. This should, at least, be debated.
Adding screenshot
My apologies If I'm wrong and this deserves to be closed.
User avatar
May 10, 2019, 19:45
Maybe it could be fixed a bit to push the more relevant result to the top, but I do see your term on the list displayed on screen and the 5th entry. I feel the primary change was to allow misspells and other close to actual search terms picking up those terms which a regular exact type search would not.
User avatar
May 13, 2019, 21:21
I do think it's a bit weird that you get more accurate results with "spec +3" or "+3 spec" than typing "Spectrum +3".
User avatar
May 15, 2019, 14:15
The search really is quite horrible now :(
User avatar
May 19, 2019, 06:05
Is right, looks like read only the 1st word and the 2nd like a "nothing"
User avatar
Dec 2, 2021, 14:04
See – if people like it better, we can switch search algorithm.
User avatar
Dec 2, 2021, 19:39
Some worse, some better. It's still not good at matching exact substrings.
I tried "super street fighter" for example, Imagine searching that on google and your first page search results is:

Street Fighter II
Tetris Fighters
Cute Fighter
Star Fighter
Star Fighter (v1)
Street Fight (Germany)
Virtua Fighter
Toy Fighter
Space Laser Fight
Super Star Battle
Omega Fighter
Rotary Fighter

And then finally there's an ssf2 set, but it's the Turbo version
User avatar
Senior Tester
Dec 6, 2021, 15:09
Google has the advantage of being weighed by popularity / what people have clicked through before though. For more obscure things, you really can end up on page 12 of the results before you find what you want. (this is more obvious with YouTube)