[RELEASED] Coffee Auto Patcher - Full Windows/Mac/Linux Support

The Coffee Auto Patcher System is designed to get updates of your game into your players hands automatically, with no interaction from the player. Asset can be found here.

If you have any questions regarding the asset or support, please feel free to contact me here or at CoffeeBns.com

NEW IN VERSION 1.0.0.5!
Fully Supports Windows Mac and Linux Builds as well as full support for an interactive Changelog and Launcher updates. Also created a full video setup guide along with the PDF guide to get it implemented into your project in under 10 minutes.

The Coffee Auto Patcher can be fully customized and personalized by you and works with any CDN or File Host but comes with additional features and setup guide for using Amazon S3.

The system comes with an additional Deployment application to deploy your updates in One Click to Amazon S3 on the backend. Rapidly deploy new builds and get feedback from all of your players and testers faster than ever.

The package comes with a full PDF guide on setting up a new Amazon S3 account and full configuration for using the Coffee Auto Patcher with manual Patch Deployment to any CDN or Filehost and integration of the WPF Source Files.

-System can be integrated into any Windows Linux or Mac Platform project in under 5 minutes.

-Easy to use, import into project and set your options.

-Coffee Auto Patcher will automatically download just the necessary file updates for your players to ensure that you save precious bandwidth and quickly get your clients updated

-Comes with full Source Code for both the Launcher and Deployment WPF apps for you to customize to your liking in additional to the Coffee Auto Patcher.

Tested in Unity 5.3+

EDIT: I do not check this thread as often as I probably should, if you want faster support or have questions, please check out the discord channel CoffeeBns.com as I will be available on there during most parts of the day.

2 Likes

I have a few questions: Can it be run as a stand-alone patcher?
What is the update method? Is it bit-wise, or differential file? Does it create installation packages, or just executables?

You might consider placing a link to this forum on your asset store page. If you answer questions on this forum it will give us a wealth of information to peruse.

3 Likes

Very interested in this, but confused about this comment on the asset store reviews:

“In the future I’d definitely like to see a method of only updating the changed assets rather than the whole bundle.”

I’m probably misunderstanding, but isn’t that the whole idea – to update the changed assets only? Can you clarify?

thx
Dave

Right now if you make a change to a single file the patcher would only update that single file. Due to how Unity currently bundles assets, if you make a change to one prefab in scene 1, it will update the entire scene1.asset file. So instead of just allowing to patch just the 1kb change, it may be updating a larger .asset file instead. I am looking into other options to get around this restriction within Unity.

Thanks for the clarification. Would be great to figure that out (my “resources.assets” file is 600mb).

1 Like

Will this work with Google Drive or Microsoft OneDrive??

Does this have both incremental and full game support – that is, if I make 10 patches over a period of months, does someone just downloading the game for the first time get a single download of the full, most recent game, or do they have to download all ten patches?

And are you planning to add this soon, or is it not in the works?

I’ve only just started working with it, but I already see several improvements that could greatly improve the workflow for developers using this tool.

The main issue I’ve found is that developers have to change the Inspector values when switching target build platform, something which can occur frequently when releasing patches for both Windows, OSX and Linux. Having the patcher detect the currently running platform using Application.platform, and automatically selecting the proper file extensions would save a lot of trouble.

The UI of the examples don’t properly scale with different resolutions. Set the Canvas to Scale with Screen size, set the reference resolution to full HD 1920x1080, and set it to fully match to height. That way, no matter what size the screen is, it’ll only adjust the ingame screen width.

The scripts of the operators control both the mechanical and the user interface functionality. It would be much more clean and adjustable if one script handles the back-end of the operator, while another updates all the UI. This’ll make it much easier for developers to customize the launcher.

The Guide.pdf is pretty good, but I at first didn’t realize the patcher updates the game while the game updates the patcher, and I didn’t realize the patcher required to be a seperate Unity project. Perhaps the guide can be improved for future devs by including a short summary at the beginning explaining the abstract concept behind the patcher; that it uses two projects which both update each other.

