Launcher Updates and Fixes

Discussion in 'Developer Diaries' started by Defiant, Feb 4, 2018.

  1. Defiant

    Defiant Project Leader Movie Battles II Team Code Leader

    Posts:
    220
    Likes Received:
    222
    [​IMG]


    A few people have shown some interest in some upcoming enhancements to the launcher. The launcher serves as both as a tool for updates and information and as the first impression new players get to MB2 it is therefore important that the launcher gives a clean and seamless experience. In its current state, the launcher is not fulfilling our needs or the needs of you guys as our player base. So today I am going to show you some of the improvements and bug fixes which will be coming soon, as well as some longer ambitions and new features that we hope will appear in the not too distant future. This is mostly centred around the installation and patching part of the launcher rather than new features. The aim was to first fix the major deficiencies of the launcher to give us a good platform to build on.

    Installation

    Current

    Today, the launcher is downloaded as an executable, the installation instructions aren't great, but there's not a lot to say. The download page does state it should be placed in the "GameData" folder but that's not strictly true, but is the easiest way although it doesn't help new players a lot. For non-Windows users, the extra step of downloading the mono framework and using a terminal window to run the binary through the framework is required. Bugs are not unheard of at this stage.


    Problems
    • Poor installation instructions.
    • If you've only just picked Jedi Academy up, how are you expected to know what "GameData" is?
    • If you're a Mac user, the mono framework may well be unfamiliar to you.
    • The infamous "Not enough disk space" bug.


    Coming Soon
    The new version will query the registry for Jedi Academy's install location on Windows systems in order to automatically offer an installation location for the mod if it is not installed to the correct place. This only helps out Windows users, but that is by far the greatest portion of the player base.

    The insufficient disk space bug was likely caused by attempting to install the mod on removable or remote media. The bug itself should be fixed, but since this is an impossible bug to verify as fixed, the prompt will be override-able by the user.


    In The Future
    Hopefully further down the road, the file will be packaged using a platform-correct installer. For instance, the Windows version could be downloaded as an MSI package and provide a familiar installation (and uninstallation) interface which we can use to make the process smoother for new players.

    For non-Windows users we will be investigating the mono framework ability to be able to internalise itself into the application. The result would be that non-Windows players would not be required to go away and get the mono framework, as it would work straight from the first download.


    Patching

    Current
    The way that patching works today in principle isn't bad. There are some limitations but they are for us as a team rather than for you guys as players. The main problem from a player’s perspective has been that it isn't very error redundant. When that clumsy Gungan trips over the power cable to your computer and you're suddenly left looking at a black screen and have to reboot and reload the launcher the update process doesn't pick up on the corrupt file that you didn't finish downloading when power was lost. Before you know it the rest of the files have downloaded and you eagerly hit launch to enjoy the wonderful MB2 goodness, only to be met with weird bugs, or missing textures, or unexplained crashes. In other ways the patching is too complete. If you've saved a new default configuration for any of the classes, launcher will detect the file needs patching and overwrite it. Finally, if we want to update a 2KB JPEG in a 600MB pk3, you'll find yourself downloading all 600MB.

    Problems
    • Patching fails if you sneeze in the patchers general direction
    • Files that shouldn’t be overwritten frequently get overwritten
    • Massive file downloads for small asset changes
    • Low player confidence in the patching process

    Coming Soon
    The patcher has been completely rewritten with the main aim of being very error tolerant. The new patcher will maintain a local cache of the state of all the MB2 assets, each time you load launcher this cache will be compared to a master list on the update server. If the cache differs from what the server says the file should be, then the file will be redownloaded. The cache will only be updated by launcher during patching, and a file will only be written to the cache once it has been entirely written to disk and it has been verified. The file won't then be checked again until the server is updated or a repair is requested. The net result of this is that error redundancy is provided for incomplete and corrupted downloads without requiring a complete scan. Hopefully this will restore confidence in the automatic updates. Additionally, the patcher will act intelligently with MB2 assets. It will know that it shouldn't overwrite any configuration files, but provide the defaults if they don't exist.

    In The Future
    I would like to add file level patching in the future. Since PK3s are very easily opened and modified we would be able to cut down on download sizes, times and bandwidth contention by patching files rather than whole PK3s.

    Bug Fixes

    We went through the whole support section and looked at everything that had given someone trouble with the current launcher - no matter how small. We really wanted to make the launcher as smooth as possible. Somethings were inevitably beyond our control, but this is our initial list:
    • Not enough free space bug
    • Launcher occasionally won't allow the engine to be changed
    • Launcher and MBII don't talk to each other properly resulting in kicks due to launcher not being detected as running.
    • Launcher does not work if you are not running as an administrator
    • Launcher occasionally loads into BaseJA for some configurations
    • Version detection does not seem reliable
    • Launcher can hang around with no UI resulting in a need to be killed from task manager

    I'm pleased to say that, with the exception of requiring administrator privileges, everything that was identified has been addressed in some way, although they might not be complete fixes in some cases everything should be a lot smoother in the future. Players will be able to ignore the message about not having enough disk space if the error occurs at all now. The engine not being changeable was linked to incorrectly detecting if JKA was the steam version, we've added some code to properly synchronise the engine with launcher which should eliminate anti-cheat false positives, the patcher has been completely rewritten with reliability and redundancy as top priority, and if you minimise launcher, you will now actually be able to restore it.

    Looking to the future
    There are a few new features that we would like to add to launcher in the not too distant future:
    • The ability to run Open Beta's integrated into launcher
    • A server browser so you can hop straight into the action without loading up the game first or relying on external websites and applications
    • Default binds for new players

    There are of course some other features which are often requested that we are keeping in mind, but these are not even at the design stage yet. As ever we would like to hear your feedback on anything we can do to improve the launcher. We know it can be a sticking point and the last thing we want is to scare new players off before they even load up. The feedback we get here is invaluable for that.
     
  2. AaronAaron

    AaronAaron Donator Internal Beta Team

    Posts:
    283
    Likes Received:
    408
    I don't understand a thing in this post, but I will leave you a like
     
  3. eezstreet

    eezstreet Movie Battles II Team Retired

    Posts:
    259
    Likes Received:
    264
    This is a good post and I like a lot of the changes in the launcher that are put forth here. Good stuff overall, and it's nice to see that the priorities have shifted a bit onto fixing stuff that was horribly broken.

    You don't need administrator privileges if you write the MB2 data to somewhere where Windows doesn't need administrator permissions to write to. One example being My Documents. So in theory you can write the MBII folder to /My Documents/Games/MB2 and then set fs_homepath on start (with +set fs_homepath) to /My Documents/Games/MB2/. As a benefit this means that the OpenJK and jamp clients will both write screenshots to the same place, but this might take some adjusting to get used to. This also makes uninstallation extremely painless since you can wipe the folder and bam, no more MB2 on your hard drive, but JA is still there, unharmed. Of course, the downside is that it'll be a bit confusing for old timers who are reinstalling the game again. But it's a simple adjustment, really.
     
    Blackwyrm^Heart likes this.
  4. MaceMadunusus

    MaceMadunusus Level Designer Movie Battles II Team

    Posts:
    788
    Likes Received:
    900
    Except that RIP limited OS SSD users space. Even a 256gb m.2 ssd isnt enough for me to have MB2 on it with my other stuff (mainly work apps, no video games are on that SSD)
     
  5. Defiant

    Defiant Project Leader Movie Battles II Team Code Leader

    Posts:
    220
    Likes Received:
    222
    Defaulting to my documents is horrible though. High performance PCs tend to use an SSD as the system disk. I don't want to start taking space up. What I might do is have launcher change the permissions when MB2 is installed with user consent.
     
    Puppytine likes this.
  6. eezstreet

    eezstreet Movie Battles II Team Retired

    Posts:
    259
    Likes Received:
    264
    Just a thought. ;) I know the Nexus Mod Manager does something similar to this.
     
  7. Noob

    Noob Donator

    Posts:
    830
    Likes Received:
    711
    Maybe now would be a good time to try and organize the PK3's a little better. It's a nightmare for modders to sort through all those pk3s to look for an individual file. I know this would take a lot of time because of re-pathing everything, but it could also help with patching needs. I can come up with some layouts if interested; and i can go through and repath if no one wants to do it :p
     
  8. olor

    olor

    Posts:
    17
    Likes Received:
    10
    This thread is written smoother than orgasm
     
  9. Damboy99

    Damboy99

    Posts:
    9
    Likes Received:
    5
    I highly recommend you guys try to make the 'Guides' section a little bit larger, as most people will miss it if they are not looking for it. I have asked a veteran player and he had no clue that that section existed in the launcher. You learn a lot from the guides, and having them as tiny links makes them, again, easy to miss.
     
  10. Gumba

    Gumba EU Official Server Admin

    Posts:
    373
    Likes Received:
    501
    As long as one is still able to manually install the updates its fine by me
     
  11. Defiant

    Defiant Project Leader Movie Battles II Team Code Leader

    Posts:
    220
    Likes Received:
    222
    Manual installations will still be supported. Launcher will continue to validate the installation is correct however.

    Out of interest - what is it that you don't like about the automatic updates?
     
    Puppytine likes this.
  12. Gumba

    Gumba EU Official Server Admin

    Posts:
    373
    Likes Received:
    501
    • Too many failures in the past
    • manual installation is super easy
    • never had to reinstall the whole mod after updating manually(which has happened with the launcher)
    I just don't like all these launchers nowadays, not only on mb2.
     
    eezstreet and Vitéz like this.
  13. SeV

    SeV EU Official Server Admin Internal Beta Team

    Posts:
    700
    Likes Received:
    949
    The future has begun.
     
  14. Vitéz

    Vitéz

    Posts:
    141
    Likes Received:
    90
    I think the resources which are required to make the currently totally unnecessary launcher somewhat useful (not necessary tho) is a pure waste of development time. Its not my place to tell you what to do, but do you really think that the mod needs a new/upgraded platform for those things which worked totally fine on this very forum in the past years? IMO this launcher never served the evolution of the mod, it was always just a simple shiny tool for show, with little to none real benefits for the community. But as usual, people like these kind of changes, so good job I suppose?

    Anyway, IMO it'd be more useful to upgrade this forum, so informations from the developers, changelogs and up to date Wiki informations could be more easily accessible from here. That'd serve old and new players much more than having a tool which may or may not able to do the version updates on its own.
     
    eezstreet likes this.
  15. Defiant

    Defiant Project Leader Movie Battles II Team Code Leader

    Posts:
    220
    Likes Received:
    222
    I can see why you would think that, but there are real benefits. In the old days many people would struggle to do a manual installation. If you're technically savvy then it is straight forward but alot of people arnt. They want no fuss and into game as quickly as possible. So there are two improvements from that. Firstly less need to support people who struggle with manual installations, and secondly not intimidating people away who think they can't do it so don't try.

    The second thing is your claim that it works fine. Have a look at all the people puppytine helps with the launcher. In terms of benefits to the mods future a more robust platform mean more and faster updates with less overhead. If asset level patching gets added in the future then that will save us costs in terms of orders of magnitude bandwidth savings from updates. Is it necessary strictly for the mod? No. Do the benefits outweigh a few weeks of development effort? I really think they massively do.
     
    Last edited: Feb 5, 2018
  16. eezstreet

    eezstreet Movie Battles II Team Retired

    Posts:
    259
    Likes Received:
    264
    I do think that the launcher is great for people who aren't tech-savvy, but at the same time I don't think we (players) should be limited to using a technically inferior option. The launcher downloads slowly and unreliably. I'll invoke the Nexus Mod Manager example here again. On the Nexus Mods site you can either choose to download and install a mod with the Nexus Mod Manager, or you can choose to download it manually. (Sometimes you can only download a mod manually, but that's just due to the nature of the mod)

    Now granted, I realize that there's an obvious reason that the team wants people to keep the launcher up and running, so it can't be totally gotten rid of. But I wonder if we can streamline the process a bit? Personally I don't like having to click through the launcher to run the game. Maybe it can be done in the background? Like say, you launch the MovieBattles.exe and it launches the jamp.exe with an agent in the background that acts like the launcher is running. Just an idea. This would be great for manual installations too.
     
  17. Defiant

    Defiant Project Leader Movie Battles II Team Code Leader

    Posts:
    220
    Likes Received:
    222
    What may be possible in the future is a quick launch mode which could skip showing the UI on a few conditions, such as there are no updates, the game shut down correctly the last time it launched, there are no new news items, possibly some extra conditions. That being said one of the things we'd like to add is a server browser in launcher so you can jump straight from launcher into whatever server you so desire.
     
    eezstreet likes this.
  18. Dra-Gon

    Dra-Gon

    Posts:
    52
    Likes Received:
    82
    What I think is the issue here is that those buttons are made way too dark and the color is poorly chosen. It is all in the same shades of gray-ish blue - just like the background picture is and it gets lost in it. Also, the background picture adds a lot of noise. The icons for other sites (youtube, facebook, etc.) are far easier to see. Sure, the link gets highlighted in white when you mouse over it, but you have to notice it first, tho.

    I think those links should be same like the play button - nice shiny blue, white text, big button.
     
    Damboy99 likes this.

Share This Page