﻿
---- 0.56a --------------------------------------------------------------------
---- 08/12/2004

06-10-04, Vjaka
- Removed DISGUISE(NAME/VERSION), renamed the current version to 0.56a.

07-10-04, Vjaka
- Removed AGREE config line neccessaty since it is not longer R* series.
- Added startup expansion set support output depending on map*,statics*,staidx*
  files found and loaded (T2A, LBR, AOS, SE).
- Removed EF_New_Maps since it is integrated to source now, packet is sent when
  needed.
- Moving on other map now moves the same map on the server. But this currently
  does not use caching and re-read tile information from map files every time.
  Caching of same sectors but in different mapplanes will be in the future.
  You should both add regions for these maps, and place corresponding files in
  place where all other mul files resides.
- Changed values of EXPERIMENTAL flags to remove empty slots between items.

08-10-04, Vjaka
- Fixed memory leak caused by map cache removal.
- Fixed client screen update on map change.

08-10-04, Furio
- Added PROMPTCONSOLE, it makes the client prompt (like on page request) and send
  the response as an argument of a user definied function.
  (syntax PROMPTCONSOLE callback function, message to prompt)

10-10-04, Furio
- Added RESDISP properties to account. Accepted values are 0 (PreT2a client),
  1 (T2A), 2 (LBR), 3 (AoS), 4 (Samurai Empire). This is used to identify what type
  of client is logged in. As default is set at 0, but if the client is T2A is
  automatically set to 1 by Sphere. LBR, AoS and SE is not setted automatically and
  is leaved to you.
- Added to CHARDEF properties RESLEVEL, RESDISPDNID, RESDISPDNHUE. The first state
  from what UO version the anim comes. The second what anim id is showed to older
  client version. The third an hue showed to older client (if 0 or null the default
  anim hue is used.
- Modified scriptpack to reflect these changes for T2A monsters.

22-10-04, Vjaka
- Added <dVALUE> as a shortcut to <eval <VALUE>> to get a decimal value of a
  single expr like a variable. Note, this affects EF_Intrinsic_Locals a bit.
- Commands with .command and spaces before will be treated as without spaces,
  since extra space makes privileged chars to reveal self.
- Added TAG.PARTY_CANLOOTME for party. If 1, allows party to loot self.
- Added @Kill trigger (SRC-killer, ARGO-killed)
- Added sector function ALLCHARS,ALLITEMS similar to ALLCLIENTS. For regions
  you can use SECTORS.ALLCHARS, SECTORS.ALLITEMS.
- Changed GODPORT to accept port number as well. Old values ( <=0 = disables,
  1=ServPort+1000) are still working also.
- Added SYSCMD and SYSSPAWN commands to run external applications. Returns <0 if
  there was an error. The first one blocks while program is running while the
  second spawns and continues scripts execution. Due to obvious security fear
  in these commands, they are disabled if OF_FileCommands is not set. Up to 9
  command line arguments are passed to the external application.

23-10-04, Furio
- Fixed minor things in grayproto.
- Updated grayproto (list/sizes of Uo packet in Sphere).
- Finished and debugged the new crypt engine (for crypt clients). Currently up
  to latest current OSI client 4.0.5a is supported.

25-10-04, Vjaka
- Fixed exception in writefile when unable to open the file.
- Added account name output when packet dispatch generated an exception.

25-10-2004. Furio
- Still updated grayproto, with new packet infos.

26-10-04, Vjaka
- Fixed SMSG[u] resolve error.
- Fixed <dSOMEVAL> giving some hex results.
- Added update for items moved by NPCs when they blocks the path.

27-10-04, Vjaka
- Now Windows build tryes to use winsock 2.0 if available instead of 1.1.
- Added amount argument to NEWITEM (newitem i_gold,45). Defaults to 1.
- Removed one of occasions with creating an extra log not in logfile path.

27-10-04, Furio
- Fixed a bug in displaying big dialogs with newer clients (4.0.X).
- Fixed a bug where some clients were crashing when adding an item.

28-10-04, Vjaka
- Disabled string 'q'/'Q' to be said by privileged accounts. It is due the
  fact that default macro for repeat is Ctrl+Q, and one less Ctrl press will
  lead to GM to reveal self existance around, which really is not good.

31-10-04, Furio
- Some fixes related to account creation and bank/box hack.
- Removed EF_AgeOfShadows. It'll be re-added with new features and complete
  compatibility for older clients, when enabled.
- Fixed another exploit with Bullettin Boards. Thx to Balkon for reporting it.

01-11-04, Vjaka
- Added .pid file existance notification to warn for double sphere launches.

02-11-04, Vjaka
- Now light level for sectors is saved as LIGHT istead of LOCALLIGHT.
- One more cause for long default message string lookups removed.
- EQUIPHALO now takes an argument - time to work on a person.
- Fixed bug causing objects calculated to be in sector 0 always.
- Added @Destroy trigger for objects.

04-11-04, Vjaka
- Quickfix of OF_Magic_PreCast - now not precasting on NPCs.
- Consume now can take more than 65k at once.
- Added @CreatePlayer to trigger just after the char was created by a player.

05-11-04, Vjaka
- Now "Admin" is shown instead of "GM" if person is admin or owner in title.

06-11-04, Vjaka
- Added sector function ALLCHARSIDLE similar to ALLCHARS, but looping via
  disconnected/mounted/etc chars, not accessable by ALLCHARS.
- Added auto map fix to zero map if it is out of bounds. Please note, that
  this can cause some problems with MOREM usage as well.

25-11-04, Furio
- Fixed: encryption - client login.
- Fixed: dVALUE evaluating when VALUE is already int.
- Fixed: EQUIPHALO <timer> does not making the light disappearing.
- Updated supported clients to 4.0.6a.
- Removed "Cannot move here!" message.
- Added more information to "MOVE: empty region" error. (uid and point)

30-11-04, Furio
- Fixed: MOREM automatically converted to 0 because of new multi-map feature.
- Added MasterUid property to guildstones

02-12-04, Furio
- Fixed: Gm Page menu not sending gms on page select.
- Fixed: Lord is displayed without space.
- Fixed: TAGAT trying to access to non existing TAGs.
- Modified: Only items with 08000 as attr are moved to spherestatics.scp.
- Modified: Overskillmultiply is 0 by default now.
- Added: ISEVENT for regions.

08-12-04, Furio
- Fixed: EvaluatingIntel on 0 int NPCs.
- Fixed: EQUIPHALO light disappearing on Dispel.

08-12-04, Vjaka
- Fixed exploit submitting invalid amount in buy packet giving free resources
  (thanks Breaker and Fallout for reporting this).
- Fixed canmove to accept DIR values (0..8) in addition to a letter arguments.
  Same changes affects other places, like move command, etc.
- File locking method optimised. It should improve the multithreading a bit.
- Result of the old "ACCOUNT accname" command changed to be more informational.
- GMs should login with invul and without allshow flags set.
- If reference set to OBJ/NEW does not exist, zero will be storied instead. And
  opposite, if it is already deleted, OBJ/NEW value is cleared to zero.
- Fixed exception in f_onaccount_login.

08-12-2004, Various authors
- Fixed some scripts by Vjaka.
- Added new scripts and scripts fixes by Tattooed Corpse.

---- 0.56b --------------------------------------------------------------------
---- * not released yet

09-12-04, Vjaka
- Added map caching supporting all maps. Due to this, sectors are no longer
  same in the same spot in different maps, allowing local settings for maps.
- Added ADDCIRCLE=x[,y] to add a circle to a character's spellbook. If y is on,
  includes all lower spell circles as well.
- File locking method optimised. It should improve the multithreading a bit.
- Changed [SECTOR x,y] in world saves to x,y,0,map to allow local settings for
  sectors in different maps. Old format will default to map 0.
- Since sectors are no longer shared witheen different maps, sectors on maps,
  unsupported by server (having no corresponding .mul files) do not get ticks.
- Fixed cause to duplicate saved items in static saves in several occasions.
- Added BADSPAWN command to jump to the first bad spawn found in the world. You
  should add this to some of the [PLEVEL records. It also saves the UID into
  ACT in case you unable to see it due to some obstacles.
- Removed useless PRIVHIDE (privshow 0/1 is enough for this).

10-12-04, Vjaka
- Fixed some defmessages misprint making unable to override them.
- Fixed @Kill to trigger even if the killer is not an agressor in the fight.
- Changed MAPPLANE->MAP, LOCALLIGHT->LIGHT (.56a supported both variants, but
  saved the second). Launch and save in .56a will autoconvert this in saves.
- Now any items with ATTR_STATIC are saved to spherestatics.scp, not only those
  who has this flag being the only set.
- Fixed carriage return in accounts unused message.

11-12-04, Furio
- Fixed: bugs with FORCONT* loops.
- Fixed: bug with coloured text in comm crystal.
- Added: SKILLGAIN function to call internal sphere skillgain function. Args are
  skill to gain and difficulty (0 to 100).
- Added: REPORTEDCLIVER property for clients. It'll contain the version that
  the client is. (this is easy fakeable by 3rd party programs, but still is
  useful)

13-12-04, Vjaka
- Fixed resolving functions executing on containers, if the name started from
  rescount,restest,fcount or count.
- Fixed isneartype not working if calling under points (like from TARGP).

17-12-04, Vjaka
- Account delete information now contains account name.
- Added NPC keyword GOTO x,y,z,map to execute sphere default movements there.
- Redone pathfinding to support separate thread execution, so it now utilizes
  extra thread if OF_Multithreaded is set.
- Advanced AI now includes food search on hunger to eat and gather meal around.
  It is executed in separate thread with pathfinding if configured so.

21-12-04, Vjaka
- Changed sector allocations, now allocates only those who are needed by the
  server depending on the *.mul files found. Thus, on bare t2a install no space
  for other maps will be allocated (saves several Mbytes).
- Random selection {x y} now supports format {x,y} also. Should help using it
  with DAM/AR fields of items.
- Added EXP field to characters. No internal support for it yet. But you can
  use it in scripts already.
- Empty accounts file is created on-fly if not found. Useful for unpack-n-run.
- Fixed bug with TOTALCONNECTTIME being increased by doubled value, and now is
  made more accurate.
- Optimized the UID allocation routine, trying to disallow creating holes in
  objects allocation. This should improve memory neccessaty increase for large
  or long-lasting servers. Howewer, this does not defrag the current save, only
  newly generated UIDs will be optimized - no existant UIDs will be altered.
  Garbage Collection should be enabled for this optimization to work.
- Expanded account information in ACCOUNT NAME command by logged char name.

03-01-05, Vjaka
- Added <Rarguments> as a shortcut to <eval rand(arguments)>. Can take either
  one, two or no arguments like <R>, <R15>, <R3,15>. If no arguments given,
  R1000 is assumed.
- You can now disable broadcast messages (like errors, connects, etc) from the
  server log to be sent to your account logged via telnet. You can toggle this
  behavior per account via PRIV field of the account (mask 0400). So, only
  responces to your commands and some very-basic messages (like world save)
  will be sent in this case.

08-01-05, Vjaka
- Added support for virtual maps. Now map numbers 0..255 are supported by the
  server.
- Map dimensions are now customizable in INI-file using by the following cmd:
  MAPx=max_x,max_y,sector_size,real_map_number.
  Here x - the map number for ingame useage (4rd coordinate of the coordinate).
  max_x - maximal X coordinate of the map (should be multiply of 8).
  max_y - maximal Y coordinate of the map (should be multiply of 8).
  sector_size - the sector size (you can play with this if you experience lags
    decreasing this value (should be multiply of 8 and both max_x and max_y).
  real_map_numer - number used by map files (like: 0 for map0, statics0).
  You can also change some attribute of the current map not redefining all
  values, skipping the ones you wish to be as default putting 0 instead (for
  real map number -1). For example, decreasing sector size for map 0 to 16
  from default value of 64 will look in INI file thus: "MAP0=0,0,16,-1".
  Please note, that no changes are applied when server is already started.
- Default map numbering has been changed (you can ovverride it easily by MAPx
  setting in sphere.ini). Now 0 = map0, 1 = map0, 2 = map2, 3 = map3, 4 = map4.

10-01-05, Furio
- Added: tooltip %d command for gumps (works in SE clients).
- Added: sphere_map*.scp/sphere_map_points*.scp for new maps and fixed the
  default one.
- Updated: gray proto with new packets.
- Updated: client support to 4.0.7 family.
- Updated: fix in default script pack.

13-01-05, Furio
- Modified SERV.MAP(x,y) to accept a 3rd parameter, the map. If omitted is
  defaulted to 0.
- Added SECTOR access to read-only properties from a point. Example:
  SERV.MAP(100,100,1).SECTOR.ITEMCOUNT will give you the itemcount of the
  sector that contains the point 100,100 on map 1.
- Added REGION access to read-only properties from a point. (works like
  SECTOR one)
- Fixed: gumppic to show hue when used. (Hue usable only for client >= 3)

15-01-05, Vjaka
- Changed the way the server saves allowing more information about the cause of
  some exception (which is now not fatal for the save).

17-01-05, Vjaka
- Added LEVEL field to char as the future part of the experience system.
- Added ExperienceSystem, ExperienceMode, LevelSystem, LevelMode, LevelNextAt
  fields to the .INI file as a future part of the experience system. Read the
  default sphere.ini for more description over these fields.
- PRIV flags are now auto-clearing bits corresponding to not used priv. This is
  a solution for a possible incompatibility when the previosely disabled bit
  will be reused with other functionality on same world saves.
- Fixed: LAYER_EXTRA is now used ONLY to place the items bought by the vendor.
- Items sold to vendors are auto-deleted exactly upon the sell operation. The
  only case they are saved, if they are sold to player vendors.
- Amount of items in sell packet is now limited to the container size.
- Fixed one more sell/buy exploit.

17-01-05, Furio
- Fixed: party system.
- Fixed: group disappeared from gumps.
- Added: scriptable components for the party. Still work in progress.
  With <REF>.PARTY refer to the current party of the char.
  	   <REF>.PARTY.MEMBER.x refer to any member of the party.
       <REF>.PARTY.MASTER refer to the master of the party.
  PARTY.MEMBERS give the count of members
  PARTY.MEMBER.x has also ISMASTER and ISLOOTABLE properties.
  PARTY.ADDMEMBER[FORCED] you can add a meber by script (forced  version works
       without the normal /accept behaviour)
  PARTY.DISBAND disband the current party
  PARTY.REMOVEMEMBER @<N> remove the Nth member
  PARTY.REMOVEMEMBER <UID> remove a member in the party with the UID given
       (if is the master the party is disbanded)
  PARTY.SYSMESSAGE @<N> TEXT send a party sysmessage to the Nth member
  PARTY.SYSMESSAGE <UID> TEXT send a party sysmessage to a member in the party
       with the UID given
  PARTY.SYSMESSAGE TEXT send a sysmessage to the party
  PARTY.MESSAGE @<M> TEXT send a message from the Mth member to the party
  PARTY.MESSAGE @<M>,<N> TEXT send a message from the Mth member to the Nth
       member
  PARTY.MESSAGE <UID1> TEXT send a message from the <UID1> to the party
  PARTY.MESSAGE <UID1>,<UID2> TEXT send a message from <UID1> member to <UID2>
- Added: TAG/TAG0 for party.

24-01-05, Vjaka
- Fixed bug with some keywords recognition caused by <Rxxx> operator.
- Chardef triggers do not apply to players now.
- Write deleted accounts out to log file

25-01-05, Vjaka
- Fixed vendor selling in case of one item being sold.
- Ensure double character removal from view in "remove 1" case (for allshow).

26-01-05, Vjaka
- Fixed registry settings overriding MULFILES setting in some cases in win32.
- Fixed the way spells are checked whatever they are in a spellbook. New type
  of spellbook (186) has been added for script purposes with internal support.
  Now the spellbooks (if not default one) can be configured to specify which
  number of the lowest spell it contains (stored in MOREZ).
- Fixed casting speel with two or more similar spell books when it does not
  exist in one of these books.
- Removed limitation to 1 byte (255) for MOREZ of spellbooks. Now it can hold
  2 bytes (65535). Please note, that setting MOREZ via MOREP is incorrect here.

28-01-05, Vjaka
- Fixed bug caused with layer_extra removal from buy menu in older clients.
- Added support for packets filterings. Please note, that you should understand
  what are you doing. You can install your handler of a packet X specifying
  PACKETx=functionname. This function will be called when the packet is going
  to be processed by the server. It has the following arguments set:
  ARGN1 = packet number (to allow using one function for different packets)
  ARGS = source client ip address
  LOCAL.0-LOCAL.9 - first 10 bytes of the packet for parsing contents
  If you do return 1 in this function, the packet will NOT be processed.
- Some exceptions debug messaging speed optimised.

29-01-05, Vjaka
- Added argument for RECRUIT on guildstone. If set 1, the member recruited will
  become a fully qualifyed member of a guild with abbriviation shown on.

30-01-05, Furio
- Fixed: compatibility problems on Linux.
- Freeze for 0.56b Test1.

03-02-05, Vjaka
- Argument switches of target[f][g][w] functions can be given in any order.
- Fixed removing events on other events execution that leaded skipping others.
- Memory usage is lowered (pre-storage optimized for more accurate values),
  approx 30-40% less memory will be used (depending on load structure).

04-02-05, Vjaka
- Logout now quits from chat removing problems with inactive zombies left.
- Characters with Statf_STONE cannot logout (actualy, have 1 hour logout timer).
- You can now access account properties using SERV.ACCOUNT.x. reference where x
  is the numerical index of the account (0..SERV.ACCOUNTS) [read-only]
- Fixed extra step made on sector borders.
- Fixed "return"/"return 2" in chardef triggers stopping others from launching.

04-02-05, Furio
- Added support for 4.0.8 clients.
- Fixed some arguments parsing in party functions

05-02-05, Vjaka
- Optimized time profiling on ticking objects.

07-02-05, Vjaka
- Problem with items left with switching virtual maps with one physical should
  be solved.
- Added simple mySQL support. New settings MySqlHost, MySqlUser, MySqlPassword,
  MySqlDatabase will be used to connect to the DB in case if MYSQL is set to 1.
  You will need extra .dll/.so to download for sphere installation. They will
  join the packages.

08-02-05, Vjaka
- Fixed several map support bugs with incorrect sector counting (should improve
  support of a high map numbers).

11-02-05, Vjaka
- Fixed bug causing incorrect function name lookup in several cases with some
  special chars like underline (_).
- Added debug flags 0200 and 0400 to debug experience and level changes from
  server console (if enabled).
- Experience system integrated. Few addons about defaults to config comments:
  a) experience bonus for crafting counted as a value/100.
  b) default experience set on create is str+dex/2+int.
  c) manual setting experience will alter level if configured so.
  d) dying decreases experience by 10%
  e) killing enemy will give experience depending on exp and level of target.

12-02-05, Vjaka
- Added 2 more EXP settings to config: ExperienceKoefPVP and ExperienceKoefPVM,
  controlling percents of gaining experience in PvP and PvM combat.
- Added triggers @ExpChange and @ExpLevelChange, where ARGN1 (writeable) is the
  change is going to happen. Returning 1 cancels the change.

12-02-05, Furio
- Fixed: another buffer overrun exploit in log system. Thx to Radiant for
  reporting it.
- Added: SUPPRESSCAPITALS (default 0) to enable/disable Vjaka system to avoid
  long text written only in capital letters.

14-02-05, Vjaka
- OF_Advanced_AI is now obsolete. Currently it is controlled by NPCAI setting
  in config file.
- Added MaxLoopTimes value to config (default 10000) to limit a number of
  iterations the while/for cycle could have to remove possible deadlocks making
  server to stop responding (better use this instead of main loop restart).
- Added MOVERATE to CHARDEFs. It is the percent modifier of the speed of the
  NPC - the higher it is, the slower will the NPC be. Default is 100.
- Now double clicking on the log window in windows build will bring up an
  editor with corresponded file (if any specifyed in the same line) opened.

15-02-05, Vjaka
- Fixed one more buy menu exploit (probably, the last one) ;).
- Fixed NEWITEM id,amount in case if non-exact value was given (like {x y}).
- Added cont argument to NEWITEM (now it looks NEWITEM id,amount,container).

16-02-05, Furio
- Fixed: compatibility things for Linux/BSD build.

27-02-05, Furio
- Added: STRREV for strings.
- Reverted to dynamic linked executable for the linux build. That permit some
  exception handling during signal raise.

01-03-05, Vjaka
- Fixed gaining fame and exp on summoned pets.
- Faster and more intelligent protection from fastloot like ,emptycontainer. The
  delays for picking now are 0.3 sec per item. Item with amount (popping dialog
  with input) adds extra 0.2 sec delay.

04-03-05, Vjaka
- Fixed an exploit with invalid book packet (thanks Fallout for reporting).
- Fixed @Destroy event not fired.
- Added the minimal delay before accepting sell/buy deal equal to 0.3 sec per
  each item. This limits the power of autobuy/autosell/inject sell all.
- Added client property CTAG similar to the TAG array. The difference is that
  the contents is not saved, and is destroyed upon logout - useful place to
  store your local variables on the client character.

06-03-05, Furio
- Some other fixes to improve Linux build stability.
- Now killing sphere with HUP make the server save and exit.
- Added support for 4.0.9 client encryption.
- Added more comprehensible messages to error output (bad login / garbage / save)

10-03-05, Vjaka
- Fixed placing items from invalid containers upon save loading to world nearby
  100,100 coords, these items should be deleted, so they are.
- Limited amount of items shown to client on screen to MaxItemComplexity*30 (by
  default 25*30 = 750).
- Removed goldreserve from guilds - use TAGs for this.
- Windows: added build date and time to the About box along with the version.

13-03-05, Furio
- Added SERV.GUILDSTONES.x to referer to the Xth guildstone in the server.
  Use SERV.GUILDSTONES.COUNT to get the total number.
- Added SERV.TOWNSTONES working like SERV.GUILDSTONES.
- Added MasterUid property also in write mode. Now you can change the guild
  master passing the uid as argument.
- Some minor fix to Linux build.

