Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. Dismiss Notice

" Crafty "patching system for Unity projects.

Discussion in 'Assets and Asset Store' started by Deleted User, Sep 20, 2012.

  1. AlanGreyjoy

    AlanGreyjoy

    Joined:
    Jul 25, 2014
    Posts:
    192
    mother of god... and why have I not heard of this sooner? lol. This is freaking amazing.
     
  2. Wasikuss

    Wasikuss

    Joined:
    Aug 16, 2013
    Posts:
    102
    Due to deadlines in my primary work Crafty 1.3.3 Beta will be released on 10.12.2014.

    Crafty 1.3.3 Beta brings to you:
    • Launchie
      • config.json - more powerfull than versions.txt
        • release notes can be specified as any url ( link to file or webpage )
        • patches can use local or external server ( tested with dropbox )
        • url for both patches and release notes can contain "[os]" placeholder. it will be expanded to "win", "mac" or "lin" depending on target plaform
      • callbacks - main API methods now have overloaded methods to set callback via parameter ( easier than using "setOnDone", "setOnProgress" functions )
      • test scenes rewritten and now logic an gui is merged into single much simpler file
    • Patchie
      • in "Add Version" new button was added "Copy version from scene" - it copies version from attached Launchie prefab
      • added "Back" button to "Version `from`" and "Version `to`"
    Sample usage of new callbacks API: http://hastebin.com/raw/dasomecuka

    If someone want to help us bring Crafty 1.3.3 faster, please contact with us. We looking for developers who can create simple test scenes for NGUI and the New UI ( only interfaces, we ourselves will link them to Launchie ). I'm sure that someone can do it faster then us, and we will be able to focus on other things like documentation and binary patching method.
     
    Last edited: Dec 8, 2014
  3. Wasikuss

    Wasikuss

    Joined:
    Aug 16, 2013
    Posts:
    102
    It's weird... last hours wasted to fix error after import new Launchie.dll. I haven't figure what is broken yet. But in Edit -> Project Settings -> Player -> Other Settings -> Optimization -> Api Compatibility Level must be set to .NET2.0. Because of this Crafty Beta will be released in 24h.

    Cheers.
     
  4. Disastercake

    Disastercake

    Joined:
    Apr 7, 2012
    Posts:
    317
    I'm really looking forward to the next version's API enhancements! Were you able to fix the bug you mentioned in your last post, Wasikuss?
     
  5. Wasikuss

    Wasikuss

    Joined:
    Aug 16, 2013
    Posts:
    102
    Hi,

    From yesterday I'am fighting with my laptop. After Windows critical update I can't turn it on. It stuck in endless startup repair loop... See proof in attachments... New Crafty works fine on Windows. Mac and Linux must be tested, but Crafty Beta will be published without these tests and updated ASAP.
     

    Attached Files:

  6. Disastercake

    Disastercake

    Joined:
    Apr 7, 2012
    Posts:
    317
    Sounds like windows >.< Goodluck!
     
  7. Deleted User

    Deleted User

    Guest

    A big apologies from me and main programmer ( Wasikuss ) we know that a lot of people are waiting exited for the update we will do our best to release Demo as soon as possible. ( and slowly think of upgrading our equipment for work ).
     
    hopeful likes this.
  8. launchpad

    launchpad

    Joined:
    Aug 17, 2007
    Posts:
    95
    Second this! Even simply switching off the Remove option would be a help, or simply a list of files to be excluded from checking.

    Thanks.
     
  9. Wasikuss

    Wasikuss

    Joined:
    Aug 16, 2013
    Posts:
    102
    It took some time, but I am back. Laptop now works like a new, to make sure that this kind errors won't happen, now I use Debian. Time was not wasted - now I can confirm that Crafty Beta supports ANY file hosting or cloud drive. Only one requirement - direct download, like Dropbox or Google Drive.

    Crafty Beta will appear on our site at 00:00 UTC+1:)

    //edit:

    Crafty Beta cannot be released due to connection errors with HTTPS servers. Main code was tested in .NET Framework, and everything works, but when running from Unity it crashes because in Mono HTTPS requests must be handled by developer ( http://stackoverflow.com/questions/4926676/mono-webrequest-fails-with-https ). HTTPS is used in Google Drive and Dropbox.
     
    Last edited: Dec 19, 2014
    hopeful likes this.
  10. Mark-Davis

    Mark-Davis

    Joined:
    Jun 21, 2011
    Posts:
    156
    Perhaps something like this would help?
    ServicePointManager.ServerCertificateValidationCallback = (sender, cert, chain, errors) => true;
     
  11. Wasikuss

    Wasikuss

    Joined:
    Aug 16, 2013
    Posts:
    102
    I've seen something similar but not checked yet. If it will work, Cafty Beta will be released same day. Thanks :)

    //Edit:
    There is also other problem. It will help on Windows platform, but on Linux or Mac OS all request use custom class based on TcpClient which also need https fix. Default HttpRequest causes NotImplementedException on Linux and Mac OS (similiar to this http://answers.unity3d.com/questions/612479/how-to-use-systemnet-with-code-stripping.html)

    Best solution will be to write fully working net requests replacement like paid asset UniWeb or based on sockets. But it will take a lot of time...
     
    Last edited: Dec 19, 2014
  12. gottrash

    gottrash

    Joined:
    Feb 24, 2013
    Posts:
    3
    Hey guys!

    Our team is using your solution for updating the game which is pretty cool! Although we have had encountered some problems with it.

    First of the the size, is has been mentioned before but for example, our builds had an increase of 14MB although the filesize of the update itself was around 96MB, this could be because of the binary being messed up because of Unity as you guys already mentioned. The patch contained 1 new model, some changes in 1 scene and added/changes in some scripts.
    I read on a post that putting assets in their defined folder helps? but does it mean like top level folders? Because we have all our textures in a textures folder but that folder has subfolders with the textures in it.

    Secondly and more importantly we encountered some problems with patching the game itself. It has the tendency to completely hang. The game updates and sometime it doesn't. The game still works so I can still interact and everything but it won't download any further or it won't install the patch. Tried to open my game exe as administrator but that doesn't seem to help either. This is pretty crucial to be working as players maybe won't know what to do and dismiss the game.

    This is all on windows OS and we are using Crafty_1.3.2 .

    I really like you product and hope I get a response soon!
     
  13. Deleted User

    Deleted User

    Guest

    Hello gottrash,

    I'm sorry for the late reply but because of the Holidays and New years we were not able to work as much as we wanted making it a bit chaotic here. But now everything is back to normal and we are working once more.

    Today ( at worst case tomorrow ) Wasikuss our main programmer will release new Crafty which will have more changes and updates than ever before, mostly in the patch server communication allowing to use Dropbox and other free servers, but also we did indeed improve patch creation which should provide much cleaner and smaller patches.

    Crafty will be at our website and will be available to download for are Crafty users, it will be still in beta tested mostly on Windows, we prefer to do it this way as there is so many changes made to Crafty we don't want to risk sending product to the assets store before we clean it from all bugs and errors.

    We will always welcome any reports of any kind send to our email at support@penkura.com
     
  14. Wasikuss

    Wasikuss

    Joined:
    Aug 16, 2013
    Posts:
    102
    Hi, Crafty Beta is now available. Tested on Windows, and new config.json works as fine.

    http://penkura.com/assets/crafty/downloads/

    Now I will start testing it on Linux and Mac OS. After that, I will back to fixing errors that we received via email and this forum.

    I will wait for feedback from you :)

    edit:
    I have found that huge amount requests to patch placed on Google Drive can cause error, due to Google requests limits. It will be fixed after implementing mirror servers support to config.json.
     
    Last edited: Jan 4, 2015
  15. youzonggame

    youzonggame

    Joined:
    Jan 4, 2015
    Posts:
    2
    When will the Mobile support be added?
     
  16. youzonggame

    youzonggame

    Joined:
    Jan 4, 2015
    Posts:
    2
    Does it provide source codes when we bought it?
     
  17. Deleted User

    Deleted User

    Guest

    We give open source to the Launchie GUI and Launchie Logic scripts as we want to give full control over how Launchie works and how it looks, ( it will allow you to use build in Unity GUI system to change Launchie appearance to make sure it is adjusted to your project ).

    The only part that is not open source is the patch creation process.

    We will add Mobile support after we will make sure that Crafty works perfectly on Windows, Mac and Linux and after we will release Standalone version of Crafty program.
     
  18. Wasikuss

    Wasikuss

    Joined:
    Aug 16, 2013
    Posts:
    102
    Oh, one more note i forget. Crafty Beta on Linux and Mac OS is missing support of remote patches from SSL enabled servers like Google Drive or Dropbox. Patches delivered via HTTP ( not HTTPS ) should work fine.

    Crafty Beta documentation has been updated. There was missing info how to convert Google Drive link to direct download.
     
  19. odival

    odival

    Joined:
    Jun 11, 2014
    Posts:
    57
    Sorry but I'm a total noob over webserver and stuff. Can you provide some example of the kinds of http webserver this system works with? Would it work with a ftp server?
     
  20. launchpad

    launchpad

    Joined:
    Aug 17, 2007
    Posts:
    95
    Hi,
    I am using the latest Crafty 1.3.2 from the Asset Store. It works perfectly as long as I don't have my program in the Program Files (x86) folder. I have Force Admin and debug turned on. I am using the Launchie1 prefab.

    Even if I compile the Crafty Test Scenes (1 and 3) I still get the same issue, updates fine from a desktop folder but not from the Program Files (x86).

    Attached are the Error files from Crafty Test Scene 3 and Test Scene 1 respectively. Its obvious it cannot write the _Patch to the Program Files (x86) as it doesn't appear within the folder as it does on the desktop folder, so my first thought was permissions, but I thought Force Admin would help here.

    Any thoughts gratefully accepted.

    Edit: Issue observed on Win 7 and Win 8.1

    Edit: I have tried disabling antivirus and firewalls without success. If I drag the folder out of Program Files (x86) and run, it patches fine.
     

    Attached Files:

    Last edited: Jan 6, 2015
  21. Wasikuss

    Wasikuss

    Joined:
    Aug 16, 2013
    Posts:
    102
    odival,
    http://www.ozibox.com is good example. 100GB for free after sign up. I tried to upload 4gb file - no error or warnings but not waited to end of upload. Ozibox allows to direct download, but to get download link you need to do one trick. After upload, open Developer Console of any modern browser ( Firefox - Ctrl+Shift+C ) and watch for network requests ( Firefox - Network ). When you click on file that you have uploaded, the download will begin. Click Cancel and you will see new entries in Network tab, then right mouse click and Copy URL.

    launchpad,
    You're not first developer with this problem, but now I know what's wrong. Since Win7, Program Files directory shouldn't be used for data manipulation. Crafty tries to download patch, but don't have access to Program Files. Right folder to do this can be ProgramData for persistent data or Temp for temporary data. Any update will require admin permisions, because files must be applied to Program Files. Games that using other directories won't prompt for UAC. Soon we will release another branch of Crafty Beta. It will be based on Crafty 1.3.2 without config.json to support Win/Lin/Mac platforms and it will fix this error.
     
  22. launchpad

    launchpad

    Joined:
    Aug 17, 2007
    Posts:
    95
    Thanks Wasikuss. I will use the work arounds suggested while looking forward to your next release.
     
  23. odival

    odival

    Joined:
    Jun 11, 2014
    Posts:
    57
    Thanks Wasikuss, thats an amazing sugestion! =)
     
  24. Mazak

    Mazak

    Joined:
    Mar 24, 2013
    Posts:
    226
    Hi,
    What is the status of V5 support?

    I am ready to make a purchase but we are using V5

    Thanks you
     
  25. Deleted User

    Deleted User

    Guest

    By V5 you mean Unity 5.0 ? If yes than Crafty will be adjusted for Unity 5.0 after we will finish work on Mac and Linux.
     
  26. Deleted User

    Deleted User

    Guest

    Crafty 1.3.3 BETA is available for download >> HERE <<
    In this version we are testing fix for the " Windows program files error ".
     
  27. Mazak

    Mazak

    Joined:
    Mar 24, 2013
    Posts:
    226
    Great, what is the ETA on Unity V5.0 version?
     
  28. Deleted User

    Deleted User

    Guest

    Hey Mazak sorry for late reply, we will do our best to provide Crafty for Unity 5.0 as soon as possible, for sure BEFORE the official release.

    We are making huge progress lately, we found solutions on very big problems which makes us very happy.
    We are sure now that we can easily provide support for Dropbox and Google Drive. ( Which are already working on Windows )
     
    Mazak and hopeful like this.
  29. Wasikuss

    Wasikuss

    Joined:
    Aug 16, 2013
    Posts:
    102
    Crafty for Unity was tested and adjusted to work with Unity 5. Please redownload Crafy 1.3.3 beta and follow instructions in Crafty/Documentation/important.txt. If someone is using other version of Unity also please take look in important.txt
     
    Last edited: Jan 14, 2015
  30. Deleted User

    Deleted User

    Guest

    Crafty information update.

    For the last few months we were working very hard to bring one of the most important feature which we promise to provide from the start, FULL Binary patch creation system. Finally because of the hard work from our main programer we were able to pass all the limitations put on us and create a stable and VERY fast system.

    Below i will provide information gathered from the tests we made between old and new Crafty.
    This system works FOR NOW only on Windows but it is matter of few weeks till it will be added to Mac and Linux.

    Tests were made on Windows 8.1 , Unity 5.0 !

    We will compare Crafty 1.3.2 with New Crafty 1.4. ALSO PLEASE NOTE This Crafty is still in a beta and it will be provided to all the developers who already bought Crafty in the next 24 hours threw our website.



    Tests were made on two very complex builds made out of over 800 files, the main difference between them is that Build 1 haves 21 scenes when Build 2 additional one making it 22 Scenes. Additional scene adds around 70 Mb of data.



    One of the most difficult thing for us was to code a system that not only creates small patches but also dose so with great speed. We didn't wanted our users to wait 10 + hours to create a simple Binary patch for their 10 GB projects.
    As you see here old Crafty required 5 minutes 48 seconds to create patch from 2 builds ( around 3,6 GB of data ) which is already very good, but thanks to our programer Wasikuss New Crafty will do this operation over 890 % faster than the old Crafty breaking all our previous records.



    Now the patch size part, as you already see new Crafty is not only incredible fast but also creates MUCH smaller patches, over 530 % smaller than the Old Crafty. Also thanks to the compression system the data that was cut off between the builds was also compress by 50 %. Making Patches actually smaller than the difference between those builds.
    Of course patch sizes may vary depending on what builds you are making patches from ( their size, complexity , amount of files ) but from what we can understand the bigger the project the better the patches. There were tests where patches were only around 80 % better ( small projects ) but we had also tests made on 9 GB in size projects where patches were over
    9 000 %
    ! smaller. For now we stay with the 530 % improvement in patch size.

    This Crafty will be available for Windows in the next 24 hours for all the users that already had bought Crafty.

    Mac and Linux will be added as soon as possible.

    Thank you for the patients given to us from most of the users, we do our best to provide as good of a product as we can but please remember there is only ONE programmer working on all of this and more. It takes time to create updates for this product but as you can see, it is always a big leap forward.
     
    Last edited by a moderator: Jan 16, 2015
    Mazak and hopeful like this.
  31. TheFulla

    TheFulla

    Joined:
    Jul 21, 2014
    Posts:
    16
    Hi there,

    I am using Crafty v1.3.2, and am experiencing updater crashes in OSX, I have builds and patches working in Linux and Windows for the current build of my Unity project, I don't get any output from the updater and the process just hangs until I Force Quit the updater, the resulting application crashes from this point and I'm a bit stuck. Any suggestions are welcome as I've no idea what to do :/ This application is used by many many thousands of users and getting my client to ask their users to download a new build will not go down well.
     
  32. Deleted User

    Deleted User

    Guest

    What Unity version you are using ?

    Current Version won't work correctly on Unity 4.6 and Unity 5.0 when it comes to Mac and Linux, Only Windows is supported on those two Unity versions with Crafty available on our website.
     
  33. TheFulla

    TheFulla

    Joined:
    Jul 21, 2014
    Posts:
    16
    Thanks for The speedy response, I am using Unity version 4.5.5f1.

     
  34. Deleted User

    Deleted User

    Guest

    I already informed Wasikuss on your problem, we will test Unity 4.5.5f1 tonight IF it really is very important for you to get this as fast as possible than i think we can create a swift fix for this problem but it won't yet have our new binary system that is now on Windows.

    Also can you provide any more details on the error ? Do you have any errors notes next to your game folder, and are you using Debug mode to check for any problems ?
     
  35. TheFulla

    TheFulla

    Joined:
    Jul 21, 2014
    Posts:
    16
    Thanks for picking this up :) It is quite important for me to get this update released asap, I'm not bothered about any new systems at the moment, so long as I can get an update out.

    I wish that I had been using the Debug mode to check for problems (This is the first one so I didnt think I needed it), I dont get any output from the patcher in form or error notes or anything. All I can observe is that the updater process hangs, and leaves a __patch folder and an updater file behind. I wish that I could provide more detail :/
     
  36. Deleted User

    Deleted User

    Guest

    Don't be worried we do understand that it's sometimes difficult to provide more information on the problem. We will do our best to help you as fast as possible based on the information you already provided.
    The moment we will be able to duplicate the error it should be a swift fix.
     
  37. TheFulla

    TheFulla

    Joined:
    Jul 21, 2014
    Posts:
    16
    Thanks heaps :) I hope you guys manage to find the error.
     
  38. Deleted User

    Deleted User

    Guest

    TheFulla can you please contact us on support@penkura.com so that our programmer may send you the fix for Crafty when it will be ready for testing.
     
  39. StarGamess

    StarGamess

    Joined:
    Jul 21, 2014
    Posts:
    179
    Does this prodect have support for dropbox or Google drive or something like this?
     
  40. Deleted User

    Deleted User

    Guest

    Yes it dose. For Google Drive And Dropbox, they are both already supported.

    Few posts above there is more information provided by our main programmer Wasikuss about Crafty Beta which supports dropbox and google drive thanks to our new system. ( config )
     
    Last edited by a moderator: Jan 19, 2015
    StarGamess likes this.
  41. TheFulla

    TheFulla

    Joined:
    Jul 21, 2014
    Posts:
    16
    Thanks I have emailed :)
     
  42. Mazak

    Mazak

    Joined:
    Mar 24, 2013
    Posts:
    226
    Are you still taking U5 beta testers? We have both PC and Mac's that could be used for testing.
     
  43. Ub3r

    Ub3r

    Joined:
    Nov 12, 2013
    Posts:
    6
    Greetings,

    I'm trying to get Crafty working and am unable to unfortunately.

    Simply put, your "stable" 1.3.2 release just doesn't work in the current version of Unity (4.6.1f1). You have 3 test scenes, 2 of which are broken off the bat. The third one (Scene2) "can" work, however not 100% of the time. My patcher gets to 90-99% and then fails. Sometimes it just sits there with _guiState == 0 and doesn't do anything. Sometimes it DOES work and successfully patches once, then hangs up and gets stuck the next time on _guiState==0. I added some debugging lines to your LaunchieLogic and it appears that the issue is around this line in the waitTime() function.

    new Thread(Asyncwork).Start();
    I get this error in the logs

    get_enabled can only be called from the main thread.
    Constructors and field initializers will be executed from the loading thread when loading a scene.
    Don't use this function in the constructor or field initializers, instead move initialization code to the Awake or Start function.​

    That being said, I tried downloading 1.3.3 and 1.4.0 beta versions of Crafty Patcher from your guys website, sadly to find that these come with almost zero documentation and are incomplete archives in themselves missing required files to run. I also tried emailing you guys a couple days ago but no luck, which is why I'm posting this here with my fingers crossed again. Any further information would greatly help. Thanks!

    -Dan
     
  44. Deleted User

    Deleted User

    Guest

    We did replay to your email. But you provided little information on the problem so i did send you an email asking for more information over 8 hours ago. Also we didn't got any emails from you " couple of days ago " we only got one from yesterday. I checked archive just in case but there is only one from yesterday, which i replayed to as soon as i could which is 13 hours later.

    Below copy of email.

    Hello,
    I'm sorry to hear that you have a problem with Crafty.
    Can you please provide us with a little bit more information:
    What Unity version you are using ?
    What version of Crafty you are using ?
    On what system you are testing Crafty ?
    Are you using the test scene from Crafty and if so which one ?
    We need those information to have a base idea on what could go wrong.
    With regards,
    Penkura Support Team

    Mazak towards your question.

    You don't have to ask, everybody who already bought Crafty can simply go to our website and download Crafty 1.3.3 and test it out on Crafty 5.0. Please keep in mind it is still beta and we will add a little bit more features and many fixes till we will officially release it with full documentation.

    Also please make sure to not download 1.3.2 if you want to test it out on Unity 4.6.+ and Unity 5.+.+ because as i stated before Crafty 1.3.2 won't work on Unity 4.6 because of the changes made to Unity GUI
     
    Last edited by a moderator: Jan 20, 2015
  45. Ub3r

    Ub3r

    Joined:
    Nov 12, 2013
    Posts:
    6
    You're correct that you did respond to my email, my apologies. Gmail tossed it in the Spam folder.
    It did the same with the registration to your website. Now that I look at it, you're correct, it was not 2 days ago technically. I've got a wacky sleep schedule so it seemed to be for me, however I was mistaken. My apologies.

    Anyway, I appreciate the reply and apologize for the confusion.

    If you don't mind, we can continue the troubleshooting on here so maybe others can benefit if they have the same problem.

    What Unity version you are using ? 4.6.1f1
    What version of Crafty you are using ? 1.3.2 stable, 1.3.3 beta, 1.4.0 beta
    On what system you are testing Crafty ? Win7Ultimate
    Are you using the test scene from Crafty and if so which one ? for the errors described above, scene 2 from 1.3.2 stable. none of the other ones worked out of the box for me in a test project with the test scene.
     
    Last edited: Jan 20, 2015
  46. Deleted User

    Deleted User

    Guest

    It's ok you are not the first to get our email to the spam box i really need to do something about it ( if there is even anything to do about it ).

    Our programmer is right now checking the script, if its a small fix than 1.3.3 will be updated with new download pack, if it's something bigger we will add it to the Mac fix and post it as 1.3.4 on our website as a next BETA version. After that we just need to add few more adjustments, rewrite documentation and it should be ready for the final release.
     
    Last edited by a moderator: Jan 20, 2015
  47. Mazak

    Mazak

    Joined:
    Mar 24, 2013
    Posts:
    226
    Thinker, I have not purchased yet. Above you stated if you bought it by the end of last Thursday from your website.

    That is why I am asking, can I purchase it in the next 24 hours and become part of the beta?
     
  48. Deleted User

    Deleted User

    Guest

    Sorry for the miss understood, No matter when you buy Crafty after you bought it you will ALWAYS have access to our website beta testing, all the versions that are available on the website will be accessible to our users.
     
  49. Mazak

    Mazak

    Joined:
    Mar 24, 2013
    Posts:
    226
    Thanks Thinker! I will buy it later tonight

    You can checkout our project at www.megawars.net
     
  50. Wasikuss

    Wasikuss

    Joined:
    Aug 16, 2013
    Posts:
    102
    Ub3r, waitTime was added to repair weird problem - sometimes Crafty was crashing if you started downloading patch immediately when game starts. If you waited couple seconds no error was shown. No get_enabled(), enabled or .Enabled was found in all .cs files. It would be great If you have some informations where/when it is happening. If not, then we ourselves will try to find the problem. "... incomplete archives ..." - sorry, while removing .meta files, ErrorHandler.cs was accidentally removed - already fixed. Documentation is our biggest problem. With limited time we try to fix errors first, then we need rewrite docs. Due to almost any change, damage the original formatting and images - it will be rewritten to online documentation with optional download.