ScriptUO

Official ScriptUO EasyUO Scripts => Scripting Chat => Topic started by: Cerveza on September 20, 2011, 06:04:57 AM

Title: Keeping track of script versions
Post by: Cerveza on September 20, 2011, 06:04:57 AM
Please change version numbers and dates in some kind of header when you update or make any changes to scripts.

Here's an example of a header type you can use:

Code: [Select]
;=================================================================
; Script Name: Cerveza's Example of a Header
; Author: Cerveza
; Version: 1.3b
; Shard OSI / FS: OSI / FS OK
; Revision Date: 2/24/2009
; Purpose: Show people what a header looks like
; Globals: None
;=================================================================
; Special Instructions: You can put in some of the setup
; and running instructions here. Any disclaimers you want or
; any other information you want the user to know about your
; script. A more detailed Purpose could go here as well. If
; your script is a sub routine, you MUST include how to call
; the sub in this section:
;
; %1 - NPC ID
; %2 - Item ID
; %3 - Number of Items
;
; set %npc_id XXYYZZ1
; gosub TM_BuyAgent_ID %npc_id OIK 5 ; 5 wooden shields
;
; Thanks: {Name and reason}
;=================================================================

I like to put the version number in the script right after the header as well:

Code: [Select]
set %version 13b
There are several reasons for keeping the version updated. Here's one example...

You release version 5.0 of your kickazz monster slaying script. Several people download it because they loved versions 1 thru 4 and are excited about getting version 5. One guy notices you mislabeled a gosub, so your kickazz monster slaying script now drops all your worn items into your backpack. He posts it up as "yo, my stuffz dropz inta mey pak! wazzup?"

You reply with, "OMGooses, I mislabeled a gosub, lemme fix".

At that point you fix version 5.0 of the kickazz monster slaying script and upload it again without changing the version.

Now, all the other people who d-loaded the "drop my stuff in my pack" version have v5.0 without the fix, and the most recent version is v5.0... I'm not saying that our members here are twits, but some of them know little more about EasyUO and scripts then loading and hitting play. It's our responsibility to keep them from dropping their stuffz into their pakz.

You get the idea. Every change made to a script should have a revision change. Now, personally, I like using a three digit version like 1.00 on all my stuff. Minor changes like typos and such get a .01 change. Changes that don't warrant a new version get a .1 change. Major changes get a new number.

In addition to all the above, don't keep more then 2 versions of a script posted up. Normally that means you have version 1.00 that is a solid working version, and you have version 2.0b (beta) that is being tested. Once 2.0b is known to work without problems, then change it to 2.0 and remove 1.0 from the post.

What we want to avoid is attachment hell like:

Attachments
kickazz monster slayer v0.5
kickazz monster slayer v0.5a
kickazz monster slayer v0.7
kickazz monster slayer v0.725
kickazz monster slayer v0.7265
kickazz monster slayer v0.801
kickazz monster slayer v0.802beta
kickazz monster slayer v0.802betaWithMenu
kickazz monster slayer v0.9Menu
kickazz monster slayer v0.914RemoveMenu
kickazz monster slayer v0.915MenuAgain
kickazz monster slayer v0.916MenusSuck