14-03-05, Vjaka
- Optimised object los check, should decrease waste of cpu on large shards.
- Fixed possible webpage exploit with malformed requests.
- Removed EMAIL property from accounts and all associated commands (EMAIL/
  ADDEMAIL,defmessages) - use account TAGs to work with it when needed.
- Removed server status responce from the standart ping/telnet connection.
- Fixed logging in localy when both RemoteAdmin and Administrator accounts were
  not found and LOCALIPADMIN was set.
- Fixed misprinted defmessage ncp_* to npc_* (2 matches), sphere_msgs.scp now
  comes commented by default - uncomment things only you need to change - most
  people will not need this file at all, so by this way we show that.

14-03-05, Furio
- Temp removed "Limited amount of items shown to client on screen".
- Moved FOLLOW from exe to scripts. Now MEMORY_FOLLOW(01000) is unused.
- Modified default info gump with a new one (thx to NHR).

17-03-05, Vjaka
- Removed EF_No_Pause_Packet, it is built in to code now.
- Drop item on vendor to trade quick, removed npc_vendor_sell (from 1.0).
- Setting SLEEPMASK=0 will give no time to sleeping sectors (from 1.0).
- Optimised few widely used checks like touch check.

29-03-05, Vjaka
- Removed debug message about not found pathfinding path.
- Fixed bug causing objects disappear on doubleclick.
- "Limited amount of items shown to client on screen" is back due this was not
  the cause of the previous bug ;).
- Removed verbose command. It was anyhow very limited in Release build.
- Added -c command line switch to WIN32 build. It allows changing registered
  class name for sphere, which helps working via windows messages with several
  sphere servers on the same machine.

05-04-05, Vjaka
- Made ARGN1 writeable in @Hunger.
- Fixed OptionFlags display instead of MagicIngoreAR.

11-04-05, Vjaka
- Packet filtering support heavily expanded. Now you have these variables:
  LOCAL.NUM (value) set to amount of data got from the packet
  LOCAL.STR (string) all data threated as a string (aware of zero chars)
  LOCAL.ACCOUNT (string) current active account if any is logged by the client
  LOCAL.CHAR (uid) current active char if any is logged in from the client
  and the all data is now given in LOCAL.x, not the only first 10 bytes.
- Returning 1 in PACKETx handler function no longer shows Bad Msg Eat string.
- Removing exception on invalid map point in some drop cases.
- Account named like account keywords (ADD/BLOCKED/etc) denied for creation.

12-04-05, Vjaka
- Walking via others with no penalty fixed (now it more like it was before in
  the times of 55i - more correct way). You can override this by changing ARGN1
  in @PersonalSpace trigger.
- Fixed message of guard owners always saying previous region guards owners.

14-04-05, Vjaka
- Fixed Sphere accepting a player character as a valid guard in some cases.
- Fixed guard walking to enemy even if they are cheaters (instantkill enabled).
- Added messaging flood control - equal sysmessages one after another will not
  be sent to the client (if they are absolutely identifical and no any other
  message was between them).
- Added STRIP [DIR/] console command. Reads all scripts and outputs them to new
  files with only [...], and base definitions lines. Good for giving script to
  your gms to be able to use axis with very basic information.

17-04-05, Vjaka
- Fixed bug with quick trade on player vendors.
- Fixed an exception caused by empty messages in some client events.

21-04-05, Furio
- Added 4.0.10 client keys.
- Fixed: bugs in getting vals from party.

21-04-05, Vjaka
- Fixed some cases (not all!) of scripts clearence by specifying incorrect
  directory in STRIP command. There are too many ways to specify direct or
  indirect path that will look different but will lead to the same file
  starting from symlinks, ending with messing with .. and dir seprarators (\/).
  Locking the file is not ok, since it will cause problems with other threads
  or applications working with file. So use this either with care, or with no
  argument ;)
- Added Axis tags support CATEGORY, SUBSECTION, DESCRIPTION to STRIP command. I
  do not use them, so did not add that when making the command :).

23-04-05, Furio
- Some fixes and optimization for Linux code.

03-05-05, Vjaka
- Fixed bug causing impossibility to dress off items in some cases.
- Removed background task and all corresponding to it operations, since they
  only looked as working, while doing almost nothing.

14-05-2005, Furio
- Fixed some bugs in client detection.
- Fixed a bug for too short account name login.
- Removed support for encrypted client from 1.25.31 to 1.26.4 (you can use them
  only in unencrypted way).
- Fixed problems with allshow.
- Fixed problems with rand(x,y).
- Disabled (temp.) Vjaka's messaging flood control.

24-05-05, Furio
- Fixed some bugs for Linux build.
- Added CanSee check in spellcast.

25-05-05, Vjaka
- Added OF_Flood_Protection as a control of toggling appearence of same
  messages and sysmessages one after another. Note, that this setting is always
  off for PLEVEL 2 or upper, so GMs will always get everything.
- Fixed copses giving unlimited blood amount. Now, the corpse gets TAG.BLOOD
  upon creation to TAG.MAXBLOOD of itemdef. You can also alter TAG.BLOOD upon
  creation on the coprse object. The default value is 5.
- Due to multiply requests, TAG.LastLogged is removed just after showing it to
  client. It is still there for the purpose to show real last connection date.
- Added INI setting of MOVERATE (default 100) to change the default moving
  speed of all NPCs at once. Remember, this is percent setting.
- Fixed bless and curse on items which lead to ultimate stats raise.

28-05-05, Furio
- Fixed: Corpse not appearing.
- Fixed: CTAG sysmessage on set.
- Fixed: FVAL bug.

18-06-05, Vjaka
- Fixed book saving only the first line on each page.
- Fixed exception on allshow.
- Fixed console errors when using looms and repair.

27-06-05, Vjaka
- Removed RESOURCES2 line since it never worked at all.
- Fixed variety of bugs with using some keywords like newitem from functions
  called directly from the server (like f_onserver_start). Special char is
  created for this purpose to be acting as a default object.
- Region now executes command for all sectors inside if the command is sector
  one (you can use REGION.all* instead of REGION.SECTORS.all*) for example.
  REGION.SECTORS command is depricated.
- Added StatsFlags setting to cap MAX(HITS/MANA/STAM) status.

01-07-05, Vjaka
- Added f_onserver_exit triggered on server quit. Quite useless since no saves
  are occured after then, but good for launching some prog using sysspawn.
- Townstones are now listed in status using TOWNLIST command, splitting town
  and guild stones to different links.
- Fixed calling guards on self.

03-07-05, Vjaka
- Fixed fightself bug. It was not fixed before. I did not notice that since do
  not use default summon creature spell. Thanks Handred for reporting.
- Trying to improve the rate and distance NPC sees characters around. Now it
  should happen faster, since higher distance is checked in areas with little
  complexity.
- Spawning NPC distance is now more random. Also now spawning checks the
  borders inside disallowing to spawn in unaccessable place. Thus, if you place
  spawn in house and the doors are closed, there is no possibility for NPC to
  spawn outside the house.
- The death now triggers inventory close to avoid appearing fake items inside
  that are no longer in the pack.

04-07-05, Vjaka
- Fixed impossibility to change type of the object to a non-default one.

08-07-05, Furio
- Fixed SERVIP problems (and similar).
- Fixed pet killing not giving criminal status to owner.
- Added: client 4.0.11 keys.
- Fixed: FVAL 0 now gives 0.0
- Touchups on Ef_Walkcheck routines

11-07-05, Vjaka
- Fixed ALLCHARS region/sector command.
- Fixed typedef bug on save.

17-07-05, Furio
- Added SERV.RTIME.FORMAT. It takes as args a string like strftime()
  (the list is here http://www.scit.wlv.ac.uk/cgi-bin/mansec?3C+strftime ).
  e.g SERV.RTIME.FORMAT %d returns the number of the day.
- Fixed: animal trainer problem with EF_Walkcheck.
- Fixed: magic lock/unlock bugs.
- Fixed: dagger on static crop.

19-07-05, Vjaka
- Multithreading now should be more stable.
- Few misc fixes in combat, like added los check.
- Fixed REGION.ALLCHARS command.

19-07-05, Furio
- Fixed: creating unnamed chars.
- Fixed: creating chars with no title.
- Fixed: creating chars with hacked stats.
- Fixed: writing on console.
- Fixed: problem with spawning with EF Walk flags.
- Fixed: touchups in script pack.
- Added: hardcoded support for AoS/Se/Ml skills.

21-07-05, Furio
- Fixed: Warmode refresh if getting attacked (thx to Torfo).
- Fixed: Training skill out of skillsum cap.
- Fixed: Viewing hidden clients with higher plevel with allshow.
- Fixed: skill name/key/title in sphere_skills.scp
- Fixed: template mispelled (orge instead of ogre).
- Modified: sphere_map*.scp and sphere_point*.scp are now in map/
	subdir.
- Modified: only map0 and map1 scp are loaded, to load the others
	uncomment the lines in spheretables.scp

22-07-05, Cloud_Br (Script pack)
- Fixed: buying wool from vendors.
- Fixed: Missing flags in sphere_defs.scp
- Added: sphere_item_aos_se.scp containing various AoS/Se item defs.
- Added: spherechar_se.scp containing various npc defs for Se.

23-07-05, Furio
- Fixed: rock throwed by ogres not decaying.
- Fixed: cansee e musical item for provocation.
- Fixed: npc speak on train.
- Fixed: animal lore on mounted pets.

24-07-05, Vjaka
- Fixed: default object operations on server. Will not show extra error msgs.

25-07-05, Furio
- Fixed: npc try to attack mounts causing exceptions.
- Fixed: mounts disappearing. (thx to Gygrazok and Darkraven)
- Fixed: args not used in trigger @PersonalSpace. (thx to Darkraven)
- Fixed: Map teleports teleporting npcs.
- Added: 4th argument to map teleports. If is set to 1 npcs can use the teleport.
	By default is 0. Eg: 1,1,1,0=100,100,100,0=my_teleport=1 is enabled,
	1,1,1,0=100,100,100,0=my_teleport=0 or 1,1,1,0=100,100,100,0=my_teleport is
	disabled.

27-07-05, Vjaka
- Fixed: Several exceptions with latest client.
- Fixed: Extra error msg for show command when server property was specifyed.
- Fixed: Some more timeslices freeing will decrease useless cpu usage in
  multithreaded mode.

30-07-05, Furio
- Fixed: exploit with hair dye gump (choosing random color).
- Fixed: x/set respecting plevel.
- Moved: hair dye gump from exe to scripts.

30-07-05, Cloud_Br (Script pack)
- Fixed: problems with spherechars_se.scp
- Added: defs to sphere_backward_compatibility.scp
- Fixed: some areas without guards (map0/map1).

30-07-05, Vjaka
- Added: MySQL support to scripts. You can execute any queries and statements,
  as well as get data from mysql link. A special script object similar to the
  FILE or OBJ added and is named DB.
  DB Properties:
    CONNECTED - the current state of database connection (1 or 0)
	ROW.NUMROWS - number of rows returned by last query
	ROW.NUMCOLS - number of columns returned by last query
	ROW.* - list of all columns returned by last query. Both column names and
	  numbers are saved in the list, so you can use indexes [0..] or column
	  names [id, name, etc] here.
  DB Methods:
    CLOSE - disconnects the SQL server
    CONNECT - connects to the database (using mysql settings in sphere.ini)
	EXECUTE - executes SQL query not filling any results anywhere
	QUERY - executes SQL query filling ROW.* properties information
  Example of a simple query:
	DB.query "SELECT id FROM users WHERE account='<SRC.ACCOUNT.NAME>'"
	SERV.log "Got ID = <DB.ROW.id>"
  Note: Server does not create connection upon start, so if you wish to make
    the connection with the server start, add DB.connect to the function
	f_onserver_start.
- Fixed: Map support higher than map 0. Now there should be no more problems
  with fix throwing to incorrect Z level (hopefully).

31-07-05, Radiant
- Added: Support for tooltips. Requires OF_Tooltips (02000) and the 020
  FeaturesLogin flag. Usable in scripts:
  	Every object has a OBJPROPS property, which works like tags. Syntax:
  	OBJPROPS.<name>=<locale id>,[args]
  	note that <name> can be anything, but the entries are sent in alphabetical
  	order. So, for example, a bag, the props would look like this:

  	OBJPROPS.a="1048032"				// a bag
  	OBJPROPS.b="1050044,32,450" // ~1_COUNT~ items, ~2_WEIGHT~ stones
- Fixed: exception occuring during load with unknown keys in sphere.ini

01-08-05, Radiant
- Added: CTAG0 similar to TAG0 version of CTAG.

03-08-05, Radiant
- Horses are now forced to dismount and will die if someone is riding them and
  they have statf_dead set or their hitpoints are 0 or below.  This should fix
  the "ghost" horses appearing sometimes (when horse is poisoned and ridden).

08-08-05, Furio
- Fixed: CTAG0 when setting a value.
- Updated: sphere_backward_compatibility.scp
- Added: FILE obj, enabled by Of_File_Commands. Look in manual.txt for help.

08-08-05, Vjaka
- Added: SQL support for multiply rows. You can use both ways ROW.<column#> and
  ROW.<row#>.<column#> for addressing a field you are interested in, but the
  first method allows operating on row #0 only.
  Sample full-n-ready script to show how to use this feature:
	DB.connect
	if ( <DB.connected> )
		db.query "SELECT * FROM mytable"
		for R 0 <eval <DB.ROW.NUMROWS>-1>
			SERV.log "--- ROW #<eval <LOCAL.R>> ---"
			for C 0 <eval <DB.ROW.NUMCOLS>-1>
				SERV.log ".. COLUMN #<LOCAL.C> : <DB.ROW.<eval <LOCAL.R>>.<eval <LOCAL.C>>>"
			end
		end
	endif
- Added: a possibility to specify MySQL port. Just add ':port' to the host
  record.
- Fixed: account references in several cases leading to errors.

11-08-05, Radiant
- Fixed 'undefined keyword' error on SKILLMENU with not enough resources on player

13-08-05, Exer (Script pack)
- Added: sphere_item_building_roofs_se.scp (SE roofing items)
- Added: sphere_item_building_walls_se.scp (SE wall items)
- Added: sphere_item_magic_necromancer_aos.scp (SE necromacer items)

13-08-05, Cloud_Br (Script pack)
- Updated: sphere_backward_compatibility.scp
- Updated: sphere_region.scp
- Added: sphere_chars_newer.scp (All monsters of AoS/SE)
- Removed: sphere_chars_aos_se.scp (Obsolete, sobstituted by chars_newer.scp)

15-08-05, Vjaka
- Added: AutoResDisp ini setting (default:0) to setup this resdisp by default
  to all accounts. Useful if all your clients are using at least some client.
  Recommended setting at least 1 (T2A).

15-08-05, Radiant
- Fixed: potential buffer overflow exploit in file write operations
  Also saves one string operation, it's gotten a little faster.
- Fixed: CTAG/CTAG0 got broken in last fix
- Fixed: Extremely long save times
- Moved: .admin from executable to scripts and completely rewritten it.
  Please copy sphere_admin.scp from the script pack. Same is going to happen
  to .tweak.

16-08-05, Rattlehead (Script pack)
- Added: sphere_item_building_floors_se.scp (SE floor items)
- Added: sphere_item_misc_se.scp (SE misc items)

18-08-05, Radiant
- Added: exception catching around more save sections, should give a better
  description if a save error occurs
- Added: sphere no longer cares if an npc is riding a valid horse, so you can
  just add a horse item
- Script sphere_admin.scp:
  - Staff can see their own IP
  - Invisible staff is now printed in red
  - Added summon cage
- Fixed: problem in saves and allskills, no check if skill is defined or not.
  Broke saves (naked players) on some servers with not all skills (AOS and SE) defined.
- Fixed: Disconnected NPCs (horses) being seen if rider is gone (probably! need feedback)

18-08-05, Gygrazok (Script pack)
- Modified: sphere_admin.scp:
  - Start position of dialogs set to 0,21
  - Default page of the tweaking menu set to "action"
  - + shown before account name for higher privs and - before guest accounts (like the old admin panel)
  - Removed PLevel informations in main page to get more space for char name
  - Closing tweak dialog brings back to main page
  - Added number of online clients in the main page title and changed "Administration Console"
    to "Admin Panel", which is shorter
  - Added "remove note" button
  - Fixed: extra page if you have 15 clients only

19-08-05, Furio
- Removed: OF_Tooltip
- Removed: Features/FeaturesLogin
- Removed: @CreatePlayer
- Added: Feature(T2A/LBR/AOS/SE/ML) to use feature expansion. Look in sphere.ini for usage.
- Added: f_onchar_create in sphere_serv_triggers.scp. With newer clients you'll get
	ARGN1 flags - ARGN2 profession chosen - ARGN3 elf
- Added: TRYSRV. It works like TRYSRC but putting automatically as src the server.
- Scripts: Added TRYSRV as plevel 7 command. I highly recommend everyone does this!

19-08-05, Radiant
- Scripts: Added TRYSRC as plevel 7 command. I highly recommend everyone does this!
- Fixed: d console command (area dump) was broken a while ago

21-08-05, Vjaka
- Fixed: 2 exploits due to bad player name parsing (thanks XD for reporting).

21-08-05, Radiant
- Made ROOM object accessable on everything. It is used like REGION, but for ROOMDEF.

22-08-05, Furio
- Fixed: Crash on sell for older clients.
- Fixed: Tooltip not working also if correct ini flags are set.
- Fixed: i_blood_2 created by sphere during hits not decaying.
- Added: TFLAGS accessable as SERV.ITEMDEF.defname.TFLAGS to get tiledata flags of the item.
- Added: p# dump all profiler data to profiler_dump.txt

23-08-05, Radiant
- Added: more exception catching to CSector::OnTick, should print more descriptive errors now
- Fixed: resource gathering bug (mining fishes when switching from pickaxe to fishing rod, etc)
  (resource gathering skill is now aborted if resource gathering tool is unequipped)

23-08-05, Vjaka
- Fixed: fatal exceptions referencing PARTY methods (PARTY.MEMBERS) from NPC.
- Fixed: account references for writing in scripts under low-privileged accounts.
  Both ways SRC.ACCOUNT.xxx and SERV.ACCOUNT.name.xxx are accessable this way.
- Fixed: invalid message when unlocking container told that I locked it.
- Fixed: NPC_AI_FOOD now obeys homedist and will not search out of the range.
- Fixed: NPC_AI_EXTRA caused npcs moving stonewalls and other spells :)
- Fixed: Pathfinding broken by some of the later changes.

23-08-05, Lynchy (Script pack)
- Added: NPCs from Mondain's Legacy (npcs/spherechar_mondains_legacy.scp)

24-08-05, Furio
- Added: Support for elf body (and ghost) in game.
- Added: Client keys for 5.0.0.
- Added: TAG.MAXPLAYERPETS to Stabler. It's the maximum limits of pets that a player
		 can stable. If not setted is 10.
- Added: @UserGuildButton for the new guild button on client.
- Added: @UserQuestButton for the new quest button on client.
- Fixed: Spellbook with newer clients (displaying/selecting spell).
- Fixed: Elf NPCs from Mondain's Legacy (npcs/spherechar_mondains_legacy.scp)
- Updated: grayproto to support ML quest button.
- Updated: spheretables.scp (changed plevel of some commands for better security)

24-08-05, Vjaka
- Added: CombatFlags ini setting. Currently it controls two aspects of the
  bounce back effect in combat.
- Fixed: Reference to SERV from some triggers including @Enter in regions.
- Fixed: House regions creation for maps bigger than 0.
- Fixed: Players unavailable to call guards on NPCs.
- Fixed: Trigger command that did not work on characters.

25-08-05, Radiant
- Removed: OBJPROPS
- Rewritten tooltips to use a trigger. There is @ClientTooltip on items and characters.
  (in the world, only non-static, movable items)
  You can use ADDCLILOC on the client in this trigger (SRC), syntax:
  ADDCLILOC <cliloc id>,[arguments]
  Arguments can also be NULL, to skip an argument.
  If this trigger returns 0 or nothing, some default properties will be added to the tooltip
  depending on the type.
  If it returns 1, no default properties will be added (but the tooltip still be sent).
- Added: @GetTooltip (ARGO = item being sent for) for players. This is like @itemEquip, etc.
  Fired before @ClientTooltip, if returns 1 @ClientTooltip is skipped.
  Try keeping these triggers light, because they will be fired alot.
- Added: f_onserver_save_finished, called after save is completely done
  (ARGS is time it took to save in seconds, 4 digit precision)
- Fixed: exploit to cast spells faster than normal (i.e. cast first clumsy then flamestrike)
  with precasting enabled.
- Added: COMMANDPREFIX ini setting. Default is .

25-08-05, Lynchy (Script pack)
- Added some Mondain's Legacy items (not complete yet)

26-08-05, Radiant
- Fixed: MASTERUID no longer changes loyalty, should fix the errors (was undesired behaviour too imo)
  Note that in order for this setting to work the person you set this to has to be a full member
  of the guild.
- Fixed: REMOVE not working in @EquipTest
- Added: Encryption keys for clients are now in SphereCrypt.ini. When new clients come out,
  the new keys can just be added here without the need to upgrade sphere.

26-08-05, Furio
- Fixed: Tooltip sent to wrong client version making them crash.
- Updated: sphere_defs.scp

26-08-05, Cloud_Br (Script pack)
- Updated: sphere_chars_newer.scp (Monsters of AoS/SE)

26-08-05, Gygrazok (Script pack)
- Added: sphere_item_deco_mini_houses.scp (House miniatures of AoS)

28-08-05, Furio
- Fixed: mem leak in CGTypedArray (and derived one).

28-08-05, Radiant
- Added: missing @itemClientTooltip trigger causing wrong triggers to be fired
- Removed: @GetTooltip. Please use @itemClientTooltip trigger now, argo = item
  tooltip being sent for (in both @ClientTooltip and @itemClientTooltip)
- Added: Notoriety title and guild abbreviation to default character tooltip
- Changed: Tooltips added in triggers now show below the name if return 0
- Fixed: Game Master title no longer shows on tooltip with privshow off
- Added: Elf bodies to sphere's internal list of humanoids
- Fixed: mem leak in sorted variable arrays (DEF/TAG/CTAG/VAR/LOCAL/etc)

