Kodi Community Forum

Full Version: Advanced Kodi Launcher - Game and Emulators frontend for Kodi
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3
Advanced Kodi Launcher

Advanced Kodi Launcher or AKL in short is another iteration of the launcher addons for Kodi. AKL is a multi-emulator front-end and general application launcher for Kodi, based and build upon AEL (Advanced Emulator Launcher). It is a modulair build with support for many plugins to either launch, scan or scrape ROMs and games from your favourite source.
Plugins are available for scanning your ROMs from different locations on your disks or from online sources like your steam library. There is support for scrapping ROM metadata and artwork from local disks or many different sources online. Also you can do ROM auditing for No-Intro ROMs using No-Intro or Redump XML DAT files (WiP). Of course, simply launching games with your favorite emulator or application is supported.
Basically the possibilities are endless since you can easily extend AKL with your own plugins to add your type of launcher. Now you don't have to build a complete launcher addon, simply implement the plugin and hook it up in AKL. For example you can make a plugin that uses the internet archive like IAGL made by @zachmorris. This way you create a combination of AEL and IAGL. So one launcher addon to support them all. Add your own plugin now.

ReleaseStatus
StableImage
UnstableImage

For a complete overview view the builds on this page.

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.

Features
  • Since it is a close fork of AEL, basically the same as mentioned here (some work-in-progress still)
  • Multi-directory support for ROM Collections (multiple scanners)
  • New metadata fields (tags, number of players online)
  • More game sources through plugins
  • Easily extendable, build your own plugin addons for AKL

Install AKL

Installing the latest released version
You can install this repository (https://github.com/chrisism/repository.chrisism) locally in Kodi to install and keep it up to date. Or follow this link and download the ZIP file of the version you want. Use this ZIP file to install the addon in Kodi.

Installing the latest beta version
Release candidates and beta versions can be found on the dev repository (https://github.com/chrisism/repository.chrisism.dev). Simply collect the version you like from there. If you want to be really experimental you can clone/download the code from the dev branch and start using that version. Be aware of breaking changes in that version!

Install plugins
Just like the addon itself you can use the repositories as mentioned above. If you want to install it manually, go to this link and select of the script.akl.*** plugins.

Documentation
Read more on either the ReadMe page or wiki of AKL.

Extend AKL

Develop on AKL
So you want to add something to the codebase? Be my guest and get your fork through Github. Do notice that AKL applies GitFlow, meaning we do not touch the master/main branch for active development. The unstable version, or active development version is in the 'dev' branch. Once we are ready to ship a new release we start release/1.x.x branches which builds new release candidates available in my beta kodi repository. In special cases when something is broken in the stable, we create a hotfix branch from master to solve this. 
So create your fork, make your feature branches based on dev and I'll see your Pull Requests coming in.
Read more here.

Create your own plugin addon for AKL
Currently we support plugins for adding either custom launchers, scanners or scrapers. How to do that? Read the documentation here.

Bugs & feature requests
You can ask for feature requests in this thread or directly on GitHub.

If you find a bug or Kodi shows an error in AKL you can report it in this thread or in GitHub. In your report try to be descriptive about the problem and the steps you do that cause it. Also, report your operating system, Kodi version and AKL version. If AKL crashes it is very important that you post a debug log in order to locate the cause of the bug so I can fix it. To generate a debug log, unless otherwise told, follow these steps:
  1. In Kodi Settings, turn Kodi debug log OFF.
  2. In AKL addon settings, go to "Advanced" tab and set the "Log level" option to DEBUG.
  3. Reproduce the bug.
  4. Put your Kodi log file in paste.kodi.tv.
You can use the Kodi Logfile Uploader addon to help with the log upload process. Thanks to Ronie for this fine addon.

Any feature requests or issues that get picked up will be put on the Story board. There you can monitor progress on work.
AKL Plugins

So AKL is modulair, meaning AKL supports plugin addons to extend functionality without having to change the AKL addon itself. 
Here is a list of current available plugins in my repositories (some still beta):

][
Addon IDDescription
script.akl.defaultsLocal disk ROM scanner, scraper and app launcher
script.akl.mobygamesMobyGames scraper
script.akl.screenscraperScreenscraper support
script.akl.tgdbscraperTheGamesDB scraper
script.akl.arcadedbArcadeDB scraper
script.akl.steamgriddbSteamGridDB scraper
script.akl.googlesearchGoogle image scraper
script.akl.retroarchlauncherRetroarch scraper
script.akl.steamSteam scraper
script.akl.nvgamestreamNvidia Gamestream scanner and launcher
script.akl.gamefaqsGameFaq scraper, broken
script.akl.offlinescraperOffline scraper with AEL db

Not enough? Help out by building your own.
Backlog

To check the items that are on the todo list or currently being worked on: https://dev.azure.com/jnpro/AKL/_workite...lyupdated/.
Want to see what is being added to wish list: https://dev.azure.com/jnpro/AKL/_workite...lycreated/
Or what is actually been delivered recently: https://dev.azure.com/jnpro/AKL/_workite...lycreated/

Builds & Releases
To check out what is currently being build, go to this build overview.
To see all the latest releases of the addons, you can open up this overview page.

What do we need?
If there is anybody who wants to help out with the graphics/icons/logos for AKL, that would be welcome. We don't want to get confusion with the AEL addon and AKL, even though they share the same base. So if anybody can update the graphics or logos for this addon please let me know.
I am very happy about the release of Advanced Kodi Launcher! Nice job @chrisism
Great to hear about this project! I tried chrisism's repo, and it looks like it only contains AEL?
(2022-01-11, 21:11)garbear Wrote: [ -> ]Great to hear about this project! I tried chrisism's repo, and it looks like it only contains AEL?
Thanks. You might want to check the beta's repository. https://github.com/chrisism/repository.chrisism.dev
Should also be available as a download option in the stable repo.

I will be launching the first 'stable' release soon also, which you will be able to find on my normal repo. Just finishing some tests and optimizing the deployment pipeline. The beta's repository will contain release candidates, so versions I am preparing for an actual release. Unstable dev versions can be separately downloaded from my azure devops project.
Hi,
Can anyone help how to use addon with steam?
Which version of AKL and the AKL steam plugin are you using? 
You will need to have a Steam API key to be able to read out the steam library from online. If you go to the settings for the steam plugin you can insert your personal API key.
To obtain an API key go to https://steamcommunity.com/dev/apikey.

With that setup you can create a new ROM collection in AKL. To scan all the games from you library open up the context menu of your ROM collection, choose:
- 'Edit ROM Collection'
- 'Manage ROMs'
- 'Add new ROM scanner'
- Choose 'Steam Library'   **(if not there but plugin installed, go to root -> 'Utilities' -> 'Scan for plugin addons' to let AKL recognize the plugin).
- Insert Steam account ID  **(in steam website go to your profile page, extract it from the url https://steamcommunity.com/profiles/<STEAM_ACCOUNT_ID>/)

It asks to scan right away, but if you want to do it later (again) go to context menu -> Edit Rom Collection -> Manage ROMs -> Scan for new ROMs.
This should add your library into AKL.

Step 2, launching games. 
You will need to have Steam launcher installed locally. Attach it as the launcher for your ROM Collection, open context menu and:
- 'Edit ROM Collection'
- 'Add new launcher'

If you encounter issues please post logs and more details as describe under 'Bugs & feature requests' in this thread start topic.
Thank you, chrisism

l have try all with your instruction, but nothing.
l use AKL  from here https://github.com/chrisism/plugin.program.akl, also l have my steam  API and ID.
Now l use  plugin.program.steam.library by aanderse, which is very good, but it missing game descripcion.
If you have time to upload some video with instrukcion, it will be nice. How ever thank you one more time.
(2022-03-02, 19:21)senna99 Wrote: [ -> ]Thank you, chrisism

l have try all with your instruction, but nothing.
l use AKL  from here https://github.com/chrisism/plugin.program.akl, also l have my steam  API and ID.
Now l use  plugin.program.steam.library by aanderse, which is very good, but it missing game descripcion.
If you have time to upload some video with instrukcion, it will be nice. How ever thank you one more time.
I recommend to use my repository addon to get official released versions and keep it all up to date. Read 'how to' on the repo pages here
https://github.com/chrisism/repository.chrisism.dev (for dev version, needed for steam plugin)
https://github.com/chrisism/repository.chrisism (stable version)

Could you perhaps share the log file (make sure both AKL and the steam plugin addon are set on 'DEBUG' level for logging through the addon settings).
Also if you could tell me which of the steps in my previous post did work or showed you something that can make it more clear for me.
Ok thanks for the help. Everything is working properly, but now I have a problem how to l get 
fanart,cover game descripcion etc...

Image
(2022-03-07, 20:38)senna99 Wrote: [ -> ]Ok thanks for the help. Everything is working properly, but now I have a problem how to l get 
fanart,cover game descripcion etc...

Image
A lot of information about how to get metadata (titles, descriptions) and assets (art) in general can be found already in the AEL thread, since AKL is simply an evolution of that addon. The main difference is that with AKL you can install plugins for the 'scrapers' you want to use. 
For PC games I would recommend the SteamGridDB scraper, MobyGames or The Games DB (tgdbscraper). Use default plugin if you would like to scrape images from disk which you collect yourself. Also for MobyGames and TGDB you will need to have API keys and accounts. 

Scraping pretty much goes like scanning, you again start with 'Edit ROM Collection', then 'Manage ROMs' and choose the Scrape command. Select the desired scraper and scraper settings.
Make sure that the ROMs assets directory is writable by Kodi. (check edit rom collection, manage roms, manage roms assets directories for details).
Hi, l use SteamGridDB and l have my api key, but no success. What is cache directory in SteamGridDB? l have put this line C:\Program Files (x86)\Steam\steamapps\common
Because l have follow your instruction, all time l got error. Or I'm too stupid for all this  Huh .
(2022-03-09, 07:40)senna99 Wrote: [ -> ]Hi, l use SteamGridDB and l have my api key, but no success. What is cache directory in SteamGridDB? l have put this line C:\Program Files (x86)\Steam\steamapps\common
Because l have follow your instruction, all time l got error. Or I'm too stupid for all this  Huh .
Certainly not, but you do have the plugins from the unstable/beta repository which can make it a bit harder. In this case it was simply a bug in the code. I stumbled upon it when I tried it myself.
Do remember to follow the bug notice/log file as mentioned in the topic start.

I have quickly fixed that bug and got a hotfix release ready. You should be able to get an update for the "script.module.akl" addon (version 1.0.5~rc16). You can force the update perhaps in kodi by going to system -> addosn -> addon repository -> context menu on chrisism beta repository -> check for updates. If you want to be extra sure you can even disable and enable the AKL addon after that update so that it will be forced to use the latest version.

This should solve your issue. Do notice though that steamgriddb does not provide a lot of metadata (texts), but you can run another round of scraping with a different scraper. Just make sure that you choose the correct assets and metadata so that you don't overwrite previous scraped data. 

And one step further.. After collecting everything you might want to have proper views/visuals for it. The default skin only shows icon, fanart and title. Check the AEL thread for proper skin support or try out my own fork of Aeon Nox Silvo skin which is also available in my repositories.

Good luck and if you encounter something new, just post it here (but preferable with some reference to the log file in pastebin etc.)
Hi Christian, wondered if you could help - I just tried to install your repo (both the master and dev ones) and I get a failed install. Just installed a completely different repo and it all installed fine. I'm on Matrix 19.4 (2nd April build). Any ideas? Am I installing the wrong one?

Also, part of the reason I was looking to use AKL is because I use AEL at the moment and I'm trying to have a section for Sega Model 2 and Model 3 games in one - I did manage this some years ago with AEL by having a main application set for all games and then going into each M3 game and applying a different application. But I've been trying this again recently and the alternative application option doesn't seem to work - I was going to post on the main AEL thread about this and then saw your fork and it sounded as if I might be able to do what I want with AKL, would that be correct?

Many thanks
Pages: 1 2 3