Online Installer/Updater ala WebStart

As requested in this thread: http://www.jmonkeyengine.com/jmeforum/index.php?topic=6477, I am releasing the sourcecode of my homegrown online updater (showcased in that very thread).

I found it more convenient and feasible to release my project using this little software rather than WebStart, even though WebStart is far more powerful and complete.

The software isn't as easy to use as I'd like it to, but I added a few comments here and there, and a very brief README that might get you started if you want to use it.

Anyway, you can find all you need here:s

http://wwwhomes.uni-bielefeld.de/krabien/jmestuff/onlineUpdater/

Hi hevee!



launch.jnlp file takes so long time to download the necessaries!



Do you upload any source code!



Eager for play! :slight_smile:

dinhnguyenquoc said:

launch.jnlp file takes so long time to download the necessaries!

This project isn't meant to be webstarted, the parts are for downloading and then to be adjusted and uploaded for your own webserver.
Also this isn't something you could play or even run out of the box! That would be over in the other thread I linked.

dinhnguyenquoc said:

Do you upload any source code!

It's in the src.zip archive.

You Hero !!!.





Im still finishing off the terra stuff ( almost there, should be on or around the weekend ), then can have a look at this in depth.





What is needed in this project, what are your intentions… presumably updating differences in a jar as aposed to downloading the whole jar.

Configuration ???,

Maybe also as a background loader?? ( updating maps and things which are not immediately needed )

There is no patching of large files. My project is organized into a lot of small files, if they change (checksum) they'll just be downloaded again. Also, there is no compression for the downloads.



The one and only feature of my software is to compare checksums of files in a local directory against their counterparts on a remote location (web server), and to re-download changed files from said remote location.



The configuration is mostly done in the config.xml file, the one on the server should be documented well enough to get you started. To update files from your local directory to the web server, you can use the admin tool as described in the README.

You'll have to replace the filesList.ufl on the webserver with the local.ufl generated by the admin tool after uploading the files.

Hi Hevee, just wondering, what are some of the major drawbacks you've experienced with Webstart that prompted you to write your own updater? By any chance, did you at one stage consider using the 3rings code: http://www.threerings.net/code/getdown?

yunspace said:

Hi Hevee, just wondering, what are some of the major drawbacks you've experienced with Webstart that prompted you to write your own updater?

I just found webstart a bit hard to configure for my scenario (changing native libs, maintaining a directory hierarchy with lots of resource files).
Besides that I wanted a tool that could tell me which files to update on the repository server after making changes to the game world.
Plus there have been some rather obscure bugs with WebStart not properly updating required libraries. The option to display a custom image (or maybe a web page with some more coding) while the user waits for the downloads to complete is a nice bonus.

yunspace said:

By any chance, did you at one stage consider using the 3rings code: http://www.threerings.net/code/getdown?

No, I never heard of that before! Sounds like it does the exact same thing as my updater, though from skimming their docs I'm not quite sure if it supports folder hierarchies.

Nice call yunspace,



Leaves me confused though why 3 rings have a nullsoft installer for puzzle pirates as well as getdown ??

hevee said:

No, I never heard of that before! Sounds like it does the exact same thing as my updater, though from skimming their docs I'm not quite sure if it supports folder hierarchies.

From what I read, the default logic is to just dump everything inside a .dir the user's home directory, they don't have the nice feature of prompting for target install dir provided your updater. Darkfrog looked at getdown in a previous post, and pointed out it might also be restricted by being inside an applet.

theprism said:

Leaves me confused though why 3 rings have a nullsoft installer for puzzle pirates as well as getdown ??

I think their is an platform specific installer if you don't want to start from their website all the time. But everytime you run the game, getdown + Snark (Torrent library: http://www.threerings.net/code/snark/) will be used to download the updates etc.