30-08-05, Vjaka
- Added: GenericSounds ini settings to enable/disable all sounds.
- Removed: PlayerGhostSounds since it was not checked anywhere.

30-08-05, Cloud_Br (Script pack)
- Removed: spherechars_newer.scp
- Added: spherechar_lbr.scp (Lbr monsters)
- Added: spherechar_aos.scp (AoS monsters)
- Added: spherechar_se.scp (SE monsters)
- Updated: sphere_item_building_others.scp

02-09-05, Cloud_Br (Script pack)
- Updated: sphere_defs.scp (new sounds)
- Updated: spherechar_lbr.scp (Lbr monsters)
- Updated: spherechar_aos.scp (AoS monsters)
- Updated: spherechar_se.scp (SE monsters)
- Updated: sphere_item_building_others.scp
- Added: sphere_item_icons_new.scp (icons from new expansions)

03-09-2005, Furio
- Fixed: PARTY references (master/member)
- Fixed: hue/hair/beard for elf selectable on char creation
- Updated: sphere protocol (accepts tooltip refresh requests from new clients)
- Added: ISINPARTY to char (check if a player is in party)
- Added: UseDefaultSource (default: 0) if enabled SERV fallback to its default
  source when executing commands. You shold set this to 1 if you are operating
  with any new objects from functions called directly from the server, like
  f_onaccount_login, f_onserver_start and so on.

05-09-2005, Furio
- Updated: Sphere now support the internal client cache for tooltips. This will
  avoid wasting of bandwith and client crashes.

05-09-2005, Radiant
- Fixed: incorrect info on tooltips for some types

06-09-2005, Vjaka
- Fixed: some operations workability (SERV.new*) called from functions that are
  run directly by the server. This disables both the default script object and
  UseDefaultSource.
- Fixed: rescount-like operations when arguments was specifyed.
- Denied account auto-creation with first character numeric to avoid server
  confusion to treat this account as index or a valid name in some operations.
- Fixed: win32 server crash if server name was too long.

06-09-2005, Furio
- Added: SCREENSIZE to access the game window size if the client supports that.
  You can access that via SCREENSIZE.X and SCREENSIZE.Y.
- Added: RESENDTOOLTIP. Calling that on the object you need to resend tooltip.
  Since clients use a cache for tooltip, if you want to force the cache too use
  RESENDTOOLTIP 1.
- Fixed: REMOVEFROMVIEW/TARGET(FGW) not working.

08-09-2005, Vjaka
- Fixed: several errors with sql queries.
- Added: AutoPrivFlags to specify auto PRIV flags for new accounts.
- Added: ARGN1 to f_onaccount_login specifying account type. Most common values
  are 3(login), 4(go to game), 5(http), 6(telnet).
- Added: HitsHungerLoss to specify char hits percents lost on starving tick.
- Added: TAG.NOSAVE tag for objects. If set to 1 the object will NOT be saved
  when the world save will take place.
- Fixed: NEW* commands on characters not modifying character's ACT.

08-09-2005, Furio
- Fixed: SCREENSIZE.X/.Y not working.
- Added: CLIENTIS3D. Returns 1 if is a client is 3D.
- Removed: Client support for clients older than 1.26.00 (they're awfully old).
- ReDone: Unencrypted client support. UseNoCrypt now is a bool 1 means that
  unencrypted client are allowed to login. If ClientVersion in sphere.ini is
  setted to some value (e.g. 4.0.0) then only that client version will login
  (this is valid for encrypted and unencrypted clients). Note that sometimes
  unencrypted clients sometimes are dumb and sphere not recognize them properly
  (and thus disconnected), but after restarting the client it's all ok.
- Modified: REPORTEDCLIVER. It contains the version of the unencrypted client
  without any trailing letter. To get the complete version (e.g 4.0.11f) use
  REPORTEDCLIVER.1.
- Modified: Disabled support for client tooltip cache (it'll be re-enabled after
  a re-write).

08-09-2005, Cloud_Br (Script pack)
- Updated: sphere_map_points3.scp
- Updated: sphere_item_profession.scp
- Added: addons/worldfiles.zip. It contains a fully spawned world for Felluca,
  Ilshenar and Malas.

09-09-2005, Furio
- Moved: Hardcoded mount/mountid list from exe to scripts.
- Updated: sphere_defs.scp with the mount/mountid list. Read the comments to
  know how to edit it.
- Fixed: READLINE returning blank line.
- Fixed: Referring to party outputs a debug message.

09-09-2005, Vjaka
- Fixed: Popup menus not calling SELL, BUY speech triggers on NPCs.
- Added: LBR mounts IDs to the mount defnames.
- Fixed: mounting later npcs since they were treated being brain_human.

10-09-2005, Cloud_Br (Script pack)
- Fixed: some guarded areas on sphere_map2.scp that should be guarded.
- Fixed: names on sphere_map1.scp (Britain being Britain too, so when you
  typed .go britain you were going to MAP 1), now all trammel places have
  "Trammel <local name>".
- Fixed: some errors on addons/worldfiles.zip.
- Added: new mounts on sphere_chars_new_mounts.scp and their icons.
- Added: new mounts sounds to sphere_defs.scp
- Added: some HTML defs to sphere_defs.scp

10-09-2005, Rattlehead (Script pack)
- Added: new mounts defs to sphere_defs.scp
- Added: new mounts defs to spherechar_mondain_legacy.scp

12-09-2005, Furio
- Added: WOPCOLOR/WOPFONT to set color/font of Word of Powers.
- Added: TAG.OVERRIDE_SKILL applied to a weapon override the SKILL= field.
  Attention is a 1 based field so... 1 means Alchemy and so on.
- Modified: now PACKETxx in .ini accept values from 0 to 255.
- Modified: item, with attr not containing 010 or 08000, dropped by player
  on sea or black tile will insta-decay. RETURN 1 on DropOn_Ground
  avoid that thing.

14-09-2005, Vjaka
- Added: warning msg if chardef does not have any CAN flags specifyed.
- Added: error msg if RESOURCES line contains errors inside.
- Fixed: NPC item equipping not having mt_equip flag.
- Fixed: dialog command TILEPICHUE nor working.

18-09-2005, Cloud_Br (Script pack)
- Fixed: some errors on spherechar_lbr.scp

19-09-2005, Vjaka
- Fixed: wopfont not working.
- Optimized vendor templates storage. Now vendor does not keep all the items to
  be sold or bought from players all the time, but generate this list on the
  first query and invalidate after some time. It will save your server and save
  from tons of objects not actualy in the world.

19-09-2005, Furio
- Fixed: HITPOINTS not working.
- Modified: SYSPAWN/SYSCMD on *Nix build should work now.

20-09-2005, Vjaka
- Added: COMMANDTRIGGER setting. If set, each command the client is entering by
  .something will be given to the function first. If it returns 1, the default
  action is not taken. This allows overriding default commands.

21-09-2005, Cloud_Br (Script pack)
- Added: addons/Champion_Spawn.zip. A functional Champion Spawn system for Sphere.

21-09-2005, Furio
- Fixed: Spellbook content not correctly sent to newer clients.
- Fixed: SHRINK not working.
- Fixed: carving corpse not working.
- Fixed: using .commands with GM body.
- Modified: tooltip info on spellbooks.
- Modified: Damage on head for newer client now use newer packet.
- Modified: FeatureAOS in sphere.ini. Look in to know how it works.
- Added: support for All Names in 3d clients and newer 2d (ctrl+shift macro).

22-09-2005, Vjaka
- Fixed: Open paperdoll popup menu on self dismounting from horse.
- Modified: Resync executed in a fast mode will not broadcast notes to clients.
- Modified: Low hungry level does not damage in safe zones, and in underground
  for NPCs.
- Fixed: ARGO reference when no property was specifyed.
- Fixed: TOPOBJ reference.

22-09-2005, Furio
- Fixed: attack not working with some weapons.
- Fixed: damage packet sent to incorrect clients.
- Fixed: Advanced_LOS not blocking los in some cases.
- Fixed: Spell teleport not using ef_walkcheck routines when enabled.

23-09-2005, Cloud_Br (Script pack)
- Updated: addons/Champion_Spawn.zip (read inside readme for more infos).
- Updated: addons/worldfiles.zip (read inside readme for more infos).

25-09-2005, Furio
- Updated: Moved all OF flags related to magic/magery in "ad hoc" field
  called MAGICFLAGS. More info on it in Sphere.ini.
- Added: SEXTANTP. Retrieve the sextant point shown by a sextant in args
  and if no args are set it would return the sextantp for the reference.
- Added: support for showing skillcaps in newer clients.
- Added: support for new status gump in newer clients.

25-09-2005, Radiant
- Added @SkillUseQuick char trigger and @UseQuick skill trigger, these are
  called when sphere does a quick run of a skill (just difficulty test + skill
  gain), in which case it wouldn't call @SkillStart (for example use of tactics,
  parrying in combat, arms lore with blacksmithing repair, magic resistance, etc).
  ARGN1 = skill being used
  ARGN2 = difficulty requested
  ARGN3 = result of difficulty calculation (same as in @GetHit)
  returning 0 will force skill to fail, returning 1 will force skill to succeed
  (both skip gains)
- Fixed: GMs not being able to resurrect in anti-magic areas
- Added: Character flag 020000 (STATF_ArcherCanMove), same as OF_Archery_CanMove
  but for specific players. OF_Archery_CanMove overrides this flag for everyone.
- Updated: sphere_defs.scp and sphere_admin.scp for STATF_ArcherCanMove.
- Added: NPCAI flag NPC_AI_ALWAYSINT (0008), always be as smart as possible when
  pathfinding.
- Fixed: SERV.NAME not working
- Added: SKILLUSEQUICK on chars, syntax: <SKILLUSEQUICK (skill) (difficulty)>.
  Does a quick use of a skill based on (difficulty) and returns 1 if it succeeded.

26-09-2005, Vjaka
- Fixed: exception when adding empty sell/buy template on restock.
- Modified: CommandTrigger now has 2 arguments (in/out): ARGN1 is whatever the
  command is accepted (limited by PLEVEL section, etc), and ARGN2 is whatever
  the command should be said if not accepted. Also the prefix of the command is
  cut up as well.
- Fixed: SERV.MAP if normal point was given in arguments (with Z coord).
- Modified: the sphere window operation on tray dclick. Now it hides if shown
  and appears if hidden.

26-09-2005, Furio
- Modified: <STRREV string> to StrReverse(string)
- Added: StrTrim(string) trime whitespaces at start/end of the string.

26-09-2005, Gygrazok (Script pack)
- Added items/sphere_item_eight_age.scp. Item of 8th anniversary of UO.

27-09-2005, Furio
- Added: support in status gump for stat locking.
- Added: STATLOCK[x] working like SKILLLOCK[x] but for stats.

27-09-2005, Cloud_Br (Script pack)
- Updated: sphere_map0.scp and sphere_map3.scp
- Updated: sphere_map_points0.scp and sphere_map_points3.scp
- Updated: addons/Champion_Spawn.zip (read inside readme for more infos).
- Added: addons/Doom_Dungeon.zip. A functional Doom Dungeon system for Sphere
  (read inside readme for more infos).

28-09-2005, Vjaka
- Added: ARGN2 to UserSkills trigger. Will be 1 if triggeted from .info command
  that is useful if you use custom skill gump and not wish it opening when its not
  needed.
- Fixed: ModAr not affecting actual armor.
- Added: ARGN2 (show the message of gain/loss) and ARGO (person killed) to the
  @ExpChange trigger.

