Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.
Sign upMultiple save profiles #106
Comments
tony971
changed the title from
Multiple GBA profiles
to
Multiple save profiles
Sep 2, 2015
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
endrift
Sep 2, 2015
Member
I'm really not sure how users are expected to understand this functionality, and especially how to handle the file backing for it. I can try to figure something out, but I'm not entirely sure what the best approach is. At the moment, I'm just making a copy of the ROM and the save file, then loading both.
|
I'm really not sure how users are expected to understand this functionality, and especially how to handle the file backing for it. I can try to figure something out, but I'm not entirely sure what the best approach is. At the moment, I'm just making a copy of the ROM and the save file, then loading both. |
endrift
added
the
severity:enhancement
label
Sep 2, 2015
endrift
added this to the 0.4.0 milestone
Sep 2, 2015
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
karasuhebi
Sep 2, 2015
I don't think this is intuitive enough for users. Needs to be made better. But I do support the general idea of it.
karasuhebi
commented
Sep 2, 2015
|
I don't think this is intuitive enough for users. Needs to be made better. But I do support the general idea of it. |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
tony971
Sep 2, 2015
Contributor
I know that VBA-M just makes it so Player 2 always uses .sav2 files but that's even harder to use correctly than this setting. Because unless you always play a game as player 2, you'll be using the .sav slot all the way until you try to use it in multiplayer.
|
I know that VBA-M just makes it so Player 2 always uses .sav2 files but that's even harder to use correctly than this setting. Because unless you always play a game as player 2, you'll be using the .sav slot all the way until you try to use it in multiplayer. |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
karasuhebi
Sep 2, 2015
Maybe make it so mGBA doesn't allow two ROMs to use the same .sav file (lock it maybe?) and just warn the user when they try to open a second copy of the game that they need to have a .sav2 for it.
karasuhebi
commented
Sep 2, 2015
|
Maybe make it so mGBA doesn't allow two ROMs to use the same .sav file (lock it maybe?) and just warn the user when they try to open a second copy of the game that they need to have a .sav2 for it. |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
tony971
Sep 2, 2015
Contributor
That still has the same problem as VBA-M, where you can't use the .sav2 file until you're in multiplayer (unless you edit file extensions in your ROM library).
|
That still has the same problem as VBA-M, where you can't use the .sav2 file until you're in multiplayer (unless you edit file extensions in your ROM library). |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
karasuhebi
Sep 2, 2015
I agree that a .sav2 may not be the best solution, but I just think that your solution is making it more complicated than it needs to be. We have to keep it simple for end users. Maybe make it so instead of .sav2 its NAME_OF_GAME_2.sav
Actually now that I think about it, most of what you're saying is a non-issue. If a user has a second Pokémon FireRed save for example, they must have done something on their own already to make that possible since there's no way mGBA would organically allow you to have two .sav files for the same game. So if they're smart enough to figure that out, they're smart enough to figure out that they need to rename (or choose via the UI) their .sav file to use it on a second mGBA instance.
EDIT: Sorry I didn't see those last two replies before posting mine. I like that idea, seems straightforward enough.
karasuhebi
commented
Sep 2, 2015
|
I agree that a .sav2 may not be the best solution, but I just think that your solution is making it more complicated than it needs to be. We have to keep it simple for end users. Maybe make it so instead of .sav2 its NAME_OF_GAME_2.sav Actually now that I think about it, most of what you're saying is a non-issue. If a user has a second Pokémon FireRed save for example, they must have done something on their own already to make that possible since there's no way mGBA would organically allow you to have two .sav files for the same game. So if they're smart enough to figure that out, they're smart enough to figure out that they need to rename (or choose via the UI) their .sav file to use it on a second mGBA instance. EDIT: Sorry I didn't see those last two replies before posting mine. I like that idea, seems straightforward enough. |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
tony971
Sep 3, 2015
Contributor
Had some more time to think about it. This is fairly simple now. For the sake of understanding, we'll be using "cartridge" and ".sav[x]" interchangeably.
Each ROM will have up to 4 saves associated with it. These could be .sav, .sav2, .sav3, and .sav4 (exactly the same as VBA-M). If a multiplayer window loads a ROM that's already running in another window, then it should load/create the first unused .sav[x] file by default. An OSD "Cartridge [x] loaded" should confirm this.
The menu dialogue below allows users to decide which cartridge to play with at any given time. This allows them to make significant progress on multiple .sav[x] files outside of multliplayer. If an active cartridge is selected and the .sav[x] file doesn't exist, it will be created.
Ideally, each "Cartridge" will have its own set of save states. Pressing "Continue" during the "New cartridge loaded" dialogue should copy over the save states into the new cartridge.
| Cartridge 1 | Cartridge 2 | Cartridge 3 | Cartridge 4 | |
|---|---|---|---|---|
| Slot 1 | .ss1 | .ss10 | .ss19 | .ss28 |
| Slot 2 | .ss2 | .ss11 | .ss20 | .ss29 |
| Slot 3 | .ss3 | .ss12 | .ss21 | .ss30 |
| Slot 4 | .ss4 | .ss13 | .ss22 | .ss31 |
| Slot 5 | .ss5 | .ss14 | .ss23 | .ss32 |
| Slot 6 | .ss6 | .ss15 | .ss24 | .ss33 |
| Slot 7 | .ss7 | .ss16 | .ss25 | .ss34 |
| Slot 8 | .ss8 | .ss17 | .ss26 | .ss35 |
| Slot 9 | .ss9 | .ss18 | .ss27 | .ss36 |
Thoughts? @karasuhebi @endrift
|
Had some more time to think about it. This is fairly simple now. For the sake of understanding, we'll be using "cartridge" and ".sav[x]" interchangeably. Each ROM will have up to 4 saves associated with it. These could be .sav, .sav2, .sav3, and .sav4 (exactly the same as VBA-M). If a multiplayer window loads a ROM that's already running in another window, then it should load/create the first unused .sav[x] file by default. An OSD "Cartridge [x] loaded" should confirm this. The menu dialogue below allows users to decide which cartridge to play with at any given time. This allows them to make significant progress on multiple .sav[x] files outside of multliplayer. If an active cartridge is selected and the .sav[x] file doesn't exist, it will be created. Ideally, each "Cartridge" will have its own set of save states. Pressing "Continue" during the "New cartridge loaded" dialogue should copy over the save states into the new cartridge.
Thoughts? @karasuhebi @endrift |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
tony971
Sep 4, 2015
Contributor
Pinging @JMC47 because end-user relations is somewhat of a specialty of yours.
|
Pinging @JMC47 because end-user relations is somewhat of a specialty of yours. |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
JMC47
Sep 6, 2015
I've actually corrupted saves and crashed games with the multiplayer stuff loading the same game.
Here's my suggestion: If a save exists (let's pretend MegaMan(2).sav) then it uses that. If no save exists, we have two options.
1: Automatically copy the first save and use that either temporarily or permanently.
2: Make a new save that saves with a (2) at the end of it.
All I know is that as someone who's ran into issues with my cousin trying to set thigns up, this would be really, really nice.
JMC47
commented
Sep 6, 2015
|
I've actually corrupted saves and crashed games with the multiplayer stuff loading the same game. Here's my suggestion: If a save exists (let's pretend MegaMan(2).sav) then it uses that. If no save exists, we have two options. 1: Automatically copy the first save and use that either temporarily or permanently. All I know is that as someone who's ran into issues with my cousin trying to set thigns up, this would be really, really nice. |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
tony971
Sep 6, 2015
Contributor
Personally, I'd rather use .sav2 files instead of (2).sav to maintain compatibility with VBA-M saves.
|
Personally, I'd rather use .sav2 files instead of (2).sav to maintain compatibility with VBA-M saves. |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
JMC47
commented
Sep 7, 2015
|
I was just making up a random naming scheme, any works for me. |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
tony971
Sep 11, 2015
Contributor
This should probably be done before finishing the Dolphin stuff because the flagship game for Dolphin connectivity is Four Swords Adventures. A lot of end users are going to fire up four instances of this game.
|
This should probably be done before finishing the Dolphin stuff because the flagship game for Dolphin connectivity is Four Swords Adventures. A lot of end users are going to fire up four instances of this game. |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
JMC47
commented
Sep 11, 2015
|
There's no saving on the GBA involved for Four Swords Adventures. |


tony971 commentedSep 2, 2015
If you run multiple windows of the same game, they will use the same .sav file. This could be problematic for games like Four Swords Adventures or Pokemon, which are designed to be played with other cartridges of the same title.
Edit: My last mockup is much better.