Kodi Community Forum
[RELEASE] Rom Collection Browser - Browse and launch emulator game ROMs - 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: [RELEASE] Rom Collection Browser - Browse and launch emulator game ROMs (/showthread.php?tid=70115)



- interhak - 2010-10-23

Hello all!
Is there any way to download a complete build of Database with all videos, boxarts and roms?) Its rly very difficult to compare it myself. I think someone have already done his database, and it would be great to upload this on torrent...


- hikaricore - 2010-10-24

interhak Wrote:Hello all!
Is there any way to download a complete build of Database with all videos, boxarts and roms?) Its rly very difficult to compare it myself. I think someone have already done his database, and it would be great to upload this on torrent...

What the hell are you babbling about?


- interhak - 2010-10-24

hikaricore Wrote:What the hell are you babbling about?

ahaha...) sry for my einstein, i am from Ukraine and english is not our vernacular
But we like console games too))


- malte - 2010-10-24

@interhak: no problem not to talk a good english (me too), but if somebody asks you what you are talking about you could try to explain your request once again in other wordsSmile

If I understand you correct:
Uploading a preconfigured database would not make any sense. You will need the exact same data and roms on the exact same place on your HDD as it is in the database. RCB only imports the paths to the data, not the data itself.

What do you mean with "Its rly very difficult to compare it myself"?


- interhak - 2010-10-24

malte Wrote:@interhak: no problem not to talk a good english (me too), but if somebody asks you what you are talking about you could try to explain your request once again in other wordsSmile

If I understand you correct:
Uploading a preconfigured database would not make any sense. You will need the exact same data and roms on the exact same place on your HDD as it is in the database. RCB only imports the paths to the data, not the data itself.

What do you mean with "Its rly very difficult to compare it myself"?

"to compare" - that was a wrong word, i meant "to comprise"(and mb this one wrong too...)

U know, i need a completed database, not only a config.xml with all paths, but a full build with all roms, boxarts, emulators, videos and synopsis. Like that was in example "Testdata 0.6.x.zip", where all waht i must to do - just to replace PathToTestData. But There are only few games for Amiga and SNES. I think there must be a full collection with 100gb+, dont u think? Like Hyperspin Project, where u can download complete rom collection(about 1tb on some torrents)


- malte - 2010-10-25

Please don't ask for roms in this thread.

You can get a lot of meta data for your games with the latest version. You just have to replace some paths in config.xml like explained here. Example config.xml can be found here.

Next version should be much easier to configure but I will need some more days to complete it.


- malte - 2010-10-26

Here is a new preview version. Still work in progress and not the one that should go into the repo. But it would be great if some of you could try it out and leave your comments here. This version is not compatible with the previous ones. If you want to try it out, you have to delete your current "MyGames.db". I am planning to add an automatic db update to the release that will go into the repo. I hope your old db will work with the next release again.

Changes:
  • don't import settings to database anymore: all settings will be read at startup from config.xml
  • moved global settings to settings.xml (editable via addons settings ui)
  • refactoring of config.xml
  • only scrape information of games that are not already in database
  • scrapers are now shipped with RCB, you don't have to download them manually
  • bugfix (Windows only): launch emulators with whitespaces in path

