Metadata not showing for some games, despite being in the gamelist.xml file
I am trying to figure out why some games that appear in the gamelist.xml file are not shown with metadata in emulationstation.
For instance, Sonic the Hedgehog for the Mega Drive console. The gamelist.xml section for this game is the following:
<game id="5" source="ScreenScraper">
<path>./Sonic the Hedgehog (USA, Europe).md</path>
<name>Sonic the Hedgehog</name>
<desc>Sonic the Hedgehog is the first of many games starring Sega's premier rodent, Sonic. It's a side scrolling platform game with a difference: speed. Sonic rushes through levels with incredible speed, allowing him to traverse loops and jumps with ease.
The plot of the game is simple. The evil Dr. Robotnik has captured many of Sonic's animal friends, and trapped them inside robots. Fortunately, Sonic can free his friends by destroying the robots with his spin attack. Meanwhile, Dr. Robotnik is trying to control the all-powerful chaos emeralds. Sonic must grab them before he does in the 3D rotating bonus levels.
Sonic's weapon is his spin attack; while jumping, Sonic destroys hostile robots by touch. Throughout the platforming levels, Sonic collects numerous rings. If Sonic is hit by an enemy, all the rings he's carrying fall out and scatter around; Sonic can quickly grab the rings back before they disappear. If Sonic is hit while not carrying any rings, he dies. Collecting 100 rings gives Sonic an extra life. There is also an invincibility bonus which temporarily protects Sonic from all attacks.
The game is divided into several "zones", each of them containing three levels. At the end of each zone Sonic confronts Dr. Robotnik in a boss fight.
Sonic the Hedgehog is a significant game because it gave Sega it's first real mascot, and established the Genesis as the video game system with "attitude."</desc>
<image>./boxart/Sonic the Hedgehog (USA, Europe).png</image>
<marquee>./wheel/Sonic the Hedgehog (USA, Europe).png</marquee>
<video>./snap/Sonic the Hedgehog (USA, Europe).mp4</video>
In the same dir there is a Sonic The Hedgehog (USA, Europe).zip with Sonic The Hedgehog (USA, Europe).md inside. There's a snap folder with the preview Sonic the Hedgehog (USA, Europe).mp4 and Sonic the Hedgehog (USA, Europe).png in the wheel folder. Many (most) other games for the genesis show the picture, the video preview and the description, but not for a few sonic games, despite having all the metadata in the correct folders. The game appears in emulationstation with the full filename (minus the extension), and no metadata. The game runs fine if I launch it.
What could be happening?
I am using emulationstation 2.7.6RP in a raspberry pi 3.
I checked the logfiles, and there are several lines like these:
lvl1: File ""/home/pi/RetroPie/roms/megadrive/Sonic 3D Blast (USA, Europe).zip"" does not exist! Ignoring.
lvl1: File ""/home/pi/RetroPie/roms/megadrive/Sonic the Hedgehog (USA, Europe).zip"" does not exist! Ignoring.
lvl1: File ""/home/pi/RetroPie/roms/megadrive/Sonic the Hedgehog 2 (World).zip"" does not exist! Ignoring.
lvl1: File ""/home/pi/RetroPie/roms/megadrive/Sonic the Hedgehog 3 (USA).zip"" does not exist! Ignoring.
But only for some games (those whose metadata was not loaded). It's weird, because the files are there, with the same filename.
@xwons From the log file, it seems the gamelist entry contains
pathvalue, which is not correct, since ES looks for
gamefile. ES does not look inside archives, so the filename must match exactly.
I noticed there are several entries for each game, one ending with .zip, another one with .mg, for .sg, .gen and .smg. I guess the gamelist file tries to find any possible extension for Mega Drive roms. In any case, there's an identical entry for the "zip" version of the rom, the one I use.
In the entry, there aren't any quotes in the filename. I still don't get what could be causing emulationstation not detecting those games. I counted the error messages, and there are 126 games that could not be found out of ~800 roms in the folder (that's ~16%).
Just to compare, here's an entry for a game that loads the metadata correctly:
<game id="115" source="ScreenScraper">
<path>./Sonic Spinball (USA).zip</path>
<desc>The evil doctor Robotnik has a new plan to take over the world. He has built a new weapon, the Veg-O-Fortress on Mount Mobius and with it, he is transforming all creatures into robots. Sonic sneaks into the fortress and tries to stop Robotnik.
Use Sonic as a pinball in 4 dangerous levels. Score points, get rings, collect Chaos Emeralds and destroy the boss at the end of each level.
<image>./boxart/Sonic Spinball (USA).png</image>
<marquee>./wheel/Sonic Spinball (USA).png</marquee>
<video>./snap/Sonic Spinball (USA).mp4</video>
Nevermind, found the issue. It had to do with the capitalization of the word. Emulationstation was looking for Sonic the Hedgehog (USA, Europe).zip and I had Sonic The Hedgehog (USA, Europe).zip.
Clyde last edited by
@xwons The reason for that is that the Retropie image runs on Linux whose file system is case sensitive. Thanks for sharing your solution for others.
I am having a similar issue when migrating from Jessie to Stretch. This is oddly only for the Genesis category in ES. I moved my old gamelist.xml files for both Megadrive and Genesis. Some games display properly, others display as if no metadata exists.
Here is an example of what I see:
Metdata lines for Altered Beast read:
<game id="15" source="ScreenScraper">
<path>/home/pi/RetroPie/roms/genesis/Altered Beast USA.md</path>
<desc>In this coin-op conversion, you are a hero raised from the dead by the god Zeus to rescue his daughter Athena. With a scenery inspired by Ancient Greece, you have to fight hordes of undead and demons, with a boss at the end of each level until you meet the god Neff, who holds the girl captive.
The title refers to your shapeshifting abilities. In this platformer, you can collect spirit balls by defeating two-headed wolves, allowing you to mutate into different beasts such as a werewolf, a dragon, a tiger, a bear and others depending on the version. Each form, tied to a level, comes with special abilities such as flight and powerful attacks, easily superseding the basic set of punches and kicks in your human form.
The game can be played in singleplayer mode, or in same-screen multiplayer co-op mode.</desc>
<image>/home/pi/.emulationstation/downloaded_images/genesis/Altered Beast USA-image.png</image>
<marquee>/home/pi/.emulationstation/downloaded_images/genesis/Altered Beast (USA, Europe)-image.jpg</marquee>
<video>/home/pi/.emulationstation/downloaded_images/genesis/Altered Beast USA-video.mp4</video>
@GreenHawk84 As the topic solution mentioned, it was a problem file filename case - did you check that your file on disk is the same as the one in the gamelist (
/home/pi/RetroPie/roms/genesis/Altered Beast USA.md) ?
I think so, it appears the rom file name matches:
I think so, it appears the rom file name matches:
Not quite, the path in the file is using
megadrive. I think that if you remove the folder suffix from the
pathand leave only
./Altered Beast USA.mdas the
path, it will show up correctly.
Thank you, this change to each game in the Gamelist worked. Not sure why this was an issue now and not on my previous build.
@GreenHawk84 Your previous build was probably customized and you probably replaced the MD folder with
genesis. It's also because you probably scraped the info with different scrapers - some of them have added the
pathas a full filename path, others kept it relative to the ROM folders.
When you say to remove the folder suffix from the path, what does that look like? I’m having the same issue and I can’t find anything in the path that I would call a folder suffix in order to remove it.
Ps. I have both a genesis and a mega drive folder, and I’m using the megadrive folder for the rom paths. Or at least, I think I am. And I’m doing my rom scrapes using skyscraper.
@flower4000 I explained in the previous reply what it means: if your
pathelement 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 (