Creation/Dev/Update Packages: Difference between revisions

From Graal Bible
No edit summary
(Replacing page with '{{antiunix}}')
Line 1: Line 1:
Update Packages allow you to package files together and allow the user to manually download them when they log in, or force them to download the files when they log in. This is good for downloading certain images or ganis the first time a player logs in to a server or when they are updated, and it will help prevent the game form looking weird while everything loads individually.
{{antiunix}}
 
Note: This is missing some information, but should be enough to get you started on update packages. Experiment with it, some fun stuff may happen :).
 
===Using Update Packages===
Update Packages are based on plain-text files, and have a fairly simple syntax.
 
You first need to add a folder option so that the .gupd file is downloadable.
<pre>file    *.gupd</pre>
 
You then need to create a file called basepackage.gupd. This will specify the subpackages.
 
====Base Package====
Here is the general syntax of a basepackage.gupd file.
<pre>GRPKG001
NAME My Packages
VERSION 1.23
PLATFORM any
SUBPACKAGE package_images.gupd
SUBPACKAGE package_sounds.gupd
USECHECKSUM false
PROTECTOVERWRITE true
FLAG popupforoptionalpackages=false</pre>
 
Lets break it apart piece by piece.
 
<pre>GRPKG001</pre>
All .gupd files must start with this line.
 
<pre>NAME My Packages</pre>
The name of the package. In this case it's name is "My Packages".
 
<pre>VERSION 1.23</pre>
The version of the package. In this case, the version is "1.23" Increasing the version number will result into the Button "Update" to appear in the Updates menu under the desired catagory. Incase the packadge is manditory it will automaticly update.
 
<pre>SUBPACKAGE package_images.gupd</pre>
This line gives the filename of a subpackage, which can contain other files. You can have as many subpackages as you want.
 
<pre>USECHECKSUM false</pre>
A checksum is a modulated number of all the data within a file. It basically allows the download to be checked for any erronous data that may have appeared during the transfer.
 
<pre>PROTECTOVERWRITE true</pre>
Unsure. Though it may be self-explanitory.
 
<pre>MODE required</pre>
Each package is "optional" by default.
Available package modes:<BR>
<B>base</B> - updates are checked at each login; files the player doesn't have will be downloaded directly. (This methode can be slow, depends on the ammount of files listed in the package)<BR>
<B>required</B> - updates are checked if the local version differs.<BR>
<B>optional</B> - only downloaded if the user downloads it trough the "Update" tab and/or the "popup" menu (See below)
 
<pre>FLAG popupforoptionalpackages=false</pre>
Incase the package MODE isn't set to required or base it will result in a popup appearing once the player logs on, asking him/her if he/she wants to dowload the package in question.
 
<pre>PLATFORM any</pre>
What platform(s) this pacakge is available to. In this case it will be available to people on all platforms.
Available platforms: mac,win,linux,any.
 
====Sub Packages====
Subpackages work similar to the base package.
 
General Subpackage file
<pre>GRPKG001
NAME Images
VERSION 1.00
PLATFORM any
DESCRIPTION
Maloria Images. <img src="images/alchemybottlered.gif">
DESCRIPTIONEND
SUBPACKAGE images_guimain.gupd
USECHECKSUM false
PROTECTOVERWRITE true
FLAG popupforoptionalpackages=false</pre>
The only new parameter here is DESCRIPTION. It contains a description of the package. It currently supports limited HTML markup. You must put DESCRIPTIONEND at the end of a description.
 
This points to another Subpackage, which contains the actual files.
 
<pre>GRPKG001
NAME GUI Images
VERSION 1.00
PLATFORM any
DESCRIPTION
Images used for Maloria's GUIs.
DESCRIPTIONEND
MODE required
FILE levels/webgifs/maldefaultwindow.png
FILE levels/webgifs/maldefaultscroll.png
FILE levels/webgifs/maldefaultbutton.png
FILE levels/webgifs/maldefaultcheck.png
FILE levels/webgifs/maldefaultslider.png
FILE levels/webgifs/maldefaulttextedit.png</pre>
This is the general layout of a subpackage that contains files. The only new attributes here are FILE and MODE.
 
<pre>MODE required</pre>
Each package is "optional" by default.
Available package modes:<BR>
<B>base</B> - updates are checked at each login; files the player doesn't have will be downloaded directly. (This methode can be slow, depends on the ammount of files listed in the package)<BR>
<B>required</B> - updates are checked if the local version differs.<BR>
<B>optional</B> - only downloaded if the user downloads it trough the "Update" tab and/or the "popup" menu (See below)
 
<pre>FLAG popupforoptionalpackages=false</pre>
Incase the package MODE isn't set to required or base it will result in a popup appearing once the player logs on, asking him/her if he/she wants to dowload the package in question.
 
<pre>FILE levels/webgifs/maldefaultcheck.png</pre>
This is the location on the clients computer to save the files, relative to the Graal directory.

Revision as of 10:45, 1 July 2007