Download Latest Version CrossfireEditor.jar (9.2 MB)
Email in envelope

Get an email when there's a new version of Crossfire RPG game

Home / OldFiles / crossfire-editor
Name Modified Size InfoDownloads / Week
Parent folder
CrossfireEditor-0.9.jar 2011-02-02 5.9 MB
Totals: 1 Item   5.9 MB 0
Crossfire 1.9.0 has been released.  There are lots of more minor
changes.  List of more major changes:
Addition of discrete movement types.
Addition of transportation objects.
Server will send spell information to the client so client can
  present it nicely to player (requires v1.9.0 of client)
Player stealing from other players can now be disabled by option in
  settings file.
Crossedit updates.
Additional newpickup modes.
New plugin interface.
Add shop specialization - all the shops won't give the same prices -
  shops now vary prices based on what they normally deal with (requires
  1.9.0 maps)

Client 1.9.0 Changes:
Many bugfixes.
Advanced readable object support in client.
Addition of pure GTKv2 client, including SDL and OpenGL drawing modes.
  Note this client should be fine for playing, but does not have all
  the features of the gtk client right now.


Only the bigworld maps are up on sourceforge - this is the only
mapset under active development - the old smallworld maps are 
still in CVS, and older versions still available for download.


Files released for this version:

sums (bsd)  filename
51380  2278 crossfire-1.8.0.arch.tar.bz2
45117  2399 crossfire-1.8.0.arch.tar.gz
64618 15087 crossfire-1.8.0.maps.tar.bz2
07161 20760 crossfire-1.8.0.maps.tar.gz
27290  4744 crossfire-1.8.0.tar.gz
37379   649 crossfire-client-1.8.0.tar.gz

Sums (md5)
31e5ce447102fe97627e1c2f6d5193ee  crossfire-1.8.0-README
4cd3c314c6d286d44451fae13935aab2  crossfire-1.8.0.arch.tar.bz2
cc03753ba0435950bedbbff790e7afd2  crossfire-1.8.0.arch.tar.gz
62b3b62a3a519c976593a2a8102ab177  crossfire-1.8.0.maps.tar.bz2
54170887357ca96c66eb69d8c0ecc2f7  crossfire-1.8.0.maps.tar.gz
f79cc73a3be416fd1c7a18ce76668a82  crossfire-1.8.0.tar.gz
3198bb5ad0e85ca7d8dcdd812bdf4c2f  crossfire-client-1.8.0.tar.gz

crossfire-1.8.0.tar.gz contains the server code with prebuilt
archetype and image files. 

crossfire-client-1.8.0.tar.gz contains the client code - if you only
want to play, this is the only piece you need.

crossfire-1.8.0.arch.tar.gz contains the unpacked archetype changes.
This is not needed if you only want to compile the server and play the
game. Various fixes, as well as new archetypes.

crossfire-1.8.0.maps.tar.gz contains the map distribution - this is the
bigworld map.  New maps have been added, as well as verious fixes.

FOR FIRST TIME USERS:  You will only need the appropriate server, the
map file and client file.  You do not need the arch file.  You may wish to
get a copy of the doc file.

If you just want to play the game at some remote server, you need the client
and perhaps the image archive file (older image file is still good enough).

Crossfire is avaible on the following ftp sites

Primary:
    ftp://ftp.sourceforge.net/pub/sourceforge/crossfire

Secondary:
    ftp://ftp.real-time.com/pub/games/crossfire

The initial upload of this release is only made to sourceforge - it should
show up on the mirrors shortly.

Mark Wedel
mwedel@sonic.net
August 10, 2005

Complete changelog:

server:

Update for release 1.8.0.
include/Makefile.am:  missing quest.h file
Rest automatic rebuild
MSW 2005-08-10

Replaced "depletion" by ARCH_DEPLETION (defined in object.h). Affected files:
 common/living.c
 include/object.h
 server/apply.c gods.c spell_effect.c
Ryo 2005-08-10

server/player.c: Set map for arrow as returned by get_map_flags -
   otherwise when firing at edge of tiled maps, arrows could end up
   in wrong place.
MSW 2005-08-09

include/config.h: Make DEBUG default - appears last commit changed this
   as unrelated to actual changes in place.
include/sproto.h: Rebuild
server/player.c: fire_bow() - add checks for wall/out of map.  fire_bow()
   wasn't using right coordinates on check, which caused problems in
   threewide mode at edge of maps.
MSW 2005-08-07

plugin_logger/plugin_logger.c: make it compile under Win32.
Ryo 2005-07-30

server/player.c: fix crash when news or rules > HUGE_BUF.
Ryo 2005-07-29

server/{monster.c, pets.c}: Fix bugs in arena petmode and clean up most of
   it's logic into it's own function.
lib/help/petmode: Document the arena petmode in the "help petmode" output.
Alex Schultz 2005-07-28

server/skills.c: use correct sp/grace for inscription.
Ryo 2005-07-27

The following changes prevent spells in player's inventories from being
damaged by casting spells, using skills, or praying.
server/attack.c: Limit cancellation and acid attacks to visible objects only.
server/gods.c: Limit god granted remove curse/damnation to visible objects
   only.
server/skills.c: Limit the skills sense curse and sense magic to visible
   objects only.
server/spell_effect.c: Limit the spells detect curse and detect magic to
   visible objects only.