29-09-2005, Furio
- Updated: Moved LAYER_LIGHT from 9 to 15. Modified all hardcoded things.
- Updated: script pack (sphere_defs.scp, sphere_item_unsorted.scp).
- Fixed: sphere_admin.scp showing incognito name.
- Fixed: elf created always with blond hair.
- Added: RESDISPDNID/RESLEVEL/RESDISPDNHUE for items (it'll work for equippable ones only).

30-09-2005, Vjaka
- Fixed: dupe <amount> limited to the item complexity in containers.
- Fixed: commandtrigger not having proper default object.
- Added: TIMERCALL ini setting to specify amount of minutes for server to call
  user function f_onserver_timer.
- Added: BETWEEN min,max,currentvalue,maximalvalue to get the curve value in
  this combination.
- Modified: <Rx,y> now supports formulas inside, so -, or eval could be used.

01-10-2005, Cloud_Br (Script pack)
- Updated: addons/Doom_Dungeon.zip (read inside readme for more infos).
- Updated: addons/Champion_Spawn.zip (read inside readme for more infos).
- Updated: addons/worldfiles.zip (read inside readme for more infos).
- Added: addons/Slayer_Weapons.zip (read inside readme for more infos).

02-10-2005, Radiant
- Fixed #013: Webserver attempting to parse images and sending invalid
  Content-Type header to clients
- Updated #037: Changed @Kill trigger to be fired on ALL the characters that had
  to do with the killing and therefor would gain/lose karma/fame. return 1 stops default
  karma/fame changes.

02-10-2005, Handred (Script pack)
- Updated: sphere_types.scp

04-10-2005, Furio
- Fixed #040: An item crafted by a player (skillmenu - makeitem) is created
  without decay flag set.
- Updated: Client >= 5.0.0 now use the compressed dialog packet (bandwith saver).
- Updated: Default tooltip for a char (guild title/name).
- Updated: sphere_item_eight_age.scp with some RESDISP tests for two items.
- Added: TEXTENTRYLIMITED/DTEXTENTRYLIMITED (working in only in client >= 5.0.0),
  look into sphere_dialog.scp help section.

04-10-2005, Cloud_Br (Script pack)
- Updated: sphere_admin.scp

06-10-2005, Vjaka
- Added: MOUNT command for character to mount it (if possible) by SRC object.
- Fixed #020: Vendor buy menus showing empty list.
- Fixed #022: Fame prefix shown when in polymorph.
- Fixed #006: Item remove not working in DropOn_Ground.
- Fixed #017: Chars with MT_NONMOVER unable to spawn.
- Fixed #051: Extra message when drinking potions too fast, or eating errors.
- Fixed: ISBIT command. Now it is used like all rest functions <isbit value,bit>
  without complicated eval plus brackets constructions difficult to reproduce.
- Added: SETBIT value,bit and CLRBIT value,bit commands which returns mask with
  specifyed bit set or cleared.
- Added: @ operator (means power of value, fe: 2@3 = 8).
- Added: If SERV.log @text specifyed, this will be shown without script context.
- Added: ALLOWLIGHTOVERRIDE, if set to zero, sector local light will be skipped.

06-10-2005, Furio
- Fixed #009: Client lingering in newer clients.
- Fixed #061: Name not shown on paperdoll.

07-10-2005, Vjaka
- Fixed #057: <dSOMEVAL> gave incorrect values.

07-10-2005, Furio
- Fixed #065: Commands not working with gm body.
- Fixed #064: Commands saying with sysmesage.
- Fixed #055: sphere_backward_compatibility.scp. MUSIC command.
- Fixed #062: sphere_char.scp. CAN flag not specifyed for c_corpser.
- Added: StrIndexOf(string1,string2,[offset]). Search string2 in string1 and
  returns -1 (if not found) or a number >= 0 if found (index in string1).
  Offset is optional (where to start to search 0-based index).

11-10-2005, Vjaka
- Added: ZeroPoint to configure base of the sextant coordinates.
- Improved: exception debugging and support.
- Fixed: dclick on console not always opened the corresponding file.
- Added: ARGN2 in speech triggers corresponds to the player speech color if
  applicable.

11-10-2005, Radiant
- Fixed #070: Container can now be changed in @DropOn_Ground and @DropOn_Item

13-10-2005, Vjaka
- Fixed: ADDCLILOC leading to string corruption.
- Optimized: CALL operator to work faster if arguments are specifyed.
- Fixed #049: isevent/istevent working incorrectly.

18-10-2005, Radiant
- Reverted 0.56b back to 14-10-2005 07:10, 0.57.1 is now a different branch

19-10-2005, Radiant
- Tweaked #121: showing durability in tooltips as hits / maxhits instead of
  percentages for armor/clothing.
- Added #038: CTAGLIST and SERV.VARLIST. TAGLIST/CTAGLIST/SERV.VARLIST LOG writes
  results to the console.
- Fixed #098: Client not updating on .invis

19-10-2005, Cloud_Br (Script pack)
- Added the minor artifacts, see inside sphere_minor_artifacts.scp for tips.
- Added some missing fields to sphere.ini (PROFILE and EVENTSPET)
- Some updates and fixes on doom script and champions script.

19-10-2005, RanXerox (Script pack)
- Updated: sphere_item_aos_se.scp
- Updated: sphere_item_ml_weapons.scp
- Updated: sphere_item_treasure_maps.scp

19-10-2005, Vjaka
- Added a deadlock detection to some keywords parsing, that will eliminate some
  stack overflows.

22-10-2005, Furio
- Fixed #087: Guild related clilocs are bugged.
- Fixed #091: WOPFONT doesnt work.
- Fixed: bug in encryption routines that could lead to a sphere crash during startup

23-10-2005, Furio
- Fixed: Referring to SERV.MEM when memory = 0 causing exceptions.
- Fixed #131: Feature_AOS_Damage + Canharmself cause 2x damage display if damage
  is on self.
- Added #125: SERV.CLEARVARS. Clear all vars. Added in default script pack as
  plevel 6 command (spheretables.scp).
- Removed: SERV.DELETEFILE / SERV.WRITEFILE / READFILE / FILELINES since they're all
  integrated in the FILE obj.

26-10-2005, Cloud_Br (Script pack)
- Updated: sphere_item_building_walls_se.scp

26-10-2005, Furio
- Fixed #135: All stats being 26 when creating char.
- Fixed #149: Trigger @Rename is never called.
- Added: @UserSpecialMove with ARGN1 the special move selected from the fight book.

31-10-2005, Furio
- Fixed #159: Party don't display correct loot info.
- Fixed #171: All NPCs have ISSTUCK 1, even if they are on open, clear ground.
- Fixed #167: Can't see tooltips for locked down items.

04-11-2005, Vjaka
- Fixed #174: NEWDUPE from server object.
- Fixed #161: max* stats affected by mod* even if unsynced.
- Fixed #128: ClientTooltip trigger return 1 causing exceptions.

08-11-2005, Furio
- Fixed #188: <guildstone>.member.X.IsCandidate not working.

11-11-2005, Furio
- Fixed #186: <serv.map(<PLACE>).region.name> giving missing location.
- Added #199: Hiding hierachy (higher plevel will see lower hidden plevel gray).

15-11-2005, Vjaka
- Fixed #208: return 1 on @ReceiveItem not bounced item back if it was still in
  dragging layer.
- Fixed #151: trigger command not working for characters.

18-11-2005, Cloud_Br (Script pack)
- Fixed a bug when stealing artifacts that might cause crashes (add-on/Doom_Dungeon.zip).
- Added some missing weapons to sphere_item_ml_weapons.scp
- Added some missing npcs to spherechar_lbr.scp
- Added Succubus to Daemon Slayer list (add-on/Slayer_Weapons.zip).

22-11-2005, Vjaka
- Fixed #112: impossible to access the CHARDEF if the NPC is not in world.
- Fixed #225: CanSee and CanSeeLOS always required for SRC and not accepting
  arguments in several cases (actualy CanSee did not accept this at all).

22-11-2005, Torfo
- Fixed #221: Msg/Say parameters have no effect on hearall output.

24-11-2005, Cloud_Br (Script pack)
- Updated add-on/Champion_Spawn.zip:
  Changed c_forest_lord to c_etheral_warrior as it should be on Forest Lord Spawn Group.
  Changed ID field for Lord Oaks to c_etheral_warrior, to respect the defnames changes.
  Barracoon now has the hability to summon ratmans.
  Added Rotting Corpse to Unholy terror spawn.
  Added Rotting Corpse to Undead slayer weapon list.
  Corpses of the minions should now stay on the ground (with a timer of 15 seconds) to
    avoid lag.
  Optimized spawning of monsters, they won't appear on the same spot anymore and walk a
    way after some time, they will appear scatered around the spawn in a maximum distance
    of the range of that spawn (this should avoid lag when changing levels).

25-11-2005, Vjaka
- Fixed #233: Setting MAX* was substracting MOD*, so did not work correct way.

28-11-2005, Cloud_Br (Script pack)
- Updated add-on/Doom_Dungeon.zip.
- Updated add-on/Champion_Spawn.zip.

01-12-2005, Vjaka
- Fixed #222: Region triggers required return 0 to allow other same triggers to work.

01-12-2005, Cloud_Br (Script pack)
- Updated add-on/Champion_Spawn.zip:
  Fixed some wrong defnames on the monsters list.
  Fixed champion appearing as a man and dieing.
- Updated add-on/Slayer_Weapons.zip:
  Added Bovine Slayer to slayers list.
- Updated: Talismans to sphere_item_ml_misc.scp.

01-12-2005, Blizzard (Script pack)
- Updated: aquarium fishes to sphere_item_ml_misc.scp.

02-12-2005, Torfo
- Fixed #251: PacketX & unary operators

03-12-2005, Furio
- Fixed #246: Desappearing items on tiles built over water map tiles.
- Fixed #227: Tooltips for locked down items isn't being sent yet.
- Fixed: re-added basic support for speech.mul.

07-12-2005, Torfo
- Fixed #242: Cannot connect with newer clients

08-12-2005, Vjaka
- Fixed #247: Sector local time not changing, light levels not working due that.

09-12-2005, Vjaka
- Fixed #11: DiagonalWalkCheck caused problems with NPC spawning.

10-12-2005, Sir Dwayne (Script Pack)
- Updated: sphere_skillmenu.scp (Silver jewelry)
- Updated: spherechar_human.scp (Female barber)

11-12-2005, RanXerox (Script pack)
- Updated: maps/sphere_map_points2.scp (Rat fort teleporters)
- Updated: sphere_types.scp (Swamp terrain)

11-12-2005, Blizzard (Script Pack)
- Renamed: sphere_item_ml_weapons.scp to sphere_item_provisions_weapons_ml.scp
- Added: sphere_item_provisions_weapons_aos.scp
- Added: sphere_item_provisions_weapons_se.scp
- Updated: sphere_item_aos_se.scp
- Added DUPELIST and DUPEITEMs for all AoS, SE, and ML weapons.
- Added: sphere_item_provisions_armor_aos.scp
- Added: sphere_item_provisions_armor_se.scp
- Updated: sphere_item_provisions_weapons.scp

11-12-2005, Cloud_Br (Script Pack)
- Updated: sphere_minor_artifacts.scp (some missing minor artifacts)
- Added: sphere_item_christimas.scp (Christimas Item ids that come with 5.0.1f patch)

15-12-2005, Introvert (Script Pack)
- Updated: sphere_events_npcs.scp (fixed bugs in e_undead)

20-12-2005, Furio
- Fixed #286: Bug with @ operator (power of).

25-12-2005, Furio
- Fixed: FILE.READLINE returning strings with trailing \n and \r.
- Changed: StrTrim(args) to <STRTRIM args>.
- Fixed #298: Logging out while dragging item.

25-12-2005, Handred
- Fixed #287: Updated sphere_item_professions.scp

26-12-2005, Vjaka
- Fixed #294,#296: @SpellCast did not allow or disable to change words of power.
- Fixed #282: Operator ^= did not resolve.

28-12-2005, Radiant
- Fixed #090, #172, #237: ACTION being changed on UseQuick because of new trigger
- Fixed #136, #154, #291: Partial character updates not working
- Fixed #129: GM body can now also use the normal command prefix, instead of only '='
- Fixed #299: Transfering pets to NPCs

29-12-2005, Furio (Script Pack)
- Updated: sphere_item_provisions_weapons_ml.scp (fixed bug BLACKSMITH
  instead of BLACKSMITHING).

31-12-2005, Furio
- Fixed #324: TRYSRC is read as TRYSRV (only in message errors).
- Fixed #326: missing resource in sphere_item_provisions_weapons_ml.scp
- Fixed #315: wrong defnames in sphere_defs.scp
- Fixed #330: updated sphere_item_building_walls_se.scp and sphere_item_magic_necromancer_aos.scp

02-01-2006, Furio
- Fixed #332: support for guild chat speech mode.
- Fixed #336: PETRETRIEVE console error that shows when there's no stabled animals.
- Updated: sphere_defs.scp

03-01-2006, RanXerox (Script pack)
- Updated: sphere_types.scp

04-01-2006, Gygrazok (Script pack)
- Added: items/sphere_item_deco_evilitem.scp

08-01-2006, Shadow Dragon
- Fixed: Pets going logout.

10-01-2006, Furio
- Fixed #361: Creating characters with apostrophes ( ' ) in the name gives a random
  name in game.
- Fixed #348: Problems with FILE object.
- Fixed #356: Monsters not playing proper sounds (spherechar.scp and spherechar_evil.scp)
- Fixed #357: Some mappoints fixes (sphere_map_points0.scp and sphere_map_points1.scp)
- Updated: sphere_item_ml_misc.scp

11-11-2006, Radiant
- Ticks will no longer be given to webpages if USEHTTP is disabled in sphere.ini

12-01-2006, Vjaka
- Fixed #94: Stable master restock causing stabled pets to disappear.
- Fixed #212: Vendors do not restock money amount, unable to buy after a while.
- Fixed #343: Container functions like COUNT overrided user functions.
- Updated sphere_spells.scp fixing spell flags for polymorph (#335).

12-01-2006, K. Thorp (Script pack)
- Added: some multis to sphere_item_multis_houses_ships.scp
- Added: deeds to sphere_item_provisions_deed.scp

14-01-2006, Furio:
- Fixed #363: defining new region types. (See knowbugs.txt)
- Updated: sphere_defs.scp, sphere_types.scp, spheretables.scp

14-01-2006, Torfo:
- Fixed #371: Error on Bulletin Board (last letter missing)

15-01-2006, Radiant:
- Updated: You may now call functions on the SERV object. This affects several things,
  including the f_onserver functions, the console and packet filtering functions.

17-01-2006, RanXerox (Script pack)
- Updated: sphere_triggers.scp,sphere_item_eight_age.scp,sphere_item_ml_misc.scp
  sphere_item_provisions_weapons_ml.scp,sphere_minor_artifacts.scp
  sphere_map_points0.scp,sphere_map_points1.scp
  sphere_item_provisions_weapons_aos.scp,sphere_item_provisions_weapons_se.scp

20-01-2006, Blizzard (Script Pack)
- Updated: sphere_item_provisions_armor.scp, sphere_item_provisions_armor_se.scp,
  sphere_item_provisions_weapons_aos.scp, sphere_item_provisions_weapons_ml.scp,
  sphere_item_provisions_weapons_se.scp.

21-01-2006, Radiant
- Updated: 80 character console command limitation to SCRIPT_MAX_LINE_LEN

22-01-2006, Furio
- Fixed #380: IsNearType doesn't works whith custom typedef.
- Fixed #366: Effect of Hallucination.
- Fixed #378: Typo in sphere_admin.scp.
- Fixed: exceptions when using .charlist.
- Fixed: typo in console message.
- Sync (Vjaka): defmessage string allocation, thus binary EXE size reduced by ~200kb.
- Sync (Vjaka): SERV.console CMD to launch commands as you were in server console.
- Sync (ShadowDragon): Items in multis do not send to the client if he is not in
  the multi (OSI-compatible lag fight) as OF_OSIMultiSight.
- Updated: now ARGS in f_onchar_create contains account name.
- Updated: sphere_serv_triggers.scp.
- Added: f_onaccount_delete, ARGS contain account name, RETURN 1 block the delete.

23-01-2006, Torfo
- Fixed #264: Problem with 0xBF packet.

23-01-2006, Blizzard (Script Pack)
- Added: sphere_item_provisions_armor_ml.scp, sphere_item_provisions_clothing_ml.scp,
  sphere_item_provisions_clothing.scp.
- Updated: sphere_item_provisions_armor.scp, sphere_item_profession_tailor_tanner.scp,
  sphere_item_ml.scp.

27-01-2006, Torfo
- Fixed #411: sm_bolts in sphere_item_resources.scp and sphere_item_profession.scp
- Fixed #409: added missing ">" in sphere_item_aos_se.scp
- Fixed #405: added missing MT_FEMALE in def of succubus in spherechar_lbr.scp
- Fixed: seasons will be saved now.
- Fixed #408: <sector.season> doesn't work.

29-01-2006, Furio
- Fixed #410: Promptconsole removes all used ",".
- Fixed: strlen not working correctly with ",".

29-01-2006, RanXerox (Script pack)
- Updated: sphere_book.scp

31-01-2006, Furio
- Fixed #425: Unable to start sphere when editing sphere_msgs.scp.
- Removed: USEGODPORT in sphere.ini (and also the god port)
- Modified: USEHTTP usage. Look into sphere.ini for new options.

02-02-2006, Furio
- Fixed: players being able to track invisible (.invis) GMs.
- Sync (Vjaka): REGION.TYPE returning type from the itemdef of the multi.

10-02-2006, Furio
- Modified: replaced internal routines of TAG/CTAG/VAR/LOCALs, it improves
  speed, memory usage and decrease the occurence of leaks/exception.
- Fixed #440: Crash when selling too many items to vendors.

11-02-2006, Furio
- Fixed: new internal routines of TAG/CTAG/VAR/LOCALs in some special case.
- Added: support for OSI AuthID to avoid possible hijack to game server. By
  default is disabled, set UseAuthID = 1 in sphere.ini to use it.

15-02-2006, Furio
- Fixed: "Divide by Zero" in CChar::Tick() for "update stats" sections.

19-02-2006, Furio
- Fixed #456: NEWDUPE and DUPE doesn't copy events.
- Added: AOS properties for player characters: RES* (cold,energy,fire,poison) and
  LUCK with no built-in functionality.
- Sync (Vjaka): Added #214: ColorNoto* settings for characters color hue change.
- Sync (Vjaka): "NEWLOOT X" character function creating and equiping item X for NPCs
  if can give loot, useful to be used in @Death or @DeathCorpse triggers.
- Sync (Vjaka): "NEWGOLD N" function gives amount N of gold to the current char.
- Sync (Vjaka): character function TIMERF N,FuncName to cause a timed execution of a
  function FuncName in N secs. Specifying N as -1 will clear all TIMERF list.
  These functions are not saved, so do not store hours in the list, the purpose
  of this is to decrease overhead due to timered memory items opeations.
- Sync (Shadow Dragon): TAG.NoMoveTill for script purposes. This doesn't allow char
  to move if TAG.NoMoveTill > SERV.Time.

20-02-2006, Furio
- Fixed #462: TAG.NAME.HUE on chardef isn't working.
- Fixed: some possible overflow in some spots.
- Touchups for *NIX compilation.

20-02-2006, Cloud_Br (Script pack)
- Changed description of EVENTSPET on sphere.ini
- Add some new points to sphere_map_pointsX.scp
- Add some places with names like on OSI (places that didn't have a respective name
  before on default sphere) to sphere_mapX.scp files.

24-02-2006, Vjaka
- Fixed #158: NPC value spontaneously changing when NPC was under reactive armor.
- Fixed #314: Elf's Hair Color in creation is not correct.

25-02-2006, Torfo
- Fixed: possible PLEVEL-hack (thx to SL for reporting).

03-03-2006, Furio
- Fixed #401: Spells (incognito and mark) don't update the client tooltip.
- Fixed #478: Newgold does not update gold amount.

05-03-2006, Furio
- Fixed #483: Typo in sphere.ini.
- Fixed #484: LUCK and RES* properties throws errors when reading.

07-03-2006, Furio
- Added: Tithing points for player characters as TITHING with no built-in
  functionality.
- Fixed #492: Undefinied SCROLL_MOTD at player login.

08-03-2006, Furio
- Fixed #502: Divide by Zero Exceptions in CChar::Tick() stat section.
- Fixed #503: Tithing Points showed incorrectly in Paladin book.
- Updated: sphere_item_aos_se.scp, sphere_item_magic_necromancer_aos.scp

10-03-2006, Furio
- Fixed #501: Dropping a stackable item on another one with
  special attr (Newbie, Static, Move Never).
- Fixed #509: Cheater message with disconnect.
- Fixed #511: Tooltip Problem with Spawns.
- Fixed #517: Deleting Accounts not loging properly.

15-03-2006, Radiant
- Fixed: WHILE loops ending with weird undefined symbol error.

18-03-2006, Furio
- Fixed #526: "Resync [...]" working incorrectly.
- Fixed #520: Magic Flag IgnoreAr doesn't work.
- Updated: no 0-100 limitations to RES*.
- Updated: sphere_defs.scp

21-03-2006, Furio
- Fixed #292: Textentrylimited crashing clients (thx to Admin Ben)
- Fixed #528: Invis items in pack and/or corpse we see it, but when
  we click it, it dissappears.
- Fixed #506: ghost of the npc appears after dying when mounted.
- Updated: sphere_dialog.scp

22-03-2006, MrSugarCube (Script pack)
- Updated: sphere_menu.scp, sphere_item_misc.scp, townmagincia.scp (incorrect
  spelling of 'jewelry').
- Updated: sphere_item_provisions_armor_ml.scp (Duplicate DEFNAMEs for 02b74
  and 02b79).

23-03-2006, Furio
- Added: <FILE.FILEEXIST arg> returning 1 if arg exist.
- Added: Support for Bushido/Ninjitsu/SpellWeaving spellbooks.
- Updated: sphere_defs.scp (new typedefs), sphere_item_aos_se.scp (spellbooks).

23-03-2006, MrSugarCube
- Fixed: Incorrect spellbook packet being sent to newer clients with certain AOS
  features disabled.
- Fixed #181: Woolly sheep having wool resource on corpse after being shorn.
- Fixed: Player adding non-vendable item to vendor stock is deleted - Vendor now
  returns the item.
- Fixed #475: Taking item from hidden state does not update other clients.
- Modified: Warning message for non-vendable items will show the UID of the item
  and vendor.

23-03-2006, Handred
- Updated: sphere_spawns.scp. Changed all RESOURCES= to ID=, modified also the
  WEIGHT= for a better and easier looking to, ie: ID=c_zombie 5.

24-03-2006, MrSugarCube
- Fixed #519: Poison spell and field spell damage reveals caster after every
  damage effect.
- Fixed: Setting TARGP only working with invalid locations.
- Modified: @DropOn_Ground and @itemDropon_Ground triggers now have ARGS set
  to the location the item will be dropped to, specific points accessible
  using ARGV[x]. (readonly)
- Fixed: ARGS not being parsed correctly into ARGV when empty parameters are
  given (for example <myfunc 1,,,4,5> was treated as "1",",","4","5" and not
  "1","","","4","5").
- Modified: Attacker will not be revealed when a character is hit by a spell
  with SPELLFLAG_FIELD set.
- Added: Damage Flag DAM_NOREVEAL (04000). If this flag is applied the attacker
  will not be revealed. This is applied by default to poison damage and spell
  damage. (Note that for spells the attacker will be revealed regardless if
  SPELLFLAG_HARM is set, unless SPELLFLAG_FIELD is also set, so only affects
  field spell damage).
- Updated: sphere_defs.scp (Updated DAM_FLAGS section)

26-03-2006, MrSugarCube
- Modified: Vendor boxes will now only accept a maximum of 115 items dropped
  inside (as opposed to the 256 item limit of a normal container). A warning
  message will be displayed when the buy menu is shown if this limit has been
  exceeded.
- Fixed #540: Logged out characters can be targeted with spells (Actually
  CANSEE was returning 1 without GM/ALLSHOW priv).

27-03-2006, MrSugarCube
- Fixed #429: Unable to walk on blocking terrain with platform properties
  (eg: Palace of Paroxysmus acid).
- Fixed: Walking on stairs in certain areas (such as the ones at 925,641,-80,2
  or 7060,376)
- Updated: sphere_map0.scp, sphere_map_points0.scp, sphere_map0_ml.scp,
  sphere_map_points0_ml.scp (Moved ML locations to seperate script which can be
  uncommented to enabled ML areas).
- Updated: spheretables.scp (Added ML map files to RESOURCES block, to be
  uncommented if you wish to use).
- Updated: sphere.ini (Updated MAP0 description to remind users to uncomment ML
  map scripts).

28-03-2006, Ellessar (Script Pack)
- Updated: sphere_item_provisions_weapons_se.scp (incorrect spelling for
  i_tetsubo SKILLMAKE).

29-03-2006, MrSugarCube
- Fixed: NPCs unable to walk on the same tile as a dead/disconnected/insubstantial
  character.

30-03-2006, MrSugarCube
- Fixed #545: TARGET function with no message specified sent a blank sysmessage
  to the client. (also affected PROMPTCONSOLE).
- Updated: sphere_msgs.scp - Added missing message definitions to the list
  (27 were missing).

30-03-2006, Ellessar (Script Pack)
- Updated: sphere_item_provisions_weapons.scp (SKILL properties corrected for
  MaceFighting weapons).

31-03-2006, MrSugarCube (Script Pack)
- Updated: sphere_item_building_floors_se.scp (incorrect axis categories)
- Updated: sphere_item_provisons_deed.scp (incorrect spelling of "Provisions"
  for some axis categories)

01-04-2006, MrSugarCube
- Fixed #552: Removing items in SECTOR.ALLITEMS causes infinite loop
  (also ALLCHARS/ALLCHARSIDLE/ALLCLIENTS).

03-04-2006, Furio
- Fixed #553: Errors during SERV.MAP parsing.
- Fixed #407: Account creation with bad words.
- Removed: OF_Advanced_Los.
- Added: AdvancedLos in sphere.ini to control Los behaviour of player and npc.

04-04-2006, RanXerox (Script pack)
- Updated: sphere_item_magic_wands.scp (eliminates old ITEMDEF numbers).

04-04-2006, MrSugarCube
- Fixed #556: Exception occuring when failing to bandage another character.
- Fixed #558: DB reference still accessible with MySQL support disabled.

04-04-2006, Ellessar (Script pack)
- Updated: spherechar_lbr.scp (Changed "ICON=i_pet_orc_brute" to "ICON=i_pet_orc"
  for character c_orc_brute)

07-04-2006, MrSugarCube
- Fixed #565: Account name "account" not loaded correctly from accounts file.

08-04-2006, Ellessar (Script pack)
- Updated: sphere_item_icons_new.scp (Added missing icons: i_pet_terathanavenger,
  i_pet_meereternal, i_pet_meercaptain, i_pet_meermage)
- Updated: spherechar_lbr.scp (Added NPCs: c_mummy, c_terathan_avenger,
  c_meer_eternal, c_meer_captain, c_meer_mage)
- Updated: spherechar_se.scp (Fixed incorrect weapon for c_yomotsu_warrior)

09-04-2006, Vjaka
- Fixed #284: Character DISPID limitation changed to 2048 basing on bodyconv.def.
- Fixed #372: Weighted random templates had limitation for 64 members inside.
- Fixed #479: Off-duty vendor going off-duty with active client around.
- Fixed #497: Duplicated resources on inherited NPC.
- Fixed #541: Picking item that is too heavy is causing item to drop.
- Fixed #561: Players are unable to walk through any npc regardless of the stamina.

10-04-2006, Furio
- Added: TERRAIN.Z in SERV.MAP to know at which z is located the map tile.
- Fixed #577: SERV.ITEMDEF not behaving correctly.

10-04-2006, MrSugarCube (Script pack)
- Updated: sphere_map0.scp (Removed REGION_FLAG_UNDERGROUND from
  a_lord_britishs_castle_1, fixing lighting around west britain).

10-04-2006, Vjaka
- Fixed #575: Multiple resource lines in a REGIONTYPE not loading correctly.

11-04-2006, Ellessar (Script pack)
- Updated: sphere_backward_compatibility.scp (tweak for addnpc).

13-04-2006, MrSugarCube
- Fixed #576: Added World Statics Save to DEFMESSAGE table.
- Updated: sphere_msgs.scp (Added 'server_worldstaticsave' message)

15-04-2006, MrSugarCube
- Fixed: Players unable to dismount from their rides after attacking
  another character unless they retreated or killed the enemy.

16-04-2006, Handred (Script pack)
- Updated: sphere_menu.scp (Added Guild Transfer menu option using
  softcoded TRANSFERGUILD function. )
- Updated: sphere_triggers.scp (Added TRANSFERGUILD function. Feel
  free to fit it to your needs. )

17-04-2006, MrSugarCube (Script pack)
- Updated: sphere_spells.scp (Added SPELLFLAG_PLAYERONLY to spells
  71 and above (potion effects))
- Updated: jobbeggar.scp, jobblacksmith.scp, jobhealer.scp,
  jobtavernkeeper.scp, jobvet.scp, jobweaponsmith.scp,
  townbritain.scp (Fixed syntax errors where SRC.SEX was being used
  incorrectly)

18-04-2006, MrSugarCube
- Fixed: Adding a stack of scrolls to a spellbook consumed the whole
  pile instead of just one.

19-04-2006, coruja747 (Script pack)
- Updated: sphere_item_magic_wands (Fixed incorrect spelling of 'daemon'
  for i_wand_summon_daemon)

19-04-2006, MrSugarCube
- Fixed: Turning ships to force ship into invalid sailing location.

20-04-2006, Furio
- Fixed #600: Forcont* loops block script execution if no items found.

22-04-2006, MrSugarCube
- Fixed #622: Unable to access specific resources for spells using
  RESOURCES.n[.KEY|.VAL]
- Fixed #141: Curse spell having no effect on target.
- Fixed #476: UID.x.KEY not working correctly on region reference (under
  @Enter trigger for example).

24-04-2006, MrSugarCube
- Fixed #201: Walking off ship planks moves player to incorrect
  height (this is normal for characters with GM mode enabled).

26-04-2006, Ellessar
- Updated: sphere_item_profession_tailor_tanner.scp (Removed custom
  @TargOn_Item trigger for i_sewing_kit)

02-05-2006, Gygrazok
- Updated: sphereCrypt.ini (Added encryption keys for 5.0.2 client)

02-05-2006, Furio
- Fixed #643: Functions with similar names sometimes get miscalled (thx to SL Patch).
- Fixed #641: Deleting account when the player is online.
- Fixed #625: Cloth bolts give always 25 i_cloth, while it should give the amount of
  i_cloth specified in RESOURCES.
- Updated: sphere_item_profession_tanner.scp (Cloth bolt value).

03-05-2006, MrSugarCube
- Fixed #642: Intrinsic functions not working correctly from SERV
  object.
- Fixed #645: Possible to place invalid items on a gameboard, which
  in turn crashes clients.
- Fixed: Game board was setup incorrectly for games of Checkers.
- Modified: Game board setup for backgammon game added. (Note: Requires
  that backgammon board has MORE1 value of 2)
- Updated: sphere_item_profession_cook_barkeep_baker.scp (i_backgammon_game
  MORE1 changed to correct value)

09-05-2006, Torfo
- Fix (temp): TX-Errors are disconnecting player now (just on linux).

15-05-2006, Furio
- Modified: If VENDORMARKUP is not present on the npc or in the region the one from
  the chardef will be readed.
- Modified: Changing CLIENT properties will not show anymore annoying sysmessages.

19-05-2006, Shadow Dragon
- Fixed #638 & #639: Items outside of multi not sending when in multi.
- Fixed #655: House building on each other.

21-05-2006, V
- Fixed #611: Vendors buying without buy= assigned to them

23-05-2006, MrSugarCube
- Fixed #675: Stone wall revealing location of higher privileged characters.

28-05-2006, Furio
- Fixed #662: Skill lock tick.
- Fixed #691: serv.REGIONRESOURCE.x.REAP not working
- Modified: FeatureAOS to permit using of basic Aos feature without having tooltips.
  Look into sphere.ini for more info.

31-05-2006, MrSugarCube
- Modified: <CANCAST (spell)> now accepts an extra parameter to check the region
  flags. If the second parameter is not supplied then this check is enabled by
  default, the advantage is that you can now disable the region check when checking
  if a character can cast a spell. New usage is: <CANCAST (spell) [checkantimagic]>
