Search Unity

MG Patcher

Discussion in 'Assets and Asset Store' started by mihanocho, Mar 21, 2015.

?

Do you like MGPatcherTools,?

  1. Yes

  2. No

Multiple votes are allowed.
Results are only viewable after voting.
  1. mihanocho

    mihanocho

    Joined:
    Mar 10, 2015
    Posts:
    296
    Asking for customers patience. We write detailed documentation explaining every little thing. As we finish up with MGCarPhysics and soon MGPatcherTools will be improved. Sorry for the wait. Soon we will be drawing among buyers MGPatcherTools new package MGCarPhysics.
     
  2. HellsPlumber

    HellsPlumber

    Joined:
    Aug 17, 2014
    Posts:
    42
    Thankyou!
    I can confirm this has fixed the issue. For anyone else with this issue;
    1. Replaced "Directory.Move" with "FileUtil.CopyFileOrDirectory"
    2. Replaced "BuildOptions.ShowBuiltPlayer" with "BuildOptions.None"
    But now MGPatcher's "patcher" prefab can see patches on my server but when clicking "Update" it says "downloading" for a fraction of a second, ignores it and plays the game without patching. Not to mention when it does work the text flickers like crazy, and when I get one thing working, something else stops.

    I've been struggling with MGpatcher for weeks now and it works some days, then refuses to on other days.
    I'm sick and tired of telling my beta testers that they'll have to re-install the game manually because MGpatcher won't do what it's meant to. At this rate I might as well just force re-installs each time I update the game instead of rely on this.
    Is it possible to get this refunded as I'm just ready to move on and try something else.
     
    ZoneOfTanks likes this.
  3. CaptainMurphy

    CaptainMurphy

    Joined:
    Jul 15, 2014
    Posts:
    746
    I am rebuilding the patching scene for my game, might be able to give you my method when it is done. I am not using the single IEnumerator and have cut it into smaller chunks with better text management (or so far it is). I am about half way through and hopefully won't be too much longer.
     
    HellsPlumber likes this.
  4. mihanocho

    mihanocho

    Joined:
    Mar 10, 2015
    Posts:
    296
    I'll post MGPatcherTools fixed soon. Anyone who wants to participate in the drawing of the MG Car Physics send Invoice No. on mihanocho@gmail.com. The winners will be three. Once again, I apologize for the wait patch.
     
  5. HellsPlumber

    HellsPlumber

    Joined:
    Aug 17, 2014
    Posts:
    42
    That'd be pretty useful if you could, I'm at my wit's end :)
     
  6. CaptainMurphy

    CaptainMurphy

    Joined:
    Jul 15, 2014
    Posts:
    746
    I finished rewriting it last night. Essentially I now have the MGPatcherScript, ProgressPatch, and MGUpdater all in one class. It uses properties for a lot of the switching and seems to be a lot more stable when I took all of the special code for the assignment of monobehaviours out (the notification stuff). I'll PM you a copy of it.
     
  7. mihanocho

    mihanocho

    Joined:
    Mar 10, 2015
    Posts:
    296
    Added WebGL. Added field for port. Added support for sftp. Fixed MGPatcher script. What else needs to be edited?)
     
  8. pushingpandas

    pushingpandas

    Joined:
    Jan 12, 2013
    Posts:
    1,419
    Hello, I try to create downloader with lite version of MG Patcher Tools but I cant. Getting error.

    ArgumentException: The Assembly UnityEditor is referenced by MGPatcherTools ('Assets/MGPatcherTools/Plugins/MGPatcherTools.dll'). But the dll is not allowed to be included or could not be found.
    UnityEditor.AssemblyHelper.AddReferencedAssembliesRecurse (System.String assemblyPath, System.Collections.Generic.List`1 alreadyFoundAssemblies, System.String[] allAssemblyPaths, System.String[] foldersToSearch, System.Collections.Generic.Dictionary`2 cache, BuildTarget target) (at /Users/builduser/buildslave/unity/build/Editor/Mono/AssemblyHelper.cs:156)
    UnityEditor.AssemblyHelper.AddReferencedAssembliesRecurse (System.String assemblyPath, System.Collections.Generic.List`1 alreadyFoundAssemblies, System.String[] allAssemblyPaths, System.String[] foldersToSearch, System.Collections.Generic.Dictionary`2 cache, BuildTarget target) (at /Users/builduser/buildslave/unity/build/Editor/Mono/AssemblyHelper.cs:162)
    UnityEditor.AssemblyHelper.FindAssembliesReferencedBy (System.String[] paths, System.String[] foldersToSearch, BuildTarget target) (at /Users/builduser/buildslave/unity/build/Editor/Mono/AssemblyHelper.cs:194)
    UnityEditor.HostView:OnGUI()


    Error building Player: Extracting referenced dlls failed.


    Can you please help???!???
     
  9. mihanocho

    mihanocho

    Joined:
    Mar 10, 2015
    Posts:
    296
    This error we have fixed if you want to get update right now. Send us email mihanocho@gmail.com Invoice number with the request. We'll send you the package within 24 hours.
     
  10. pushingpandas

    pushingpandas

    Joined:
    Jan 12, 2013
    Posts:
    1,419
    Ive sended you email with invoice yesterday. Thanks
     
  11. pushingpandas

    pushingpandas

    Joined:
    Jan 12, 2013
    Posts:
    1,419
    Hello, when can I expect the updated version? My production is on hold now :(
     
  12. mihanocho

    mihanocho

    Joined:
    Mar 10, 2015
    Posts:
    296
    Please wait a little time. Thank you for your patience
     
  13. mihanocho

    mihanocho

    Joined:
    Mar 10, 2015
    Posts:
    296
    I sent a package of all who made application.
     
  14. pushingpandas

    pushingpandas

    Joined:
    Jan 12, 2013
    Posts:
    1,419
    Thank you! Will test it.
     
  15. pushingpandas

    pushingpandas

    Joined:
    Jan 12, 2013
    Posts:
    1,419
  16. pushingpandas

    pushingpandas

    Joined:
    Jan 12, 2013
    Posts:
    1,419
    I think I found the problem upload does not work on OSX. When I deactivate upload, patch creation works.
     
  17. mihanocho

    mihanocho

    Joined:
    Mar 10, 2015
    Posts:
    296
    please wait officials version
     
  18. pushingpandas

    pushingpandas

    Joined:
    Jan 12, 2013
    Posts:
    1,419
    Hello, I send you last night a email with screenshots regarding problem. Could you please look and check if I set all correct? Thank you!!!
     
  19. Blueduckraider

    Blueduckraider

    Joined:
    Jan 11, 2014
    Posts:
    8
    Is this working on latest Unity (official releases) ?
    I am interested in testing out the Light version, but wanna know if it's "stable" and not completly broken :p
     
  20. CaptainMurphy

    CaptainMurphy

    Joined:
    Jul 15, 2014
    Posts:
    746
    The full version works quite well. There are a few quirks that I am working out that are probably more specific to our workflow, but it is good for us. I can't comment on the light version but I prefer not to rely on plugins or DLL's for my work.
     
  21. mihanocho

    mihanocho

    Joined:
    Mar 10, 2015
    Posts:
    296
    New version MGPatcherTools and Light sent to, check. If you want to get them now send No Invoice in the mail.
     
  22. ZoneOfTanks

    ZoneOfTanks

    Joined:
    Aug 10, 2014
    Posts:
    128
    Hmmm... this asset seems like a student work - lots of bugs and bad coding - not worth any money so far.
     
  23. J_P_

    J_P_

    Joined:
    Jan 9, 2010
    Posts:
    1,027
    Fairly often, immediately after patching and launching the play scene there will be issues and I have to close and relaunch the application for it to behave correctly (at least on OSX). Thinking it'd be better if the patcher was an external app rather than having the game try to patch itself while running.
     
  24. CaptainMurphy

    CaptainMurphy

    Joined:
    Jul 15, 2014
    Posts:
    746
    We have run into that as well. It just need a switch of some sort that tells it to force a close of the app before continuing to run. So far is seems to be tied with a change to the scene that the patcher is in. We mitigated it by placed the patcher in its own simple scene and limiting changes to it.

    It does looks like you could build the patching into a separate build of the game. It just needs certain folder pointers set during the build of the patcher. It might be able to be packaged to be usable in a basic C# standalone app as well. We may have to look into this, it is a good way to just have patching as part of a separate launcher.
     
  25. mihanocho

    mihanocho

    Joined:
    Mar 10, 2015
    Posts:
    296
    You can make a choice
     
  26. ZoneOfTanks

    ZoneOfTanks

    Joined:
    Aug 10, 2014
    Posts:
    128
    Then why the developer of this asset does not make it like this? The problem of asset store is that poor students with limited knowledge of programming are trying to sell some silly assets. I think Unity guys should pay more attention to this.
     
  27. mihanocho

    mihanocho

    Joined:
    Mar 10, 2015
    Posts:
    296
    You can see your projects?
     
  28. Gaurav-Gulati

    Gaurav-Gulati

    Joined:
    Sep 22, 2014
    Posts:
    52
    Well,MG Patcher works out of the box,had few issues/doubts initially but developer is very responsive and knowledgeable,and helped a lot,though he is a russian and slight low in english and use Translator,still he was able to help me everytime i needed,THANKS for your support and the asset.
     
    Last edited: Oct 11, 2015
    CaptainMurphy likes this.
  29. CaptainMurphy

    CaptainMurphy

    Joined:
    Jul 15, 2014
    Posts:
    746
    Probably because no one has requested it. His code works, it functions right out of the box. Could it use cleanup? Sure. Everyone's code can use cleanup. All the really specific code for the binary diff patching works fine, just basic UI and outer function stuff could use work for the client side. The real issue is there are always going to be multiple use scenarios and it is nearly impossible for an asset dev to think of and prepare for them all.
     
    Gaurav-Gulati and mihanocho like this.
  30. J_P_

    J_P_

    Joined:
    Jan 9, 2010
    Posts:
    1,027
    Yeah, I don't think it'd be too much work to make it external. Have version info somewhere outside the app so the launcher can read it, then just point to the directory and it should more or less function the same.
     
  31. mihanocho

    mihanocho

    Joined:
    Mar 10, 2015
    Posts:
    296
    Need to record video how to make a separate patcher app?
     
  32. pushingpandas

    pushingpandas

    Joined:
    Jan 12, 2013
    Posts:
    1,419
    Yes, please!
     
  33. mihanocho

    mihanocho

    Joined:
    Mar 10, 2015
    Posts:
    296
    MG Patcher Tools - Separate Program.
    In this video tutorial you will learn how to create a patcher like party program.
    Screenshot_1.png

    For an updated package please e-mail with invoice No.
     
  34. mihanocho

    mihanocho

    Joined:
    Mar 10, 2015
    Posts:
    296
    If you have questions, ask
     
  35. mihanocho

    mihanocho

    Joined:
    Mar 10, 2015
    Posts:
    296
  36. mihanocho

    mihanocho

    Joined:
    Mar 10, 2015
    Posts:
    296
    Do I need to make the IOS platform?
     
    Gekigengar and pushingpandas like this.
  37. pushingpandas

    pushingpandas

    Joined:
    Jan 12, 2013
    Posts:
    1,419
    if IOS is possible. yes! please!
     
  38. Lethn

    Lethn

    Joined:
    May 18, 2015
    Posts:
    1,583
    This patcher looks absolutely great, I went and bought it since it looked like just the sort of stand alone thing I needed for my game, what is desperately needed though is a proper and detailed english translated tutorial.

    Trying to follow along the tutorials and figure it all out so that I can use this properly, I wanted to ask though, is there a way to create seperate patcher files and simple have everything install offline without the aid of any patcher connecting to an FTP server?

    I'd like to be able to just have my customers download a .exe file like on old games and then run the patch by itself offline.
     
  39. mihanocho

    mihanocho

    Joined:
    Mar 10, 2015
    Posts:
    296
    Of course you can use offline. Write your Skype in PM I will explain you in detail
     
  40. Lethn

    Lethn

    Joined:
    May 18, 2015
    Posts:
    1,583
    Thanks!
     
  41. AlanMattano

    AlanMattano

    Joined:
    Aug 22, 2013
    Posts:
    1,501
    silent updates
     
  42. gshape

    gshape

    Joined:
    Aug 8, 2012
    Posts:
    104
    Yes please! Will definitely purchase if so, It will be great if Android version is available too.
     
  43. mihanocho

    mihanocho

    Joined:
    Mar 10, 2015
    Posts:
    296
    I tried to make a patcher for android. But faced with the problem of root rights required to access the application.
     
  44. CaptainMurphy

    CaptainMurphy

    Joined:
    Jul 15, 2014
    Posts:
    746
    I am getting errors in Win10, 5.2.2p1 Pro. When I do a build for x86 (the only build I am currently patching for) I get the permissions errors again after a build.

    Code (CSharp):
    1. UnauthorizedAccessException: Access to the path "U:/Projects/Brethren of the Coast/master/MGPatcherBuilder/Builds/" is denied.
    2. System.IO.Directory.CreateDirectoriesInternal (System.String path) (at /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.IO/Directory.cs:131)
    3. System.IO.Directory.CreateDirectory (System.String path) (at /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.IO/Directory.cs:96)
    4. MGPatcherToolsScript.copyToSource (Int32 countArray, System.String platform_name) (at Assets/MGPatcherTools/MGPatcherBuilder/Editor/MGPatcherToolsScript.cs:964)
    5. MGPatcherToolsScript.buildGame () (at Assets/MGPatcherTools/MGPatcherBuilder/Editor/MGPatcherToolsScript.cs:767)
    6. MGPatcherToolsScript.global_settings () (at Assets/MGPatcherTools/MGPatcherBuilder/Editor/MGPatcherToolsScript.cs:596)
    7. MGPatcherToolsScript.OnGUI () (at Assets/MGPatcherTools/MGPatcherBuilder/Editor/MGPatcherToolsScript.cs:626)
    8. System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:222)
    9.  
    Followed by:
    Code (CSharp):
    1. InvalidOperationException: Operation is not valid due to the current state of the object
    2. System.Collections.Stack.Peek () (at /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.Collections/Stack.cs:321)
    3. UnityEngine.GUILayoutUtility.EndLayoutGroup () (at C:/buildslave/unity/build/Runtime/IMGUI/Managed/GUILayoutUtility.cs:278)
    4. UnityEngine.GUILayout.EndVertical () (at C:/buildslave/unity/build/Runtime/IMGUI/Managed/GUILayout.cs:317)
    5. MGPatcherToolsScript.global_settings () (at Assets/MGPatcherTools/MGPatcherBuilder/Editor/MGPatcherToolsScript.cs:605)
    6. MGPatcherToolsScript.OnGUI () (at Assets/MGPatcherTools/MGPatcherBuilder/Editor/MGPatcherToolsScript.cs:626)
    7. System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:222)
    I also see that the x86 build command still has the build options set to show the path when complete.
     
  45. mihanocho

    mihanocho

    Joined:
    Mar 10, 2015
    Posts:
    296
    1. UnauthorizedAccessException: Access to the path "U:/Projects/Brethren of the Coast/master/MGPatcher
    I think this is due to the fact that sometimes the program doesn't delete the folder builds before create a new one. Sorry soon fix that. You can try to create a build. If this error is not getting out the build was successful.
    1. InvalidOperationException: Operation is not valid due to the current
    This error should not affect the operation of the program. We try to eliminate it.
     
  46. CaptainMurphy

    CaptainMurphy

    Joined:
    Jul 15, 2014
    Posts:
    746
    In the latest version the Port box is not actually getting used in MGBuilderProgram. In the LoadInformation method the ftp_port is never actually assigned to the local port variable so it is stuck at the default 21 regardless of what is in the setting field of the tool. Even after assigning the port from the ftp_port it still is showing 21. I didn't dig into it any deeper and just changed the default value in the code to get my stuff back working again.
     
  47. mihanocho

    mihanocho

    Joined:
    Mar 10, 2015
    Posts:
    296
    It is really so. Thank you for this find. Fix
     
  48. CaptainMurphy

    CaptainMurphy

    Joined:
    Jul 15, 2014
    Posts:
    746
    My last couple of builds have been across Unity versions (5.1.1 to 5.1.2 to 5.2.1 to 5.2.2) and so far each one has updated the executable which then makes patches unusable since it is trying to update the running program. Did that standalone patching option come out in the last update? I don't see it in the one I am using now (latest from the asset store 2.3.1.1).
     
  49. mihanocho

    mihanocho

    Joined:
    Mar 10, 2015
    Posts:
    296
    I recently updated the package there should be a separate program function. Write your Skype in PM I will help you.
     
  50. CaptainMurphy

    CaptainMurphy

    Joined:
    Jul 15, 2014
    Posts:
    746
    @mihanocho got me the latest version (while waiting for the asset store to update) and I was able to move the patcher to an outside project and we are doing great now. Any patching program that uses Unity itself for the patching will run into what we did when the compiler updated the executable itself. With this new version we are back up and running and our users are happy!
     
    mihanocho likes this.