Andreas Kirschbaum 2005-07-26

server/skill_util.c: don't try to send a message if monster killed/removed.
Ryo 2005-07-23

socket/init.c: settings values to 0 before using'em works better, usually ^_-
Ryo 2005-07-22

random_maps/random_map.h: Add prototype for set_random_map_variable().
server/main.c: Remove prototype for set_random_map_variable().
lib/Makefile.am, lib/Makefile.in, lib/help/whereabouts: Add help for
   whereabouts command.
server/apply.c: Properly terminate destination string with '\0' in
   apply_item_transformer(). Avoid clearing the string buffer multiple times.
Andreas Kirschbaum 2005-07-20

doc/Developers/item_transformation: fixed documentation.
server/apply.c: remove incorrect comment. Item transformer uses food for max use.
Replaced some hardcoded values with define. Modified files:
 common/arch.c
 include/object.h
 plugin/plugin_python.c
 server/apply.c attack.c build_map.c spell_attack.c spell_effect.c time.c
Ryo 2005-07-19

include/win32.h: add PLUGIN_SUFFIX definition.
Ryo 2005-07-18

server/plugins.c: Merge mostly identical code from #ifdef WIN32 and #else
   blocks. Use opendir/readdir/closedir instead scandir for Unix because WIN32
   probably does not have these functions. Prevent loading one plugin multiple
   times.
include/sproto.h: Update prototypes for plugin functions.
server/c_wiz.c: Add success/failure messages to plugin and plugout commands.
   Do not crash due to missing parameter.
Andreas Kirschbaum 2005-07-18

server/pets: Fix off-by-one error in follow_owner().
server/c_wiz: Allow the summon and teleport commands to place the summoned
   player/DM north-west of DM/player.
Andreas Kirschbaum 2005-07-17

Use const char* instead of char* when possible. Remove unused variables in weather code.
Affected files:
 common/map.c region.c utils.c
 crossedit/stubs.c
 include/funcpoint.h libproto.h sproto.h
 random_maps/standalone.c
 server/weather.c 
Ryo 2005-07-17

server/apply.c: Make converters that increase value non-functional.
Andreas Kirschbaum 2005-07-17

server/{monster.c, pets.c}: Fixed bug in previous commit of arena petmode
   that cause pets that should be friendly to eachother to fight.
Alex Schultz 2005-07-16

common/{map.c, readable.c, treasure.c}, 
crossedit/{Attr.c, png.c, Cnv/{CnvFiles.c, CnvPath.c}}, 
plugin_animator/plugin_animator.c, 
plugin_logger/maps.c, 
server/{alchemy.c, c_misc.c, c_wiz.c, init.c, main.c, monster.c, pets.c,
player.c, resurrection.c, rune.c, skills.c, spell_effect.c, time.c,
weather.c}:
   Fix spelling errors in string constants.
server/c_misc.c: Remove superfluous trailing '\0' from strings.
Andreas Kirschbaum 2005-07-15

server/{c_misc.c, monster.c, pets.c}, include/player.h: Add new "arena"
   petmode which allows pets to attack players and other pets while in the
   arena.
Alex Schultz 2005-07-16

*Makefile.in, aclocal.m4, configure: Rebuilt generated files.
lib/Makefile.am: Update list of help files to install.
server/skills.c: Do not reveal a hidden DM in attempt_jump().
server/skills.c: Do not reveal a hidden DM in steal().
server/player.c: Ignore hidden DM in stand_near_hostile(). Formerly it always
   returned false if a hidden DM was present.
Andreas Kirschbaum 2005-07-15

server/c_object.c: Improved pickup. You can now do pickup +bow, or pickup -shield.
 Much simpler then fiddling with sums of 2^x values.
Ryo 2005-07-15

server/c_party.c: Make party passwords with a length of 8 characters work
   again.
lib/artifacts: Fix type of lockpicks of quality/high quality.
Andreas Kirschbaum 2005-07-15

Those commits remove the dependency on the plugin towards the library. All functions
 used from the plugin are hooked, instead of being called directly. This fixes bugs
 under Windows, and simplifies compilation. Also, many new callbacks were defined.
Affected files:
 include/plugin.h plugproto.h sproto.h
 plugin/plugin_python.c
 server/plugins.c
Note that at some point some functions could be moved out of plugin_python and put in
 plugin_general to be shared between different plugins.
Ryo 2005-07-15

Those commits remove the whole "glue/callback" logic. Instead functions are just
defined as external, and should be implemented (even as dummy) by all programs.
Affected files:
 common/arch.c button.c glue.c init.c item.c living.c logger.c los.c map.c object.c
  time.c treasure.c
 crossedit/stubs.c: new file with dummy functions.
 crossedit/Makefile.[in|am]: add this new file.
 include/funcpoint.h libproto.h sproto.h
 random_maps/standalone.c: add dummy functions for those externals.
 server/init.c: remove obsolete setup_library()

Added a wrapper function for check_trigger from plugins.
 include/plugin.h: new function
 server/plugins.c: wrapper for check_trigger.

Ryo 2005-07-15

plugin/plugin_python.c: (add|free)_string should *not* be called directly under Win32.
 Therefore let's use the hooks. Also, when removing an object, better check it's not the
 current object (CFPython.RemoveObject(CFPython.WhoAmI()) anyone?).
Ryo 2005-07-15

