3. Create your own lists
You can create your own game lists for use with this addon either automatically (while your browsing games in Kodi), or manually (by editing xml files).
-
Bring up the context menu for the desired game (by pressing C on your keyboard, or right clicking with your mouse)
-
Select "Add to IAGL Favorites"
-
Follow the prompts to either create a new list, or add the game to an existing list.
Thats it! Next time IAGL is restarted, your list will show up.
-
Bring up the context menu for the desired Favorites List (by pressing C on your keyboard, or right clicking with your mouse)
-
Select "Update Favorite Metadata"
-
Follow the prompts to update your list. You can update the following info:
- Title
- Author (your name or pseudonym)
- Description / Plot
- Thumbnail / Fanart / Banner / Logo - Enter a URL
- Video Trailer - Enter a YouTube URL
Thats it! Next time IAGL is restarted, your lists metadata will be updated.
You can manually create an xml file by following the format below. After you've created your file, simply save it to the following location:
..path_to_userdata/addon_data/plugin.program.iagl/dat_files/
In order to create your own list, it's probably easiest to start with one of the default xml files and edit as you see fit.
If you've edited an existing list, and you have "Cache Game Lists and Save History" selected ON, you'll need to select "Refresh Archive Listing" from the addon to refresh the list you edited.
IAGL is shipped with as many 'default' lists as possible. I try to make a games list for every system that Retroarch supports, and has an archive available. You can see all the default lists here
Some additional notes on the default lists:
-
The addon is 'shipped' with all of the dat files in the folder:
..path_to_addons/plugin.program.iagl/resources/data/dat_files/
-
After you start IAGL the first time, or start an updated version of IAGL for the first time, the game lists are reviewed against a users existing setup and moved if necessary to the following folder:
..path_to_userdata/addon_data/plugin.program.iagl/dat_files/
The xml files are then used/edited/etc from the userdata folder. This is to ensure your game list settings are not overwritten every time the IAGL addon is updated. If the addon finds an update version of a game list, it will prompt the user to ask if they want to update. Note if an xml file is updated, any settings that were present aren't copied over.
The xml files which define what games are listed for each archive follow the standard MAME listxml format, but it adds a lot of extra media information used only by this plugin.
The schema used, along with information for each xml tag is as follows:
<datafile>
<header>
<emu_name>Name of the Archive</emu_name>
<emu_description>Description of Game Archive</emu_description>
<emu_category>Categories, comma seperated, that this archive will show up in</emu_category>
<emu_version>version of the archive xml file</emu_version>
<emu_date>date of the archive xml</emu_date>
<emu_author>Author of the list, will show up as Writer in Kodi</emu_author>
<emu_visibility>visible or hidden</emu_visibility>
<emu_homepage>homepage reference for the archive/emulator</emu_homepage>
<emu_baseurl>https://archive.org/download/</emu_baseurl>
<emu_launcher>retroplayer</emu_launcher>
<emu_default_addon>none</emu_default_addon>
<emu_ext_launch_cmd>none</emu_ext_launch_cmd>
<emu_downloadpath>default</emu_downloadpath>
<emu_postdlaction>post download action for the archive</emu_postdlaction>
<emu_comment>Comment for archive, will show up as plot in Kodi</emu_comment>
<emu_thumb>http://path_to_emulator_thumbnail</emu_thumb>
<emu_banner>http://path_to_emulator_banner</emu_banner>
<emu_fanart>http://path_to_emulator_fanart</emu_fanart>
<emu_logo>http://path_to_emulator_logo</emu_logo>
<emu_trailer>YouTube ID for emulator trailer</emu_trailer>
</header>
<game name="Game Name">
<description>Game Description</description>
<rom name="Game Filename" size="Game Filesize"/>
<emu_command>Unique Command for Game</emu_command>
<videoid>Youtube ID</videoid>
<plot>Game Plot</plot>
<genre>Game Genre</genre>
<nplayers>Number of Players</nplayers>
<studio>Game Studio</studio>
<releasedate>Game Release Date</releasedate>
<year>Game Release Year</year>
<rating>Game Rating (Similar to IMDB Rating</rating>
<ESRB>Game Rating (M for Mature, etc)</ESRB>
<perspective>2D, 3D, Side-Scrolling, etc</perspective>
<emu_command>Unique Arguments to send to the emulator (See DOSBOX for examples)</emu_command>
<rom_override_postdl>Unique game postdl command, same exact thing as emu_postdlaction, but the post DL action will use this instead</rom_override_postdl>
<rom_override_downloadpath>Unique game download path, same exact thing as emu_downloadpath, but the DL location will be this instead</rom_override_downloadpath>
<boxart1>http://path_to_boxart_image_1</boxart1>
<boxart1>http://path_to_boxart_image_1</boxart1>
...
<boxart10>http://path_to_boxart_image_10</boxart10>
<snapshot1>http://path_to_game_snapshot_image_1</snapshot1>
...
<snapshot10>http://path_to_game_snapshot_image_1</snapshot10>
<banner1>http://path_to_game_banner_image_1</banner1>
...
<banner10>http://path_to_game_banner_image_1</banner1>
<clearlogo1>http://path_to_game_logo_image_1</clearlogo1>
...
<clearlogo10>http://path_to_game_logo_image_10</clearlogo10>
</game>
</datafile>
Tag definitions are as follows. Note some tags are required within the file:
Emulator XML Tags:
XML Tag | Required / Optional | Description |
---|---|---|
emu_name | Required | The name of the game system / emulator |
emu_description | Required | Description of the game system / emulator |
emu_category | Required | Categorization of the game system / emulator, used for sorting within Kodi |
emu_version | Required | Version value for your xml file - no specific format required |
emu_date | Required | Date value for your xml file - mm/dd/yyyy |
emu_author | Required | Author for the xml file or the internet archive |
emu_homepage | Required | Web URL for the xml file author or the internet archive |
emu_baseurl | Required | This is the base URL for the game files. For example, if the full web URL to a game within the archive is: http://archive.org/download/GAME%20COLLECTION/GAME%20COLLECTION.zip%2FGAME_ROM.zip, then the base URL would be: http://archive.org/download/GAME%20COLLECTION/GAME%20COLLECTION.zip%2F Note the URL quoting should match exactly what the archive provides in a normal web browser |
emu_launcher | Required | Default is: retroplayer, secondary option is: external, however this value can be modified within the addon |
emu_ext_launch_cmd | Required | Default is: none, secondary option would be the command line text used to launch the Game using the desired program. Further wildcard values available for the external command are: %APP_PATH% - the path to the executable on your computer replaced when executed in the addon, %ROM_PATH% - the Game path variable, replaced when executed in the addon |
emu_downloadpath | Required | Default is: default, secondary option is the path location on the computer to save files to. This value can be modified within the addon |
emu_postdlaction | Required | Default is: none, secondary option is set within the addon |
emu_comment | Required | Comment viewed as plot in Kodi for the archive |
emu_thumb | Required | Thumbnail image used for the archive |
emu_banner | Required | Banner image used for the archive |
emu_fanart | Required | Fanart image used for the archive |
emu_logo | Required | Logo image used for the archive |
emu_trailer | Required | YouTube ID value for the trailer used for the archive |
Game XML Tags:
XML Tag | Required / Optional | Description |
---|---|---|
game name="Game NAME" | Required | The name of the game |
description | Required | The name or a description of the game to be listed in the archive |
plot | Optional | Game description / plot to be listed on the game preview page |
genre | Optional | Game genre to be listed on the game preview page |
studio | Optional | Game studio to be listed on the game preview page |
players | Optional | Max number of players for the game to be listed on the game preview page |
releasedate | Optional | Game release date in MM/DD/YYYY format to be listed on the game preview page |
year | Optional | Game release year in YYYY format to be listed on the game preview page |
Rating | Optional | Game rating, typically out of 10 stars, similar to what TheGamesDB uses |
ESRB | Optional | E for Everyone, M for Mature, etc. See here |
perspective | Optional | 2D, 3D, side-scrolling, vertical, etc |
videoid | Optional | Youtube video ID for game trailer or preview |
emu_command | Optional | Unique command to be utilized by the addon in launching the game |
rom_override_cmd | Optional | Unique command to be utilized by the addon in launching the game, this will override emu_ext_launch_cmd and should be the same format |
rom_override_postdl | Optional | Unique command to be utilized by the addon in actions on the file post-download, this will override emu_postdlaction and should be the same format |
rom_override_downloadpath | Optional | Unique command to be utilized by the addon in actions on the file download path, this will override emu_downloadpath and should be the same format |
boxart1 to boxart10 | Optional | Game Art: Boxarts show up in Kodi list and on the game preview page |
snapshot1 to snapshot10 | Optional | Game Art: Game screenshots show up on the game preview page |
fanart1 to fanart10 | Optional | Game Art: Game fan arts show up on the game preview page |
banner1 to banner10 | Optional | Game Art: Game banners |
clearlogo1 to clearlogo10 | Optional | Game Art: Game clear logos |