AutomaticUpdater Special Usage

Hi,

I'm interested in using your product for a game my company is working on. I've looked through the documentation and source code and still have a few questions I'd like to ask directly.

A brief overview of my plan:We have a game written in C# for PC. We plan to release regular updates for it which we'd use wyUpdate/wyBuild to create. The game will have a launcher that does the patching/updating of the game. The launcher itself would also occasionally need updating.

My question:I'd like to use something similar to AutomaticUpdater, except without a UI. The issue is that the patcher will be updating a separate application. What is the best option for one application updating a second application? Do you supply a .dll that I can link my project to that exposes more functionality than the AutomaticUpdater. Such as a source directory to use for the update process.

Thanks for your assistance,Alistair

Hey Alistair,

The game will have a launcher that does the patching/updating of the game. The launcher itself would also occasionally need updating.

Is there any reason that you're using a launcher that does the patching? Why not integrate the updating directly within the game?

What is the best option for one application updating a second application?

If they are part of the same "product" (i.e. they may be different exes, but they all reside in some folder like C:\Program Files\YourGame ) then there will be no problem at all. You can check for updates, and update all files (including the launcher).

I'd like to use something similar to AutomaticUpdater, except without a UI.

You can use "KeepHidden" property to keep the AutomaticUpdater UI hidden. Then use the AutomaticUpdater events to control your patches.

Do you supply a .dll that I can link my project to that exposes more functionality than the AutomaticUpdater.

No. The AutomaticUpdater exposes all of the functionality that it uses internally. We do plan on releasing the AutomaticUpdater source a little later this week. It will be licensed under the LGPL.

That being said, what exactly is it that is missing?

Such as a source directory to use for the update process.

I'm not quite sure what you mean. Can you give me an example?

---Is there any reason that you're using a launcher that does the patching? Why not integrate the updating directly within the game?

The main reason for this is to have the original download as small as possible for the end user (in the order of a few MB). The first time through the launcher will download the game while keeping the user entertained.

Would it be possible for Version 1 to be the tiny install (which I ship to customers) and then V1.1 would be the large file and it could patch from 1 to 1.1 automatically, which in fact would be downloading the bulk of the game?

---If they are part of the same "product" (i.e. they may be different exes, but they all reside in some folder like C:\Program Files\YourGame ) then there will be no problem at all. You can check for updates, and update all files (including the launcher).

Excellent, would both exe's be contained within the wyBuild project? I think my way of thinking is slightly different to yours and your way is actually the better solution.

---You can use "KeepHidden" property to keep the AutomaticUpdater UI hidden. Then use the AutomaticUpdater events to control your patches

Thanks for the link, I've had a quick look and this looks like everything I'd need, except perhaps a % complete, or is this covered with ProgressChanged?

---No. The AutomaticUpdater exposes all of the functionality that it uses internally. We do plan on releasing the AutomaticUpdater source a little later this week. It will be licensed under the LGPL.That being said, what exactly is it that is missing?

Now that I have the list of properties and events (from your previous answer) I think I should have everything I need. I'll have a further investigation soon and let you know if I'm still missing anything.

--I'm not quite sure what you mean. Can you give me an example?

This was more leading from my first question. I was thinking of having say the launcher installed to "C:\Program Files\Launcher" and the game installed to "C:\Program Files\Game". I was wondering whether I could have the launcher then run pointing at "Game" without any issues. However as you've brought up, it's probably better if the game and launcher are more of a hybrid in the same directory.

Thanks again for the prompt response.Alistair

PS Quote's aren't working for me as BBCode is off

Would it be possible for Version 1 to be the tiny install (which I ship to customers) and then V1.1 would be the large file and it could patch from 1 to 1.1 automatically, which in fact would be downloading the bulk of the game?

Sure, if that's how you want to do it.

Excellent, would both exe's be contained within the wyBuild project?

Yes.

Thanks for the link, I've had a quick look and this looks like everything I'd need, except perhaps a % complete, or is this covered with ProgressChanged?

It's covered with ProgressChanged and UpdateStepOn.

PS Quote's aren't working for me as BBCode is off

Unfortunately there's no way to reenable the quote BB tag without reenabling all the tag types. And phpbb lets spammers in. We'll be switching to custom support software early next year - thus solving all 3 problems (phpbb, spammers, and lack of proper tags).

Awesome, thanks Sam. I'll spend some time investigating wy usage and let you know if I have any questions.

Thanks,Alistair

Is there a way to do the actual patching process (after the patch has been downloaded) silently? Currently I download the patch, and upon starting the application the next time it brings up your installer window and installs the patch. Is it possible for me to do this silently? As I've mentioned, I plan to have a "launcher" which this process can be performed by.

Thanks,Alistair

Is there a way to do the actual patching process (after the patch has been downloaded) silently?

Well, the extracting and patching is done silently. The actual file copying, however, requires wyUpdate to be visible. There's no way around this, I'm afraid. The plus side is that downloading, extracting, and patching accounts for the largest part of the updating process.

You can always customize wyUpdate.

Ah, perfect, thanks Sam