server/spell_util.c: use on_same_map instead of checking directly map pointers.
Ryo 2005-07-15

Those changes implement a quest tracking system. Check the doc/quests document for more info.
common/quest.c: new file with a few quests-related functions.
doc/Developers/mapguide: point to quests file for instructions on quests.
doc/Developers/quests: new file with instructions on how to use quests,
 and implementation details.
doc/Developers/README: added quests file.
include/libproto.h: new functions in quest.c.
include/quest.h: new file with a few defines for quests.
include/sproto.h: new function command_quest, update talk_to_wall definition.
lib/help/quests: new help file for quests command.
server/c_misc: new command_quests function.
server/commands.c: link command_quests to "quests".
server/monster.c: update talk_to_wall and talk_to_npc to check for quests.
server/time.c: modify marker behaviour to handle quests.
Ryo 2005-07-14

common/{button.c, treasure.c, utils.c}, server/{c_wiz.c, login.c, shop.c,
skill_util.c, spell_effect.c}, socket/{image.c, item.c}: Fix printf like
   format specifiers. At least one of them fixes a means to crash the server.
Andreas Kirschbaum 2005-07-14

Those changes introduce party spells. Casted spell should be defined through 'other_arch'
 field. Note that this needs through testing to make sure it works as intended.
include/spells.h: new spell type, 'party spell'.
server/spell_util.c: new spell type, party spell.
Ryo 2005-07-10

server/{login.c, player.c}: Fix buffer overflow with pl->title. Based on patch
   by Scott Kullberg.
crossedit/{Edit.c, Cnv/CnvPrompt.c}, server/{ban.c, hiscore.c, login.c,
player.c, shop.c, win32.c}: Properly terminate destination string of strncpy
   with '\0'.
server/init.c: Fix error message.
Andreas Kirschbaum 2005-07-10

configure.ac, configure, aclocal.m4, Makefile.in: Add AM_MAINTAINER_MODE
   macro to configure.ac - this should hopefully supress auto regeneration of
   makefiles.in
MSW 2005-07-08

Add a --with-python option to configure.  Also, update the python
detection script to check for 2.5 (not out yet, but might as well be prepared.)
Will try to commit files in proper order so that dependency checking is correct
and it won't try to rebuild makefiles or other files.
--
acinclude: Updated checks for --with-python
aclocal.m4: updated
configure.ac,configure: Updated checks for --with-python
config.sub, config.guess - update to latest versions
INSTALL: Updated build directions
MSW 2005-07-08

lib/Makefile.am, lib/Makefile.in: Remove map_check from normal distribution
   due to different license on file.
random_maps/monster.c: Reduce monster density on random maps - take into account
   size of monsters when calculating density.
utils/metaserver.pl.in: At a timeout value that limits how often clients can
   ask for metaserver info.
MSW 2005-07-08

lib/settings: Turn of fastclock as default option.
socket/loop.c: Change behaviour of metaserver/flushmaps/watchdog
   calls if fastclock is set - don't do those any faster than normal.
MSW 2005-06-22

Server can now be used as a Windows server, with command-line options
 -regsrv (register server and exit), -unregsrv (unregister server and exit)
 and -srv (should not be used directly, for the service control manager call).
server/init.c: add command-line options.
server/main.c: loop is no more infinite under Windows. Save and clean after it, too.
server/win32.c: add service routines.
Ryo 2005-06-22

common/living.c: Print correct message when (un-)wearing items with negative
   luck.
Andreas Kirschbaum 2005-06-14

include/living.h: Patch from Kari Pahula to remove obsolete variable
   declarations.
Andreas Kirschbaum 2005-06-01

server/skill_util.c: Print correct permanent experience ratio for experience
   values >2 billion.
Andreas Kirschbaum 2005-05-22

server/apply.c: Do not unlock LAMP items when turning them on or off.
server/apply.c: Fix CONVERTER items with slaying "money" to trigger for MONEY
   items only.
server/player.c: Generate proper plural name for player's gravestones.
Andreas Kirschbaum 2005-05-21

Ensure that object->msg always has a trailing \n character. This is necessary
to prevent corrupted map files.
plugin/plugin_python.c: Add trailing \n to message set by
   CFPython.SetMessage() if not already present.
server/plugins.c: Add trailing \n to message set by HOOK_TELEPORTOBJECT if not
   already present.
server/rune.c: Add trailing \n to rune messages.
Andreas Kirschbaum 2005-05-21

Apply qal21's patch [ #1205421 ]: Implement new Python functions:
GetArchType, GetFacing, GetLevel.
plugin/plugin_python.c, plugin/include/plugin_python.h: Add new functions.
doc/Developers/python: Describe new functions.
Andreas Kirschbaum 2005-05-20

server/monster.c: Fix monsters to cast spells from spellbooks.
Andreas Kirschbaum 2005-05-15

Fixed compilation issue.
server/apply.c: can't declare a variable after some function call.
socket/info.c: removed unused variable.
Ryo 2005/05/07

Corrected code to compile under -ansi gcc flag:
 * correction of some non posix compatible calls around scandir 
 * changing configure to detect the absence of 'alphasort' prototype
 * converted some '//' comment to /**/ one
 * reran automake1.8/autoconf2.50/autheader2.50
Note even it it compiles with -ansi -pedantic, it still need cleanup to
get 64 bits experience code working!
Tchize 2005/05/07