- Fixed #702: Items with value=0 can not be crafted (note that without a value set the
  QUALITY property will be unavailable, and also no experience will be gained from such
  items).

31-05-2006, MrSugarCube (Script pack)
- Fixed #679: sphere_skillmenu.scp (Inscription SKILLMENU now makes use of new
  CANCAST syntax, resolving the issue of region flags preventing the crafting of
  certain scrolls)

01-06-2006, MrSugarCube
- Fixed #671: CriminalTimer=0 causes errors when setting criminal status.
- Fixed #703: Verbs not executing correctly on the default object in dialogs.

04-06-2006, MrSugarCube
- Fixed #681: Unable to execute and read the return value of scripted functions
  on the SERV object.
- Fixed: Server stats not being given when requested by UOGateway.
- Modified: The following multi properties can now be read from their ITEMDEFs:
  MULTIREGION, REGIONFLAGS and COMPONENT (COMPONENT usage is same as COMP).

05-06-2006, MrSugarCube
- Fixed: Attempts to use house keys to lock items down in containers.

06-06-2006, Furio
- Added: NAPIERPOW(arg), LOGARITHM(arg[,base]), TAN(arg).

06-06-2006, MrSugarCube
- Fixed: MULTIREGION property didn't show the value exactly as it appears in
  scripts (x1,y1,x2+1,y2+1,0 instead of x1,y1,x2,y2)

08-06-2006, MrSugarCube
- Fixed #711: EFFECT_ID property returning the EFFECT value on SPELL block.
- Fixed #413: Spell icons are bounced into backpack with MAGICF_STACKSTATS
  enabled.
- Modified: MAGICF_STACKSTATS now allows a character to be affected by
  each of the stat spells at the same time (eg. strength+bless+feeblemind).
  Note that it does not allow multiple effects from the same spell (so
  casting bless several times does not work).
- Updated: Sphere.ini with MAGICF_STACKSTATS description

08-06-2006, Furio
- Fixed #699: Removing an account on Linux cause an exception.

08-06-2006, Ellessar (Script pack)
- Updated: sphere_triggers.scp (Updated SRC.NEWITEM with SERV.NEWITEM and
  removed unnecessary SRC references)

08-06-2006, Beyonder (Script pack)
- Updated: sphere_item_building_fence.scp (Changed incorrect item defname
  i_gate_wood_2 to i_fence_wood_3 (ITEMDEF 085c))
- Updated: sphere_backward_compatibility.scp (Added i_gate_wood_2 as a
  DUPEITEM of i_fence_wood_3 for saves using incorrect defname)

11-06-2006, V
- Fixed: alligator not responding to commands
- Added: Broadcast warning 10 seconds before world save is performed to alert players

12-06-2006, MrSugarCube
- Fixed: ISNUM not working correctly with numbers in hex format.

13-06-2006, MrSugarCube
- Added #722: Support for dialog component 'buttontileart' in newer clients. Syntax
  is the same as 'button', but with 4 additional parameters for placing a tilepic
  over the gump image with a specified hue (0=normal) and offset (0,0=top left):
  "buttontileart x y up down active page id tileid tilehue offsetx offsety"
- Fixed: Remove Trap skill not starting after targeting an object.
- Fixed: Scripted & Targeted skills not starting after targeting an object.
- Fixed: Possible exceptions occuring when a reference does not exist (such as ACCOUNT
  .CHAR.x where x was an invalid index)
- Modified: Stat regeneration will now take twice as long instead of halting
  completely when a character is hungry.

13-06-2006, MrSugarCube (Script pack)
- Updated: sphere_dialog.scp (Fixed d_hair_dye dialog not dying player's hair and
  added buttontileart description to the help section)

14-06-2006, MrSugarCube
- Fixed: Exception when adding a guild member and not provided sufficient arguments.
- Fixed: Inviting someone into a party tells the wrong character they've been added.

15-06-2006, Furio
- Added: Added TAG.OVERRIDE.STATSUM/SKILLSUM/STATCAP[$statid]/SKILLCAP[$skillid] for
  players and npc to override SKILLCLASS values.
- Sync (ShadowDragon): TAG.OVERRIDE.REGEN[$statid]/REGENVAL[$statid] to modify regen
  rate and regen amount.
- Sync (Vjaka): Added <EXPLODE sep,string> operator which converts string with separators
  other than ',' to commas making possible to operate with such string using strarg/streat.
  Sample: LOCAL.S=<explode :/- ,my:test/string:2-3> should give result of "my,test,string,2,3".

17-06-2006, MrSugarCube
- Fixed #729: AntiMagic flags blocking spell effects on items even with GM mode enabled.
- Fixed #730: Immunity to spider web traps after taking damage.

17-06-2006, coruja747 (Script pack)
- Updated: sphere_item_provisions_armor_se.scp (Fixed error in t_ninja_belt)

18-06-2006, V (TYVM SL)
- Modified: TimerF is now global and works on any object. It will take optional
  arguments to the function call. Entire list is now saved and loaded upon startup.
  It no longer uses -1 to erase the TimerF list. Takes a maximum of 1024 characters.
  syntax: timerf n, function args

19-06-2006, MrSugarCube
- Fixed #653: TRAIN function causing exception when not all default skills
  are defined.
- Fixed #732: Items on buy/sell menus displaying names from muls with
  FEATURE_AOS_UPDATE_B disabled on AOS+ clients. Instead a basic tooltip packet
  containing only the name of the item will be sent to the client in this case.

19-06-2006, MrSugarCube (Script pack)
- Updated: sphere_item_provisions_weapons_se.scp (Corrected incorrect DUPEITEM
  and TDATA properties for i_fukiya)
- Updated: sphere_msgs.scp (Moved 32 hardcoded messages to defmessages and added
  1 missing defmessage)

01-07-2006, Furio
- Fixed #740: Strange price on vendors.
- Fixed #752: Resizepic not showing with dorigin.
- Fixed #757: Error on ".serv.account add".

02-07-2006, Nazghul (with thx to Ellessar)
- Fixed #639: OSI Multi Sight removes items already in sight.
- Added: TAG.ALWAYSSEND for items. An item with this TAG will always be send,
  no matter whether it is in a multi or not. The TAG works only with
  OF_OSIMultiSight on.
- Redone new items sending (should save some unneeded packets)

04-07-2006, MrSugarCube
- Modified: SERV.CLIENT.x reference no longer accepts x if it is out of range
  (use SERV.CLIENTS property to check range).
- Modified: SERV.CLIENT.x reference no longer skips clients without characters
  (such as HTTP, or telnet connections), which caused strange behaviour.
  <SERV.CLIENT.x> will return 0 if the client has no attached character, 1 if
  the client has a character attached.

05-07-2006, Nazghul
- Added: A skill trigger ON=@PreStart and a character trigger ON=@SkillPreStart
  are now called before ANY hardcoded stuff related to the skill which will start.
- Added: A skill flag SFK_NOMINDIST. With this flag on, you can mine, chop
  (distance doesn't have to be >= 1) or fish (distance doesn't have to be >= 2)
  right under yourself.
- Modified: Now an axe can be damaged during lumberjacking.
- Fixed: Fishing bug, which allowed fishing through ship floor.
- Fixed: Chopping with t_weapon_fence does not start skill Lumberjacking.

05-07-2006, Nazghul (Script Pack)
- Updated: sphere_defs.scp (added section skill_flags)
- Updated: sphere_msgs.scp (messages fishing_close, lumberjacking_close,
  lumberjacking_tool, mining_close, fishing_4)

09-07-2006, MrSugarCube
- Fixed: dtext, dcroppedtext, dhtmlgump, dtextentry and dtextentrylimited in gumps
  using a space for the text if no string was provided.
- Fixed #754: GMs losing non-vendable items when dropping them into a vendor box.
- Fixed #720: <dSOMEVAL> returning 0 for values starting with "0.".

10-07-2006, MrSugarCube
- Fixed #760: Exception caused by opening paperdoll when not all default skills
  are defined.

11-07-2006 Nazghul
- Fixed #594: Players (only if their client allows) and NPCs were able to go through
  non-static walls.
- Added: CAN-Flag mt_passwalls (08); NPC with this flag CAN pass through static
  and dynamic walls.

12-07-2006, Furio
- Fixed #690: serv.REGIONTYPE.*.resources is not working.
- Added: <serv.regiontype.*.calcmemberindex [uid]> returning the index of the
  resource selected randomly or basing on the skill of the uid passed as argument.

12-07-2006 Nazghul
- Fixed: When logging in with an unencrypted client, you were not able to see
  tooltips for objects in line of sight (0 to 18 tiles away from you),
  including yourself.

12-07-2006, Nazghul (Script Pack)
- Updated: sphere_defs.scp (updated section can_flags)
- Fixed #761: missing positioning of newly created vendor in i_deed_vendor
  (sphere_item_provisions_deed.scp)

13-07-2006, Nazghul
- Added: CURFOLLOWER, MAXFOLLOWER with no built-in functionality. These variables
  change values on a status gump.
- Fixed #764: Cannot see items in large multis (OF_OsiMultiSight).
- Sync (Vjaka): ISWEAPON and ISARMOR read-only properties for items.

14-07-2006, Nazghul
- Added: ISWEAPON and ISARMOR are now avaliable through serv.itemdef.x.* too.

16-07-2006, Nazghul
- Added: OF_Command_Sysmsgs into sphere.ini. With this flag on, you will see
  sysmessages with current status after typing .allmove, .allshow, .debug,
  .detail, .gm, .hearall, .privshow, .invis, .invul

20-07-2006, Nazghul (Script Pack)
- Fixed #776: sphere_map2.scp (Wrong Ilshenar Region description (Wisp Dungeon),
  thx Coruja747.

21-07-2006, Furio
- Fixed #780: Unable to read REPLICATE property.
- Changed: TAG.OVERRIDE.STATCAP[$statid]/SKILLCAP[$skillid]/REGEN[$statid]/REGENVAL[$statid]
  to TAG.OVERRIDE.STATCAP_$statid/SKILLCAP_$skillid/REGEN_$statid/REGENVAL_$statid.
- Added: -E to command line. Starting Sphere with it will enable the ExceptionDumper
  that will generate a .map file on unexpected exceptions. Sending that file through
  the bugtracker will help us in the debug process. (thx to Z.)
- Fixed #774: Ghost's speech when in peace mode.

21-07-2006, MrSugarCube
- Fixed: Incorrect name shown when a player declines a party invite.
- Modified: Placing a house over a staff member (Counselor+) no longer blocks
  the placement if the character cannot see them.

22-07-2006, MrSugarCube
- Added: SPEEDMODE property for players. Allows setting the speed mode that a
  client can use (and affects the movement throttle accordingly). There are
  4 different speed modes that affect the client:
    0  - Normal speed.
    1  - Double speed on foot, normal speed when mounted.
    2  - Always walk on foot and when mounted.
    3+ - Always run on foot, always walk when mounted.

22-07-2006, coruja747 (Script pack)
- Updated: sphere_map2.scp (Sorcerer Dungeon region definitions incorrect).

23-07-2006, Shadow Dragon
- Added: LOCAL.Arrow storing an UID of used arrow while archery in @Hit.
- Added: Extra combat flag COMBAT_PREHIT to allow pre hit combat style
  (first hit is instant)

26-07-2006, coruja747 (Script Pack)
- Updated: sphere_map2.scp (#793, Lake Shire region has not to be guarded)
- Added: GAINRADIUS keyword for skill definitions. Skillgain will only be calculated if
  the current skill is less than the actual difficulty + GAINRADIUS to prohibit skillgain
  by performing way too easy tasks. If not set it defaults to 100.0 (so pertaining the
  old behaviour)

27-07-2006, coruja747 (Script Pack)
- Fixed: #796, sphere_map_points2.scp (Wisp Dungeon, Kirin Passage, Cyclops Dungeon)

28-07-2006, coruja747 (Script Pack)
- Fixed: #800, missing teleports in sphere_map_points0.scp and sphere_map_points1.scp

29-07-2006, Nazghul
- Modified: @Dclick is now called for items which were dclicked by an NPC.
  (e.g. when an NPC is going to open a door, @DClick is called for this door)
- Fixed #798: If a wall was built on a spot where a paralyzed player stays,
  he was not unparalyzed.

29-07-2006, MrSugarCube
- Fixed: Vendors speak two messages when a player does not have any items to sell to them.

30-07-2006, Shadow Dragon
- Added: New trigger @Criminal called after someone becomes criminal for someone.
  [] - criminal, SRC - someone. RETURN 1 - stops hardcoded effect (memory_harmedby and so),
  so you can make your own criminal system.

31-07-2006, Kirofus (Script pack)
- Updated: sphere_types.scp (Fixed incorrect terrain definition for t_water)

31-07-2006, MrSugarCube
- Modified: MaxWeight is now sent to the client for display on the status window in
  newer clients.

31-07-2006, Nazghul
- Added: CONTP function, which allows you to change the position of an item,
  which is inside a container.

01-08-2007, Nazghul
- Added: INI flag EF_New_Walkcheck = 04000 to switch on and off new walkcheck routines
  what should prohibit NPC from passing thru walls if not explicitely stated
  (CAN-Flag mt_passwalls (08))

02-08-2006, Furio
- Added: STRREGEX(pattern,string) that execute a pattern matching supporting the
  known standard. Return: 1 match found, 0 match not found, -1 illegal pattern syntax.

04-08-2006, Nazghul
(most code revised, debugged and (re)designed by Ellessar when I was up to drop
this all in desperation)
- Added: Function AddContextEntry. what takes 2 to 4 arguments separated by a comma.
   SRC.AddContextEntry EntryTag,TextID,Flags,Color
   EntryTag - the number to return as ARGN by @(item)ContextMenuSelect. Make it unique.
            - EntryTags from 0 to 100 are reserved by Sphere for internal use, so do not
              use it.
   TextID - CLILOCed name of the button. The number from cliloc.[your_localization]
            WITHOUT the leading "300" or such! Just type "5194" or "11010"
   Flags - 01 - locked (will be grayed out)
         - 02 - consecutive entries with this flag set will be summarized under
                a golden arrow
         - 020 - can be colored
   Color (applied only if Flags & 020) - hue

- Added: Trigger @ContextMenuRequest/@itemContextMenuRequest which is fired after
  receiving a display Popup-menu client request (single click on an object).

  It can be fired two times, each call has a different ARGN.

  The first time it is fired before any hardcoded stuff is added to the Popup-menu.
  Here, Return 1 denies displaying any hardcoded entries, but if you make a softcoded
  entry, it WILL be displayed. It also will prohibit the second call of the trigger.
  Both, Return 0 and Return 2 allows hardcoded stuff to be added. If you change ARGN,
  the trigger will be called once more (but ARGN != 1).

  The second time it is fired after all hardcoded stuff was added (so you can add
  your stuff to the bottom of the Popup-menu). Return value has no effect at all.

  The first call:
   In:  ARGN = 1
   Out: Return 1 - only your stuff will be added (IF ANY), prohibits the second call
        Return 0/2 - your and hardcoded stuff will be added
        ARGN (ARGN != 1) - allows the second call

  The second call:
   In:  ARGN = 2
   Out: Return 0/1/2 - does nothing
        ARGN - does nothing

- Added: Trigger @ContextMenuSelect/@itemContextMenuSelect which is fired after
  a client selects something from a Popup-menu. ARGN is a value, which was sent
  by the server to the client as the first argument with the AddContextEntry function.

06-08-2006, MrSugarCube
- Modified: SERV.ACCOUNT.x now returns 1 if the account name or index exists, or 0 if not.
- Added: P.STATICS.x.COLOR and P.STATICS.x.Z can be used to find the colour and height
  of static items.
- Modified: Setting BONUS_STATS to 0 in SKILL definitions disables using BONUS_x properties
  when calculating stat gains for that skill instead of blocking all stat gains for it. If
  you want to prevent stat gains, you should either set STAT_x to 0, or set BONUS_x to 0
  with BONUS_STATS greater than 0.

07-08-2006, MrSugarCube (Script pack)
- Updated: sphere_msgs.scp (Fixed some 'broken' defmessages with tabs in)

10-08-2006, ShiryuX (Script Pack)
- Fixed: #827 Kirin entered twice in sphere_defs.scp

14-08-2006, Nazghul
- Added: dmgcold, dmgenergy, dmgfire, dmgpoison properties for weapons with no built-in
  functionality (yet).
- Fixed: Returned maxweight property different from maxweight property displayed
  in status gump.
- Fixed #592: Wrong spellbook packets send by Linux versions
- Updated: sphere.ini - added new experimental flag EF_NewPositionChecks.

16-08-2006, Nazghul
- Added: Experimental flag EF_NewPositionChecks, with this flag on,
  the new position-related checks behavior will be used. So far it does something only
  with resource gathering related skills (lumberjacking, mining, fishing, eating grass etc.)
  and Advanced LOS.
  The flag is HIGHLY EXPERIMENTAL!
- Modified: FORPLAYERS now loops through logouted players. If you want to loop only through
  online players, use FORCLIENTS.

17-08-2006, MrSugarCube
- Fixed: Retrieving StatLock properties with STATLOCK[statname] and SKILLLOCK[skillname]
- Fixed #835: Setting StatLocks on the status window sets the incorrect StatLock[x] property.
- Modified: Undefined region warnings are no longer reported for locations outside of the
  map boundaries.

20-08-2006, Nazghul (Changes only for servers with EF_NewPositionCheck on)
- Fixed #304: NPCs are dumber in pathfinding with EF_DiagonalWalkCheck on
  (fixed only with EF_NewPositionCheck and EF_WalkCheck on).
- Fixed #747, #767: Z not updated when you enter a multi, .fix not working inside a multi.
- Fixed #837, #829: NPCs not spawning (or on the wrong place) inside a building.
- Fixed #598: Ladders not updating Z and a player cannot step on some of them.
- Modified GOTO function: NPC will now not stop moving after the first step.

26-08-2006, Nazghul (Changes only for servers with EF_NewPositionCheck on)
- Fixed #744: Line Of Sight check going from out of a house into the house was successful,
  but not vice versa.
- Fixed: Item flags and height was always inherited from the parent item
  (the item with DUPELIST=), what damaged almost all Line Of Sight checks.

28-08-2006, Nazghul (Changes only for servers with EF_NewPositionCheck on)
- Modified: Now, archery, potion throwing, dragon breathing, stone throwing, magery can be
  used through a window.
- Modified: Now, fishing use LOS and prohibits casting through blocking objects.

28-08-2006, Nazghul
- Updated sphere_defs.scp: Added DEFNAME los_flags.
- Updated sphere_msgs.scp: Added message fishing_los.
- Removed: Multithreading support for Linux version due to its unusability on this OS.

30-08-2006, Nazghul
- MODIFIED: RESCOLD, RESENERGY, RESFIRE, RESPOISON now can also be set on NPC
  Remember that RES*=100 will give you a 100 percent immunity against the damage inflicted
  by TAG.*DAMAGE.
- Added: COMBAT_SPECIALDAMAGE to INI CombatFlags (08). If set, TAG.*DAMAGE (below) will be
  used.
- Added: COMBAT_USE_RESISTANCE to INI CombatFlags (010). If set, RES* on characters will
  also be weighted against normal damage if the old fashioned damage flags are set.
- Added: TAG.COLDDAMAGE, TAG.ENERGYDAMAGE, TAG.FIREDAMAGE, TAG.POISONDAMAGE for characters
  and items. The server will only evaluate the tags on characters, and if ComBatFlag
  COMBAT_SPECIALDAMAGE is set. Then any damage done to others (if it's damage type contains
  at least one of the physical types OR magic) will be increased by the value of the
  appropriate tag, lowered by the RES* percentage of the victim.
  Tags on items will not be evaluated by the server - their values can be used to for
  example increase the TAGs or the RES* properties on characters on equip of the item.
  This way you can use TAG.*DAMAGE on a weapon to increase the wearer's appropriate
  damage tag, or on a piece of armor to increase his RES*, or to whatever you want.

31-08-2006, Nazghul
- Added: NPC trigger @PetDesert. Fires when a pet decides to go wild.
  Default object is the pet, SRC the master. RETURN 1 changes the pet's mind.

31-08-2006, MrSugarCube
- Fixed: P.REGION reference not working correctly in areas defined via ROOMDEFs.
- Added: P.ROOM can be used to access the ROOM properties of a point, just like
  you can with P.REGION.
- Modified: P.REGION and P.ROOM now return 0 if a region or room doesn't exist at
  the point, and 1 if one does.
- Added: Support for the new BandageSelf and BandageTarget macros found in the
  latest clients (5.0.4). Using the macro will act as if the client has just
  targeted something with the bandage (and so @[item]TargOn_Item will be called).

01-09-2006, MrSugarCube
- Fixed #849: Enabling precasting does not freeze characters when casting.
- Fixed #849: With precasting enabled, skill is gained before the spell is
  completely cast at a target.
- Fixed #849: Harmful area effect spells don't affect the caster when
  MAGICF_CANHARMSELF is enabled.
- Fixed #849: TELE and POLY functions not working correctly with precasting
  enabled.
- Fixed #849: Casting from spellbook not working correctly with both
  FEATURE_AOS_UPDATE_B and MAGICF_PRECAST settings enabled.
- Fixed: Exception caused by spell effects on items with no SRC present.

02-09-2006, Nazghul
- Added: TAG.OVERRIDE.MOVERATE for NPC to speed up or slow down single NPC

05-09-2006, Nazghul
- Added: Option flag OF_Buffs. When on, Sphere will automatically add and remove buff and
  debuff icons to the affected players.
- Updated: sphere.ini - added new optional flag OF_Buffs
- Added: Functions ADDBUFF, REMOVEBUFF for adding and removing buff/debuff icons.
  syntax: ADDBUFF IconId ClilocOne ClilocTwo Seconds Text1 Text2(optional) Text3(optional)
          The text fields are supposed to hold max. 3 characters each (numbers) and will
          be cut off if larger.
  	  REMOVEBUFF IconId
  These functions only work with client 5.0.3 or above.

06-09-2006, Nazghul (script pack)
- Updated: sphere_defs.scp (added defnames for buff icons and clilocs)
- Fixed: bug with i_multi_tower_wizard - the door was placed BELOW the floor,
  so unuseable with new LOS checks

07-09-2006, Nazghul
- Updated: sphere.ini - added new debug flags DEBUGF_SCRIPTS, DEBUGF_LOS.

10-09-2006, ShiryuX (Script Pack)
- Updated: sphere_defs.scp - added a defname for rideable Polar Bear

11-09-2006, Nazghul
- Fixed #852: Trigger @SKILLSUCCESS did not fire with fighting skills

12-09-2006, MrSugarCube
- Added: FORINSTANCES to loop through all instances of a given BaseID. Usage
  is "FORINSTANCES id". If an ID is not supplied then the BaseID of the default
  object will be used. Works for both items and characters.

12-09-2006, Nazghul
- Added: A new item property IsCont, which returns 1 if an item is a container and 0 if
  it is not.
- Updated: sphere.ini - added a new debug flag DEBUGF_WALK.

15-09-2006, Nazghul
- Added: INI Flag OF_NoPrefix (0x4000) to get rid of the "A" and "An" prefixes what ere
  only an annoyance for not english language shards
- Changed: Key links will only be blanked if they are pointing to an invalid item UID now.
  Before everything what was neither container nor multi was considered "invalid", so keys
  with the UID of a door, or themselves could turn blank.
- Added #848: Character trigger @SpellSelect. Doing pretty much the same as the spell trigger
  @select and has the same arguments/parameters
- Fixed #778: Wrong spellbook recognition with more than one spellbook std., necro, ...)
  in pack.
- Updated: sphere.ini - Removed experimental flag EF_New_Walkcheck.

16-09-2006, Nazghul
- Added: OF_DyeType flag to sphere.ini. If set players are allowed to use i_dye on every
  t_dye_vat instead of only i_dye_tub. Making it switcheable for all those who have concerns
  about exploitability (even as I do not see any risk) - we all remember the times when
  injection users colored whole shards pink.

17-09-2006, MrSugarCube
- Fixed: Using Bandage macro with a target prompt already present calling @TargOn_Cancel
  on the bandages.
- Fixed #863: Changing RESFIRE/RESENERGY/RESPOISON/RESCOLD properties does not update the
  client.
- Fixed: Unable to gain magery skill with precasting enabled.
- Fixed: Various object references not accessible from the guildstone object.
- Fixed #865: GUILD.MEMBER.x.ISMEMBER property not working correctly.

20-09-2006, Nazghul
- Fixed #853: Update & DClick stopped display of weather effects

21-09-2006, Nazghul
- added TAG.OVERRIDE.AMMOTYPE and TAG.OVERRIDE.AMMOANIM for bows and xbows to - yes, OVERRIDE the
  TDATA3 and TDATA4 values on a per-item-base

21-09-2006, MrSugarCube
- Fixed #875: Exception caused by setting MASTERUID when no current guild/town master
  exists.
- Modified: Setting MASTERUID to the same uid as the current guild/town master no longer
  causes an error.
- Fixed: Calling the TRAIN function on an NPC in combat would cause an error.
- Modified #869: The TRAIN function now works on all NPC brains between 2 and 9.

21-09-2006, Nazghul
- changed GAINRADIUS so that it no longer defaults to anything - if not set on a skill
  it's just transparent (as if never invented)

22-09-2006, Nazghul
- Fixed #846: Bad character DispID displayed if there was serv.chardef called no NPC
  in the world with this ID.

24-09-2006, Nazghul
- Added: Function CONTCONSUME <arg1> <arg2>, which consumes <arg2> amount of an item with id <arg1>
  from a referenced container and its subcontainers. Function does nothing on chars (use consume)
  and on non-container items.
  Example: findlayer.29.contconsume i_gold 100000
- Added: Item trigger @Buy and character trigger @itemBuy, which are called before item is sold
  by a vendor. The trigger is called only with EF_New_Triggers on.
  ACT/DEFAULT is the item, SRC is the player, ARGN is the item amount, ARGO is the vendor.
  Return 1 prevents the player from buying the item.
- Added: Item trigger @Sell and character trigger @itemSell, which are called before item is bought
  by a vendor. The trigger is called only with EF_New_Triggers on.
  ACT/DEFAULT is the item, SRC is the player, ARGN is the item amount, ARGO is the vendor.
  Return 1 prevents the player from selling the item.
- Fixed: Serv.itemdef.xxx.skill not always returning the skill
- Fixed: A copy & paste error in TAG.OVERRIDE.AMMO* what prevented the animation stuff to run.

25-09-2006, Nazghul
- Added: EF_DamageTool (0x2000) to Sphere.ini. Only if set tools/weapons will be damaged while
  lumberjacking/mining (what includes firing @Damage on them)
- Fixed: NPCs spawning with incorrect Z position.

26-09-2006, Nazghul
- Modified: @(item)ContextMenuRequest and @(item)ContextMenuSelect now will not be called with
  EF_Minimize_Triggers on.

27-09-2006, Nazghul
- Added: TDATA3 and TDATA4 of a container type item are now holding min and max coordinates of
  the "area were items may be placed", relatively to the open container gump.
  TDATA3 is (MinX * 0x10000) + MinY, TDATA4 is (MaxX * 0x10000) + MaxY
  Be very careful with these settings - if they are set to illegal values (i.e., outside of the
  visible gump) Sphere will happily accept them, but your users will not be able to pick items
  placed there out of the container, because the client will only display then if they have the
  container gump as a background!
  If TDATA4 is not set (or set to 0), default values will apply, along with the console warning
  "unknown gump id".

28-09-2006, Nazghul
- Added: MOREM value (0..127) on digestible food will override the amount of "food units"
  what will be added to the characters FOOD property when eating this. Obviously, items
  with different MOREM will not stack. Because on=@SUCCESS on cooking will not give you
  a reference to the newly created item but only to the raw one, MOREM will be transferred
  from the raw food (what you may alter in on=@success)

29-09-2006, Nazghul
- Added: 3 defmessages, thus making the headline for the "c" console command configurable.

01-10-2006, Nazghul
- Added: Intrinsic function IsObscene what tests whether the passed argument is a forbidden
  word (list of these words are in your spheretables.scp under the section OBSCENE).
- Fixed: Obscene not matching obscened words inside a string.
- Fixed #889: Fame.* and Karma.* always returning 0.
- Updated: spheretables.scp - added KARMA and FAME sections. Now you can change, add or remove
  keys which are used behind Karma. and Fame. . First line declares steps, other lines their
  names.
  IT IS HIGHLY RECOMMENDED TO UPDATE YOUR SPHERETABLES.SCP!!!

02-10-2006, Nazghul (Script Pack)
- Fixed #867: sphere_minor_artifacts.scp, i_orcish_visage
- Updated: Flags notification on server startup

02-10-2006, Nazghul
- Fixed #898: Some stairs unwalkable with EF_NewPositionChecks, EF_WalkCheck and
  EF_DiagonalWalkCheck on.

05-10-2006, Nazghul
- Added: INI flag OF_OSIDamageMod (0x04)
  Modifying weapon damage OSI style, according to this formulas (originally provided by ClouD_Br):
  Tactics Damage Bonus% = Tactics � 1.6 (Add 6.25% if Tactics >= 100)
  Anatomy Damage Bonus% = (Anatomy � 2) + 5
  Lumberjack Damage Bonus% = Lumberjack � 2 (Add 10% if Lumberjacking >= 100)
  Strength Damage Bonus% = Strength * 0.3 (Add 5% if Strength >= 100)
  Final Damage Bonus% = Tactics Bonus + Anatomy Bonus + Lumber Bonus + Strangth Bonus + Damage Increase Items*
  Final Damage = Base Damage + (Base Damage * Final Damage Bonus%)
  * Damage Increase is capped at 100%.

05-10-2006, Nazghul
- Fixed #036: Fixed TRY and TRYSRV not working with locals (local and arg*). TRYSRC and TRYP
  do not work, since it makes no sense to use it on local variables. (Thx to Ellessar who
  finally worked out how this SHOULD work, so we found the bug deeply buried under tons of
  old code)

06-10-2006, Nazghul
- Added: Function ISNEARTYPETOP(.P) which uses new checks for resource gathering (item which
  you want to find must be at the top, if at the top there are 2 items, then the success
  depends on the priority (dynamic->multi->static->terrain) of those items). Syntax is the
  same with ISNEARTYPE(.P). NOTE: This function is called from hardcode if EF_NewPositionChecks
  are on.
- Fixed #668: Delete packets of items which cannot be seen were sent to the client.
- Modified #632: Now, IsPlayer can be used on every game object.
- Modified: sphere.ini - added an NPC AI flag NPC_AI_INTFOOD which enables smarter and more
  trustworthy food finding.

08-10-2006, Furio
- Modified: TRIGGER command. It now supports calling a trigger with arguments, the syntax is:
  TRIGGER $trigger_name[,$trigger_arg_type,...] where $trigger_arg_type can be:
  - TAT_AS_ARGN (1): uses arguments as ARGN. Example: TRIGGER @MyTest,<def.TAT_AS_ARGN>,1,2,3
                     will call @MyTest with ARGN1=1 ARGN2=2 ARGN3=3.
  - TAT_AS_ARGS (2): uses arguments as ARGS. Example: TRIGGER @MyTest,<def.TAT_AS_ARGS>,hi you 2,yo !
                     will call @MyTest with ARGS=hi you 2,yo !.
  - TAT_AS_ARGO (3): uses arguments as ARGN. Example: TRIGGER @MyTest,<def.TAT_AS_ARGO>,01
                     will call @MyTest with ARGO.UID=01 (only if object with such uid exist).
- Updated: sphere_defs.scp (with new definitions for the TRIGGER command).
- Fixed #880: Explode function not working as it should.

09-10-2006, Nazghul
- fixed problems with spellbooks obviously triggered by new Gcc compiler for Linux with a weird
  workaround.

10-10-2006, Nazghul
- Fixed #900: Added INI flag COMBAT_DCLICKSELF_UNMOUNT to unmount horse when dclicking self
  while in warmode.

11-10-2006, Nazghul (Script Pack)
- Updated: sphere_msgs.scp - more defmessages to customize text output.
- Updated (#905): sphere_item_provisions_potions.scp - Shrink potion did not behave as expected.

13-10-2006, Nazghul
- Added: Intrinsic functions SIN() and COS(). Attention: Without FLOAT math they will obviously
  only return 0 and 1 :)

16-10-2006, Nazghul
- Added: Support for floats (local variables FLOAT.younameit, which have size of double, and
  can hold precise numbers). Usage of these variables is the same like LOCAL.younameit. As
  EVAL only uses integer arithmetic, with FLOAT math you have to use <FLOATVAL ()>
  (New code was done mainly by Ellessar and Decrythe, I just "glued" it into Sphere :) )