This is the new structure of config.xml:
Code:
<config>    
    <RomCollections>        
        <RomCollection id="1" name="SNES">            
            <emulatorCmd>C:\Program Files\Emulatoren\zsnesw151\zsnesw.exe</emulatorCmd>
            <emulatorParams>-m "%ROM%"</emulatorParams>
            <romPath>PathToRoms\*.zip</romPath>
            <mediaPath type="boxfront">PathToArtwork\SNES\boxfront\%GAME%.*</mediaPath>
            <mediaPath type="boxback">PathToArtwork\SNES\boxback\%GAME%.*</mediaPath>
            <mediaPath type="screenshot">PathToArtwork\SNES\screenshot\%GAME%.*</mediaPath>
            <mediaPath type="cartridge">PathToArtwork\SNES\cartridge\%GAME%.*</mediaPath>
            <searchGameByCRC>True</searchGameByCRC>
            <descFilePerGame>True</descFilePerGame>
            <imagePlacing>gameinfobig</imagePlacing>
            <scraper name="thevideogamedb.com"/>
            <scraper name="mobygames.com" platform="15" replaceKeyString=" III, II" replaceValueString=" 3, 2"/>
            <scraper name="giantbomb.com" replaceKeyString=" III, II" replaceValueString=" 3, 2"/>
        </RomCollection>
        <RomCollection id="2" name="Sega 32">            
            <emulatorCmd>C:\Program Files\Emulatoren\Fusion364\Fusion.exe</emulatorCmd>
            <emulatorParams>"%ROM%"</emulatorParams>
            <romPath>PathToRoms\*.zip</romPath>
            <mediaPath type="boxfront">PathToArtwork\Sega32\boxfront\%GAME%.*</mediaPath>
            <mediaPath type="boxback">PathToArtwork\Sega32\boxback\%GAME%.*</mediaPath>
            <mediaPath type="screenshot">PathToArtwork\Sega32\screenshot\%GAME%.*</mediaPath>
            <mediaPath type="cartridge">PathToArtwork\Sega32\cartridge\%GAME%.*</mediaPath>
            <searchGameByCRC>True</searchGameByCRC>
            <descFilePerGame>True</descFilePerGame>
            <imagePlacing>gameinfobig</imagePlacing>
            <scraper name="thevideogamedb.com"/>
            <scraper name="mobygames.com" platform="21" replaceKeyString=" III, II" replaceValueString=" 3, 2"/>
            <scraper name="giantbomb.com" replaceKeyString=" III, II" replaceValueString=" 3, 2"/>
        </RomCollection>
    </RomCollections>
    <FileTypes>
        <FileType id="1" name="boxfront">
            <type>image</type>
            <parent>game</parent>
        </FileType>
        <FileType id="2" name="boxback">
            <type>image</type>
            <parent>game</parent>
        </FileType>
        <FileType id="3" name="cartridge">
            <type>image</type>
            <parent>game</parent>
        </FileType>        
        <FileType id="4" name="screenshot">
            <type>image</type>
            <parent>game</parent>
        </FileType>        
    </FileTypes>
    <ImagePlacing>
        <fileTypeFor name="gameinfobig">
            <fileTypeForGameList>boxfront</fileTypeForGameList>
            <fileTypeForGameListSelected>boxfront</fileTypeForGameListSelected>            
            <fileTypeForMainViewBackground>boxfront</fileTypeForMainViewBackground>
            <fileTypeForMainViewGameInfoBig>screenshot</fileTypeForMainViewGameInfoBig>            
            <fileTypeForGameInfoViewBackground>boxfront</fileTypeForGameInfoViewBackground>
            <fileTypeForGameInfoViewGamelist>boxfront</fileTypeForGameInfoViewGamelist>
            <fileTypeForGameInfoView1>boxfront</fileTypeForGameInfoView1>
            <fileTypeForGameInfoView2>boxback</fileTypeForGameInfoView2>
            <fileTypeForGameInfoView3>cartridge</fileTypeForGameInfoView3>
            <fileTypeForGameInfoView4>screenshot</fileTypeForGameInfoView4>            
        </fileTypeFor>
    </ImagePlacing>
    <Scrapers>
        <Site name="thevideogamedb.com">
            <Scraper parseInstruction="01 - thevideogamedb.xml" source="http://thevideogamedb.com/API/GameDetail.aspx?apikey=%VGDBAPIKey%&amp;crc=%CRC%"/>
        </Site>        
        <Site name="giantbomb.com">
            <Scraper parseInstruction="03.01 - giantbomb - search.xml"
            source="http://api.giantbomb.com/search/?api_key=%GIANTBOMBAPIKey%&amp;query=%GAME%&amp;resources=game&amp;format=xml"
            returnUrl="true" replaceKeyString="%REPLACEKEYS%" replaceValueString="%REPLACEVALUES%"/>
            <Scraper parseInstruction="03.02 - giantbomb - detail.xml" source="1"/>
        </Site>
        <Site name="mobygames.com">
            <Scraper parseInstruction="04.01 - mobygames - gamesearch.xml"
            source="http://www.mobygames.com/search/quick?game=%GAME%&amp;p=%PLATFORM%" returnUrl="True" replaceKeyString="%REPLACEKEYS%" replaceValueString="%REPLACEVALUES%"/>
            <Scraper parseInstruction="04.02 - mobygames - details.xml" source="1"/>
            <Scraper parseInstruction="04.03 - mobygames - coverlink.xml" source="1" returnUrl="True"/>
            <Scraper parseInstruction="04.04 - mobygames - coverart.xml" source="2"/>
            <Scraper parseInstruction="04.05 - mobygames - screenshotlink.xml" source="1" returnUrl="True"/>
            <Scraper parseInstruction="04.06 - mobygames - screenshotoriginallink.xml" source="3" returnUrl="True"/>
            <Scraper parseInstruction="04.07 - mobygames - screenshots.xml" source="4"/>
        </Site>
    </Scrapers>
</config>
To get this working, just replace PathToRoms and PathToArtwork with your real paths. If you want to add new RomCollections, just copy a complete RomCollection entry and adjust the paths. Also check the platform id that is used by the mobygames scraper. If you are not satisfied with the scraping behaviour you can delete or reorder the scraper elements in RomCollection.


