• Metadata Release Date cut off

    Help and Support
    1
    0 Votes
    1 Posts
    371 Views
    No one has replied
  • 0 Votes
    3 Posts
    750 Views
    S

    @rkoster Ah, Nice! I'll have to dig into the xml files for Carbon since that's what I'm using. I don't have much expertise in that area, but it doesn't look like it would be too much trouble with a little tinkering. Maybe someone who has done it on Carbon will chime in as well before I get a chance to.. :D

    Thanks!

  • 2 Votes
    6 Posts
    3k Views
    fluffypillowF

    Ok, took way too much time, but the Android keyboard should be fixed now.

  • 0 Votes
    3 Posts
    722 Views
    X

    Thanks, I'll try it!

  • 0 Votes
    11 Posts
    3k Views
    E

    This appears to be working for the artwork.

    If installed through RetroPie, first create symbolic link: sudo ln -s /opt/retropie/supplementary/skyscraper/Skyscraper /usr/local/bin/Skyscraper

    Command line example for SNES in the USA region with use with EmulationStation: Skyscraper -p snes -s screenscraper -u username:password --unattend --nohints --region us

    Command line options

    /retropie/configs/all/skyscraper/config.ini

    Config.ini options

    Config.ini region options

    EDIT: After the artwork is downloaded i was able to generate gamelist.xml.

  • Scraping help, not reading info from hdd

    Help and Support
    3
    0 Votes
    3 Posts
    450 Views
    C

    @mitu said in Scraping help, not reading info from hdd:

    gamelist.xml

    Thank you very much for your reply I have managed to fix it now!
    I have edited my original post and added the soloution at the bottom.

    much appreciated once again, and not to worry ive more questions on the way lol.

  • Boxart, Screenshot or Video?

    Help and Support
    13
    0 Votes
    13 Posts
    3k Views
    J

    Yes, I figured out about nesting layers, so I got the alignment working.
    I couldn't get the resizing of the wheel.png to work the way I wanted, so I just adjusted the 'box' so that it worked for the tallest wheel.png when they were all adjusted by width.
    It's not totally perfect but with such a variance in wheel.png sizes and shapes I think it looks pretty uniform.
    alt text
    alt text

    Now to run it on all the other systems and hope it comes out OK.

    Edit: Just tweaked the box so rather than having its own border in the png it just uses the stroke feature to match the border on the screen shot.

    Not thrilled with the banding that gets introduced with skyscraper.

  • 0 Votes
    2 Posts
    709 Views
    HurricaneFanH

    @webz0r I'm not sure how you would do this, but you don't need to worry about keeping the gamelist.xml in alphabetical order.

  • 0 Votes
    14 Posts
    3k Views
    mituM

    @flower4000 I explained in the previous reply what it means: if your path element contains the folder (i.e. /home/pi/RetroPie/roms/genesis/game.md), then remove the folder part of the path and leave only the file name (./game.md).

  • 0 Votes
    3 Posts
    363 Views
    R

    I'm not at the pi at the moment (left the house after making this post) but I can definitely confirm that it erases what I added without appending another.

    The game/console I have been using as an example is Game Boy. With the entry for Super Mario Land, the scraped (using default ES scraper) data does not generate a <players> tag in the metadata entry within the gamelist.xml. When I launched the game and played it after adding one, the data saved added a last played date and times played entry, and erased/overwrote the <players>1</players> tag that I added (and saved) prior to launching and playing.

    I confirmed by comparing to other titles that my line of xml was formatted exactly as others were that scraped with a <players> tag, but notably those that obtained that data from thegamesdb.net via the built in scraper and remained undisturbed are always greater than 1, which makes me suspect that ES reads a not present/defined value of players as 1? Not sure why it would erase or overwrite it though.

  • 0 Votes
    5 Posts
    627 Views
    ClydeC

    @rontra74 said in Can no longer save game data, retain Favorites category, or update setup script.:

    It looks like it is an SD card space issue. I was able to pull up:

    Indeed it does. :) One quick way to make some space is to invoke the pre-installed file manager Midnight Commander by entering the command mc in the console. It is rather self-explanatory. With it, you could delete some files you don't need to make the system at least usable again.

  • 0 Votes
    5 Posts
    1k Views
    A

    I see.

    Not that it's a big deal for me now, because my Folder Metadata generation script seems to force ES to display the folder properly, but in future it would be nice for a way to disable that via settings or something...

    Here is the updated Python Code. This works for me only because:

    I generated the folder names based off the ROM names (stripping them of the region suffix tags etc)

    Have already moved all the ROMS into their respective folder.

    Folder metadata will only be applied if the ROM it contains already has been scraped

    #Code Start import xml.etree.ElementTree as ET from xml.etree.ElementTree import Element from xml.etree.ElementTree import ElementTree tree = ET.parse('gamelist.xml') root = tree.getroot() subPathGames = [] def makefolder(element): print("Folder Metadata Not Found for ", element, "-> making folder") folder_created = False for game in root.findall('game'): for path in game.findall('path'): if all([element == path.text.split('/')[1], folder_created == False]): #print ("Game Data" , game.tostring(xml).decode()) #Construct with this indexes data folder_tag = ET.Element("folder") name_tag = ET.Element("name") name_tag.text = path.text.split('/')[1].strip() folder_tag.append(name_tag) image_tag = ET.Element("image") if game.find('image') == None: print("img not found") else: image_tag.text = game.find('image').text folder_tag.append(image_tag) desc_tag = ET.Element("desc") if game.find('desc') == None: print("desc not found") else: desc_tag.text = game.find('desc').text folder_tag.append(desc_tag) rating_tag = ET.Element("rating") if game.find('rating') == None: print("rating not found") else: rating_tag.text = game.find('rating').text folder_tag.append(rating_tag) releasedate_tag = ET.Element("releasedate") if game.find('releasedate') == None: print("release date not found") else: releasedate_tag.text = game.find('releasedate').text folder_tag.append(releasedate_tag) developer_tag = ET.Element("developer") if game.find('developer') == None: print("dev date not found") else: developer_tag.text = game.find('developer').text folder_tag.append(developer_tag) publisher_tag = ET.Element("publisher") if game.find('publisher') == None: print("pub date not found") else: publisher_tag.text = game.find('publisher').text folder_tag.append(publisher_tag) genre_tag = ET.Element("genre") if game.find('genre') == None: print("genre not found") else: genre_tag.text = game.find('genre').text folder_tag.append(genre_tag) players_tag = ET.Element("players") if game.find('players') == None: print("players not found") else: players_tag.text = game.find('players').text folder_tag.append(players_tag) path_tag = ET.Element("path") path_tag.text = "./" + path.text.split('/')[1].strip() folder_tag.append(path_tag) root.append(folder_tag) folder_created = True return for game in root.findall('game'): for path in game.findall('path'): if path.text.count('/') > 1: subPathGames.append(path.text.split('/')[1]) else: continue #de-duplicate subPathGames = list(set(subPathGames)) print("Unique List of Games in Subfolder:\n", subPathGames) for element in subPathGames: #no folder elements at all! lets start one! if root.findall('folder') == None: print("Creating first folder metadata in gamelist.xml") makefolder(element) continue else: exists = False for folder in root.findall('folder'): #print("ELEMENT: " ,element, " NAME: ", folder.find('name').text) if element == folder.find('name').text: print ("Folder Already Exists! Next Question! Faster!") exists = True break if not exists: makefolder(element) print ("All folders made - now writing to file") new_root = ElementTree(root) new_root.write("gamelist-new.xml") #Code End

    I suppose can be run straight from the Pi if Python is installed. or else just use WinSCP to transfer, modify and return the gamelist.xml file as normal.

  • Best metadata editor

    Help and Support
    4
    0 Votes
    4 Posts
    1k Views
    EvertE

    @mitu , thanks mate, exactly what I was looking for.

  • 0 Votes
    1 Posts
    410 Views
    No one has replied
  • 1 Votes
    1 Posts
    757 Views
    No one has replied
  • 0 Votes
    1 Posts
    608 Views
    No one has replied
  • 0 Votes
    5 Posts
    1k Views
    mituM

    @greenhawk84 I'm mostly talking about editing the file itself, as long as you edit the metadata through the ES editor that's fine. Post the gamelist file on pastebin.com if you don't find the culprit , so we can have a look.

  • 0 Votes
    4 Posts
    1k Views
    ClydeC

    @blonqe @dudleydes I'm confused. In my standard Emulation Station that's part of Retropie 4.3, I can filter games by the number of players in the Filter Gamelist menu. Don't you have that option, blonge?

    edit: Sorry, I didn't read dudleydes' post correctly. He/she basically said exactly the same. In my defense, I have a bad cold at the moment. O:)

  • 0 Votes
    6 Posts
    2k Views
    mituM

    @maegirom said in All scraped data and games in favorite list are gone oO':

    What is that append option you are talking about? where is it? I think I haven't noticed it anywhere.

    I only used the scraper from the RetroPie-Setup menu, where the Gamelist appears alt text
    I didn't use it from the command line and I don't know what's the default.

    It's adviced to update drivers or something?

    If you like to get bugfixes and new features, yes, but it's not mandatory. Make sure to update from the RetroPie-Setup menu, as explained in the docs.

  • 2 Votes
    5 Posts
    1k Views
    darkniorD

    WOAW ... like write me @screech it is very complicated around the world to found an unique "PEGI" value lol
    So many systems in so many countries ...

    ESRB, PEGI, CERO, DJCTQ, OFLC, BBFC, USK, ELSPA, VET et SFB, aDeSe, SELL,......

    https://fr.wikipedia.org/wiki/Système_d'évaluation_des_jeux_vidéo

    To make easier to use and understand every where, as soon as a classification info is added to ScreenScraper, it looks at the lowest value, and create a SS classification. Age by Age, if i understand fine from 3 to 18. 15 values.

    It is the good solution for every one. And easy to understand because it is almost the Year of the children.
    For the skinners it is easy too, because it make 15 images of PEGI or ESRB for exemple, and some are same to concord with the official rule.

    PEGI :
    from 1 to 6 : 6 images
    from 7 to 11 : 5 images
    from 12 to 15 : 4 images
    from 16 to 17 : 2 images
    for 18 and more : 1 image

    ESRB :
    from 1 to 9 : 9 images
    from 10 to 12 : 3 images
    from 13 to 16 : 4 images
    for 17 : Mature : 1 image
    for 18 and more : 1 image

    And i wish the default value (if the input is empty) was : 10 to stay in games for every one.