- Changed: Return values for @SPELLSELECT trigger. Touchup for @SELECT with spells. Different
  server behaviour can be achieved with the following RETURN values in trigger scripts:
  @SELECT
  	RETURN 0 - proceed without mana, spellbook, and reagent check as if these checks were
  						 successful
		RETURN 1 - Abort processing (so aborting the spell)
	  RETURN 2 - proceed as normal
	  RETURN 6 - like RETURN 0 (for compatibility with @SPELLSELECT)
  @SPELLSELECT
  	RETURN 0 - proceed as normal
		RETURN 1 - abort processing (so aborting the spell)
	  RETURN 2 - proceed as normal
	  RETURN 6 - proceed without mana, spellbook, and reagent check as if these checks were
	  					 successful
  @SPELLSELECT will be called after @SELECT - what means, if you leave @SELECT with RETURN 0 or
  RETURN 1, @SPELLSELECT will NOT be called!

16-10-2006, Furio
- Added: DAM.HI/LO and ARMOR.HI/LO

17-10-2006, Nazghul
- Added: Defmessage if skillgain is aborted due to GAINRADIUS not met; message will only be displayed
  if TAG.NOSKILLMSG=1 on character
- Fixed: Problems with long passwords and MD5 hash on.

18-10-2006, Nazghul
- Added INI flag OF_DrinkIsFood (0x10000). If set, T_DRINK will increase FOOD lvl. like T_FOOD

19-10-2006, Nazghul
- Added: Dynamic property "height" for characters.

20-10-2006, Nazghul
- Updated: sphere_defs.scp - added defname charheight.

21-10-2006, Nazghul
- Added: New "m" paramter for TARGET function. Now you can use TARGETM and TARGETFM for targeting
  a place for your multi (you will see your multi in the "ghost mode"). TARGETM takes as an argument
  ONLY ID of the multi, TARGETFM takes 2 arguments - function_to_call,ID_ot_the_multi.

21-10-2006, Nazghul (Changes only for servers with EF_NewPositionCheck on and AdvancedLOS on)
- Modified: CanSeeLOS now uses height of a character for its checks. Height is read in this order
  and first correct entry is used:
  1. Dynamic height property of an object
  2. Height property under CHARDEF/ITEMDEF (can be inherited)
  3. Defname in format "height_dispid", while dispid is a hex number in Sphere format (0a3)
  4. Defname in format "height_dispid", while dispid is a dec number
  5. Universal height - "15"
  If a character is mounted, its height is raised by 4. CanSeeLOS reduce height of an unmounted
  character by 1 (pretending eyes height).
  NOTE: This formula is used when you are doing .show height, or <height> in scripts.

23-10-2006, Nazghul
- Fixed: #789 ModAR on characters only worked with damage of type GENERAL.

23-10-2006, MrSugarCube
- Fixed: Webpage requests always displaying the "Internal Server Error" page.

24-10-2006, Nazghul
- Added: Trigger @(item)Buy now has local.totalcost, which holds the cost of the whole purchase
  and ARGN2, which holds price of this amount of items (price * amount).
- Fixed: Trigger @(item)Buy returning bad amount in ARGN1.
- Added: Local variables LOCAL.CREATEOBJECT1 and LOCAL.CREATEOBJECT2 to @SUCCESS trigger of spells.
  These variables are _unset_ when the trigger is called. But they can be _set_ with field- and
  summon spells to change what these spells will create.
  - Summon spells (summon creature, bladeSpirit, Vortex, summon daemon, summon *elemental) take only
    the first one. If set with LOCAL.CREATEOBJECT1 = <eval c_orc> the spell will summon an orc. This
    way one can add more random daemons to the summon daemon spell, or change the spawned creature
    due to magery or whatever.
  - field spells (s_wall_of_stone, s_fire_field etc) take both variables, as usually the items for
    the field in west-east direction are different from those in north-south direction. If necessary
    they can of course be the same (s_fire_field looks impressive with i_fire_columns :) ), but BOTH
    have to be set (otherwise the unset will be replaced by the spell's default item for this dir).
    Example:
    [SPELL s_fire_field]
    ...
    on=@SUCCESS
      IF <magery> >= 99.9
        LOCAL.CREATEOBJECT1 = <eval i_fire_column>
        LOCAL.CREATEOBJECT2 = <eval i_fire_column>
      ENDIF

24-10-2006, Pilz-e (Script pack)
- Updated: sphere_map0_ml.scp (Corrected P properties for ML locations)

25-10-2006, Nazghul (Changes only with EF_NewPositionCheck, EF_WalkCheck and MountHeight on)
- Modified. You will not be able to go into a building if there is not enough space for you.
- Modified: You will not be able to mount a rideable if there is not enough space for you + ride.
- Modified: You will not be able to summon an NPC if there is not enough space for it.
- Modified: You will not be able to teleport (gate, recall) yourself to a spot where is not enough
  space for you.

25-10-2006, Nazghul
- Updated: sphere_msgs.scp - added a new defmessage msg_summon_ceiling and modified
  the msg_mounted_ceiling defmessage.

25-10-2006, Nazghul
- Changed: NPC_AI flags in sphere.ini. Started splitting them up to make it easier to track
  errors related to them. The respective INI section now reads:
  // NPC AI settings
  //	NPC_AI_PATH		0001		NPC pathfinding
  //	NPC_AI_FOOD		0002		NPC food search (objects + grass)
  //	NPC_AI_EXTRA		0004		NPC magics, etc
  //	NPC_AI_ALWAYSINT	0008		Always be as smart as possible with pathfinding
  //	NPC_AI_INTFOOD		0010		NPC food search (more intelligent and trusworthy)
  //	NPC_AI_COMBAT		0040		Look for friends in combat
  //	NPC_AI_VEND_TIME	0080		vendors closing their shops at nighttime
  //	NPC_AI_LOOTING		0100		loot corpses an the way
  //	NPC_AI_MOVEOBSTACLES	0200		if moveable items block my way, try to move them
  //NPCAI=0

27-10-2006, Nazghul
- Fixed: Fishing not displaying an animation right after start.
- Fixed: Resource gathering with EF_NewPositionChecks on did not work on tiles with Z < 0.
- Added: Some more defmessages (also to sphere_msgs.scp), this time title-related

28-10-2006, Furio
- Fixed #809: Wrong cheater message.
- Added #913: TAG.OVERRIDE.MAXITEMS/MAXWEIGHT on bank to override global settings.
- Added: TAG.PARTY_AUTODECLINEINVITE. If set on char it makes the char autodecline every invite.
- Modified: After an party invite you must wait a bit before inviting someone else.

29-10-2006, Nazghul
- Added: Spell flag "SPELLFLAG_NOUNPARALYZE", if the flag is turned on, victim won't be
  unparalyzed.
- Added: Damage flag "DAM_NOUNPARALYZE", if the flag is turned on, victim won't be unparalyzed.
- Updated: sphere_spells.scp (added spellflag_nounparalyze to the paralyze field spell)
  and sphere_defs.scp
- Updated: sphereCrypt.ini

31-10-2006, Nazghul
- Added: FEVAL and FHVAL which allow you to convert your float variable to a standard decimal or
  hexadecimal number. Numbers behind a decimal point are cut out.
  The syntax is: <feval <float.yourvar>> or <fhval <floatl.yourvar>>.
- Fixed: Addspell not working if used like <findid.i_spellbook.addspell 5>. Now, this syntax
  should return 1 if the spell passed as an argument is in the spellbook.

02-11-2006, Nazghul
- Fixed: CanSeeLOS working through a "black hole" in terrain.
- Fixed: Walls with the impassable flag off blocking movement.
- Modified: IsArmor and IsWeapon now accept UID or ItemId as an argument.

02-11-2006, MrSugarCube
- Fixed: Double "You have the key for this" message when attempting to use a lockpick or cast
  magic unlock on something you already have a key for.

03-11-2006, Furio
- Added: DB.ESCAPEDATA $field returning $field escaped using the charset of the connected db.

03-11-2006, Nazghul
- Added: Character trigger ON=@JAILED
  ARGN1 = 1 -> Char is up to be jailed, 0 -> char is up to be forgiven
  ARGN2 = Jail cell (0 if none special)
  RETURN 0 -> proceed as normal
  RETURN 1 -> stop the procedure without changing current status
- Added: Character property IsVerticalSpace, which returns 0 if there is not enough space for
  you and your mount (if you are mounted). Function takes position as an optional argument.

05-11-2006, MrSugarcube
- Modified: SERV.BLOCKIP now accepts a second argument specifying the time to block the IP for
  in tenths of a second (-1 for permanent).
- Added: f_onserver_blockip, called when an IP is blocked from the server. ARGS contain the IP
  being blocked and ARGN1 holds the amount of time the IP will be blocked for (writable).

05-11-2006, MrSugarCube (Script pack)
- Updated: sphere_serv_triggers.scp (Added f_onserver_blockip definition)

10-11-2006, Nazghul
- Added: REFx as a local reference object, where x is a number between 1 and 65535. It can be
  used like an OBJ, but will be removed after leaving a function (like a LOCAL).

15-11-2006, Nazghul
- Fixed #933: i_rune_paralyze is not removed.
- Fixed #934: NPCAI_Extra and heavy weapons.

16-11-2006, Admin BladeCraft (Script pack)
- Updated: sphere_serv_triggers.scp (Added f_onserver_blockip under [PLEVEL 7] block)

20-11-2006, MrSugarCube
- Fixed #940: Undefined keyword errors when using functions via [guildstone.]MEMBER.x.KEY.

23-11-2006, MrSugarCube
- Added: Support for ConnectUO status request packet.

23-11-2006, Furio
- Added: ALLOWBUYSELLAGENT in sphere.ini to allow rapid buy/sell.

24-11-2006, MrSugarCube
- Fixed: Exceptions caused by not definined FAME.*/KARMA.* ranges.
- Fixed: Exception caused by using a spyglass from a ship.
- Modified: Walking off a ship plank no longer moves characters to adjacent ships.

25-11-2006, MrSugarCube
- Fixed: Stamina not being sent to other party members, and stat bars for other party members
  not always showing the correct mana/stamina levels.

26-11-2006, MrSugarCube
- Fixed #949: Possibility of taking items from inside containers within the bank.
- Fixed #947: ISARMOR causing errors when no arguments given.
- Fixed #960: .Extract and .UnExtract always using map 0.
- Modified #946: Items can no longer be moved from the trade window due to client limitations.

26-11-2006, MrSugarCube (Script pack)
- Updated: sphere_msgs.scp (Added "msg_trade_cantmove" defmessage)

27-11-2006, Vjaka
- Added: ATTACKER keyword to access last attackers of a character. Usage:
  <attacker>		returns amount of attackers
  <attacker.x>		returns UID of the attacker (or 0 if there is no attacker)
  <attacker.x.dam>	returns total damage done by the attacker
  The list is being cleared upon death after @DeathCorpse trigger.
- Removed: OF_Multithreaded option flag, it actually did not work at all.
- Removed: EF_Scripts_Parse_Verbs - now it is integrated into the parser and is used when needed.
- Modified: The way the scripts are being parsed, now they are not read from the disk on each
  operation, and are actually re-read only when you are doing a manual resync.
- Added: BETWEEN2 as opposite of BETWEEN, which selected min<-cur->max to select towards
  minimum (max<-cur->min).

28-11-2006, Furio
- Fixed #951: FILE.WRITECHR not working as it should.
- Modified: Added error feedback for FOR* cycles.

28-11-2006, MrSugarCube
- Fixed #932: Removing items with a Z greater than 25 not updating view for players.

29-11-2006, Vjaka
- Modified: The exception handling routine to get more information about the place which causes
  the exception.

30-11-2006, MrSugarCube
- Fixed #804: Multiple stackable items being created in a TEMPLATE not having the correct
  amounts.
- Fixed #664: Automatic loading of backup saves not working.
- Fixed: REPORTEDCLIVER always returning 0.0.0 and CLIENTIS3D always returning 0.
- Fixed: GUILDTITLE property on guild members not working.
- Fixed: KARMA.* ranges not accepting negative values.
- Modified #494: RESURRECT function now accepts a parameter specifying whether or not to
  ignore anti-magic fields (i.e. "RESURRECT 1" to ignore anti-magic field). Note that
  specifying 1 will also cause @[Spell]Effect triggers to not fire for the resurrection
  spell.
- Modified: Adding/Accepting an offline player into a guild now shows a more appropriate
  message to the client.

01-12-2006, MrSugarCube
- Fixed: Corpses for creatures with higher RESLEVEL than the client's RESDISP not showing
  the body and hue specified in the creature's CHARDEF.

02-12-2006, Nazghul
- Added: CanSeeLOSFlag which accepts flags for LOS check as the first argument and an object
  or a position as the second argument. For flags and their explanation see sphere_defs.scp.

05-12-2006, Vjaka
- Fixed: Ships falling apart after rotation.
- Fixed #955: Some dialogs/sdialogs causing exceptions after they're opened.

06-12-2006, Nazghul
- Modified: Now only ATTACKER.* works (not ATTACKERFUBAR), now only ATTACKER.*/ATTACKER.*.UID
  returns the UID of an attacker, ATTACKER.*.DAM returns damage done by the attacker * and
  ATTACKER.*.ELAPSED returns the time in seconds since the last hit of the attacker *.
- Modified: ATTACKERs are now also saved if they deal no damage.

09-12-2006, Nazghul
- Fixed #965: Fishing with certain flags on not working.
- Fixed: Error messages about undefined item 00.

09-12-2006, Furio
- Added: Encryption keys for client 5.0.7.0.

09-12-2006, MrSugarCube
- Fixed: <REPORTEDCLIVER.> not showing the ".x" in client "5.0.6.5" and above.

10-12-2006, Vjaka
- Added: Now keyword MAX can be used instead of number in ATTACKER in order to access the one
  who have dealt most damage.
- Removed: EF_Scripts_Ret_Strings has proven to be stable and correct during years, so it is
  now a default behavior of Sphere.

16-12-2006, Furio
- Added: argument CLEAR to TIMERF. Now using x.TIMER CLEAR will delete all the timerf running on x.

16-12-2006, MrSugarCube
- Fixed #979: PRIVSHOW feedback showing incorrect ON/OFF message.
- Fixed #977: +=/-= operators not working with REFx, and exception caused when TRYSRC is
  supplied with an invalid verb.
- Fixed #936: REFx interfering with functions beginning with REF (such as REFUSECANDIDATE
  on guildstones)
