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

RAWG Mismatches cannot be resolved. #234

Closed
alexfornuto opened this issue Dec 24, 2023 · 4 comments
Closed

RAWG Mismatches cannot be resolved. #234

alexfornuto opened this issue Dec 24, 2023 · 4 comments
Labels
🪲 bug Something isn't working 💻 client There are things to do on the client

Comments

@alexfornuto
Copy link

Describe the bug
First of all, thanks for this tool! It looks swell, and I'm looking forward to utilizing it.

I've been adding a bunch of indie games from a bundle I was gifted, and all but the most unique titles are being mismatched in the rawg lookup. I cannot correct them with the "rawg search" edit option, because it comes up with games that only match one word of the title, not all words.

To Reproduce
Steps to reproduce the behavior:

  1. Add a game to the library with a non-unique title. For example, all of these games are mismatched on lookup, and the correct entry is not in the "rawg game" results:
  • A Mortician's Take
  • Art Sqool
  • A Short Hike
  • Celeste
  • Gladiabots
  • Night in The Woods
  • etc, etc
  1. Click on the entry, and notice that the metadata pulled is incorrect.
  2. Click the edit icon. Search for the game in the "Rawg game" field.
  3. See that the results are numerous, but only include titles with one word matching, not all words in the title. Or in the case of "Gladiabots", only games with "Gladiator" in the title are returned.

Expected behavior
Reviewing the rawg API docs (only at a surface level, I am not a developer), and playing around with their API in Postman, I found that the key/value pair search_exact=true would return the correct entry.

I'm not sure if this is a perfect solution, but I think that having no results unless the search is exact is preferable to having only incorrect results, even with an exact search.

Screenshots

Examples:

image

image

Desktop (please complete the following information):

  • OS: Windows 10
  • Browser: Native windows client (should the template say Browser?)
  • Version: 9.0.4 (I set it up an hour before the new release dropped :) )

Additional context
I'm happy to provide any other information that may be useful.

@alexfornuto alexfornuto added 💻 client There are things to do on the client 🪲 bug Something isn't working labels Dec 24, 2023
@alexfornuto
Copy link
Author

I realize now that this issue should probably be in the gamevault-backend project. I'd be happy to close and reopen, though it's probably cleaner if the maintainers move the issue.

@Alfagun74 Alfagun74 transferred this issue from Phalcode/gamevault-app Dec 24, 2023
@Alfagun74
Copy link
Contributor

Firstly, if a game falls into the category of being so indie that it's not listed on major platforms like Steam but exclusively on the itch.io platform, it won't appear in our search results. This exclusion is a default setting in our Rawg search algorithm, aimed at filtering out numerous asset flip indie games on itch.io. You can find more details here.

I acknowledge that our search is somewhat flexible. To address this, we're may add a checkbox in the user interface to enable or disable the "search_exact" field. Alternatively, I may conduct a poll to gather user feedback on whether the search should prioritize precision or maintain its current fuzzy approach.

Furthermore, the manual remap search box relies on Rawg's search functionality, which can be limiting. Unfortunately, Rawg's web UI doesn't display IDs. However, if you manage to find an ID using their API, you can utilize our GameVault server's API with an API client like Postman to manually remap the game:
image

Thank you for the well-written ticket and the positive words!

@alexfornuto
Copy link
Author

Firstly, if a game falls into the category of being so indie that it's not listed on major platforms like Steam but exclusively on the itch.io platform, it won't appear in our search results. This exclusion is a default setting in our Rawg search algorithm, aimed at filtering out numerous asset flip indie games on itch.io. You can find more details here.

Thanks for the explanation! I apologize for not reviewing all the environment variables thoroughly. It may be worth noting that setting RAWG_API_EXCLUDE_STORES to "" in my docker-compose file made no change. If there's a specific way to set it to a null value, I suggest documenting that. As for me, I changed it to a few stores I don't use, and can now see (most of) my games when doing a rawg search. 🎉

I acknowledge that our search is somewhat flexible. To address this, we're may add a checkbox in the user interface to enable or disable the "search_exact" field. Alternatively, I may conduct a poll to gather user feedback on whether the search should prioritize precision or maintain its current fuzzy approach.

I support this idea, to no one's surprise. Even with the itch store now in my rawg search, some titles are still too common to get the correct one. Celeste is a great example, as there are so many versions and similar games that the original doesn't show in the search results.

Furthermore, the manual remap search box relies on Rawg's search functionality, which can be limiting. Unfortunately, Rawg's web UI doesn't display IDs. However, if you manage to find an ID using their API, you can utilize our GameVault server's API with an API client like Postman to manually remap the game:

This is a resolution path that I think could be improved upon, in the following way:

Step 1 is not yours to make, but I wonder if you, as someone with deeper knowledge of rawg than I, could champion to them the idea of making their game ID value visible in their web UI. This would make it much easier to identify the value to update in Gamevault.

Step 2 would be a field in the edit overlay to enter the rawg id directly from the UI. This would be much more accessible and expedient than process of:

  1. setting up postman,
  2. searching gamevault for the gamevault id,
  3. Building a PUT query to update the rawg_id for each gamevault game ID.

Only a few steps, but for just my one bundle of games I suspect this will be quite the time-consuming job.

Thank you for the well-written ticket and the positive words!

Thank you for a great response with several avenues to resolution, willingness to consider changes, and expediency despite the holiday timing!

@Alfagun74
Copy link
Contributor

I looked deeper into our matching system and tested around in the RAWG API using Postman. It turns out that the 'exclude_stores' filter is causing some strange issues in RAWG. Instead, I'll be using a whitelist approach with the 'stores' parameter, which gives much better results. Also, not using the 'search_precise' and 'search_exact' parameters, whatever their difference may be, makes a big difference. These changes will be included in server version 11.0.0. Thanks!

@github-project-automation github-project-automation bot moved this from 📃 New Issues to ✅ Closed in GameVault: Public Roadmap Dec 26, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🪲 bug Something isn't working 💻 client There are things to do on the client
Projects
Archived in project
Development

No branches or pull requests

2 participants