Aside from those factors, the plugin looks pretty good so far. Haven’t tested it yet, though, that’s up next.

2 Likes

I’m a new user and I’m using the latest current asset store Vr. 1.0.16

There were some bugs and the author is correcting them.

Haaa… so it will download all the 600Mb each time there is a small change.
So what he is claiming here is not totally true and is the reason why we purchase it:

https://www.youtube.com/watch?v=m3y8bOg6ams

I Hope that patch binary differences will be implemented.

edit:
The support of this asset was incredibly good and more important effective!

3378398--265076--upload_2018-2-2_16-8-10.png

I purchase it because the launcher is not square borders are irregular and looks like this:

After working with the author we find the problem. Is pushing a new update!
T__he support is awesome!__

CoffeeBnS
Also, Include the user’s question in the documentation with the answers

How is the compleat and detail process to configure the launcher so that it looks transparent borderless?
Can you expand the Documentation and include:
Do I need to activate the boolean Use Transparent Window = true in the inspector?
and what else?
What it does this boolean?
Where is the option for BorderlessWindow and what is for?
Do I need to change the camera properties to “Depth Only”?
Do I need to change the camera colour to transparent?
Do I need to change the camera colour to much the Chroma material colour?
Do the camera background colour needs to much the material colour?

All patches will always just be incremental. Your new users will just download the files that have been updated from what they already current have.

1 Like

Hello, it should only require you checking the box for UseTransparentWindow and have Windows Aero enabled. No other adjustments should have to be changed. The camera color you will want to leave as the color that is in there or match it to the mask color from the ChromaShader.

If you have further questions or issues, please hop onto the Discord chat where I can assist you more quickly.

https://discord.gg/9WYC2sQ

Um, a new user doesn’t have any files already. But they’ll get the most recent version of each file, regardless of the contents of each patch?

In regards to the large downloads for resources.assets, you and all other users can manually build static asset files to avoid having unity bundle them up with frequently changing assets. That will ensure that your patches are always small.

1 Like

I will definitely check this next week. In that case, this asset looks promising

Does this create binary diff small patch files?

I’ve been looking for a patch solution and will be purchasing within the next week.

@julianr the asset page says…NEW IN VERSION 1.0.19! New Fast File Checking method added with up to 1000x faster patcher and in game file checks. Huge performance gains for those with larger projects.

1 Like

Well, I need to choose a patching tool now, but still some unanswered questions on this:

Awhile ago I asked:
Does this have both incremental and full game support – that is, if I make 10 patches over a period of months, does someone just downloading the game for the first time get a single download of the full, most recent game, or do they have to download all ten patches?

The developer replied:
All patches will always just be incremental. Your new users will just download the files that have been updated from what they already current have.

But that wasn’t my question. A new user doesn’t have any files already. Will they have to download all ten incremental patches or will they only have to download the the most recent files?

And for this:

What is a static asset file? How does one create them?

A new user will only have to download the patcher, though it is recommended for brand new users you just have them download your entire game. You could have them download just the patcher and it would download the game from there instead though.

There are no patch files being created by the patcher. It is just feeding the client the files from the server that are different than the files that they have on their machine (or the files that are missing.)

In regards to static asset files, that is bundling your assets using the methods described in https://docs.unity3d.com/Manual/AssetBundlesIntro.html

in order to prevent Unity from just bundling up files separated by scenes. This will prevent unity from having larger patches than necessary, but requires a lot of work on your end to implement. It is not a very big deal if your game is not very large though.

Once Unity finally releases Addressable Assets this process will be made even easier and smoother as well.

Sorry about the delay in answering this question, the original email came in at a busy time. As mentioned before, Discord is a better place to reach out to me to get more immediate support as I check that daily.

1 Like