I decided against splitting it up in several files. Some global settings (log level, caching option, use solo-mode, ...) have been moved to settings.xml and are editable via settings ui. Consoles have been removed completely. The name of the RomCollection will be used to fill the Console filter from now on. EmulatorCmd has been split up in emulatorCmd and emulatorParams.

Most things in config.xml should be self explanating and already known from previous versions. New is that RomCollection and FileType have an attribute "id". This is used as a reference from your configuration file to the games and files in MyGames.db. With this you can change the name of a RomCollection without messing up the db. But never change the id without knowing what you doSmile.

The idea behind this new structure is to ship RCB with preconfigured FileTypes, ImagePlacing and Scrapers and let the user (or soon a settings ui) only change some properties in RomCollection.


Impressed - carabalb - 2010-10-26

Wow I'm very impressed. Much cleaner and much more intuitive. Looking forward to testing it out.


- hikaricore - 2010-10-26

Awesome as usual.
I've not had time to rebuild my library yet but it sounds like it will go much more smoothly in the new build.
All it needs is a favourites function and it will replace my old mythgame setup completely. ^_^


- carabalb - 2010-10-27

Is any one else getting weird html code when they scrape games. A lot of my game names look like this: YOSHIX&#;X27S SAFARI

@Malte: Very good release. Scraping is still a little slow but besides the weird characters it's working well so far and setting things up was a lot faster. I did want to ask you about something that has been bugging me for a while, do you have any plans on changing the top and bottom menu in the future? It can be a little confusing to navigate at times especially when switching views. Any reason why everything couldn't be combined in one menu, possibly on the left like the other xbmc menus?


- rausch101 - 2010-10-27

carabalb Wrote:Is any one else getting weird html code when they scrape games. A lot of my game names look like this: YOSHIX&#;X27S SAFARI

the ' in Yoshi's Safari is what's causing that. i think it's an easy fix


- malte - 2010-10-27

@hikaricore: Favourites are on my list since the first release but they have always been displaced by other issues. But I am sure they will come one day.

@carabalb: I have noticed and already fixed these HTML codes. I will upload a new version soon.

I noticed two more scraping issues:
1) The thevideogamedb scraper had a bug and does not scrape any images. This is already fixed.
2) The giantbomb scraper is a bit inaccurate. It sometimes returns action or title screenshots as boxfront and it does not check for the correct console when it downloads images. So you may get N64 covers for SNES games or something like this. I can fix the second issue (platform specific images) but with their current API there is no chance to get a 100% correct image type (boxfront, screenshot, ...) from giantbomb.

I worry that scraping will stay slow with the next releases. Downloading web sites and images takes some time and in the default configuration RCB will try to get content from three different sites in a row (number will rather increase with the next releases). Doing this parallel in separate threads would be very difficult to implement. You can delete some of the scrapers from your RomCollection, this will save time but maybe you will miss some data that would have been scraped by this one.

About navigation:
It is annoying me too. I opened the UI 10.000 times and I still move to the wrong directionSmile. I will try to rework the default skin when I am done with configuration and scraping but I don't think there will be much improvement of navigation. Navigation and filtering in RCB is different from XBMCs standard because I wanted to have combined filters. In XBMC you can filter by Artist OR Genre but not both (or maybe I just did not find a way how to do this?). Game libraries are often much bigger than movie libraries and filtering for a console can leave you with 1000 entries, so I wanted to have a search for console AND genre etc. But this needs all filters in a row (horizontal or vertical does not matter) and you will navigate in one direction to change filter settings and in the other direction to jump to the next filter. Accessing the filters (e.g. from gamelist) must always be done with navigating in the opposite direction than browsing the list (left/right in Info2 view, up/down in Thumbs or Info view). This is confusing but I don't see a chance to change this behaviour. Or is there another way I just don't see?

What may work is getting rid of the bottom menu. There will be a popup menu in one of the next releases because I want to add more options like "Add Rom Collection", "Edit Rom Collection", ... and there is not enough space to add them all to the bottom menu. Maybe I will move the "Change View" button to the top menu or context menu and remove the bottom menu completely. I hope this will reduce confusion a bit.


- ameinild - 2010-10-27

Is there any way to install the emulators with apt-get on XBMC live, does anyone know?


- Flomaster - 2010-10-27

ameinild Wrote:Is there any way to install the emulators with apt-get on XBMC live, does anyone know?

yup....

http://forum.xbmc.org/showthread.php?tid=73428

-=Jason=-


- dunz0r - 2010-10-27

How does the whole "skinning" process work? I feel it must be a bit of extra work to make a RCB-skin for each skin in Xbmc. Couldn't it just use the defaults? If it's only python/xml that does this I could probably whip it up myself.