Kodi Community Forum
Is there any progress on integrating a Games DB? - Printable Version

+- Kodi Community Forum (https://forum.kodi.tv)
+-- Forum: Development (https://forum.kodi.tv/forumdisplay.php?fid=32)
+--- Forum: Kodi Application (https://forum.kodi.tv/forumdisplay.php?fid=93)
+---- Forum: RetroPlayer Development (https://forum.kodi.tv/forumdisplay.php?fid=194)
+---- Thread: Is there any progress on integrating a Games DB? (/showthread.php?tid=357018)

Pages: 1 2


Is there any progress on integrating a Games DB? - sunlollyking - 2020-09-11

Hey, keen to follow / get involved with some of the taxonomy structure of integrating the ability to scrape in Games and get them more UI friendly than their current state.

Not sure if any work has been done on this so far but awesome progress on the other features, great to see this taking shape.


RE: Is there any progress on integrating a Games DB? - docwra - 2021-02-11

Nope no progress. Need a Kodi Database table first!

I personally don't see whats wrong with another simple Sqlite db, similar to how TvShows works, but the developers were talking about refactoring the entire system at one point at which I lost interest Big Grin


RE: Is there any progress on integrating a Games DB? - Wintermute0110 - 2021-03-18

(2021-02-11, 16:44)docwra Wrote: Nope no progress. Need a Kodi Database table first!

I personally don't see whats wrong with another simple Sqlite db, similar to how TvShows works, but the developers were talking about refactoring the entire system at one point at which I lost interest Big Grin

Designing the Kodi Games database it is not that simple. Currently I am writing a document with a design candidate which I will publish when finished for feedback.


RE: Is there any progress on integrating a Games DB? - docwra - 2021-03-19

(2021-03-18, 09:33)Wintermute0110 Wrote:
(2021-02-11, 16:44)docwra Wrote: Nope no progress. Need a Kodi Database table first!

I personally don't see whats wrong with another simple Sqlite db, similar to how TvShows works, but the developers were talking about refactoring the entire system at one point at which I lost interest Big Grin

Designing the Kodi Games database it is not that simple. Currently I am writing a document with a design candidate which I will publish when finished for feedback.
Fantastic work!

I still don't see why an entirely new database technology layer is needed though. All that should fit nicely into the current Kodi SQlite structure and scraping systems.

I know @garbear has spoken about redesigning the whole thing but I still don't understand why its needed. Sure ORM systems and modern databases are great, but Sqlite also has its advantages of ease of use, speed and easy editing tools. Why not copy the code from the the music or TV show database and work with the same scraping systems?

I'll write a metadata games DB (or use the many that are already available), job done Big Grin

Sounds easy hehe (I know its not).


RE: Is there any progress on integrating a Games DB? - Wintermute0110 - 2021-03-21

(2021-03-19, 14:04)docwra Wrote: Fantastic work!

I still don't see why an entirely new database technology layer is needed though. All that should fit nicely into the current Kodi SQlite structure and scraping systems.

I know @garbear has spoken about redesigning the whole thing but I still don't understand why its needed. Sure ORM systems and modern databases are great, but Sqlite also has its advantages of ease of use, speed and easy editing tools. Why not copy the code from the the music or TV show database and work with the same scraping systems?

I'll write a metadata games DB (or use the many that are already available), job done Big Grin

Sounds easy hehe (I know its not).

I am not aware of current @garbear plans. My idea is to take the music database and start from there. The database backend will be SQlite. The document does not focus on the low level (use SQlite or a custom no-SQL solution using JSON, etc.) but rather on a high level. For example, in the music DB you have a set of songs that form an album. Albums have an artist. You may want to browse you albums but also browse your artists and show your albums, etc. Compared to music the games case is more complex. Console system usually have a single ROM file. However, arcade systems have a ZIP file with many ROMs inside. Optical media use ISO or CHD files. There are some tricky platforms where games are inside a directory, etc. Some games consists of several disks and many users would like to see them unified and at launching time you select the disk you want to launch. Another big difference is than in he music DB usually all your files are in a single Kodi source. However, in the case of games I think is much better to have one source per-platform and create a new source property named platform. This has implications on the way you organize your ROMs and artwork in your disk.

The games database should accommodate all these cases. It is impossible to make everybody happy, there will be decisions that will be inconvenient for some people. The target is to make an elegant solution, simple and easy to use for most users. As I said, it is not as easy as it sounds!


RE: Is there any progress on integrating a Games DB? - docwra - 2021-03-22

(2021-03-21, 07:56)Wintermute0110 Wrote:
(2021-03-19, 14:04)docwra Wrote: Fantastic work!

I still don't see why an entirely new database technology layer is needed though. All that should fit nicely into the current Kodi SQlite structure and scraping systems.

I know @garbear has spoken about redesigning the whole thing but I still don't understand why its needed. Sure ORM systems and modern databases are great, but Sqlite also has its advantages of ease of use, speed and easy editing tools. Why not copy the code from the the music or TV show database and work with the same scraping systems?

I'll write a metadata games DB (or use the many that are already available), job done Big Grin

Sounds easy hehe (I know its not).

I am not aware of current @garbear plans. My idea is to take the music database and start from there. The database backend will be SQlite. The document does not focus on the low level (use SQlite or a custom no-SQL solution using JSON, etc.) but rather on a high level. For example, in the music DB you have a set of songs that form an album. Albums have an artist. You may want to browse you albums but also browse your artists and show your albums, etc. Compared to music the games case is more complex. Console system usually have a single ROM file. However, arcade systems have a ZIP file with many ROMs inside. Optical media use ISO or CHD files. There are some tricky platforms where games are inside a directory, etc. Some games consists of several disks and many users would like to see them unified and at launching time you select the disk you want to launch. Another big difference is than in he music DB usually all your files are in a single Kodi source. However, in the case of games I think is much better to have one source per-platform and create a new source property named platform. This has implications on the way you organize your ROMs and artwork in your disk.

The games database should accommodate all these cases. It is impossible to make everybody happy, there will be decisions that will be inconvenient for some people. The target is to make an elegant solution, simple and easy to use for most users. As I said, it is not as easy as it sounds!

Can't wait to see what you come up with!


RE: Is there any progress on integrating a Games DB? - RockerC - 2021-03-24

(2021-03-18, 09:33)Wintermute0110 Wrote: Designing the Kodi Games database it is not that simple. Currently I am writing a document with a design candidate which I will publish when finished for feedback.

Very nice to hear about a restart of native Games Database / Game Library support in Kodi!

FYI, here are some more (very) old references with previous discussions on the topic:

https://forum.kodi.tv/showthread.php?tid=200911

https://forum.kodi.tv/showthread.php?tid=55794

https://forum.kodi.tv/showthread.php?tid=238307

https://forum.kodi.tv/showthread.php?tid=40715

One of those threads also contained these additional references:

http://forum.xbmc.org/showthread.php?tid=128054

http://forum.xbmc.org/showthread.php?tid=165024

http://forum.xbmc.org/showthread.php?tid=141169

https://github.com/garbear/xbmc/commits/photolibrary

http://forum.xbmc.org/showthread.php?tid=155304

https://github.com/declankenny/Video_Database_Proposal

http://forum.xbmc.org/showthread.php?tid=73831

http://wiki.xbmc.org/index.php?title=Database_Schema_4.0

http://wiki.xbmc.org/index.php?title=Database_Schema_4.0/a

http://forum.xbmc.org/showthread.php?tid=165929

http://forum.xbmc.org/showthread.php?tid=105147

http://forum.xbmc.org/showthread.php?tid=54061

http://forum.xbmc.org/showthread.php?tid=51605

http://forum.xbmc.org/showthread.php?tid=37449

http://forum.xbmc.org/showthread.php?tid=199805


RE: Is there any progress on integrating a Games DB? - RockerC - 2021-03-24

(2021-03-19, 14:04)docwra Wrote: I personally don't see whats wrong with another simple Sqlite db, similar to how TvShows works, but the developers were talking about refactoring the entire system at one point at which I lost interest Big Grin
(2021-03-21, 07:56)Wintermute0110 Wrote: My idea is to take the music database and start from there. The database backend will be SQlite.

Looking historically at all those other linked threads that mostly discuss huge databases refactor attempts for Kodi, so please be aware that it could be a risk that Kodi's core developers will not accept large changes this time either if a PR is asking for too many changes to be done to the database schema, especially if any significant changes affect the other databases/libraries in Kodi.

Still, I will be crossing my fingers and wishing for the best possible outcome, as at this point, I think that any native games database making it into Kodi would be better than no native games database in Kodi.

Personally, I had hoped before that someone would first just create a very simple and basic native games database that would quickly get approved for merging directly into Kodi 'as-is' and then later once that native games database is in there that could later be extended and improved. This as it is usually harder to say no to continuous smaller changes with minor enhancements and imporovements.


RE: Is there any progress on integrating a Games DB? - Wintermute0110 - 2021-03-26

@RockerC Excellent! You gave me a lot of materials to read! The document I wrote is based mainly from my experience as the developer of the advanced launchers addons for over 4 years. I know C++ but the last serious stuff I coded in C++ was over 15 years ago. Also, things are not the same when you develop an addon that developing in the core application. In any case, I will have a look to the links your provided and try to learn from them. Currently I am EXTREMELY busy with real-life so please be patient, it will take some time until something materializes.


RE: Is there any progress on integrating a Games DB? - zachmorris - 2021-03-28

(2021-03-24, 17:42)RockerC Wrote:
(2021-03-19, 14:04)docwra Wrote: I personally don't see whats wrong with another simple Sqlite db, similar to how TvShows works, but the developers were talking about refactoring the entire system at one point at which I lost interest Big Grin
(2021-03-21, 07:56)Wintermute0110 Wrote: My idea is to take the music database and start from there. The database backend will be SQlite.

Looking historically at all those other linked threads that mostly discuss huge databases refactor attempts for Kodi, so please be aware that it could be a risk that Kodi's core developers will not accept large changes this time either if a PR is asking for too many changes to be done to the database schema, especially if any significant changes affect the other databases/libraries in Kodi.

Still, I will be crossing my fingers and wishing for the best possible outcome, as at this point, I think that any native games database making it into Kodi would be better than no native games database in Kodi.

Personally, I had hoped before that someone would first just create a very simple and basic native games database that would quickly get approved for merging directly into Kodi 'as-is' and then later once that native games database is in there that could later be extended and improved. This as it is usually harder to say no to continuous smaller changes with minor enhancements and imporovements.

I'd think this is the obvious way forward as a starting point - copy/paste from video or music db code and replace it with game, likewise change the metadata properties to be in-line with whatever the game metadata property names are, and then shoehorn it into kodi as an extension from video, music, images etc to video, music, games, images, etc. Anything more complicated than that will likely never get merged, anything more simplistic wouldn't be taking advantage of the codebase already present. I'm sure this is a monumental task regardless of how it's handled.


RE: Is there any progress on integrating a Games DB? - RockerC - 2021-03-31

@Wintermute0110 @zachmorris @malte Are you as game addon developers also following the somewhat related work by @Montellese on his "Media importing and library integration" project?

https://forum.kodi.tv/showthread.php?tid=224794

Not sure if Montellese's concepts of a "media import manager" with "import handlers " and "media handlers" would add anything to the idea of a native games database with a local game library?

Perhaps it would not be any point to combine use with local ROMs for libretro emulator cores but could be interesting to import libraries from third-party video game digital distribution services?

https://en.wikipedia.org/wiki/Digital_distribution_of_video_games

Examples of popular such video game digital distribution services:


RE: Is there any progress on integrating a Games DB? - Wintermute0110 - 2021-04-21

@RockerC From my view as AEL/AML developer I see it very difficult to add Steam, GOG and similar platforms into Kodi core app. They are totally different from ROMs and games, which now Kodi can execute/play. Also, they are very platform dependent which in my case makes development impossible. The Kodi games database I am trying to design only includes games that can be launched directly by Kodi. However, it could be possible to create addons to launch Steam/GOG games from Kodi.


RE: Is there any progress on integrating a Games DB? - RockerC - 2021-05-27

(2021-03-18, 09:33)Wintermute0110 Wrote: Designing the Kodi Games database it is not that simple. Currently I am writing a document with a design candidate which I will publish when finished for feedback.

@garbear @NikosSiak @a1rwulf @lrusak @velocity Do you guys who develop Kodi's Game API and RetroPlayer have any feedback to share about a native Games Database and Gaming Library in Kodi?


RE: Is there any progress on integrating a Games DB? - lrusak - 2021-06-01

(2021-05-27, 14:49)RockerC Wrote:
(2021-03-18, 09:33)Wintermute0110 Wrote: Designing the Kodi Games database it is not that simple. Currently I am writing a document with a design candidate which I will publish when finished for feedback.

@garbear @NikosSiak @a1rwulf @lrusak @velocity Do you guys who develop Kodi's Game API and RetroPlayer have any feedback to share about a native Games Database and Gaming Library in Kodi?

There is no news here as far as I'm aware.


RE: Is there any progress on integrating a Games DB? - RockerC - 2022-01-14

(2021-03-18, 09:33)Wintermute0110 Wrote: Designing the Kodi Games database it is not that simple. Currently I am writing a document with a design candidate which I will publish when finished for feedback.
(2021-03-21, 07:56)Wintermute0110 Wrote: I am not aware of current @garbear plans. My idea is to take the music database and start from there. The database backend will be SQlite. The document does not focus on the low level (use SQlite or a custom no-SQL solution using JSON, etc.) but rather on a high level.

@Wintermute0110 Have you made any progress with your design proposal for a Kodi games database?

https://github.com/Wintermute0110/plugin.program.AEL.dev/blob/release-0.9.x-python2/KGDB.md

Curious to hear about any news or updates related to a games database / gaming library ideas for Kodi.

PS: Noticed that @chrisism forked Advanced Emulator Launcher and released Advanced Kodi Launcher:

https://forum.kodi.tv/showthread.php?tid=366351

(2022-01-05, 23:24)chrisism Wrote: What is different from AEL?
Not much actually. This is a friendly-ish fork of the original AEL version. I already was helping out and adding features to AEL, but with too many different features and alternative solutions we like to make it a bit more clear and make sure both versions can be stable. The main goal of AKL was to separate the launching, scanning and scraping logic to separate plugins so that it is more open to add more of these components to the addon, with an extra benefit that it is easier to maintain the core addon without doing major releases and changes. So as a result AKL can support more and different types of launchers, scanners and scrapers.
Another benefit is that instead of having a launcher as the center entity, we now use collections of ROMs/games to build everything around. This means we can associate multiple launchers to whole collections and multiple scanners per collections, so you basically get multi-directory support. So not launcher based collections, but simply collections with multiple launchers, scanners and scrapers.

The goal still remains that the functionality and data will be as closely related and interchangeable as possible with AEL.
Meaning you can import and export your data from and to AEL if needed. I will keep on working together with @Wintermute0110 on AEL and AKL and let both addons benefit from new things we add or discover. Most of the things discussed or mentioned in the AEL thread will also apply for AKL.

A special thanks to @Wintermute0110 making AEL possible.