Universal-Rom-Tools / Universal-XML-Scraper

Scraper de Rom
196 stars 46 forks source link

Improve ScummVM support by parsing scummvm.ini #296

Open adelpha opened 6 years ago

adelpha commented 6 years ago

I think it would be better if UXS just parsed the scummvm.ini file (\retropie\configs\scummvm\scummvm.ini) which contains all the information about installed games.

It shouldn't be difficult to parse this ini file and grab all the game names and paths from there. It has the benefit that the descriptions are the same for everyone (ScummVM always uses the same description for each game variant) so matching by name alone should be no problem!

Hashing ScummVM games does not work well, in my experience. There are far too many different variants of each game (compressed/uncompressed/stripped of extra files, etc.). If you use the values from the .ini file you can forget hashing entirely. ScummVM knows what the files are already.

My scummvm.ini file is below so you can see what I mean.

[scummvm]
filtering=false
gfx_mode=opengl
mute=false
speech_volume=192
last_fullscreen_mode_height=768
mt32_device=null
last_fullscreen_mode_width=1280
talkspeed=60
midi_gain=100
subtitles=false
multi_midi=false
fullscreen=true
gui_browser_show_hidden=false
browser_lastpath=/home/pi/RetroPie/roms/scummvm
gm_device=null
aspect_ratio=false
sfx_volume=192
music_volume=192
speech_mute=false
lastselectedgame=monkey
music_driver=auto
native_mt32=false
opl_driver=auto
kbdmouse_speed=2
versioninfo=2.0.1pre
autosave_period=300
enable_gs=false

[keymapper]

[tentacle]
description=Day of the Tentacle (CD/English)
mute=false
speech_volume=192
talkspeed=52
path=/home/pi/RetroPie/roms/scummvm/dott
subtitles=true
gameid=tentacle
language=en
gui_saveload_last_pos=1
sfx_volume=192
music_volume=192
kbdmouse_speed=3
speech_mute=false
guioptions=lang_English

[samnmax]
description=Sam & Max Hit the Road (CD/English)
path=/home/pi/RetroPie/roms/scummvm/samnmax
gameid=samnmax
language=en
guioptions=lang_English

[sky]
description=Beneath a Steel Sky (v0.0368 cd)
alt_intro=false
path=/home/pi/RetroPie/roms/scummvm/sky
sfx_mute=false
subtitles=true
gameid=sky
speech_mute=false

[ft]
description=Full Throttle (Version A/English)
path=/home/pi/RetroPie/roms/scummvm/ft
gameid=ft
language=en
guioptions=sndNoMIDI lang_English

[atlantis]
description=Indiana Jones and the Fate of Atlantis (CD/DOS/English)
path=/home/pi/RetroPie/roms/scummvm/atlantis
gameid=atlantis
language=en
platform=pc
guioptions=lang_English

[toon]
description=Toonstruck (DOS/English)
path=/home/pi/RetroPie/roms/scummvm/toon
gameid=toon
language=en
platform=pc
guioptions=lang_English

[kq1sci]
description=King's Quest I: Quest for the Crown (SCI/DOS/English)
originalsaveload=false
path=/home/pi/RetroPie/roms/scummvm/kq1sci
prefer_digitalsfx=true
gameid=sci
native_fb01=false
language=en
platform=pc
disable_dithering=false
guioptions=sndNoSpeech gameOption1 gameOption2 gameOption3 gameOption7 lang_English

[zak-v2]
description=Zak McKracken and the Alien Mindbenders (V2/DOS/English)
path=/home/pi/RetroPie/roms/scummvm/zak-v2
gameid=zak
language=en
platform=pc
guioptions=sndNoSpeech sndNoMIDI lang_English

[sq1sci]
description=Space Quest I: The Sarien Encounter (SCI/DOS/English)
originalsaveload=false
path=/home/pi/RetroPie/roms/scummvm/sq1sci
prefer_digitalsfx=true
gameid=sci
native_fb01=false
language=en
platform=pc
guioptions=sndNoSpeech gameOption1 gameOption2 gameOption3 lang_English

[pq1sci]
description=Police Quest: In Pursuit of the Death Angel (SCI/DOS/English)
originalsaveload=false
path=/home/pi/RetroPie/roms/scummvm/pq1sci
prefer_digitalsfx=true
gameid=sci
native_fb01=false
language=en
gui_saveload_last_pos=0
platform=pc
guioptions=sndNoSpeech gameOption1 gameOption2 gameOption3 lang_English

[maniac-v2]
description=Maniac Mansion (V2/DOS/English)
path=/home/pi/RetroPie/roms/scummvm/maniac-v2
gameid=maniac
language=en
platform=pc
guioptions=sndNoSpeech sndNoMIDI lang_English

[lure]
description=Lure of the Temptress (VGA/DOS/English)
extra=VGA
path=/home/pi/RetroPie/roms/scummvm/lure
gameid=lure
language=en
platform=pc
guioptions=sndNoSpeech lang_English

[lsl1sci]
description=Leisure Suit Larry in the Land of the Lounge Lizards (SCI/DOS/English)
originalsaveload=false
path=/home/pi/RetroPie/roms/scummvm/lsl1sci
prefer_digitalsfx=true
gameid=sci
native_fb01=false
language=en
platform=pc
guioptions=sndNoSpeech gameOption1 gameOption2 gameOption3 lang_English

[monkey]
description=The Secret of Monkey Island (CD/DOS/English)
talkspeed=85
path=/home/pi/RetroPie/roms/scummvm/monkey
subtitles=true
gameid=monkey
language=en
platform=pc
guioptions=sndNoSpeech sndNoMIDI lang_English

[comi]
dimuse_tempo=10
description=The Curse of Monkey Island (Windows/English)
talkspeed=28
path=/home/pi/RetroPie/roms/scummvm/comi
gameid=comi
language=en
object_labels=true
platform=windows
guioptions=sndNoMIDI noAspect lang_English
Universal-Rom-Tools commented 6 years ago

ScummVM had change a lot's on Recalbox and Retropie since I worked on it....

I really need to "redo" this part in UXS... I put that in my Todo list ;)

adelpha commented 6 years ago

Made a change to RetroPie so you should be able to simply scrape the .svm files.

Just need to get screenscraper.fr to accept these .svm files :D

https://github.com/RetroPie/RetroPie-Setup/pull/2292

stoo..

On 12/02/2018 14:30, Universal ROM Tools wrote:

ScummVM had change a lot's on Recalbox and Retropie since I worked on it....

I really need to "redo" this part in UXS... I put that in my Todo list ;)

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/Universal-Rom-Tools/Universal-XML-Scraper/issues/296#issuecomment-364938954, or mute the thread https://github.com/notifications/unsubscribe-auth/AMayyOVL1szkjyDMu4XjmYvjHs1G7X_Lks5tUEsfgaJpZM4R-2X6.