team-phoenix / Phoenix

A multi-system emulator and library manager designed to be both powerful and easy to use.
http://phoenix.vg
GNU General Public License v2.0
377 stars 39 forks source link

portable mode's pathing seems absolute and not relative? Doesn't work on other machines when the drive letter changes #332

Open KafeKafe opened 7 years ago

KafeKafe commented 7 years ago

I have the empty portable file, but no matter what I do I can't get relative pathing for the games working, even putting them in the user data / Games folder. Even if I import some manually to phoenix on the flash drive, when I try it on another windows machine, the artwork is there but they won't boot up. Is there a README for portable mode?

One says: "C:/Users/.../AppData/Local/Temp/Castlevania II - Belmont's Revenge (USA, Europe).gb" does not exist. Launch will fail... [../../phoenix-src/frontend/cpp/library/gamelauncher.cpp:67 GameLauncher::verify()]

(it seems like my laptop is storing the games in some temp folder, not on the flash drive?)

And the other says: GameLauncher::verify():67: "G:/Phoenix-v0.0.1-pre-alpha-Windows-x64-full (1)/User Data/Games/Battletoads (USA).nes" does not exist. Launch will fail... [../../phoenix-src/frontend/cpp/library/gamelauncher.cpp:67

My dir structure is Phoenix->User Data->Games->(all of my game files, some in zip folders, some out; none are auto-detected)

So to sum up,

1) despite the games all existing in the same Games folder on the flashdrive, when I add from the laptop, it seems to add them to some temp folder.

2) neither seem to have relative pathing, and rely on the flash drive always having the same drive, which won't be the case on different machines.

3) I can't figure out how to mass import games by putting them in a folder, and drag and drop doesn't seem to work at all, but I see people talking about it on github.

What am I doing wrong?

Thank you!

KafeKafe commented 7 years ago

I've read some other issues related to portable mode and I think I understand a bit better... portable mode isn't fully implemented yet? Is there a workaround? I notice some games have worked on both machines and others don't; haven't figured out what the trick is yet. I notice it's been a while since the last release; is there a semi-stable version of the code that I can build manually that will resolve some of these issues? Thank you!

athairus commented 7 years ago

Hi, I've replied to your message on Reddit but I'll repeat it here just in case:

The game scanner is currently totally unaware of the "Games" folder relative to the executable. I'm sorry, but it's pre-alpha quality software and it hasn't been worked on for a while. If you still really want do this you can add your games in the "Games" folder then edit the user database manually using an SQLite editor, changing absolute paths to relative ones. I assume that the paths should be relative to the executable, but this should be tested out first.