Strange behavior with the <players> tag and EmulationStation
RC_Cola last edited by
Simple task I was trying this morning, trying to manually go through and clean up my gamelist.xml for various systems to make sure the <players> count is correct for sorting purposes.
I quickly added via copy/paste the <players>1</players> designation for single-player titles (as well as 2, 4, 6+ where appropriate) but noticed strange behavior: when the metadata is saved/updated in ES for single player titles, the <players> tag disappears completely. Erased from the gamelist.xml file.
Games with more than 1 player seem unaffected. Does ES treat the lack of a <players> value less than 2 to be 1, and therefore defaults to that and erases 1 if it is present? If so, that's fine, just want my games to be correct and sortable properly.
@rc_cola Do you have a sample
gamelist.xmlfile which exhibits this problem ? Are you sure you replaced the exiting
playersnode with your edit and not just appended a 2nd
playersnode to the game entry ?
RC_Cola last edited by RC_Cola
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.