bloxstrap icon indicating copy to clipboard operation
bloxstrap copied to clipboard

Planned overhaul for v2.6.0 (or whatever the next version is)

Open pizzaboxer opened this issue 2 years ago • 6 comments

dumping this here because i need to put it somewhere and also id like for anyone to tell me if im doing anything wrong with this approach

How it currently works as of v2.5.3

  • Main thread
    • Installation check is performed
      • Checks if HKCU\Software\Bloxstrap exists
      • Checks if install location has ever been relocated (why the fuck do i check for this wtf)
    • Notification area icon is created
      • Allows for update notification to be shown
      • i have to do the worst fucking workarounds for this because it ends up choking windows ui priority
    • UI is started
    • Singleton mutex is held open (if needed)
    • Bootstrapper thread is started
  • Bootstrapper thread
    • Connectivity check is carried out
    • Automatic updates are checked
    • Roblox is installed to Versions\{versionGuid}\
    • Roblox is started
    • If activity watching is enabled, wait for Roblox to exit
    • Literally does everything, handling installation, uninstallation, and watcher activities
  • UX flow
    • If not installed, assume menu launch
    • If already installed, assume player launch
    • After manual upgrade, assume menu launch
    • Shortcuts available for either directly launching Roblox or opening the Menu

How v2.6.0 is planned to work

  • Main thread
    • Installation check is performed
      • Checks if HKCU\Software\Microsoft\Windows\CurrentVersion\Uninstall\Bloxstrap exists
      • If it doesn't, then start the installer flow
      • Update is checked (both automatic and manual)
    • UI is started
    • Bootstrapper thread is started
  • Installer flow
    • Acts like a typical Windows Installer OOBE experience
    • Goes through these steps in this specific order
      • Welcome/introductory page
      • Prerequisite check (connectivity, updates, WebView2, wmfcore)
      • Install location chooser
      • Proceed to install Bloxstrap itself setting up the registry key, install location folder, etc
      • Shows the launch menu to proceed to either the configuration menu or launching Roblox
  • Bootstrapper thread
    • Connectivity check is carried out
    • Roblox is installed to App\Player\ or App\Studio\
    • If activity watching is enabled, start the watcher agent if it's not running
    • Roblox is started
    • Exits immediately after starting the agent
  • Watcher agent
    • Runs in the background while Roblox is running
    • Notification area icon is created
    • Holds the singleton mutex open if needed
    • Does activity watcher stuff
    • Should hold a mutex open so that the bootstrapper thread from the launch process knows if it's running or not
  • Launch menu
    • Gives you the option of either launching Player, Studio, or opening the Configuration Menu
    • Maybe some subtext for hinting at how to switch to native Roblox or uninstall
  • UX flow
    • If not installed, go through the installer flow
    • If already installed, show the launch menu
    • After manual upgrade, assume launch menu
    • Shortcuts available for either opening the launch menu, launching Player, or launching Studio

pizzaboxer avatar Oct 24 '23 14:10 pizzaboxer

Doesn't seem like anything is out of place or missing

  • Gives you the option of either launching Player, Studio, or opening the Configuration Menu

The ability to use studio with Bloxstrap will be infinitely helpful, because I can't properly see Highlight elements without it.

IxGamerXL avatar Oct 26 '23 18:10 IxGamerXL

  • Gives you the option of either launching Player, Studio, or opening the Configuration Menu

An option to launch studio may be a bit redundant for Roblox Studio Mod Manager users

Strana avatar Nov 20 '23 23:11 Strana

Shortcuts available for either opening the launch menu, launching Player, or launching Studio

Maybe consider having everything in a one shortcut just called "Bloxstrap" with that launch menu you mentioned instead of having one for "Play Roblox", "Bloxstrap Menu" and "Roblox studio (Bloxstrap)". It can feel a bit much with three different shortcuts for one application, but thats just my opinion.

Acts like a typical Windows Installer OOBE experience

I like this approach more than the current one. i imagine some users maybe confuse the configuration menu with the installer dialog considering how similar they look. (but maybe that isn't really an issue when the "before you install" thing exists)

axellse avatar Jan 31 '24 18:01 axellse

Maybe consider having everything in a one shortcut just called "Bloxstrap" with that launch menu you mentioned

Yep, that's the idea, though I'd want the app-specific shortcuts to still exist as options to the user since I use them all the time.

pizzaboxer avatar Feb 01 '24 00:02 pizzaboxer

dayum, that's a lot

Vlad55432 avatar Jun 17 '24 21:06 Vlad55432

Shame the ability to use studio with bloxstrap didn't end up making it to the 2.6.0 release

Jarfeh avatar Jul 10 '24 00:07 Jarfeh