1. Setup - zach-morris/plugin.program.iagl GitHub Wiki
- Setup with Kodi Retroplayer
- Basic External Setup Instructions
- Setup with Android
- Configure Individual Archives
- Setup for Offline Gaming
- Setup for Netplay
IAGL should more or less work out of the box with Kodi RetroPlayer. The only real setup required is an archive.org account. You can sign up for an account for free here. An account is required to access some game files. On first launch, a setup wizard will auto-run.
For fast and easy setup, run the setup wizard.
By default, all game lists in IAGL should be set to launch with Retroplayer, so no additional steps are needed. Just select a game.
When selecting a game, if a compatible player is not yet installed, Kodi will automatically install the required retroplayer addon and any requried dependencies:
To choose and use an alternative game addon, you can install them from the official Kodi repository (in Kodi, select Settings / Addons / Install from Repository / Kodi Add-on Repository / Game Add-ons / Emulators
):
After installation, the addon will be avaiable as a choice to play a particular game. See configure individual archives for instructions on updating which addon is used to launch a game.
If there isn't a compatible player for the game in Kodi for your particular system, you'll get a message stating it can't find a compatible player. Availability is dependant on your OS. Some OS's dont have every game addon and some do - mainly due to ongoing development of game addons in Kodi.
For Linux users, the game emulator addons are no longer available in an offical ppa repository. You can either build them yourself, or alternatively, use the Kodi flatpak installation. A list of addons available for each release of Kodi can be found here. In addition, you can try the unoffical / experimental kodi game addons using the kodi_libretro_buildbot_game_addons repository.
Note that some systems require BIOS files to function, and that includes the game addons for libretro. The BIOS files required are the same files listed in the libretro wiki. The files need to be installed in the appropriate game addon userdata system folder. BIOS files are required for some game addons - this depends on the addon. Read the libretro wiki linked above to determine if a particular addon requires BIOS files.
BIOS files must be placed in the appropriate userdata folder within Kodi.
Examples of addons that require BIOS files:
-
Genesis Plus GX (
game.libretro.genplus
) requires these files to be placed in...path_to_userdata/addon_data/game.libretro.genplus/resources/system/
-
Reicast (Dreamcast/Naomi) emulator (
game.libretro.reicast
) requires these files to be placed in...path_to_userdata/addon_data/game.libretro.reicast/resources/system/dc/
-
Beetle PSX (Sony Playstation 1) emulator (
game.libretro.beetle-psx
) requires these files to be placed in...path_to_userdata/addon_data/game.libretro.beetle-psx/resources/system/
- An optional addon to help you place the BIOS files in the appropriate directories for Kodi Retroplayer can be found here.
Huzzah! Now we can play some games in Kodi
IAGL is by default setup to launch games using Kodi RetroPlayer. You can change this to an external emulator (like Retroarch or MAME or Dolphin). First of course you need to install and setup those emulators. The steps listed below focus on Retroarch, but this should be easily followed for other emulators as well.
There are many tutorials for getting RetroArch setup. See example videos here and here.
For IAGL to launch a game, you should have:
-
RetroArch installed
-
A RetroArch core to play the game system you want. Example Nestopia core will play NES games. You need a core for every system you want to play.
-
BIOS files. See above.
-
(Optional/Recommended) Update Core Info Files, Assets, Autoconfig Profiles, Cheats, Databases, Overlays, Shaders from the Online Updater. In other words, update everything the retroarch online updater allows if you just installed Retroarch for the first time.
-
Verify the path to the retroarch application and retroarch config file. IAGL will read this file to gather information on your installation. The IAGL wizard will automatically find this file for most installations, but it's good to validate the correct file is found. If IAGL cannot automatically find the file, you may have to point IAGL to where it's located. In Retroarch, select
Settings / Directory / Configuration Files
. Make note of this path for use in IAGL:
- Again, please note that many Retroarch cores require BIOS files to run properly (did I mention this already?). The BIOS files must go into the
System/BIOS Directory
for Retroarch. I can't tell you where to get BIOS files. Google is your friend. Copy any and all required BIOS files into the RetroarchSystem/BIOS Directory
.
On first run, you have the option of setting up External Launching with Retroach with the setup wizard. During the prompts, ensure IAGL has either found the Retroarch application and configuration file (see steps above), or you can manually browse and point to the appropriate application install location and the retroarch configuration file.
Alternatively, you can open IAGL addon settings to set the retroarch app location and config file location (In Kodi, highlight the IAGL addon then Context Menu / Settings / Launching
):
Huzzah! Now we can play some games with Retroarch
IAGL is by default setup to launch games using Kodi RetroPlayer. You can change this to an external emulator (like Retroarch. First of course you need to install and setup Retroarch.
There are many tutorials for getting RetroArch setup. See example videos here and here.
For IAGL to launch a game, you should have:
-
RetroArch installed
-
A RetroArch core to play the game system you want. Example Nestopia core will play NES games. You need a core for every system you want to play.
-
BIOS files. See above.
-
(Optional/Recommended) Update Core Info Files, Assets, Autoconfig Profiles, Cheats, Databases, Overlays, Shaders from the Online Updater. In other words, update everything the retroarch online updater allows if you just installed Retroarch for the first time.
-
Identify the correct flavor of retroarch you are using. Most likely you're using
android
orandroid aarch64
. Correct identification of the app is necessary for IAGL to send the right commands. You can identify the flavor of Retroarch in settings. In Retroarch, selectSettings / Directory
. You'll see that most directories start withcom.retroarch
(Android) orcom.retroarch.aarch64
(Android aarch64) orcom.retroarch.ra32
(Android ra32). -
Verify the path to the retroarch application and retroarch config file. Android OS permissions restrict the ability for other programs to automatically query this file location, so you'll have to manually write down or copy the location in order to later enter it into IAGL settings (yes Android permissions are actually making you manually write this down 😖). In Retroarch, select
Configuration File / Save Current Configuration
. Make note of the path Retroarch prints out for use in IAGL:
- Verify the path to the retroarch cores and directory. Android OS permissions restrict the ability for other programs to automatically query this directory, so you'll have to manually write down or copy the location in order to later enter it into IAGL settings (yes Android permissions are actually making you manually write this down 😖). In Retroarch, select
Settings / Directory / Cores
. Make note of the cores path for use in IAGL:
-
Again, please note that many Retroarch cores require BIOS files to run properly (did I mention this already?). The BIOS files must go into the
System/BIOS Directory
for Retroarch. I can't tell you where to get BIOS files. Google is your friend. Copy any and all required BIOS files into the RetroarchSystem/BIOS Directory
. -
Choose a path accessible by both Retroarch and Kodi (a shared data directory). Due to Android OS restrictions, Kodi cannot (currently) share files with other applications. For that reason, you must download game files to a shared data directory. For example
storage/emulated/0/Download
. You must ensure both applications have access to this directory. Note: IAGL does not monitor or delete files from this folder. You must manually manage files and storage space in this directory.
On first run, you have the option of setting up External Launching with Retroach with the setup wizard. During the prompts, ensure IAGL has selected the appropriate Retroarch flavor (see steps above). Next, ensure IAGL has either found the configuration file automatically, or you may have to manually type in the location of the configuration file. After that, you will have to manually enter the cores path (see steps above). Finally, select the shared data directory to save game files to (see steps above).
Alternatively, you can open IAGL addon settings to set the retroarch app flavor, config file location, and cores directory (In Kodi, highlight the IAGL addon then Context Menu / Settings / Launching
):
Additional considerations for Android: Due to Android permissions, IAGL cannot automatically know which cores you have installed. IAGL picks a default for each game list, but if the core is not installed on your system, then launching will fail. You can either install all cores in Retroarch, or prior to launching, you can review and change what core is selected. See configure individual archives below for instructions.
Huzzah! Now we can play some games with Retroarch Android
For some users you'll want to tweak the setup some, or the default setup isn't to your liking.
👇 Read below for further instructions to configure individual archives 👇
Some users will want to tweak their setup. IAGL is setup so you can edit settings of each individual archive / game list. You can read more detail on all addon settings on the Addon Settings wiki page. The things you can modify for each game list include:
- The game list's launcher: Kodi Retroplayer or External Application
- The launch command: The Game Addon that will play the game (Kodi Retroplayer) or the core that will be used for External Retroarch installation or any other manually enterable command line of your choice
- Whether the game list is hidden or not: If you know you don't ever want to play games in a partilar list, you can hide the list and exclude it from browsing / search game list queries / randomly generated game list queries
- The download path: By default, the game list will download files to the IAGL userdata folder. An alternate download path can also be set in addon settings as the addon default folder. Alternatively, you can set the desired directory on a per-game list basis with this setting. See Setup for Offline Gaming below.
- The post-download command: By default, IAGL will process downloaded files so they can be automatically launched with the default emulator. Alternate compatible emulators may require the files be processed (or not processsed). You can change that behavior with this setting. It is not recommended this setting be changed unless you know for certain it is required for your emulator of choice.
- Reset the game list back to IAGL defaults: This will remove any previously set user settings.
To modify these settings:
- Highlight the game list of interest and use the Kodi
Context Menu
to bring up the options (right click or press C on your keyboard or press Y/Triangle on your controller).
In addition, you can also review all of the game list settings by selecting the View Game List Settings
context menu option.
When browsing inside a game list, the same context menu items are also available, but provide you a warning that you will change the settings for all games in the game list before the change is made.
By default, IAGL keeps only the required files to play a game while you're playing it. Once you exit the game, the files will be automatically purged. You can change this behavior in several ways:
- In IAGL settings
Context Menu / Settings / General
you can update theDownload Folder Size Limit
from the default to something larger. What you choose depends on the types of games you play and how often you play them. Once the folder size limit selected is hit, then all previously downloaded files are purged. - In IAGL settings,
Context Menu / Settings / Downloading / Download Advanced Settings
an Advanced/Expert setting is available allowing you to change the default folder to a different folder of your choosing. Note: IAGL does not monitor or delete files from this alternate folder. You must manually manage files and storage space in this directory. - For each individual game list, you can choose an alternate download folder. See configure individual archives above. Note: IAGL does not monitor or delete files from this alternate game list download folder. You must manually manage files and storage space in this directory.
If the folder size limit is increased, or an alternate folder is used, IAGL will first attempt to find the file locally before attempting to (re-)download the required files. You can also change the behavior of IAGL if a game file is found locally in IAGL settings Context Menu / Settings / General
you can update the If game already exists locally
setting.
When using Retroarch as the external launcher, IAGL can enable playing games with others via Netplay. Netplay can be enabled if:
- You have setup Retroarch in IAGL setttings
- You are a Linux / Windows / Mac OS / Non-Android User (Netplay commands are not exposed in Android)
To enable netplay:
- In IAGL settings
Context Menu / Settings / Netplay
, Enable Netplay - Select your Username Netplay Type. The recommendation is to use Discord as IAGL will use discord to assist in match making. Follow the prompts after selecting
Context Menu / Settings / Netplay / Discord User Account ID
to enable discord. Alternatively, you can manually enter any name you like (this will be displayed in the Retroarch Netplay Lobby).
To host a game:
- Browse to / highlight the game of choice
- Bring up the context menu and select
Launch as Netplay Host
To join a game in progress:
- Ensure the retroarch lobby is enabled in IAGL settings
Context Menu / Settings / Netplay
- From the IAGL front page, browse to Netplay, choose the game of interest.
If you would like to join a netplay game on your local LAN, there are advanced/expert addon settings that will allow you to set the local IP to connect to, and the Netplay Launch Action
to either connect to Retroarch netplay servers, or the local IP, or prompt at game launch for which action to take.
Note: In order for netplay to reliably work, both players must be playing with the same core, the same core version, and using the same game files. Ensure that you've setup your game list to launch with the same core as the host. Players both using IAGL can be reasonably assured they'd be using the same files.
Still having trouble with a specific game list? I'll do my best to capture gotchas and specific setup issues in the disussions listings here.
Now that you've setup game lists, and you're still thirsty for tweaking the setup of IAGL, move on to Addon Settings.