-------------------------------
New features/bug fixes in v2.21
-------------------------------

In this version the network traffic 
has been reduced drastically, that should
make the game less laggier. There are
also a few other updates. These things
apply for v3.03 too.

- when a tiles-image has been downloaded
  all tiles using that image are redrawn,
  so preventing messed up screens when 
  entering a room with new tiles
- when weapon scripts do 'showani' then the
  used ganis can do gani-scripting too
  (e.g. for displaying nice effects on
  status bar)
- server-side scripts can do 
  'triggeraction 0,0,clientside,weapon,params'
  to directly trigger the client-side part of 
  weapon of the player - catch it with
  'if (actionclientside) actions;'


------------------------------
New features/bug fixes in v2.2
------------------------------

Graal v2.2 is not really a major
release, but is bringing better support
for internationalization and online-
tile-editing.

- support for multi-byte text in
  signs - this is needed for languages
  like Korean, Chinese and Japanese;
  a Korean version of Graal Kingdoms
  is planned
- server-side tile changes work on
  gmaps too - with updateboard/2 tiles
  can be sent to the client, saving
  will be added soon
- new scripting function:
  textheight(zoom,font,style) calculates
  the height of text displayed with the
  given zoom factor, font name and style;
  textheight(1,,) gives the height of
  the standard font used for showimg/showtext;
  the style is a string with the letters
  b (bold), or i (italic), the other styles
  don't really make sense - the font name
  and font style are generaly not influencing
  the height a lot
- several little bug fixes

------------------------------------
New features/bug fixes in v2.19 rev1
------------------------------------

- fixed a login problem on playerworlds

-------------------------------
New features/bug fixes in v2.19
-------------------------------

At the same time v2.19 and v3 are released -
most new stuff has been added to v3 and we
will also add more things to that version,
while still maintaining the old client until
it can be fully replaced. Both versions
use the new starting screen, better
compression and speed optimizations. There
are also some improvements for scripters
and several bug fixes.
We have also released new development tools:
- graalshop (gani editor) can handle the
  attributes 10-30 now
- the level generator produces .nw levels
  and gmaps
- gif2mng has been updated - the generated mngs
  are now compatible to the mng standard,
  which is important for Graal v3 which
  uses the mng standard;
  you can fix old mngs by converting them
  with gif2mng again - gif2mng can handle
  short to long filename conversion now so
  you can convert images by dropping them on
  the gif2mng exe in the windows explorer
- there is the new dungeon generator which
  has been used to make the dungeons on
  Graal Kingdoms. You will need to make your
  own inside tiles though to use the
  generated levels in your playerworld

General features:
- there is a new starting screen and
  new server list to match more the style
  of the website and Graal Kingdoms
- Graal uses a better compression, to reduce
  download time and lag
- speed optimizations: several internal things
  have been improved, mainly the search for
  filenames and lookup of scripting variables,
  so the game should run faster

Script features:
- this. strings: the client finally supports
  this.-strings; previously all strings on client-side
  were attached to the player, irritating people
  who have seen this.-strings in server-side scripts;
  this.-strings belong to the current npc and
  can be changed with the 'setstring name,value' command
  and read with the #s(name) message code
- on servers with npcserver the client doesn't send
  any strings except client. strings to the server anymore,
  so you don't need to start the strings with local. anymore
  (except when doing things for the classic server)
- ganis can use this. strings too, allowing string
  manipulation things in ganis
- ganis can write to i,j etc.: they are handled
  like local variables, so you don't need to store
  temporary values in this. variables anymore;
  before 2.19 you couldn't write to i,j etc. because
  those were variables belonging to the current level
  and could influence other npcs which should not
  be allowed since gani scripts can be edited
  by players;
  level variables can still be read, but once you
  write to them they will be handled as local
  variable
- #p(x) in attached ganis: it's now possible to do
  things like 'setplayerprop #P1,mygani.gani,param1,param2;'
  where the script in mygani.gani can read the params
  with #p(0),#p(1) etc.
- textwidth(zoom,font,style,text): calculates the pixel
  width of a text with the given zoom factor, font and style
- #m(-1): all npcs can use the index -1 to
  read their own string attributes like #m,
  #Px, #Cx, not just showcharacter-npcs
- new message code #R:
  #R(string1,...,stringx) selects randomly
  one of the strings

Bug fixes:
- the call stack is saved and restored
  when doing the script command 'sleep',
  which means it works inside functions now
- some problems were solved with global
  npcs getting invisible when moving
- there is less memory use when walking on
  gmaps, less images of npcs are hold in
  memory
- the script command testplayer works on gmaps
  now
- when a projectile lands then weapons get
  the event 'actionprojectile2' instead of
  'actionprojectile' to avoid problems of
  mixing those ('actionprojectile' is called
  when the projectile hits an npc or the player)
- grabbing showcharacter npcs and players is 
  enabled again, it was disabled before to prevent 
  harassement, but was problematic for script things


------------------------------------
New features/bug fixes in v2.18 rev1
------------------------------------

- fixed file dialogs - it doesn't
  freeze Graal anymore when clicking
  on the folder box (Win95/98 problem)

-------------------------------
New features/bug fixes in v2.18
-------------------------------

This new Graal version is again mainly
a bug-fix release. But a new Graal (v3)
is in work which is a completely remake,
coded in C++: it's more compatible,
faster, works on different platforms
and makes it possible to add more features.

- new password encryption: once you start Graal
  and connect, the password will be stored
  more securely

Bug fixes:
- removed a memory leak when saving the history
  (which is saved each time someone sends you
   a pm or you send someone a pm)
- editing gmaps fixed: the heights of near levels
  are saved correctly (modified-flag correctly set
  when changing the height so that they are saved
  when you click on 'save'),
  and npcs are placed on the correct position when
  a level is load that is part of a gmap which is
  not loaded yet (e.g. when double-clicking on a
  level in the windows explorer)
- in the debugger you can move the mouse over
  text and commands without seeing new scripting
  variables appearing in the variables-watch-list;
  the content of the variables is displayed in the
  caption of the debugger window, that's more fast
  than showing a yellow hint under the mouse
- levels are pre-loaded when entering the server,
  so you don't see heights changing when entering
  Graal Kingdoms
- when opening the profile of a player and he is
  online on as player account and RC at the same time,
  then you see the stats of the player instead of
  the RC
- the maps1-3 ganis are shown in more cases now,
  but you might need to do some replaceani-calls
  in case you don't want those gani appearing when
  the player presses M