- Fixed: REFx allowing x to be out of range (should only allow 1 to 65535).
- Modified: <REFx> now returns the UID of the object stored in the REF like other object
  references.
- Modified: REFx no longer ignores attempts at being set to invalid UIDs - now in this case
  the REF will be cleared.

16-12-2006, ShiryuX (Script pack)
- Updated: sphere_defs.scp (Added missing MT_MALE definition)

18-12-2006, MrSugarCube
- Fixed #985: Clients on the "Status..." window not showing on seperate lines.
- Fixed #978: Setting LevelMode to unexpected values causing server freeze when calculating
  experience.

19-12-2006, coruja747 (Script pack)
- Updated: sphere_admin.scp (Fixed IP Address and Location properties not greyed out for
  insubstantial characters)
- Updated: spherechar.scp and spherechar_evil.scp (Corrected Lava Lizard definition and
  moved it to spherechar.scp)

19-12-2006, _Epila_ (Script pack)
- Updated: sphere_menu.scp (Removed [COMMENT MENU MENU_ADMIN] as it's no longer used)

20-12-2006, MrSugarCube
- Modified: Tooltips that have been queued long enough for their object to no longer be on
  the client's screen are no longer sent.

20-12-2006, MrSugarCube (Script pack)
- Updated #988: sphere_msgs.scp (Added 3 "msg_serv_shutdown*" defmessages)

20-12-2006, Nazghul
- Fixed #972: NPCs walking on water with EF_WalkCheck on.
- Fixed #982: Teleport allowed to water with EF_WalkCheck on.

21-12-2006, MrSugarCube
- Fixed #971: Clock overflow that causes the game to freeze.
- Fixed: FRUIT property of crops not returning the correct value.

22-12-2006, Nazghul
- Fixed: HEIGHT returning wrong value on DUPEd items.

22-12-2006, Vjaka
- Fixed: HITS setting for items when MAXHITS was not specified, so you can act via HITS for
  items as well for saving with no need to differ HITS and HITPOINTS.
- Fixed: client problems with quick mounting horse while running causing no future updates
  being interpreted by client till .fix/.resend was done.
- Fixed: inject ,snoop command still having some cases to access items in undesired containers.
- Fixed #819: If we use rand(X), where X > 32767, we always get result of rand(131072).

22-12-2006, Furio
- Fixed #816: Reading non-string data from sql is autoeval'd.

23-12-2006, Vjaka
- Added: Region tag RestockVendors (in ticks) to alter time in which the vendors will auto restock.
  Default value is 10*60*10 (10 minutes).

24-12-2006, MrSugarCube
- Fixed #1000: TAG.NAME.PREFIX not overriding the Lord/Lady title in the profile and paperdoll
  menus, and TAG.NAME.SUFFIX not showing at all.
- Fixed: Sphere crashing when a player opens a container with 810+ items inside.

29-12-2006, MrSugarCube
- Fixed #973: Ship hatch contents being deleted upon turning the ship.
- Fixed #973: Ship planks becoming permanently unlocked when opened.
- Fixed #973: Fixed spam caused when attempting to attack an opponent outside of a ship.
- Fixed: MULTICREATE function not working without an SRC present.
- Fixed: Setting the ACCOUNT property of an NPC now properly sets it up as a player character
  without it being deleted by garbage collection.
- Modified #995: Logged out players are now moved along with moving ships.
- Modified #920: GMPAGE function can now be used with the arguments "ADD <Message>" to add <Message>
  to the page queue. This function should be called on a logged in player (eg: "GMPAGE ADD This is a
  page").
- Added #973: Combat flag COMBAT_ALLOWHITFROMSHIP. Removes the combat restriction that prevents
  characters attacking from ships.
- Added: TILLER, HATCH and PLANK.x references for ships. PLANKS property can be used to determine
  how many planks are present on a ship.

29-12-2006, MrSugarCube (Script pack)
- Updated: sphere_msgs.scp (Added combat_outsideship to defmessages)

30-12-2006, _Epila_ (Script pack)
- Updated: sphere_map_points3.scp (Added missing Doom dungeon teleporters)

02-01-2007, MrSugarCube
- Fixed: Loginserver not sending server IPs correctly.
- Fixed: Response not being sent when a client sends a ping packet.
- Fixed: Hallucination ignoring RESLEVEL settings on the random bodies it selects.
- Modified: Trade window contents are no longer included in searches of a character's inventory. This
  affects CONSUME, *COUNT, FIND* and FORCONT* functions.

02-01-2007, MrSugarCube (Script pack)
- Updated: spherechar.scp (Replaced c_sea_monster definition to add protection against crashing newer
  clients)

03-01-2007, MrSugarCube
- Fixed: MapChange packet not sending the correct map id for Trammel (Map 1)
- Modified: MAPx in sphere.ini now accepts a 5th parameter, for specifying the map id that should be
  given to the client (0=felucca, 1=trammel, 2=ilshenar, etc).
- Added: *Experimental* flag "EF_Mapdiff_Support" added to sphere.ini. Enables using mapdif and stadif
  files to patch terrain and statics.

04-01-2007, MrSugarCube
- Fixed: Buying from vendors allowing players to carry more weight than they should. Excess items are
  now dropped to the ground.
- Fixed: Selling to off-duty vendors showing a warning message about an illegal "buy packet" instead
  of "sell packet". Also added more detail to buy/sell packet cheater warnings.
- Modified: Resync messages are now always visible on the console.

05-01-2007, MrSugarCube
- Fixed #1011: Trade title on the paperdoll written incorrectly.

05-01-2007, Nazghul
- Fixed: Sphere now adds and removes the hiding/stealth buff icon automatically

06-01-2007, MrSugarCube
- Fixed: SERV.RESYNC command being executed from scripts causing the server to freeze. Note that using
  SERV.RESYNC from scripts will now cause the resync pause to be delayed until after the script has
  completed execution.
- Modified: EFFECT property of crafting skills can now be used to define the percentage of resources
  that are lost when failing to craft an item. A few examples of how you can use this:
   "EFFECT=x"		- Always lose x% of resources on fail
   "EFFECT=x,y"		- Lose between x% and y% of resources on fail
   "EFFECT=x,y,z"	- Lose between x% and z% of resources on fail (weighted by y)
  If EFFECT is not set then resource loss will be as normal -> 0-50% resources lost.
- Added: TAG.OVERRIDE.GUARDS on regions to specify different guards per region.
- Added: Arguments for @CallGuards trigger:
   ARGN1 = Guard ID that will be created. (writable)
   ARGN2 = Force spawning a new guard. (writable)
   ARGO  = An already spawned guard that will be used, unless ARGN2 has been set to 1.

06-01-2007, MrSugarCube (Script pack)
- Updated: sphere_skills.scp (Removed EFFECT property from Alchemy and updated [COMMENT SKILL x] block)

07-01-2007, MrSugarCube
- Fixed #1007: War/Peace button on paperdoll not correct when logging in with war mode.

08-01-2007, MrSugarCube
- Fixed #1004: Target cursor appearing when calling functions starting with "SET" or "X".
- Added #1013: SYSMESSAGELOC, for sending localized messages to clients. SMSGL can also be used as a shortcut.
  Syntax is: "SYSMESSAGELOC color,clilocid[,arguments]"
  All arguments must be separated by a comma ",". Specify -1 for color if you do not wish to override it.
  Some examples of this being used (latest clilocs) are:
   "SYSMESSAGELOC -1,502771"			- Displays "You cannot reach that."
   "SYSMESSAGELOC 2,1042758,MrSugarCube"	- Displays "You are now loyal to MrSugarCube." in blue
   "SYSMESSAGELOC -1,1062695,MrSugarCube,4,5"	- Displays "MrSugarCube rolls the dice and gets a 4 and
						  a 5!"
- Modified #1013: '@color,font,unicode' in messages is now '@color,font,mode'. You can specify 1 for mode if
  you wish to use unicode (like before), or specify 2 if you wish to use a localized message (useful for
  overriding messages in sphere_msgs.scp). The above localization examples used with this method would be:
   "SYSMESSAGE @,,2 502771"
   "SYSMESSAGE @2,,2 1042758,MrSugarCube"
   "SYSMESSAGE @,,2 1062695,MrSugarCube,4,5"

09-01-2007, Furio
- Added: MD5HASH returning the md5 hash of the argument.

11-01-2007, MrSugarCube
- Fixed: ATTACKER.x not working correctly.
- Fixed: Possible exception with handling mail message packet.
- Modified: Rewritten EF_Mapdiff_Support handling to perform much faster. This is done at the cost of some
  additional memory usage but it can now cope with populated worlds.
- Modified: Profiler now includes time spent loading map blocks.

11-01-2007, MrSugarCube (Script pack)
- Updated: sphere_spells.scp (Corrected FLAGS property of paralyze field spell)

12-01-2007, Shadow Dragon
- Added: MulDiv script function. Usage "MulDiv number,multiplier,divider". Returns result.

12-01-2007, Vjaka
- Greatly increased speed of loading large scripts (especially annoying on resync).
- Fixed parsing script files when latest useful script line not ended by carriage return.

15-01-2007, MrSugarCube
- Fixed #1027: SDIALOG claiming to be an undefined keyword when the specified dialog is already showing.

16-01-2007, Nazghul
- Added: Character trigger @charAttack, @charClick, @charClienttooltip, @charDClick, which work like
  @itemXXX triggers, but for NPCs.
- Added: An item flag CAN_I_DCIGNORELOS and a character flag mt_nodclicklos. With these flags on, LOS checks
  on a dclicked item won't be performed.
- Added: An item flag CAN_I_DCIGNOREDIST and a character flag mt_nodclickdist. With these flags on, distance
  checks on a dclicked item won't be performed.

16-01-2007, MrSugarCube
- Added #1029: @Cancel trigger to MENUs and SKILLMENUs.
- Modified: Items displayed on MENUs and SKILLMENUs can now be coloured. This can be done by prefixing the
  item description with "@color" (in the same way that sysmessages can be coloured). For example,
  "ON=i_sword_viking @2 This is a viking sword" will display a blue sword on the menu.
- Modified: Cancelling a PROMPTCONSOLE prompt no longer prevents the callback function from being called.

16-01-2007, SaCi (Script pack)
- Updated: sphere_dialog.scp (Updated descriptions in [COMMENT DIALOG HELP_SECTION])

17-01-2007, MrSugarCube
- Added: OPENPAPERDOLL character function. Without arguments it will display the current character's
  paperdoll to SRC. With the UID of a character given it will display the specified character's paperdoll to
  the current client.

20-01-2007, Ellessar
- Fixed: Problems with stairs which have odd height (1,3,5,...).
- Fixed #1037: Buffs needed FEATURE_AOS_UPDATE_B to work.

24-01-2007, MrSugarCube
- Fixed: Tillerman speech on the 3D client not shown in the correct colour.

25-01-2007, Ellessar
- Fixed #1028: Problems with terrain height.
- Rewritten the whole NPC_AI_PATH, now it should be faster, more reliable and less buggy.

28-01-2007, Ellessar
- Fixed: Pathfinding called on every NPC step.
- Fixed #987: ResMake returning wrong values if the item doesn't exist in the world.
- Fixed #1010: After casting a wall in a guard zone you were flagged as a criminal, also with the spellflag_harm
  flag off.

28-01-2007, MrSugarCube
- Fixed: GAINRADIUS on skill definitions defaulting to random values.

29-01-2007, Ellessar
- Optimized: MapCaching (using STL functions), which should result in less bugs and better performance.
- Fixed: Using .tele over water tiles was allowed.

29-01-2007, Furio
- Modified: Is now possible to always use ARGO.verb directly.
- Added: In packetfilter functions ARGO is the CClient connected now (e.g. it allows SENDPACKET through
  ARGO.SENDPACKET syntax at any time)

31-01-2007, MrSugarCube
- Fixed #771: Unicode characters being stripped from speech when keywords from Speech.mul are used.
- Added: Encryption keys for client 5.0.8.x to sphereCrypt.ini

01-02-2007, MrSugarCube
- Fixed #755: GetResourceValue error being shown for items with valid resources after being shown for the
  first time.
- Modified: Changed the "GetResourceValue reentrant item=xxx" error to make more sense.

02-02-2007, MrSugarCube
- Fixed #496: Musicianship skill triggering skill gain twice on success.

03-02-2007, MrSugarCube
- Fixed #510: Notoriety status on tooltips not shown correctly when moving around.

05-02-2007, Ellessar
- Added: Keyword GetRefType, which returns flag of the referenced type. The list of flags is in sphere_defs.scp.
- Updated: sphere_defs.scp - added ref_types defnames

06-02-2007, Nazghul
- fixed #1047: NPC AI_CAN_LOOT missed a "not" so only animals looted :).
  Domestic animals will no more poop dung if frozen, stone, insubstantial or in warmode

07-02-2007, Nazghul
- Fixed #1049: t_fire, t_campfire, t_spell are no longer dispellable if they have attr_move_never
- Added: more defmessages (update sphere_msgs.scp!)

07-02-2007, Vjaka
- Modified console output in linux build. By default it assumes that it is not colored,
  launch with argument -c (./spheresvr -c) in order to get colored output. It screwed some consoles.

08-02-2007, Nazghul
- Added: Skill flags SKF_NOANIM (don't show hardcoded anim for this skill) and SKF_NOSFX (don't play
  hardcoded sound for this skill). After setting this you can set anim/sfx yourself in @start
  or alike.

08-02-2007, Ellessar
- Fixed #1050: Problems with underground caves.

09-02-2007, MrSugarCube
- Fixed: ConnectUO Status requests sometimes reporting an encryption error.

11-02-2007, Fisicka (Script pack)
- Fixed #1051: Bug in sphere_map_points0.scp and sphere_map_points1.scp

11-02-2007, MrSugarCube
- Fixed #1037: ADDBUFF and REMOVEBUFF requiring FEATURE_AOS_UPDATE_B enabled to work.
- Fixed #1053: @color in [SKILL]MENUs displaying the wrong colour.

12-02-2007, MrSugarCube
- Fixed #1058: Exception on linux build caused by items decaying without decay flag.

13-02-2007, Nazghul
- Fixed #1059: Now NPC will be stuck with the lightsource they already have equipped.

15-02-2007, Nazghul
- Added: First version of support for TNG's webscript reader. Use console command
  "tngstrip" to create a file what contains the information TNG needs from all 
  your scripts (thus completely useless for script thieves). The file will be 
  placed at the location defined with "StripPath=" in sphere.ini and is named 
  "tngstrip.scp. Can be delivered either by a dedicated web server or the built-in 
  of sphere itself.

15-02-2007, Babidi (Script pack)
- Modified: sphere_dialog.scp - line 217, the highest skill is now SKILL_SPELLWEAVING.

16-02-2007, Nazghul
- Added: TAG.OVERRIDE.AMMOANIMHUE for bow and crossboy-type weapons to locally 
  override the color of the effect what will be used for displaying the shot.

18-02-2007, MrSugarCube
- Fixed #1069: Stable masters giving food to invisible characters.

20-02-2007, Nazghul
- Added SPELLFLAG_NO_CASTANIM (0x80000) to suppress the usual cast anim. 
  This way a custom (perhaps race-, class-, magery-, experience-related) anim 
  can be played @START/@SPELLCAST

21-02-2007, MrSugarCube
- Fixed #1071: Undefined Symbol error caused when a function returns a string.
- Fixed #1075: The last line in script files being ignored.
- Fixed #1076: ALLSHOW switching off too late upon login.
- Added: Skill flag SKF_CRAFT. Skills with this flag set will function 
  correctly with the MAKEITEM command.

21-02-2007, MrSugarCube (Script pack)
- Updated: sphere_defs.scp (Added SKF_CRAFT definition)
- Updated: sphere_map_points0.scp and sphere_map_points1.scp 
  (Removed duplicate teleporters)

22-02-2007, MrSugarCube
- Fixed #1078: Exception when walking in the top left corner of maps.
- Added #1079: ARGO in f_onchar_create, f_onchar_delete and f_onaccount_login 
  is now the the client that is performing the action (note that at the time 
  these functions are called, there is no character attached to the client so 
  character properties are not accessible).

22-02-2007, Nazghul
- Added: Character trigger @statchange (argn1: the stat, argn2: new value).

25-02-2007, Ellessar
- Added: TAG.DEATHFLAGS which changes some death related behavior. The list of 
  flags is in sphere_defs.scp and their names are pretty self-explaining.
- Fixed #1081: SERV.WRITELINE not adding a new line on Windows.

25-02-2007, Ellessar (Script pack)
- Updated: sphere_defs.scp (Added death_flags defname)

25-02-2007, Nazghul
- Added: TAG.OVERRIDE.MAXWEIGHT and TAG.OVERRIDE.MAXITEMS now are applying 
  to all containers if set. If not, maximum weight is still unlimited, while 
  max. item count is still default.

26-02-2007, Ellessar
- Modified: Region trigger @Step will now work only with EF_New_Triggers 
  on and EF_Minimize_Triggers off.

27-02-2007, Ellessar
- Added: sphere.ini settings EventsPlayer, EventsRegion. These events are 
  applied on all players/regions in the world.
- Updated: sphere.ini

01-03-2007, Furio
- Added: LASTEVENT keyword on clients, returning the time of last packet 
  receive (like serv.time).
- Modified: OF_OSIDamageMod and OF_Archery_CanMove are now CombatFlags 
  (look in sphere.ini)
- Updated: sphere.ini

01-03-2007, MrSugarCube
- Fixed #1092: Dead characters not showing on the status page.
- Fixed #1090: MOUNTHEIGHT checks preventing characters teleporting to valid 
  locations if they are stuck under a low ceiling.
- Fixed #1085: MAXBASESKILL in sphere.ini applying to skills that players are 
  unable to see in their skill menu. An INITHIDDENSKILLS setting has been added 
  to sphere.ini so that this behaviour can be toggled.
- Fixed #1084: Vendor's constantly restocking goods instantly after selling them.
- Fixed: Players able to create characters with skill in undefined skills.

01-03-2007, MrSugarCube (Script pack)
- Updated: sphere_skills.scp (Missing skill cap for Animal Lore in SKILLCLASS 0)

02-03-2007, Ellessar
- Fixed #1093: serv.restock not working. Now it updates all vendor boxes and 
  world gem bits.
- Fixed: NPCs sometimes not spawning with EF_NewPositionChecks on.
- Modified: Trigger @CallGuards now have a reference "REF1", which refers to 
  the target of the guard.
- Modified: NPCs now won't 'talk and follow' you, if your distance from their 
  spawn bit is greater than their homedist.

02-03-2007, Vjaka
- Fixed: red NPCs spawning in cities from spawns at the edges of the town.
- Modified: now clients which spawns too many exceptions are disconnected.
- Added: GOLD property for character. It counts all gold coins on character 
  and return them. Or, if used with argument, sets a new amount of gold, adding 
  gold coins to reach the new sum. The most common usage would be similar to 
  GOLD += 5000 and so on.
- Fixed: NPCs not being able to stumble upon hidden player character.

05-03-2007, Furio
- Fixed #1098: Explosion potion activate with decay timer also if not activated.

06-03-2007, Ellessar
- Added: ATTACKER.LAST, which works like ATTACKER.MAX, but returns the char which 
  hit the victim for the last time.

10-03-2007, Ellessar
- Added: Experimental flag EF_AllowTelnetPacketFilter, which allows telnet 
  connections to fire a PACKETx function.
- Updated: sphere.ini

12-03-2007, MrSugarCube
- Fixed #1062: "RETURN x" not always halting script execution or even returning 
  the correct value.
- Fixed: Exceptions that are sometimes caused when attempting to use/take an item 
  that cannot be reached.

13-03-2007, Nazghul
- Added: keyword VISUALRANGE, parameter 1..18 to limit the visualrange of a client. 
  After changing the visual range you should update the character in question once.

13-03-2007, Ellessar
- Fixed #1106: PACKETx sometimes caused errors in console.

16-03-2007, MrSugarCube
- Fixed #1113: Exception caused when an online player character is deleted.
- Fixed: ATTACKER.LAST only working when the last attack was within the last second.

17-03-2007, Beyonder (Script pack)
- Updated: sphere_item_treasure_maps.scp (Updated to use 0.56b features)

17-03-2007, Ellessar
- Added: Function SKILLTEST, which tests values of skills sent as arguments 
  on the default character. Usage: <skilltest carpentry 68.9>
- Fixed: SKILLMAKE replacing types with item names.

17-03-2007, Furio
- Fixed #1117: Unable to access subcontainers on the ground.

17-03-2007, MrSugarCube
- Fixed #1118: Ship functions being reported as invalid commands.

18-03-2007, Ellessar
- Added: ++/-- operators, which are in C languages.
- Fixed: RESENERGY is saved only if RESPOISON doesn't equal 0.
- Fixed: Possibility of double definition of events (sphere.ini + events +e...)

24-03-2007, Furio
- Updated: sphereCrypt.ini with 5.0.9.0 keys.
- Removed: MEMORY_GUMPRECORD to track open dialogs. It now uses an internal system.
- Updated: sphere_defs.scp
- Added: ISDIALOGOPEN $dialogId. It returns the number of the opened $dialogId 
  on the client.
- Fixed #1127: Items of the hatch can't be moved.
- Fixed #1129: GumpPicTiled don't work with dynamic origin.

24-03-2007, ShiryuX (Script pack)
- Updated: sphere_dialog.scp (Reference at top)

24-03-2007, RanXerox (Script pack)
- Updated: sphere_map_points0_ml.scp (Updated teleports)

26-03-2007, Nazghul
- Added: Teleport effect and sound config keywords for Sphere.ini.
  Setting it to 0 disables the effect. Defaults are
  TeleportEffectNPC=0372a
  TeleportEffectPlayers=0372a
  TeleportEffectStaff=03709
  TeleportSoundNPC=01fe
  TeleportSoundPlayers=01fe
  TeleportSoundStaff=01f3

27-03-2007, Vjaka
- Fixed: Allowed to cast spells without reagents.

29-03-2007, MrSugarCube
- Fixed #1122: Exception when fighting with -100 dexterity.
- Fixed #1137: Containers closing when targeting them with .x/set.

04-03-2007, MrSugarCube
- Fixed #1126: Creatures with neutral karma not spawning in guard zones.

04-03-2007, Furio
- Added: PARTY.ISSAMEPARTYOF $uid, checking if the current party is the
  same of the char with $uid.

06-04-2007, Nazghul
- Added: More defmessages
- Updated: sphere_msgs.scp

14-04-2007, Sir Dwayne (Script pack)
- Fixed: Various flaws in npc scripts and sphere_item_unsorted.

21-04-2007, coruja747 (Script pack)
- Updated: sphere_map2.scp (Corrected a_shrine_virtues area definition)

27-04-2007, Ellessar
- Added: Character trigger @TradeAccepted (+@charTradeAccepted), which is called 
  after both trade sides tick Accept Trade button. Default, ARGO - the first 
  trader, SRC - the second one, ARGN1 - the number of items the first trader gets, 
  ARGN2 - the number of items the second trader gets, REF1...REF<argn1> - 
  references to items the first trader gets. Return 1 prevents the trade.
- Fixed: CTAGs deleted before calling @LogOut

30-04-2007, MrSugarCube
- Modified #1162: A comma ',' can be used under the NOTOTITLES section to 
  optionally specify seperate titles for female characters.
- Modified: EF_MapDiff_Support has been removed, and map diffs are now enabled 
  via the USEMAPDIFFS setting in sphere.ini.

02-05-2007, MrSugarCube
- Fixed: Exception when using ACCOUNT.CHAR.x.KEY when the index 'x' does not exist.

03-05-2007, MrSugarCube
- Fixed: Server IPs on the server list being sent incorrectly to older clients.

05-05-2007, MrSugarCube
- Added: Experimental flag EF_UsePingServer. This will enable a server for 
  receiving pings from clients viewing the server list. Uses UDP port 12000.

06-05-2007, Ellessar
- Added: Missing character trigger @SpellFail (called before @Fail in a 
  SPELL section)

06-05-2007, MrSugarCube
- Fixed #1169: Exception caused by the count parameter being negative in the 
  STRSUB function.

08-05-2007, Ellessar
- Fixed: POW (@) does not work when using inside 'floatval'.

10-05-2007, MrSugarCube
- Fixed #1176: RANGE property on items returning 0 when the minimum range is 0, 
  when in this case it should return the maximum range.
- Fixed #1178: Automatic loading of backup saves not unloading all of the data 
  from the previous save.

17-05-2007, Sir Dwayne (Script pack)
- Updated: sphere_item_building_fence.scp, sphere_item_building_stairs.scp,
  sphere_item_building_walls.scp (Reordering of some fences, stairs and walls)

17-05-2007, MrSugarCube
- Fixed: SPELLFLAG_NOUNPARALYZE doing the opposite of its description.
- Fixed #1181: Casting field spells on players not giving criminal status even 
  when SPELLFLAG_HARM is set.
- Fixed #1182: Crash when opening the .edit menu on a player with too many 
  equipped items.

17-05-2007, Furio
- Added: DSPEECH prop to players. Its purpose is to intercept player speech 
  like SpeechSelf, but it allows multiple speech block (DSPEECH +spk_lol add spk_lol, 
  DSPEECH -spk_lol removes it). Return 1 on the speech block interrupt execution and 
  prevent the player from speaking, Return 4 blocks the execution while allowing the 
  player to speech.
- Added: ISDSPEECH prop to players. Its purpose is to chech if a speech block is in
  DSPEECH in a similar way of ISEVENT.

18-05-2007, MrSugarCube
- Modified #1155: The COMPONENT property of multi definitions can now be given 
  the ID of any scripted item.
  
20-05-2007, Furio
- Fixed: Trade windows not bouncing correctly some of the items.

20-05-2007, MrSugarCube
- Fixed: Sphere running slowly, due to new threading not ticking as much as 
  old threading.

22-05-2007, ShadowDragon
- Added: Support for Int and Color options to CHARDEF.

22-05-2007, Camelotten (Script pack)
- Fixed: jobvet.scp - an excessive '<' in "<SRC.SEX <Mi'Lord/Mi'Lady>".

26-05-2007, MrSugarCube
- Fixed #1194: Polymorph becoming a permanent effect during worldsaves.

27-05-2007, Nazghul
- Added: MODAR on weapons should modify the DAM effect of a weapon

28-05-2007, Furio
- Fixed #1201: DB.EXECUTE executing commands also when not connected.

29-05-2007, MrSugarCube
- Fixed #1203: Multis not being visible from a distance.

31-05-2007, Nazghul
- Fixed #1206: using character function ".gold" with negative numbers crashed 
  the server.

02-06-2007, Furio
- Fixed #1208: If modstat is negative and > ostat, all skills affected by 
  that stat become 65535.
- Fixed #1186: Starvation incorrectly damages affected player's equipment

02-06-2007, Almost all the dev team
- Fixed #1188: Incorrect save output.
- Fixed #1191: Sphere closing when using crafting skills (related to #1188).

02-06-2007, MrSugarCube
- Fixed: Unable to gain musicianship past 30%.

06-06-2007, Furio (Script Pack)
- Fixed #1213: "admin" in console (sphere_admin.scp)

08-06-2007, MrSugarCube
- Fixed #1211: FORCONTID and FORCONTTYPE not working.
- Fixed #1212: Reactive Armor causing a server crash when damaging self.

11-06-2007, MrSugarCube
- Fixed: Vendor menus on clients later than 4.0.0 not showing correctly for 
  renamed items when ACCOUNT.RESDISP is not correctly set to AOS+.

14-06-2007, Fire-Dragon-DoL
- Fixed #1220: typos in sphere_guild_functions.scp

26-06-2007, Nazghul
- Added: Character trigger @SkillChange. Fires whenever the skill raises due 
  to a gain. ARGN1 is the skill number (e.g. 43 for wrestling), ARGN1 is the 
  skill value AFTER the change happens. RETURN 1 (or 2, or 666) means that the 
  skill will NOT change.

29-06-2007, Torfo
- Added: ADDMD5. If md5 is enabled in the sphere.ini you can use ADDMD5 to 
  bypass the hashing algorithm, if MD5 isn't enabled it's the same as ADD.
  Usage: "ACCOUNT ADDMD5 name hash"

06-07-2007, Nazghul
- Fixed: RETURN 1 in region triggers @exit, @enter did not tell the client that 
  the movement was stopped what led to some weird rubberband effects. 
  (thx. to MrSugarCube for help)
- Added: Character triggers @RegionEnter, @RegionLeave. ARGO is the region in 
  question, RETURN 1 works like in region triggers @exit, @enter.

12-07-2007, Nazghul
- Fixed: #1222 MAGICF_IGNOREAR rendered armor useless even on non magic damage
- some cleanups regarding NPC accepting/rejecting items
- Added: Hungry NPC try to pick ripe crops if available
- Added: ACTP character property (like ACTDIFF, ACTARG etc.) to work with for 
  example ACTION 102
- Added: Poisoned Food (MOREz = poison strength [0..100]) will poison whoever 
  eats it; NPC might refuse eating poisoned food depending on their TasteID skill

15-07-2007, Ellessar
- Modified: Now you can get AREADEF regions from inside a multi with the help 
  of an additional "region" keyword (e.g. region.region.name).

17-07-2007, MrSugarCube
- Fixed: Multis from newer expansions not loading correctly.

17-07-2007, Admin BladeCraft (Script pack)
- Updated #1236: sphere_item_magic_weapon.scp, sphere_template.scp,
  sphere_backward_compatibility.scp (Changed misspelled defname 
  i_axe_war_VANQUISIHNG to i_axe_war_VANQ)
- Updated #1237: sphere_defs.scp (Fixed broken random templates)

18-07-2007, Nazghul
- Changed Ping Attack detection so that it only issues a warning if the "attack"
  comes from LocalAddress and/or 127.0.0.1

19-07-2007, MrSugarCube
- Added: Support for packet changes in client 6.0.1.7. With clients running
  on slower connections there may still be issues as Sphere cannot identify
  the 4th digit of the client version until after the client has logged in.
  If you want to override all 6.0.1.* clients to use the 6.0.1.7 packet
  changes (and thus correct the issue with slower connections, but at the
  same time remove support for 6.0.1.0-6 clients), find the following line
  in sphereCrypt.ini:
    0600010 02F2BA7ED 0A2817E7F ENC_TFISH // 6.00.10
  and change it to:
    0600018 02F2BA7ED 0A2817E7F ENC_TFISH // 6.00.18
- Added: FIXWEIGHT function for characters, which acts the same as FIXWEIGHT
  does on containers (recalculates the total weight of the items in their
  possession).

29-07-2007, Nazghul
- Just a fix in writing: Item tag.override_SKILL can also be written as
  tag.override.skill (as the other OVERRIDE tags)

04-08-2007, Ellessar
- Fixed #1239: Lumberjacking caused Sphere to crash, when failed.
- Fixed: ISNEARTYPETOP did not work as intented (also changes some hardcoded
  gathering related behavior.)
- Modified #1238: Sphere now tells you that you do not use SERV.MAP correctly
  and does not throw an exception.
- Fixed #1197: RANGE property was not inherited through ID property.

09-08-2007, MrSugarCube
- Fixed #1153: House placement checking a larger area than the multi region
  specifies.
- Fixed: Guards being attacked and calling new guards instead of fighting
  back properly.
- Fixed: Incorrect client version detection for client 6.0.1.10.

10-08-2007, MrSugarCube
- Fixed #753: Crafting skills no longer consume items that match the one
  you're attempting to create (unless the resources property specifically
  states that the item can be crafted from itself).
- Fixed #1138: Scripts could be loaded multiple times if the file extension
  was not provided.

10-08-2007, MrSugarCube
- Added: Support for AOS Custom Housing through a new item type 't_multi_custom'.
 > See the sphere_item_multis_foundations.scp and add-on/House_Placement
   scripts for examples of it's use.
 > Custom houses (t_multi_custom) will be saved to a new save file named
   spheremultis.scp.
 > Note that Sphere will require access to doors.txt, misc.txt, floors.txt,
   teleprts.txt, roof.txt, and  walls.txt from the UO folder as these provide
   lists of valid items. Also, all these items should exist in scripts for them
   to be added to a building - note that the default script pack is currently
   missing several sets of floors and walls.
 > New functions and properties have been added that can be used with items of
   the type t_multi_custom. These are:
   -- References --
    "DESIGNER"            The player currently designing the building.
   -- Properties --
    "COMPONENTS"   (r)    The number of components in the building design.
    "FIXTURES"     (r)    The number of fixtures in the building design (doors
                          and teleporters/t_door and t_telepad).
    "DESIGN.x.KEY" (r)    Accesses component x in the building design and
                          returns the given property. Possible properties are:
                            ID: The ID of the component.
                            DX: The x offset of the component.
                            DY: The y offset of the component.
                            DZ: The z offset of the component.
                            D:  The x,y,z offset of the component.
                            FIXTURE:  Returns 1 if the component is a fixture.
    "DESIGNER"     (r)    The uid of the player designing the building (or 0).
    "EDITAREA"     (r)    The editable range of coordinates when in design
                          mode (TopLeftX,TopLeftY,BottomRightX,BottomRightY).
    "REVISION"     (r)    The revision number of the building design.
   -- Functions --
    "ADDITEM id,x,y,z"    Adds an item to the building design (see COMMIT).
    "ADDMULTI id,x,y,z"   Adds a multi to the building design (see COMMIT).
    "CLEAR"               Wipes the building of all components (see COMMIT).
    "COMMIT"              Commits changes made to the building design.
    "CUSTOMIZE [uid]"     Enters the given player (or SRC) into design mode.
    "ENDCUSTOMIZE"        Forces the player to exit design mode.
    "REMOVEITEM id,x,y,z" Removes an item from the building design (see
                          COMMIT). If the given id is 0 then any items found
                          at the location will be removed.
    "RESET"               Resets the building to it's default state (see
                          COMMIT).
    "RESYNC [uid]"        Resends the building structure to the given player
                          (or SRC)
 > Players also have some new house design-related properties and triggers.
   These are:
   -- References --
     "HOUSEDESIGN"        The building this player is currently designing.
   -- Properties --
    "HOUSEDESIGN"(r)      The uid of the building this player is designing (or
                          0).
   -- Triggers --
    @HouseDesignCommit    Called on a character when they commit a new design.
                            ARGN1:    Number of components in the old design.
                            ARGN2:    Number of components in the new design.
                            ARGN3:    The revision number of the new design.
                            ARGO:     The building being designed.
                            LOCAL.FIXTURES.OLD:    Number of fixtures in the
                                                   old design.
                            LOCAL.FIXTURES.NEW:    Number of fixtures in the
                                                   new design.
                            RETURN 1: Block the commit.
    @HouseDesignExit      Called on a character when they exit design mode.
                            ARGN1:    Is set to 1 if the character being forced
                                      out of house design mode (ie. they're
                                      logging out).
                            ARGO:     The building being designed.
                            RETURN 1: Keeps the client in design mode (if ARGN1
                                      was 0).