Applied Casper1's patch [ #1193516 ] for Hurd support.
 * socket/lowlevel.c: #ifdef some code part that won't work.
Change some char* to const char*, when values shouldn't be changed. Changed files:
 * include/libproto.h
 * common/arch.c
 * common/living.c
Ryo 2005-05-03

Change some char* to const char*, when values shouldn't be changed. Changed files:
 * include/sproto.h
 * socket/info.c
 * socket/item.c
Ryo 2005-04-30

Change some char* to const char*, when values shouldn't be changed. Changed files:
 * include/sproto.h
 * server/apply.c
 * server/ban.c
 * server/spell_util.c
Ryo 2005-04-27

server/skills.c: Change it so that jeweler skill is used to identify
   amulets, not alchemy skill.
MSW 2005-04-27

Apply patch 1190107 so server compiles on HURD.
common/porting.c: Add define for MAXPATHLEN
socket/init.c: Add check for __GNU__ for setsockopt()
MSW 2005-04-27

Change to have objects generated by creator properly fixed up (material,
for potions, spell object, etc).
---
common/treasure.c: add GT_MINIMAL flag to change_treasure() to do minimal
   processing for objects created.
include/treasure.h: Add GT_MINIMAL define.
server/apply.c:  Add call to fix_generated_item() in convert_item()
MSW 2005-04-27

Various minor bugfixes.
common/los.c: Patch to fix negative lighting.  Use isqrt instead of sqrt,
  so we only want integer values anyways.
include/libproto.h, include/sproto.h: Rebuilt as there were some improperly
   matching prototypes.
random_maps/rogue_layout.c: Replace sqrt with isqrt calls.
server/c_misc.c: Make name_cmp() a static declaration so it won't be put
   in the sproto.h file.
