Kodi Community Forum
IARL - Deprecated - Printable Version

+- Kodi Community Forum (https://forum.kodi.tv)
+-- Forum: Support (https://forum.kodi.tv/forumdisplay.php?fid=33)
+--- Forum: Add-on Support (https://forum.kodi.tv/forumdisplay.php?fid=27)
+---- Forum: Game Add-ons (https://forum.kodi.tv/forumdisplay.php?fid=291)
+---- Thread: IARL - Deprecated (/showthread.php?tid=231339)



RE: Internet Archive ROM Launcher - thibs - 2016-09-29

(2016-09-28, 22:15)zachmorris Wrote:
(2016-09-28, 21:38)LupinSansei Wrote:
(2016-09-27, 21:13)zachmorris Wrote: You can use local collections. IARL will by default look for a local file first before it downloads. If the file is found locally, it will launch that instead. If it doesn't find it, it will download it.

If you want to use local files, ensure the following:
1) The game list of interest is pointed to download to the directory where your local files are saved
2) The local files are named exactly the same as the ones listed in the game list

See the addon settings for 'Game Already Exists Locally' and game list settings for 'Download Path'

You can also checkout AEL for launching games saved locally.
Thanks! I'll give both options a shot. Keep up the awesome work Smile

Just a little more detail. Here's how I'm using the addon for a all-in-one type gaming system:
  • I've created a folder for each system on my computer (nes, genesis, atari_2600, etc)
  • For each game list in IARL, I select 'Update Download Path' and point to the folder I made
  • Launch the game you want to play from IARL, the first time you play the game it will download the required files to the folder you pointed to
  • Now, the next time I want to play that game, just go and select the game again. The addon will see the required files already exist locally and launch the game directly

Version 1.5.7 is available for a few bug fixes.

Hey Zach, maybe you could make one sub-menu with the most recent games played or/and with all the games that was previously installed. I'm saying that because something, in a place without internet, I have to remember or check one by one, which game I already played.


RE: Internet Archive ROM Launcher - thibs - 2016-09-29

(2016-09-28, 22:15)zachmorris Wrote: Just a little more detail. Here's how I'm using the addon for a all-in-one type gaming system:
  • I've created a folder for each system on my computer (nes, genesis, atari_2600, etc)
  • For each game list in IARL, I select 'Update Download Path' and point to the folder I made
  • Launch the game you want to play from IARL, the first time you play the game it will download the required files to the folder you pointed to
  • Now, the next time I want to play that game, just go and select the game again. The addon will see the required files already exist locally and launch the game directly

Version 1.5.7 is available for a few bug fixes.

Also, when I try to download PS1 roms, it gives me an error of converting 7z. Here is the log:
Code:
11:02:29 2785.927979 T:1444353088  NOTICE: IARL:  Lets Play!
11:02:29 2785.930420 T:1444353088  NOTICE: /storage/.kodi/userdata/addon_data/plugin.program.iarl/.storage/
11:02:30 2786.297119 T:1444353088  NOTICE: [resources.lib.xbmcswift2b] Request for "/Emulator/PS1_Bestof_ZachMorris/Game/7.++Twisted+Metal+2" matches rule for function "get_selected_rom"
11:02:50 2807.063477 T:1444353088  NOTICE: IARL:  Download started for 7.  Twisted Metal 2
11:02:54 2810.484131 T:1444353088   ERROR: IARL:  There was an error converting the 7z files for 7.  Twisted Metal 2
11:03:00 2816.750000 T:1498412096   ERROR: COMXImageFile::GetCodingType error unsupported image format
11:03:01 2817.178711 T:1498412096   ERROR: Previous line repeats 1 times.
11:03:01 2817.178955 T:1498412096  NOTICE: LoadJpeg: unable to load http://www.mobygames.com/images/shots/l/286587-twisted-metal-2-playstation-screenshot-main-menu.jpg
11:03:01 2817.506836 T:1498412096 WARNING: JpegIO: Error 55: Not a JPEG file: starts with 0x%02x 0x%02x
11:03:02 2818.208496 T:1967357952   ERROR: GetDirectory - Error getting plugin://plugin.program.iarl/Emulator/PS1_Bestof_ZachMorris/Game/7.++Twisted+Metal+2
11:03:02 2818.212646 T:1967357952   ERROR: CGUIMediaWindow::GetDirectory(plugin://plugin.program.iarl/Emulator/PS1_Bestof_ZachMorris/Game/7.++Twisted+Metal+2) failed
11:03:02 2818.320801 T:1702728768  NOTICE: Thread BackgroundLoader start, auto delete: false
11:03:03 2819.898193 T:1625289792   ERROR: COMXImageFile::GetCodingType error unsupported image format
11:03:04 2820.189941 T:1625289792   ERROR: Previous line repeats 1 times.
11:03:04 2820.190186 T:1625289792  NOTICE: LoadJpeg: unable to load http://www.mobygames.com/images/shots/l/368882-twisted-metal-2-playstation-screenshot-main-menu-japanese.jpg
11:03:04 2820.343750 T:1625289792 WARNING: JpegIO: Error 55: Not a JPEG file: starts with 0x%02x 0x%02x
11:03:16 2832.887207 T:1794081856 WARNING: COMXImageFile::GetCodingType progressive images not supported by decoder
11:03:17 2833.427490 T:1794081856 WARNING: Previous line repeats 1 times.
11:03:17 2833.427979 T:1794081856  NOTICE: LoadJpeg: unable to load http://thegamesdb.net/banners/boxart/original/front/527-1.jpg
11:03:19 2835.829102 T:1702728768  NOTICE: Thread LanguageInvoker start, auto delete: false



RE: Internet Archive ROM Launcher - zachmorris - 2016-09-30

(2016-09-29, 16:10)thibs Wrote: Also, when I try to download PS1 roms, it gives me an error of converting 7z.

Some archives require user login. I'm guessing thats the issue. Enter login credentials for archive.org and it should work.

(2016-09-29, 14:44)thibs Wrote: Hey Zach, maybe you could make one sub-menu with the most recent games played or/and with all the games that was previously installed. I'm saying that because something, in a place without internet, I have to remember or check one by one, which game I already played.

I like the idea of last played. I'll look into it.


RE: Internet Archive ROM Launcher - LupinSansei - 2016-10-02

Another cool idea would be to be able to add posters and logos and easily select a download location for each system for local games if it isn't too much trouble. I'm still looking into RCB and AEL with no luck this one is still the best!


RE: Internet Archive ROM Launcher - thibs - 2016-10-02

(2016-10-02, 00:17)LupinSansei Wrote: Another cool idea would be to be able to add posters and logos and easily select a download location for each system for local games if it isn't too much trouble. I'm still looking into RCB and AEL with no luck this one is still the best!

You already can. Press C or right click and you'll see the option


RE: Internet Archive ROM Launcher - LupinSansei - 2016-10-02

Yeah, I did that and selected a poster/cover but it didn't seem to change. Then again maybe I have to delete my texture cache file.


RE: Internet Archive ROM Launcher - zachmorris - 2016-10-04

(2016-10-02, 22:57)LupinSansei Wrote: Yeah, I did that and selected a poster/cover but it didn't seem to change. Then again maybe I have to delete my texture cache file.

Artwork is defined in the xml files for each game list. The lists are in the folder:
...path_to_Kodi_userdata/addon_data/plugin.program.iarl/dat_files/

My overall goal is to have artwork and metadata set so you don't have to mess with the files or scraping. That being said, if you find errors/omissions/additions that should be made let me know (submit an issue for any suggested changes if possible)

And as thibs mentioned you can already change where the game files are saved to, see Game Archive settings here.


RE: Internet Archive ROM Launcher - altinertia - 2016-10-04

Hi there, love this, i have a large collection of roms and its nice that i can intergrate it all into my sky q kodi build. it rounds everything off nicely!"!!

however, im having issue with the ZX Spectrum roms/setup. i have the retroarch setup on my pc and kodi runs on pc also so everything is easy. the rom list for the speccy is downloading an .ipf fole extension (im presuming from archive.org?) fuse does not support this format (i havent found one that does). i have full romsets for speccy in lots of different formats but none with this extension. is there a way i can change the program to either download a .z80 or .txz ? i have my download folder set to my txz rom folder but, as the name formats are fifferent, it doesnt see what i have and still downloads the .ipf.

either that or, a way of changing the list of available roms from the app to reflect what i have on my hard drive?

thanks for this app, makes an old gamer happy Smile


RE: Internet Archive ROM Launcher - zachmorris - 2016-10-06

(2016-10-04, 18:18)altinertia Wrote: Hi there, love this, i have a large collection of roms and its nice that i can intergrate it all into my sky q kodi build. it rounds everything off nicely!"!!

however, im having issue with the ZX Spectrum roms/setup. i have the retroarch setup on my pc and kodi runs on pc also so everything is easy. the rom list for the speccy is downloading an .ipf fole extension (im presuming from archive.org?) fuse does not support this format (i havent found one that does). i have full romsets for speccy in lots of different formats but none with this extension. is there a way i can change the program to either download a .z80 or .txz ? i have my download folder set to my txz rom folder but, as the name formats are fifferent, it doesnt see what i have and still downloads the .ipf.

either that or, a way of changing the list of available roms from the app to reflect what i have on my hard drive?

thanks for this app, makes an old gamer happy Smile

Interesting that there's a set of game files that aren't file compatible with the emulator. Here's the issue with it. I hadn't actually tried ZX Spectrum since the FUSE core isn't available for OSX. I see a TOSEC archive thats probably a better default to use, so I'll work on rescraping a game list from that.


RE: Internet Archive ROM Launcher - UKVaper - 2016-10-10

Yup, the TOSEC roms are completely compatible with fuse, is there a way to manually edit the scraper to use that set instead?


RE: Internet Archive ROM Launcher - chewz - 2016-10-10

I can't work out how to run dosbox with IARL. I've got the core with retroarch, downloaded a game but it never starts, much like it wouldn't if it was missing a bios. I don't think any bios is needed with dos? Anyone have an idea?


RE: Internet Archive ROM Launcher - zachmorris - 2016-10-11

(2016-10-10, 12:11)UKVaper Wrote: Yup, the TOSEC roms are completely compatible with fuse, is there a way to manually edit the scraper to use that set instead?

There is no scraper in IARL, the metadata / artwork / etc is all pre-scraped (by me) and is included. I'll just have to redo it with the TOSEC archive. This isn't a problem, except for the fact TOSEC has 15 different versions of every game and their naming conventions aren't very standard - makes programming a scraper pretty frustrating Undecided


RE: Internet Archive ROM Launcher - thibs - 2016-10-14

Some others bugs I found:
1- 'Search' is not working. I select a game and a console, but after a while kodi restarts
2- Cavestory is not recognizing the download. I have to download every time that I want to play it.


RE: Internet Archive ROM Launcher - altinertia - 2016-10-14

(2016-10-11, 02:50)zachmorris Wrote:
(2016-10-10, 12:11)UKVaper Wrote: Yup, the TOSEC roms are completely compatible with fuse, is there a way to manually edit the scraper to use that set instead?

There is no scraper in IARL, the metadata / artwork / etc is all pre-scraped (by me) and is included. I'll just have to redo it with the TOSEC archive. This isn't a problem, except for the fact TOSEC has 15 different versions of every game and their naming conventions aren't very standard - makes programming a scraper pretty frustrating Undecided

your right about that. since posting here, ive thrown myself into python as id never tried to write it before. i can see why you went with the no intro set. ive been playing around and built something from the ground up using the tosec dat pack. the difference in the spectrum pack is that, no intro seems to use the identifier as the downloaded file and tosec uses the description. but tosec dat files dont have the identifier filename in the dat. so you cant really use one set to reference the other.


it was confusing at first but ive managed to get round it. i didnt want to change your code zacmorris however, i did have a good look at it to help me on my way.

Code:
rom_source_url = "http://archive.org/download/Sinclair_ZX_Spectrum_TOSEC_2012_04_23/Sinclair_ZX_Spectrum_TOSEC_2012_04_23.zip/"

user_agent = 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1468.0 Safari/537.36'
output = ""

rom_path = r"I:\Retro/Sinclair/ZX Spectrum/Games/[Z80]/"
cache_folder = r"I:\retro_spec/cache/"
rom_ext = ".z80"
filename = "3DC (1987)(Encore)"

master_dat_path = addon.getAddonInfo('path')+"/resources/lib/TOSEC"
spec_source_ext = "Sinclair ZX Spectrum [TOSEC]/Games/[Z80]/"+ filename + ".zip"

filename_xml = filename+"_meta.xml"
screenshot_gif = "00_coverscreenshot.jpg"
full_filename = ""
full_filename = filename+rom_ext
sorted_url = ""
sorted_url = rom_source_url + urllib.quote(spec_source_ext)
# we are going to use TOSEC for all our ROM management needs. Its pretty much a complete set of dats for everything.  So
# create a list of folders in the TOSEC folder
master_dat_path_contents = os.listdir(master_dat_path) # returns list




# This opens the textviewer window, 10147 is the ID for a custom text window
xbmc.executebuiltin("ActivateWindow(10147)")

# Create a variable called 'controller' and assign it to the kodi command xbmcgui.Window(10147)
controller = xbmcgui.Window(10147)

# Make kodi sleep for a short while, I've set to 500ms but on some slower devices you may possibly need to increase that.
# It needs time to initialise the window otherwise any following bit of code where we manipulate the window will fail.
xbmc.sleep(500)

# We're now telling Kodi to get control of the text box and change the header (1)
controller.getControl(1).setLabel('DufishROM Manager')
#controller.setCoordinateResolution(self, int resolution)

#read dir of rom_path.  this will become some kind of caching, xml or other as to not keep reading the dir each time a rom is loaded
rom_path_contents = []
#rom_path_contents = os.listdir(cache_folder) # returns list
rom_path_contents = os.listdir(rom_path) # returns list

success = ""
if rom_path_contents:
    output += "contents retrieved\n"
    #xbmcgui.Dialog().ok(addonname, "echo 1")

current_item = ""

for current_item in rom_path_contents:
    #output += current_item + "\n" + full_filename + "\n"
    if current_item in (full_filename):
        success = "True"
        output += "Rom found locally in " + rom_path + full_filename+"\n"
        break
    else:
        success = "False"

if success == "False":

    from StringIO import StringIO
    # define downloader class
    class download_tools():
        def Downloader(self, url, dest):
            urllib.urlretrieve(url, dest)

        def remove(self, file_):
            os.remove(file_)


        def extract(self,file_tar, destination):
            tar = tarfile.open(file_tar)
            tar.extractall(destination)
            tar.close()


    dl_rom = download_tools().Downloader(sorted_url,cache_folder+filename+".zip")
    #xbmcgui.Dialog().ok(addonname,"ok: "+cache_folder+filename+rom_ext)

    destDir = mktemp()

    thefile = ZipFile(cache_folder + filename + ".zip")
    thefile.extractall(rom_path)
    thefile.close()
    download_tools().remove(cache_folder + filename + ".zip")
   # dl_meta =download_tools().Downloader(rom_source_url + filename + "/" + filename_xml , cache_folder + filename_xml)
    #dl_screenshot = download_tools().Downloader(rom_source_url + filename + "/" + screenshot_gif, cache_folder + screenshot_gif)
    output += "Rom not found locally, so downloaded to " + rom_path+"\n"
    output += "meta downloaded" + rom_path+"\n"
    output += "screenshot downloaded " + rom_path+"\n"

its messy but it does the trick ha! [/code]


RE: Internet Archive ROM Launcher - zachmorris - 2016-10-15

(2016-10-14, 14:30)thibs Wrote: Some others bugs I found:
1- 'Search' is not working. I select a game and a console, but after a while kodi restarts
2- Cavestory is not recognizing the download. I have to download every time that I want to play it.

#2 I can probably fix, but search is working for me. Can you provide a log of your issue?


This forum uses Lukasz Tkacz MyBB addons.