ZUpdater - A Multiplatform Online/Offline Game Updater Tool

ZUpdater - A Multiplatform Launcher and Game Updater Suite
Currently Supported Platform: Windows, OSX
Might work, but untested: Linux Testers and Developers Welcome!

&stc=1&d=1465444420

Hey there!

I’ve created this Launcher and Game patching/updating suite for my project and I thought many people from the community might be able to use it on their projects!

The source code is currently available on GitHub!

Features:

  • Multiplatform
  • Open Source
  • Easily creates patch files to upgrade your project on clients
  • Files are compressed using LZMA2 algorithm, resulting in smaller patch files
  • Uses wxWidgets to render windows on your preferred platform
  • No need for external dependencies on Windows!
  • Skinnable
  • Command-line tools avaiable according to your preference
  • Automatically Download-and-Apply patches
  • (Launcher Only) Display the Change Log for your patches

It has been tested a lot under Windows and seems to be solid and ready to be use in a fully featured project.
It was reasonably tested on Mac platforms, seems solid.
Linux version wasn’t tested, but should work without any problem. (Candidates are welcome!)

On my tests, I was able to compress my 1.4gb game to a 250mb file and a ~300mb file changes compressed to ~80mb patch file.

A few more screenshots:
[spoiler]

&d=1464913238

Old white skin

&stc=1&d=1464771475

Windows Visual Create Patcher tool

&stc=1&d=1465444371

Mac Visual Create Patcher tool

&stc=1&d=1465444379

Mac Dark Launcher
[/spoiler]

I could definitely use some aid in improving the tool, so if there’s a feature you’d like to add to the patcher, please, submit a pull request!

I’m anxious to see what you think of it! :smiley:

Cheers!

Thanks! I’ve been looking for something like this to help me extend my own basic C# launcher/patcher.

I’m glad it’s helpful to you.
If you happen to fix/improve something, please, be sure to do a pull request! :smiley:

For those interested, I started making a GUI for the system.

This one is a proof of concept for the patch creation tool.

&stc=1&d=1464771475

This should run on MacOS and Linux with native look, since it uses wxWidgets. Also, the window can be skinned as necessary.

If someone can create a Makefile for me, I’d really appreciate it! :slight_smile:

Since everything gone well with this proof of concept, I might move on and create a game launcher :slight_smile:

I’m creating a GUI utility for the patcher.
It seems to be working very well, stable.

I’ll post here once it’s ready for a test :slight_smile:

https://github.com/TheZoc/ZPatcher/pull/3

Done. If I get some free time on my hands, I’ll see what I can do about the online stuffs.

Thank you very very much! I’ve added comments there! :smiley:

Since libcurl is a mature library, knowing the details of it’s Makefile should be enough to add it to the online projects Makefile.
Also, this morning, tinyxml2 accepted a pull request for a Makefile that allows it to be compiled as a static library. This should aid us :smiley:

The visual projects (VisualCreatePatch and ZLauncher - last one is not committed yet, it’s the screenshot above), uses wxWidgets. Also a mature lib, shouldn’t be very hard to integrate.

Thank you again for helping in my request! Being new to *nix development, it’s a whole new world to learn and your pull request sure answer many of my doubts!

Cheers!

Comments back at you.

You’ve heard of package managers, right? :stuck_out_tongue:

A quick check of my PM’s repos shows tinyxml2 and associated -devel package (the others are there too, but they’re mature enough that’s a given), so there should be no necessity to compile for *nix; just link against the shared libs.

That being said, there are pros and cons associated with shared vs. static linking (and using the OS’s libs vs your own). I’ll assume you are familiar with them – and if not, I’ll be happy to give you a run-down – so it’s your call.

I decided to reply on github, better to center that discussion there imo :smiley:
Thank you again! :smiley:

Did a major update on this. I hope more people check it out and try it!

I’ll update README.md on GitHub tomorrow or so, but you’re welcome to try before it and post any doubts :smiley:

Updated GitHub with the latest information
If anyone has doubts, please post here! :slight_smile:
(And, please, avoid PMs… Your doubts might be other people doubts as well! :wink: )

Small bump on this tool. Updated title to show everyone it’s free :slight_smile:

Edit: Can a moderator edit the main thread title, please? :slight_smile:

Hey @Zoc - This is an awesome tool going to give it a shot :slight_smile:

Thank you! :slight_smile:

If you have any doubts, just ask!

Hey everyone,

ZPatcher just got updated to Version 3, and I thought you’d appreciate an update about this.

You can download the latest version and check the source code at GitHub - TheZoc/ZPatcher: A suite to Create and Apply patches to application and games. !

2 Likes