server/init.c: Remove /* within comment string.
server/monster.c: Change sqrt to isqrt
MSW 2005-04-16

Those changes are just changing char* to const char* in some function
prototypes.
Affected files:
 common/recipe.c
 common/region.c
 common/treasure.c
 common/utils.c
 include/libproto.h: match headers.
 server/main.c
Ryo 2005-04-16

Those changes add the ability to transform items through 'item_transformer'
 (163)-type items
 See doc/Developers/item_transformation for more info.
common/item.c: don't display 'slaying' field for food.
include/define.h: add new 'ITEM_TRANSFORMER' type.
include/sproto.h: add new function 'apply_item_transformer'.
server/apply.c: new 'apply_item_transformer' function to handle that item type.
Ryo 2005-04-15

common/map.c: map pathnames are now const char*, no reason for something else.
common/region.c: remove unused variable.
include/libproto.h: update functions definitions.
include/sproto.h: weathermap_to_worldmap_corner now returns a const char*.
include/win32.h: define missing NAME_MAX as MAX_BUF.
server/c_misc.c: remove unused variable. Use const char* when possible.
server/weather.c: weathermap_to_worldmap_corner now uses const char* as
    return type.
Ryo 2005-04-14

Random map code improvements - add support for subdirectories in the
style maps for random maps.  Add difficulty_increase parameter for random
maps to control how fast they get harder.
doc/Developers/random-maps: Add notes about difficulty_increase parameter.
random_maps/Makefile.am: Update proto directive to use cproto, not cextract.
random_maps/random_map.c: Update to use difficulty_increase when figuring
   difficulty of maps.  Add code to save it in list of parameters.
random_maps/random_map.h: Add difficulty_increase field to structure.
random_maps/reader.l, reader.c: Add code to find difficulty_increase parameter.
random_maps/rproto.h: rebuilt.
random_maps/special.c: Pass in difficulty increase to
   write_parameters_to_string()
random_maps/style.c: Remove old scandir - replaced by our own load_dir() -
   necessary because we need to check type of files, which scandir doesn't
   easily let us do.  Since it is now our own routine, just return
   array of file names instead of dirent structures.
MSW 2005-04-13

utils/Makefile.am: Add cfmeta-rrd to list of files to add to distributions
utils/cfmeta-rrd: Example of sample script that takes data and stores it into
   rrd file and draws graphs (new file).
utils/metaserver.pl.in: Add recording of useful stats to external file so they
   can be processed by other external scripts.
MSW 2005-04-13

server/shop.c: Pass in player object to pay_from_container() - code was
  trying to deref pouch->contr which was null.  Only occurs when player
  has 2 different money objects of the same type, but 2 crashes observed
  on metalforge.
MSW 2005-04-13

socket/image.c: Change esrv_send_face to check for <=0 instead of <0 on face
  number.
socket/request.c: Change if statement that acted improperly to determine when 
  to send faces.
MSW 2005-03-27

include/sproto.h: get_who_escape_code_value is void, not void*.
server/c_misc.c: move local function outside the function.
server/c_wiz.c: remove sleep( 1 ) that would cause whole server to sleep one
    sec.
Ryo 2005-03-23

common/living.c: Allow luck to drop back to zero. Limit bad luck object to
   +/-100 to prevent overflows.
Andreas Kirschbaum 2005-03-22

common/living.c: When randomly adjusting luck, change both op->stats.luck and
   the applied bad_luck object.
server/attack.c: Do not decrease luck if a player kills himself with a spell
   or pet.
Andreas Kirschbaum 2005-03-20

server/c_wiz.c: change command_free() and command_remove() to always
  process the head of the object - doing this operations on the non head
  will typically always cause problems.
MSW 2005-03-19

This change makes it so that the smoothing information is pushed to the client
(if the client is using smoothing) instead of a process were we tell the
client the smoothlevel and the client then has to request the face info for
smoothing.  If we know the client wants the info, much easier to push it to
the client.  This simplifies the client code (doesn't have to keep track
of what is requests).  It also fixes the 'problem' that when you join the
game, you get a few frames with no smoothing and then the smoothing shows
up, which seems a bit odd.  My testing shows that old clients that want
smoothing use this new logic withouth any problems.
--
common/image.c: add smooth_face default so that we don't have to look it
  up everytime.
include/define.h: Add SMOOTH_FACE_NAME used by image.c
include/global.h: Add smooth_face extern declaration.
include/newserver.h: Update comment on what faces_sent is used for,
   add NS_FACESENT_* values which determines what info for the face was
   sent.
socket/image.c, socket/init.c, socket/item.c: Update faces_sent checks/set 
    to check against NS_FACESENT bitmask.
socket/request.c: Update faces_sent as mentioned above.  And SendSmooth(),
   rewrite AskSmooth() to use SendSmooth().  Modify update_smooth()
   to send smoothing information to the client.
MSW 2005-03-19

common/map.c: Clean up if statement ins blocked_link() which caused warning
   messages - broke it apart to make it a little clear.  Add check for
   premature end of map header - make code more resilent in case of truncated
   saved maps.  Fix saving of region name in new_save_map() - saving the
   pointer to the region isn't what the loader is expecting, and is highly
   non portable even if it was.
MSW 2005-03-18

Applied patch:
* #1145089 (cavesomething): Region support.
common/Makefile.am: add new 'region.c' file.
common/init.c: add 'REGIONS' setting.
common/map.c: add 'region' map key.
include/config.h: add regions file default name.
include/global.h: add 'first_region' global variable and settings.
include/libproto.h: add region.c functions prototypes.
include/map.h: add region structure.
include/sproto.h: add new region-related command.
lib/Makefile.am: add 'regions' file.
lib/regions (new): regions definition file.
server/c_misc.c: add region information to current_map_info. Add new 'whereami' command.
server/commands.c: add 'whereami' command.
server/init.c: add regions settings, and load data.
Ryo 2005-03-15

Applied patches:
* #1119366 (salathar): wiz food, DMs don't use food anymore.
* #1161816 (cowboyatheart) : Add wands/staves/rods/horns to new pickup.
* #1119762 (salathar): afk command.
common/loader.[lc]: add 'FLAG_AFK'.
include/define.h: add 'PU_MAGIC_DEVICE. Add 'FLAG_AFK'.
include/sproto.h: add 'command_afk'.
server/c_misc.c: add 'AFK' to who display, add command_afk.
server/c_object.c: add new flag to dump.
server/commands.c: add command_afk.
server/player.c: wiz don't use food. Check for rod/wand/horn for new pickup flag.
Ryo 2005-03-13

*Makefile.in, aclocal.m4, configure, utils/config.guess, utils/config.sub,
utils/ltmain.sh: Rebuild generated files.
acinclude.m4: Check whether Python supports the "L" format specifier. Do not
   build python plugin if not.
Andreas Kirschbaum 2005-03-09

common/{map.c, readable.c, treasure.c}, crossedit/Attr.c, server/{apply.c,
attack.c, c_wiz.c, init.c, monster.c, pets.c, shop.c, skill_util.c, skills.c,
spell_attack.c, spell_effect.c, time.c}, socket/{info.c, request.c}: Add
   missing newline character to LOG() messages.
common/living.c, include/living.h: Change type of weight_limit to uint32.
socket/request.c: Remove non-portable assignment to rvalue.
doc/{README_PLUGINS.doc, README_PYTHON.txt, plugins}, doc/Developers/{README,
plugins, python}: Update plugin documentation.
plugin/plugin_python.c, plugin/include/plugin_python.h: Whitespace changes,
    remove obsolete comments.
plugin/plugin_python.c: Only set WhoAmI when running the command registered by
    CFPython.RegisterCommand. Set default result value to "success".
plugin/plugin_python.c: Fix memory leaks by freeing old strings before
   assigning a new value.
plugin/plugin_python.c: Use correct format specifiers for item values and
   experience values.
plugin/plugin_python.c: Make CFPython.IsCanBePicked return whether the object
   can be picked up. (Did return whether the object cannot be picked up.)
plugin/plugin_python.c: Do not return a pointer to a variable on the stack.
server/plugins.c: Fix pointer type mismatch while processing
   CFPython.RegisterCommand.
plugin/plugin_python.c: Change second parameter of CFPython.CheckMap to use
   a map object instead of a map name. Now it works for tiles maps.
acinclude.m4: Add check for python 2.4 to match this file with aclocal.m4.
Andreas Kirschbaum 2005-03-06

plugin/plugin_python.c: Increase limits of values the Python script may set
   to the ranges given by objects in the archetypes file.
Andreas Kirschbaum 2005-02-28

common/object.c, include/libproto.h: change nrof parameter of get_split_ob to
   uint32 type.
server/c_object.c, include/sproto.h: change nrof parameter of drop_object to
   uint32 type.
plugin/{plugin_python.c, include/plugin_python.h},
plugin_animator/{plugin_animator.c, include/plugin_animator.h},
server/{apply.c, attack.c, gods.c, monster.c, player.c, skills.c, time.c,
   timers.c}: Change type of CFParm.Value[5] and StackParm1[] to uint32 to be
   able to pass an "nrof" value.
plugin/plugin_python.c, plugin/include/plugin_python.h: Remove spell wrapper
   functions.
plugin/plugin_python.c, plugin/include/plugin_python.h: Replace skill-IDs by
   skill names. Remove skill-ID wrapper functions.
Andreas Kirschbaum 2005-02-20

Client:
Changes for 1.8.0:

Makefile.am, Makefile.in: Add missing pixmaps, change CHANGES to ChangeLog,
   update archive directive so it works.
aclocal.m4: updated
configure, configure.in: Updated for 1.8.0 release. Remove gnome/Makefile
   from list of Makefiles to create.
gtk-v2/Makefile.am, gtk-v2/Makefile.in: Add archive directive.
gtk-v2/src/Makefile.{am|in}: Add missing soruces to list so that archive
   works correctly. Add archive directive.
MSW 2005-08-10

gtk/keys.c: don't select text in widget under Windows.
Ryo 2005-07-30

gtk/gx11.c: fix a crash if closing login window. Weird behaviour, but no crash.
Ryo 2005-07-29

gtk/image.c: Remove stray '+' at beginning of line.
Andreas Kirschbaum 2005-07-21

x11/x11.c: Fix crash if display cannot be opened.
common/script.c: Properly terminate string with '\0' in script_init().
Andreas Kirschbaum 2005-07-18

gtk/sdl.c, gtk-v2/src/sdl.c: Fix printf like format specifiers.
Andreas Kirschbaum 2005-07-16

common/init.c: Win32 should use %APPDATA% instead of . for home directory.
Ryo 2005-07-10

Bulk of this change is the addition of a pop up window in the gtk-v2
client for metaserver selection, as well as other updates.  The files
to the common area was really to pull the metaserver defines and data
structures from the C file to a header file so that the gtk-v2 code
can access them:
--
AUTHORS: New file, required by automake, data pulled README file.
NEWS: New file, required by automake.
Makefile.in, aclocal.m4: Rebuilt
README: Remove author info from this file, move it to AUTHORS.
common/Makefile.in: add metaserver.h file
common/metaserver.h: New file containing metaserver defines and structures.
common/metaserver.c: Pull out defines/structures from this file, moved to
   metaserver.h.  Have it strip packets/byte count info from comment
   section that metaserver reports.
gtk-v2/Makefile.in: Rebuilt.
gtk-v2/gtk-v2.glade: Added new metaserver window.
gtk-v2/src/Makefile.am: Add metaserver.c as a standalone file that gets
   compiled
gtk-v2/src/Makefile.in: Rebuilt
gtk-v2/src/callbacks.h, gtk-v2/src/interface.c, gtk-v2/src/interface.h: Updated
    by glade2
gtk-v2/src/main.c: Remove metaserver.c inclusion.  Initialize 
    cached_server_file.  Change metaserver selection/display code.
gtk-v2/src/metaserver.c: Lots of new code - have it display window,
   handle selections, connect to server, etc.
MSW 2005-07-04

gtk-v2/src/info.c: Remove extra lines of code for scrolling.  Have
   newlines be inserted in the correct place for the color info tab.
gtk-v2/src/inventory.c: Remove call to check to display object in inventory
    tab for container objects - if we show the container object, so
    all objects within the container (bug 1226968)
gtk-v2/src/keys.c: Move initialization of global widges to before loading
    keybindings - otherwise, they can end up not being initialized.
MSW 2005-06-29

Add inventory animation to the gtk2 client.
gtk2proto.h: rebuilt
inventory.c: Add new function that animates inventory.  Have draw_table() take
   a second param that determines if it is doing an animation run or just
   a normal draw.
main.c: Move PACKAGE_DATA_DIR to be within WIN32 defines.  Add call to
   inventory_tick() in do_timeout()
MSW 2005-06-26

common/metaserver.c: wrong number displayed for cached servers.
Ryo 2005-06-25

configure.in, configure: Turn of the use of dmalloc as the default - if
   dmalloc is disabled, it has to be intentionally set.  gtkv2 client runs
   dog slow if dmalloc is used, so that isn't a good default
common/item.c: Fix bug that resulted in the item names not being updated
   properly - bug introduced in patch 1197437.
MSW 2005-06-04

crossfire-client.spec, gnome/Makefile.in, x11/Makefile.in: Patch from Kari
   Pahula to fix manpage paths.
gtk/gx11.h: Patch from Kari Pahula to remove incorrect variable declaration.
Andreas Kirschbaum 2005-06-01
        
Committed patch #1197437 courtesy Kevin Rudat (krudat).
This patch moves inventory-related functions in GTK client to
 one specific file. Also makes inventory refresh less often.
Affected files:
 * common: client.h item.c item.h p_cmd.c proto.h
 * gtk: config.c gtkproto.h gx11.c gx11.h inventory.c Makefile.in
 * x11: x11.c x11proto.h

common/metaserver.c: add server cache.
gtk/gx11.c: initialize server cache filename.
Ryo 2005-05-23

gtk/gx11.c: Windows has player-specific keys, get'em (was broken with new
 login window)
Ryo 2005-05-12

Add newpickup support to the gtkv2 client.  Didn't add old support (still
available by specific commands) as I think the interface gets confusing
to have them both - would be better to extend newpickup logic if necessary
to support anything old pickup does that newpickup doesn't.
--
gtk-v2/Makefile.in: Rebuilt
gtk-v2/gtk-v2.glade: Add menu options for newpickup
gtk-v2/src/Makefile.am, gtk-v2/src/Makefile.in: Add pickup.c file
gtk-v2/src/callbacks.h, gtk-v2/src/interface.c: Rebuilt by glade-2
gtk-v2/src/pickup.c: New file - handles pickup logic.
MSW 2005-04-17

gtk/image.c: Apply patch from bug 1120881 that fixes pointer operations
   on netbsd/macppc.  Changed code still works on linux/x86.
MSW 2005-04-16

Improve behaviour of information windows on gtkv2 client - before this patch,
they would always scroll to bottom when getting new output, making it
difficult to look at shop listings or other long listings that require
going back in the scroll buffer.  With this change, if the buffer isn't
at the end, the scroll position isn't changed.  IF it it at the end, it
keeps it at the end.
--
gtk-v2/gtk-v2.glade:  Chane scrolledwindows used by the textbuffers to
  have a meaningful name.
gtk-v2/src/info.c: Add code that gets position of scroll bar (adjustment)
  and compares it with maximum, and if not at end, don't scroll window.
gtk-v2/src/interface.c: Rebuilt.
MSW 2005-04-11

Fix so that magic map works properly on the gtkv2 client.
gtk-v2/gtk-v2.glade: change name of map notebook to map_notebook.  Add
  signal to handle expose events of the magic map area.
gtk-v2/src/callbacks.h: Rebuilt with addition of expose callback.
gtk-v2/src/interface.c: Rebuilt with addition of expose, change of name.
gtk-v2/src/magicmap.c: Have magic map switch the notebook page to the
  magic map page to ensure widget is realized - also good for expected
  behaviour.  Add some checks for null values so if user switches
  before getting magic map data, doesn't crash.  Add check in
  magic_map_flash_pos() to see if still on the magic map notebook page.
  Add expose callback.
gtk-v2/src/main.h: Add MAGIC_MAP_PAGE which defines which notebook page
  is the magic map one.
gtk-v2/src/map.c: Have it look up the map_notebook widget.
MSW 2005-04-05

Various minor bugfixes:
configure.in, configure: Add warning message if we can't find gtk+ 2.0 or
   later, but continue configure process instead of exiting.
common/misc.c: Fix code so that it compiles with older C compilers.
gtk-v2/src/map.c:  Change code on need_recenter_map() - use MAX_MAP_OFFSET
   instead of hard coded value of 2 - found a crash here when running
   around the world map - could have been caused by a big image and/or
   the fact my character moved 2 spaces in one tick.  either way, this
   change shouldn't impact things, as it is seldom the virtual map needs
   to be recentered.
MSW 2005-03-27

This patch fixes a few memory leaks related to image caching in all clients.
common/image.c: Declare facetoname[] as static. Add all code accessing this
   array. Print warning if image cannot be created.
gtk/gx11.c, gtk/image.c, gtk-v2/src/image.c, x11/x11.c, x11/xutil.c: Remove
   code accessing facetoname[].
gtk/gx11.c, gtk-v2/src/main.c, x11/x11.c: Always call init_cache_data() to
   initialize pixmaps[] array.
gtk/image.c, gtk-v2/src/image.c, x11/png.c: Reject invalid face
   numbers and fix resource leak in create_and_rescale_image_from_data().
gtk/image.c, gtk-v2/src/image.c, get_map_image_size: Pretend invalid faces to
   be of size 1x1 in get_map_image_size().
gtk-v2/src/image.c: Properly free opengl resources in free_pixmap(). Fix
   resource leak when freeing old pixmaps in reset_image_data().
x11/png.c: Properly free resources if an error occurs.
x11/x11.c: Ignore invalid face numbers.
x11/x11.h Remove duplicate definition of MAXPIXMAPNUM and facetoname[].
x11/xutil.c: Initialize size of pixmaps[0].
Andreas Kirschbaum 2005-03-27
                  
gtk-v2/src/map.c: Fix typo to make it compile without opengl.
Andreas Kirschbaum 2005-03-26

Main change of this is addition of opengl drawing for the map in the gtk-v2
client.  On my system, the opengl code is about 10 times faster than the
sdl code was, making it so I can turn on all the bells and whistles (smoothing,
best lighting) and still use less than 10% cpu time.  As part of this, I
redid the smoothing logic, so the client now requires a new server for
smoothing to work (needs push logic, as client won't request smoothing
info as that adds a lot of complication).  This change was done because
the old smoothing code wasn't that efficient - now, we store the smoothing
face along with the face it smooths, so finding the smoothing info is
much faster.
--
configure.in, configure: Add check for -lglut - indication we have opengl
  libraries available.
common/client.h: Remove Smooths struct.  Change CONFIG_SDL to
   CONFIG_DISPLAY, and add CFG_DM_... to denote different display modes,
   since there is more than just sdl and not sdl now.
common/commands.c: Don't have SmoothCmd try to update what spaces need
   to be redrawn - for opengl, it doesn't care about that, and for
   most other maps, it will figure it out when it needs to redraw
   anyways.
common/config.h.in: Addition of HAVE_OPENGL line.
common/image.c: Remove getsmooth() - rely on push logic.
common/init.c: Update  want_config[CONFIG_SDL] to
   want_config[CONFIG_DISPLAYMODE]
gtk/config.c: Change access to CONFIG_DISPLAYMODE
gtk/gx11.c: Change access to CONFIG_DISPLAYMODE. Add -smooth command line
  option.
gtk/gx11.h: Add smooth_face to PixmapInfo struct.
gtk/image.c: Change access to CONFIG_DISPLAYMODE.  When getting new
   PixmapInfo struct, use calloc so we are sure all fields are initialized
   to zero.  Add addsmooth().
gtk/map.c: Change access to CONFIG_DISPLAYMODE.  Change how we access
  smooth face info.
gtk/sdl.c: Change how we access smooth face info.
gtk-v2/src/Makefile.am, gtk-v2/src/Makefile.in: Add addition of OPENGL_LIBS
   to link libs.  Add opengl.c file.
gtk-v2/src/config.c: Add image.h include.
gtk-v2/src/gtk2proto.h: Rebuilt.
gtk-v2/src/image.c: Change access to CONFIG_DISPLAYMODE. Add hooks for
  opengl image generation.  Change call for pixmap creation from malloc
  to calloc.  Add addsmooth().
gtk-v2/src/image.h. If we have opengl, include GL/gl.h.  Add fields
  for opengl texture maps.
gtk-v2/src/info.c: Update so text line wraps if it is too long.
gtk-v2/src/inventory.c:  Add checks to make sure object face is
  valid before trying to draw.  In icon mode, add code to cleanup
  old fields (if you drop an item, it wouldn't erase the list item
  in the list).  Also, free callbacks, as they effectively stack,
  and we were using incorrect object pointers (pointer from first
  callback, which didn't match current one).
gtk-v2/src/keys.c: Add image.h to includes.
gtk-v2/src/main.c: Add image.h to includes. Change access to
    CONFIG_DISPLAYMODE.  Add -opengl command switch.  Remove
    +sdl and popups command line options.  Relocate setup of
   cache call setup to after we know all windows have been created.
gtk-v2/src/map.c: Change access to CONFIG_DISPLAYMODE.  Add opengl
   drawing hooks.  Change access for smooth info.  Implement
   button press code for map window (basically grabbed from
   gtk/map.c)
gtk-v2/src/opengl.c: New file containing opengl draw code.
gtk-v2/src/png.c: Remove some unused code resulting in compile warnings.
gtk-v2/src/sdl.c: Remove some commented out code.  Change access method
   for smoothing code.
x11/xutil.c: Change access to CONFIG_DISPLAYMODE.  Add addsmooth()
   function.
MSW 2005-03-20

Applied patch #1161817 (cowboyatheart): Add wands/staves/rods/horns to new
   pickup (client).
gtk/gx11.c: add new 'magic devices' menu option.
Ryo 2005-03-13

More improvements for the gtkv2 client, mostly adding SDL support:
gtk-v2/TODO: updated
gtk-v2/src/logfile: Removed - don't need dmalloc logfile.
gtk-v2/src/Makefile.am, gtk-v2/src/Makefile.in: Change program name from
   'gtk-v2' to 'gcfclient2'.  Add sdl.c to list of files.
gtk-v2/src/gtk2proto.h: Rebuilt
gtk-v2/src/inventory.c: Fix bug in show_nonmagical() (which corresponds
   to inventory tab) - was showing unpaid objects, not nonmagical objects.
gtk-v2/src/main.c: Remove time_map_redraw declaration from function, since
   it is declared in map.c.  Change map logic to draw when we finish processing
   network data.  Change client naem as it reports itself to server to GTK2
   ... Client.
gtk-v2/src/map.c: Add map_updated variable which is set by display_map_doneupdat
e -
   used by map draw function to know if anything has changed.  Clean up some
   formatting, remove unused code.
gtk-v2/src/sdl.c: New file containing sdl support.
MSW 2005-03-07

Commit for GTKv2 client - please read gtk-v2/README before using this client.
The bulk of the changes are limited to the gtk-v2 directory (addition),
but some changes elsewhere as related to using automake.  You will need
to run configure for the gtk-v2 client to be built (it should be built
automatically if you have the needed libraries)
--
Changelog: Replaces CHANGES file to meet automake standards.
Makefile.am: New file for use with automake.
Makefile.in: rebult from Makefile.am
aclocal.m4: Updated with macros to check for gtk-v2.
configure.in: checks for gtk-v2 added.  Chane SUBDIRS to CF_SUBDIRS as
    using SUBDIRS causes conflicts.
utils/config.guess, utils/config.sub, utils/missing: Updated as part of
    automake changes.
gtk-v2/*, gtk-v2/src/*: Files related to gtk-v2 client.
MSW 2005-03-01

crossfire-client.spec: Update for 1.7.1 release, make some other changes that
   better match my system since I don't think anyone else is using it.
gtk/Makefile.in: Add crossfire-client.desktop to list of files to add
  to distribution.
README.rpm: removed - had info that didn't really apply to me making RPM
  files
configure.in, configure: Add --disable-dmalloc option to configure.
MSW 2005-02-28

Source: crossfire-1.9.0-README, updated 2006-02-26