Open Greg-Nexus opened 1 year ago
@Greg-Nexus milestone 1 mentions applying mod and running the game. There is currently no way to trigger the apply from the UI. So this issue probably needs adding there. (Running the game is also missing btw).
I would suggest for milestone 1 a simple apply button under the Run button. UI/UX to be improved for future milestones. Automatic apply would both require more effort and be quite inconvenient for developers during everyday app development/testing.
@captainsandypants Would you be able to update this issue with a design?
Some more context for how the App works following up on meeting, with timing information:
Can be from 1kb to ~3GB. These aren't terribly uncommon for popular games, especially older ones (Textures).
This is how a mod gets managed by the app:
Since the disk isn't touched until an Apply operation is completed, users could get confused by not seeing the mod files in the game folder after a mod was installed and enabled. UI should make the need for Apply operation evident.
There are two main ways Apply operation could be performed:
We want to support both ways, through a user setting.
In both cases, during Apply operation the UI should remain unlocked. Users should be able to continue making new changes. This is possible since the changes are applied to new versions of the Loadout in memory, not the Old Loadout that is still Applying.
Apply operations should be cancellable.
Users should be able to queue multiple Apply operations. The maximum queue length is 2, in progress and next. After the second one is queued, subsequent applies simply replace the second queued item since they would overrule it anyways.
While cancelling the first one might seem like a good idea, this isn't likely to actually be useful as rollback of all changes already made to the disk is likely take as much time as it took to apply them. Also cancel of Apply is likely to be more error prone than most operations.
The fact that the App requires this long Apply operation could be considered the main weakness of the App when compared to other mod managers.
Vortex Deployment phase just writes some links, which is much faster than copying over files, vortex could honestly be faster than it is doing this. MO2 doesn't have any kind of deployment whatsoever and all operations are pretty instant, there is just a small indexing delay when starting the game, which is only noticeable for larger setups.
This big Apply overhead is the main downside of installing files directly to the game folder instead of using links or Virtual File System solutions. The constant delay and loading could put people off using the App, especially if they come from other managers that don't have this issue. This is why having a good UI solution for this is important.
@captainsandypants @Greg-Nexus See above for some details on Apply operations after our meeting yesterday.
Possible states for apply button on a loadout are a combination of these:
We will also want in the future:
User story
As a user
I want to apply changes to my loadout
So that I can launch my game with the loadout applied
Requirements
Implement the GUI for applying loadout changes.
For the purposes of this issue, a simple 'Apply' button on the UI will suffice.
Design
Design issue: #994
DOD
Scenario 1
Given I am using the App to manage a game (e.g. Skyrim)
When I make changes to the mods for the game\ And use the 'Apply' button on the UI
Then those changes are saved
Epic: