Skip to content

3. Create your own lists

Zach Morris edited this page Mar 14, 2019 · 7 revisions

Overview

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).

Create a Favorites List

  1. Bring up the context menu for the desired game (by pressing C on your keyboard, or right clicking with your mouse)

  2. Select "Add to IAGL Favorites"

  3. 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.

Edit Favorites Metadata

  1. Bring up the context menu for the desired Favorites List (by pressing C on your keyboard, or right clicking with your mouse)

  2. Select "Update Favorite Metadata"

  3. 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.

Create Lists manually / Outside of Kodi

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 Default Lists

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.

Schema

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