Fix copying wrong variable to basename.  MSW 2002-03-28
    
11 lines of code changed in 1 file:
Fix improper ANSI C construct of declaring variables in mid code.
MSW 2002-03-28
    
6 lines of code changed in 1 file:
Add missing file.  MSW 2002-03-28
    
0 lines of code changed in 1 file:
Various fixes/enhancements:
1) For the files stored in the players cache, include the image set suffix
   (eg, base, clsc) when saving the file.
2) Add a gui update element to the gtk client when running with -download_all_faces.
   For the cfclient, print the updates to the window.
3) Apply patch by 'Alfie' that shows skill experience in the cfclientp
4) Fix caching bugs with the cfclient that caused it to not work right.
common/client.c: Add callbacks to image_update_download_status from the
    download all image routine.  It is this callback that provides whatever
    update mechanism for the player.
common/external.h: add image_update_download_status
common/image.c: Modify display_newpng to put in the image set name of the
    saved cache files if that information is available.
gtk/gtkproto.h: rebuilt.
gtk/gx11.c: Make get_window_coord non static so other files can use it.
gtk/image.c: Add image_update_download_status that draws a progress bar.
   Convenient side effect is that other GUI elements are now updated
   as part of this, so player can access other menu items.
x11/png.c: Fix some bugs when using cached images - rgba_to_xpixmap was
   using initialized bpp value - we now know this is always 4.
   create_and_rescale_image_from_data did not match the parameters
   as the common routines use.  Also missing some logic for
   allocating the data and linking it back to the cache entry.
x11/x11.c: Add display for skill experience.  This necessitated making
   some of the windows bigger.
x11/x11.h: Remove now unused fields from PixmapInfo structure (fg, bg,
    bitmap)
x11/x11proto.h: rebuilt
x11/xutil.c: Remove code that was storing data into the unusued
    fields in the PixmapInfo structure.  Add missing call to
    init_common_cache_data.  Add image_update_download_status
    function that just does a draw info.
MSW 2002-03-26
    
169 lines of code changed in 12 files:
Many changes to image handling.  The most noteworthy are:
1) Ability to use different image sets.
2) Ability to get checksums of all images and download missing images
   before play starts.
3) Storing cache information for images in a bmaps.client file so that
   it can know if it has a match without needing to load the image
   and checksum it.
4) Can use crossfire-image archives to bootstrap the client with a large
   number of images to save the time of downloading them later.
README: Update some out of data information about sounds, add section
   describing the image handling.
configure,configure.in: Make the SOUNDDIR be based and datadir and not
   an absolute path - this means using a different -prefix changes
   the location of where it will find the sound file.  Moved some
   of the defines into the config.h file so that we don't need to pass
   them as -D compiler options.  Add code to properly substitute
   DATADIR and BINDIR values.
common/Makefile.in: Add image.c to list of files.  Fix depend
   directive.
common/cconfig.h: Remove some options that no longer did anything.
common/client.c: clean up some unused global variables, add a few new ones.
   and support for replyinfo protocol command.  Modify negotiate connection
   to issue requestinfo requests, set up face set to use, use
   setup command to set caching behaviour, and support for it to download
   all image sums and missing images before play starts.
common/client.h: Update VERSION_SC to 1027.  Remove some unused
   global externs.  Add FaceSets structure, Face_Information structure,
   the later which holds some user preferences.  Add Cache_Entry
   structure, as well as some state when negotiating the connection.
common/commands.c: Add ReplyInfoCmd function.  Move FaceCmd
   to common/image.c.  Add handling of received setup command for
   faceache and faceset information.  Remove some dead code.
common/config.h.in: Add BINDIR and DATADIR defines so we don't need to
   pass them on the command line.
common/external.h: Add some more functions that are called back from the
   common area.
common/image.c: New file - cache logic, png image load code, and protocol
   image related commands in this file.  This removes some of the code
   that was previously in the GUI area of the client into a common area.
common/init.c: Add TEST_FREE_AND_CLEAR macro.  Add code to clear
   some of the newly added structures.