10-08-2007, MrSugarCube (Script pack)
- Updated: sphere_defs.scp (Updated type defnames)
- Updated: sphere_item_building_walls.scp (Split i_wall_stone_4's DUPELIST into
  different defnames for different wall heights)
- Updated: sphere_item_ground_tiles.scp (Added a few missing water tiles and split the
  waterfall DUPELIST into different defnames for different waterfall heights)
- Updated: sphere_item_profession_alchemist_mage.scp (Set the types of i_rune_alchem_*
  items to t_telepad)
- Added: sphere_item_multis_foundations.scp (Added foundation multi definitions)
- Added: sphere_item_multis_stairs.scp (Added stair multi definitions)
- Added: sphere_item_building_roofs_aos.scp (Added AOS roof definitions)
- Added: sphere_item_building_roofs_ml.scp (Added ML roof definitions)
- Added: sphere_item_building_stairs_ml.scp (Added ML stair definitions)
- Added: add-on/House_Placement.zip (Added a sample script that allows custom houses
  to be design by players)

14-08-2007, Nazghul
- Modified: sphere_defs.scp, added DEATHFLAG_HASCORPSE (010) to deathflags. If set on
  a character like water elemental it will leave a corpse. Caveat: If DEATHFLAG_NOCORPSE
  and DEATHFLAG_HASCORPSE are set, the NOCORPSE takes precedence!

17-08-2007, Nazghul
- Added: Item CAN flag CAN_I_BLOCKLOS (see sphere_defs.scp). Works only if
  INI option AdvancedLOS is != 0.

18-08-2007, Nazghul
- Added: Spellflags TARG_NO_PLAYER and TARG_NO_NPC
- Updated: sphere_msgs.scp and sphere_defs.scp 

19-08-2007, MrSugarCube
- Fixed #1242: TAT_AS_ARGO Triggers not working with hexadecimal uids.
- Fixed #1243: MODAR on weapons not showing the correct minimum damage on the
  status window and tooltips.
- Fixed #1244: TAGAT.x.KEY and TAGAT.x.VAL returning the opposite properties.

21-08-2007, MrSugarCube
- Fixed #1246: Exception caused by using EQUIPWEAPON function on a character
  with no backpack.
- Fixed #1247: NPCs not moving closer to their targets when they're using a
  bow with a shorter range than the ini's archery range settings.

25-08-2007, Beyonder (Script pack)
- Fixed #815: sphere_item_resources.scp (i_blood_2 not decaying: Changed the
  definition so that i_blood_2 now has a weight)

30-08-2007, MrSugarCube
- Fixed #1248: Incorrect container weight shown on tooltips.

04-09-2007, coruja747 (Script pack)
- Updated #1251: sphere_map_points2.scp (Missing teleports in Wisp Dungeon)

05-09-2007, Furio
- Fixed #1254: Console error when guild member delete char.
- Fixed: Login relay problems from localhost.
- Added #1260: "Setup_Start acct" with IP on the same LOG line.
- Added #1261: Incognito names in kill logs.
- Added: CLEARCTAGS (working like cleartags for ctags).

06-09-2007, MrSugarCube
- Fixed: "GetMapBlock failed at x" errors when logging in or placing a multi
  over the edge of the map.

07-09-2007, Ellessar
- Fixed #1252: FloatVal not behaving correctly with negative numbers.
- Updated: sphere_msgs.scp (added login_lastlogged key)

08-09-2007, MrSugarCube
- Fixed: Character creation allowed whilst another character is still idling
  in the world.

11-09-2007, MrSugarCube
- Fixed #1256: Ship plank exit allowing players to pass over blocked paths,
  such as walls or fences.
- Modified: Added more "Bad Login x" codes along with expanded descriptions
  to assist in identifying login issues.

16-09-2007, coruja747 (Script pack)
- Fixed #1258: ctags will be cleared when leaving admin menu

16-09-2007, nazghul
- Fixed #1257: Custom damage type didn´t work with COMBAT_USE_RESISTANCE

22-09-2007, nazghul
- Added: TAG.OVERRIDE.RANGE on items and/or characters overriding the RANGE 
  property of the itemdef/chardef.

30-09-2007, nazghul
- Fixed: not-working tag override of SkillPracticeMax what may have caused 
  problems with Linux builds. Now TAG.OVERRIDE.PRACTICEMAX.SKILL_# 
  (with "#" == "40" for swordsmanship, "42" for fencing, etc.) on a training 
  dummy can override the INI default upto what skill value one can practice 
  with it.

02-10-2007, coruja747 (Script pack)
- Updated #1224: sphere_admin.scp (Added char updates when modifying flags)

03-10-2007, MrSugarCube
- Fixed #1269: Fixed house design commit issues on alternate maps.
- Fixed #1270: Fixed ISEVENT not working on regions.

04-10-2007, MrSugarCube
- Fixed: House components being affected by OF_OSIMultiSight.
- Fixed: DESIGN.x.KEY not working on custom housing.

06-10-2007, Fire-Dragon-Dol (Script pack)
- Updated #1274: sphere_map2.scp (Removed reference to non-existant resource)

15-10-2007, MrSugarCube
- Added #1283: FEATURE_ML_NINTHAGE feature flag in sphere.ini. Setting this
  enables the crystal and shadow components in custom houses.
- Fixed #1281: Unable to disembark ships on west-facing planks.
- Fixed #1278: Unable to craft crafting tools.

17-10-2007, Nazghul
- Changed: Behaviour of TAG.OVERRIDE.RANGE. Now the largest TAG value (on weapon 
  and/or char) takes precedence over the other.

18-10-2007, Nazghul
- Added: TAG.OVERRIDE.TRAINSKILLMAX and TAG.OVERRIDE.TRAINSKILLMAXPERCENT
  overriding the respective defaults from Sphere.INI based on an individual
  trainer (NPC).

19-10-2007, MrSugarCube
- Fixed #1293: Checkbox positions in dialogs not working with dorigin.
- Fixed #1292: House designer not working with RESDISP less than 3, a minimum
  client version of 4.0.0 is still required though.
- Fixed #511: Character spawn tooltip modified to avoid bad token ID messages
  with characters using random names (#NAMES_xxx).
- Fixed: Quest and Guild buttons on the paperdoll not working with RESDISP less
  than 3.