common/proto.h: rebuilt.
gnome/gnome-cf.h: remove cache_images extern.
gtk/gcfclient.man: Update man page for new options (-download_all_faces,
   -faceset)
gtk/gtkproto.h: rebuilt.
gtk/gx11.c: add redraw_needed flag so the map window is properly redrawn
   when caching images and new images show up.  Change some other
   variables to deal with new image code.  pixmaps changed to a pointer
   so that a copy can be held in the common cache structure.  Add support
   for new options.  Remove some code that is now in the common/image.c
   file.
gtk/gx11.h: Remove keepcache, change cache_images, add redraw_needed,
   and change type of pixmaps to be a pointer.
gtk/image.c: Move requestface to the common/image.c, change pixmaps
   to pointer type.  remove finish_face_cmd and ReadImages command.
gtk/map.c: Change pixmaps to pointer types.
gtk/sdl.c: add redraw paramter to sdl_gen_map.  change pixmaps type
   to pointer.
gtk/sound.c: Add missing / when running cfsndserv.
x11/png.c: Remove gdk related code from the file.  Add rgba_to_xpixmap
   data so tha the common area can load the png file.
x11/sound.c: Add missing / when running cfsndserv.
x11/x11.c: change pixmap type to pointer.  Add new options (-faceset and
    -download_all_faces).  Remove -keepcache option.  change
    cache_images to face_info.cache_images.  Change how the
    pixmaps are generated
x11/x11.h: remove keepcache and cache_images variables.  Change
   pixmaps to pointer type.
x11/x11proto.h: rebuilt.
x11/xutil.c: remove keepcache option.  Change pixmap type to pointer.
    Move requestface and finish_face_cmd to common/image.c
MSW 2002-03-25
    
1576 lines of code changed in 29 files:
Update to improve image caching and faceset support in the client.
    The main change is adding the 'requestinfo image_info' and
    'requestinfo image_sums' commands.
common/image.c: Checksum the bmaps file when we load it - we send this as
    part of the image_info data.
doc/Developers/protocol: Document the requestinfo data.
include/global.h: Add extern for bmaps_checksum, and the define for
    ROTATE_RIGHT which is used for checksumming.
include/newserver.h: Update SC version to 1027 so that clients can
    know if they can issue requestinfo commands.
include/sockproto.h: rebuilt
lib/adm/collect_images.pl: Add support for it to make a crossfire-images
    distribution that the client can use to bootstrap its image set.
socket/image.c: Change SendFaceCmd to take a NewSocket parameter instead
    of a player parameter - in this way, it can be used before the
    AddMe command - this allows the client to download images before
    issuing that command.  Add send_image_info and send_image_sums
    function which send the requestinfo data to the client.
socket/loop.c: Move the askface command from the player commands to the
    newsocket commands.  Add RequestInfo functino that determines the
    type of request and calls the specific function to deal with it.
MSW 2002-03-25
    
375 lines of code changed in 9 files:
Oops, forgot adding the 'faces' directive
mids 2002-03-21
    
3 lines of code changed in 1 file:
Add install of faces file.
Thanks to Lord_Devi for reporting this.
mids 2002-03-21
    
1 lines of code changed in 1 file:
Makefile.in: add missing pixmaps file for archive.
crossfire-client.spec, configure.in: Update for 1.2.0 release.
MSW 2002-03-19
    
18 lines of code changed in 5 files:
Updates for 1.1.0 release - pretty much all minor bug fixes, like
compiler warning messages, invalid ANSI C constructs, missing files to
include in the distribution.
Makefile.in, include/version.h: update version.
include/Makefile.in: Add some missing files
include/libproto.h, sproto.h: rebuilt to prevent compiler warnings
lib/Makefile.in: Include the wizhelp files in the archive.
server/apply.c, server/skill_util.c: fix invalid code (function parameter
    names can't match structs/typedefs), add a missing return value.
server/c_move.c, server/c_new.c, server/c_object.c, server/commands.c,
    server/daemon.c: Don't include the sproto.h if CEXTRACT is defined.
server/plugins.c: fix printf command that was printing wrong value type.
doc/spoiler-html/Makefile.in: Remove extraneous newline
    
98 lines of code changed in 16 files:
Modified dragon titles:
Now players with > 50% skin resistance are "ancient dragons"
and with > 80% (VERY hard) are "legendary dragons"
    
2 lines of code changed in 1 file:
server/player.c: modify play_again to remove the player object if not done so
already.  This fixes a crash observed on metalforge when a player quit at the
roll/swap stats prompt (undocumented that you can use 'q' then to do so).  It
looks like this should also fix crashes that may be associated with the kick
and shutdown wiz commands.
MSW 2002-03-12
    
17 lines of code changed in 2 files:
uups, forgot a testing-printf in
the get_random_receipe() function
    
0 lines of code changed in 1 file:
common/object.c:
I saw from mids' cores that the server crashed inside
the update_object() function. Can't verify the crash,
but I put in some extra security-checks which might
help.
server/attack.c
Out-commented the errormessage "hit_map(): next object destroyed".
This routine is by no means a bug/error, happens very frequently,
and thus doesn't deserve to spam the logs.
    
21 lines of code changed in 2 files:
Fixed a crash-bug in the get_random_receipe()
function. There was a possible modulo-division
through zero.
    
6 lines of code changed in 1 file:
I've increased the length of the player->title
string (from 16 to 32 byte) to fix the buffer-overrun
issue with long dragon titles.
Note that the object->title remains unchanged.
Tell me if I'm wrong, but afaik the player title doesn't
mingle with object titles.
I also simplified the storage of dragon titles. It is
no longer saved in the dragon_ability_force but
recalculated every reload.
    
7 lines of code changed in 3 files:
Fix for the dragon-devourer issue.
When turning to devourers, the player's race
is changed to "undead". Dragon race is now
read from the player arch's race instead of
the player race directly.
    
3 lines of code changed in 1 file:
changed initial stats from dragon player race:
rised INT, dropped DEX mainly
The extremely low INT wasn't good for the race
because dragons have great need to learn spells.
Moreover, dragons are generally not considered stupid.
    
4 lines of code changed in 1 file:
patch: the special titles of dragon players
       now get saved into the player file and
       are always present after re-login.
Also added initial woodsman skill to the dragon-race.
That's good for identifying food, and it doesn't
influence balance IMO.
    
26 lines of code changed in 3 files:
added title into dragon ability force
    
1 lines of code changed in 1 file:
two fixes to my dragon-race code:
- fixed stringcompares wich caused crashed
  with players that have race NULL.
- forgot to commit "server/init.c" before,
  which resulted in function dragon_ability_gain()
  not to get bound, thus missing dragon ability gains.
    
22 lines of code changed in 9 files:
small fix: dragons now always use clawing
skill as default combat skill. That's
needed because only on clawing skill go the
special attacktypes.
    
20 lines of code changed in 1 file:
noted patch in the changes
    
18 lines of code changed in 1 file:
As announced on cf-devel, this is the patch which
adds a new dragon-race to Crossfire.
Players of this dragon race can gain resistances
by eating the flesh of their defeated foes.
They can also specify in a certain resistance-type
and gain various abilities when increasing levels.
This "focus" can be switched by eating very special
As announced on cf-devel, this is the patch which
adds a new dragon-race to Crossfire.
Players of this dragon race can gain resistances
by eating the flesh of their defeated foes.
They can also specify in a certain resistance-type
and gain various abilities when increasing levels.
This "focus" can be switched by eating very special
flesh, which will be available for sale.
Dragon players gain special titles which cannot
be overwritten by manually set titles.
Also see the dragon race description during the
race selection process.
Note that the quetzal has been slightly modified
(picture and race) to prevent getting mixed up with
the new dragon race.
Please keep in mind that this is the first version
of this dragon-race-code. Do not expect it to be
perfectly balanced in all aspects.
Player's opinions will provide some good feedback
for further development I hope.
--AndreasV
    
600 lines of code changed in 15 files:
new arches for the dragon-race patch
    
218 lines of code changed in 17 files: