[crossfire-announce] Crossfire 1.10.0 released

Mark Wedel mwedel at sonic.net
Tue Mar 27 01:19:35 CDT 2007


Crossfire 1.10.0 has been released.  There are lots of more minor
changes.  List of more major changes:
------------------------------------------------------------------------------
Lots of bug fixes, but there are not real major changes.  But general
changes:
- Add new protocol commands so client can get data it didn't have
   before
- Tweaks/adjustments to several races/classes.
- Lots of code cleanup, removing old/unused code.
- Fixes for lots of crashes.

Client 1.10.0 Changes:
------------------------------------------------------------------------------
Fixes in draw logic for images of add image sizes.
Exp progressbar added to gtk2 client.
SVN handling updates, to include revision number in client.
Protections info in GTK2 not getting updated properly

Files released for this version:

sums (bsd)  filename
47637  3145 crossfire-1.10.0.arch.tar.gz
01851 16050 crossfire-1.10.0.maps.tar.bz2
21372 23507 crossfire-1.10.0.maps.tar.gz
61371    31 crossfire-1.10.0-README
01836  5920 crossfire-1.10.0.tar.gz
01228   728 crossfire-client-1.10.0.tar.gz
01814  2646 crossfire-client-images-1.10.0.tar.gz
47184   316 crossfire-client-sounds-1.10.0.tar.gz

Sums (md5)
26a6d6c2ffb82fd408bf75b25ed339d1  crossfire-1.10.0.arch.tar.gz
6e2c24ed1dd900e3985a3cad0b658f6e  crossfire-1.10.0.maps.tar.bz2
0c410171602268b0499f3b62091fafa4  crossfire-1.10.0.maps.tar.gz
d56ad6cac04ea49f8b6b326b441553a3  crossfire-1.10.0.tar.gz
883296ef199cbf47334d52d8b5d61886  crossfire-client-1.10.0.tar.gz
496ccabc31e773349ccc679812f66f7b  crossfire-client-images-1.10.0.tar.gz
b990e5e3bf321211312cba48fb885142  crossfire-client-sounds-1.10.0.tar.gz

(Note - only the maps have a bzip2 compressed archives.  For the other
files, there isn't a big enough difference in size to make it worth
while IMO)

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

crossfire-client-images-1.10.0.tar.gz contains prebuilt images - this removes
    the need to download most of them when playing with cached images.

crossfire-client-sounds-1.10.0.tar.gz contains sounds - if you don't want
    sounds, you don't need this.  The only addition in this release is
    adding of su-fanf.raw which used to be included in old sound files.

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

crossfire-1.10.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.

crossfire-1.10.0.maps.tar.{bz2|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 server, map, and client
archives.  You do not need the arch archive.

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 available 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 at sonic.net
March 26, 2007

Complete changelog:
------------------------------------------------------------------------------
server:

Fix 'make distclean':
acinclude.m4: Use -I./${srcdir} for crossedit check - otherwise, when
    building in alternate directory, doesn't fine files correctly.
configure.*: Add new makefiles.
check-fragment.am, test/unit/crossedit/Makefile.am,
   test/unit/common/Makefile.am,test/toolkit/Makefile.am: Add support for buildin
g in alternate directory, which
    make distclean does - using relative directories to find files
    does not work.  Some files should also be in the buildir, not srcdir.
    Have Makefiels remove .autrun.xml with distclean
Makefile.am: Remove to config files on make distclean
test/include/Makefile.*, test/templates/Makefile.*: Add missing Makefiles
test/unit/random_maps/Makefile.am,test/unit/socket/Makefile.am,
   test/unit/Makefile.am: remove .autorun.xml file as part of distclean
test/unit/server/Makefile.am: Remove LDFLAGS from Makefile.am - automake
   says don't mess with those - use AM_LDFLAGS instead.  Remove
   .autrun.xml file with distclean
test/Makefile.am: Add include, templates to subdir list.  Have
    make clean remove log files, .autorun.xml file.
crossedit/Makefile.am: Fix indentation of stubs.c (use tab, not spaces)
other files: Rebuilt as part of running autogen.sh
MSW 2007-03-25

Implement feature request #1528522: Initial items should be applied/worn.
  server/player.c
---
  server/apply.c skill_util.c: keep the AP_NOPRINT flag for subcalls.
---
  server/c_wiz.c: update DM's view when using nodm.
---
  server/apply.c: update player's view when turning on/off a lamp.
---
Implement feature request #1680229: dmhide - glowing things.
  common/map.c: totally ignore hidden DMs for map update.
---
Implement feature request #1669464: Need new command - dmtell.
  include/sproto.h
  server/c_chat.c commands.c
---
server/c_wiz.c: enable 'teleport' to use a partial name.
server/c_misc: 'listen' should be positive.
---
Fix bug #1668283: Crossfire.CreateObjectByName is faulty, by applying
  patch (feature request) #1682802: CreateObjectByName fix/change.
  Code by Yann Chackhoff.
Also fix a crash when teleporting a newly created object.
  server/plugins.c
---
Fix bug #1671102: Generic destroy can remove permanent buttons. The code was
  doing a wrong check related to marked item/destroyer.
Fix bug #1657675: multi-tile buildable object bug (note: one .x11 image though).
  code now uses multi-tile aware function to generate object, and correctly
  checks all relevant spots for building.
  server/build_map.c
Nicolas Weeger 2007-03-17

Fix bug #1673713: event_attack in (sword etc) weapon doesn't work.
  server/attack.c: fix EVENT_ATTACK weirdness.
  ---
Implement feature request #1560416: give warning when spell is about to expire.
Player will be warned when left duration is one fifth, then one twenty-fifth.
Two new functions are introduced, check_spell_expiry() and store_spell_expiry().
  include/sproto.h
  server/spell_effect.c spell_util.c time.c
---
Implement feature request #1675158: dmhide - "detect monster" will reveal DM.
  spell_effect.c: detection doesn't concern DMs.
Ryo 2007-03-06

Add Object.Owner (read/write) and Crossfire.GetFriendlyList.
  plugins/cfpython/include/cfpython_object_private.h
  plugins/cfpython/cfpython.c
  plugins/cfpython/cfpython_object.c
---
Add cf_friendlylist_get_first / cf_friendlylist_get_next to browser friendlylist
.
Add cf_object_set_object_property.
  plugins/common/include/plugin_common.h
  plugins/common/plugin_common.c
---
Give access to friendlylist to plugins, through cfapi_friendlylist_get_next().
  include/sproto.h
  server/plugins.c
---
common/object.c: let set_owner accept owner NULL (-> clear_owner()).
---
Implement request feature #1669443: dmhide - players can still send 'tell.
server/c_chat.c: DM are now shown as not logger with regard to tell/reply.
---
server/c_object.c: call EVENT_PICKUP which was forgotten somewhere along the way
.
server/plugins.c: don't remove/free removed/freed objects, log mistake. This clo
ses
  bug #1670465: server doesn't have check to see if it is removing removed
Ryo 2007-03-04

Add cf_object_set_float_property.
  plugins/common/include/plugin_common.h
  plugins/common/plugin_common.c
---
Add SpeedLeft to Python plugin. Fix wrong type for speed.
  plugins/cfpython/include/cfpython_object_private.h
  plugins/cfpython/cfpython_object.c
---
Fix wrong type for speed.
  server/plugins.c
Ryo 2007-02-28

plugins/cfpython/cfpython.c: fix crash when Python and server are compiled with
  different versions of MS's DLLs.
Ryo 2007-02-24

Fix uninitialized variables (merge from trunk).
  server/weather.c: wrong temperature initialisation.
Ryo 2007-02-18

Fix mishandling of weapon/shield/armour restriction. Fix crash with NULL value.
(merge from trunk)
  server/gods.c
Ryo 2007-02-18

New server settings: allow_denied_spells_writing, for inscription.
  common/init.c
  include/global.h
  server/init.c skills.c
Ryo 2007-02-15

server/shop.c: handle "no money" case when player tries to exit shop.
---
Fix a crash with object handling by plugins.
  cfpython/cfpython_map.c: don't assume op exists after inserting in map.
  Ryo 2007-02-15

Make armour handling coherent between gods, monsters and such.
Cloaks and bracers are not armour. Merge from trunk.
  common/item.c utils.c: fix tests with macros.
  include/define.h: update macro, new IS_SHIELD.
  server/apply.c monster.c player.c: use macros.
Ryo 2007-02-15

Invalidate player's view if teleporting. Call update_ob_speed when changing spee
d.
  server/plugins.c
Ryo 2007-02-12

lib/smooth updated in conjunction with arch update (revision 5421).
Kevin Bulgrien 2007-02-11

Fix a few compiler warnings.  Most were just unused variables, but
some in server/c_object.c had returns without values.
Files: server/c_object.c server/monster.c server/player.c server/weather.c
MSW 2007-02-08

Implement feature request #1652066: Python: get user's savebed location and x,y
coords.
---
New properties for player:
  server/plugins.c
  include/plugin.h
---
Python properties:
  plugins/cfpython/include/cfpython_object_private.h
  plugins/cfpython/cfpython_object.c
Ryo 2007-02-06

plugins/cfpython/cfpython_object.c: Fix missing braces.
Alex Schultz 2007-02-03

lib/formulae: Fix formula for "low boots of steel".
Andreas Kirschbaum 2007-02-26

server/gods.c: Clean up follower_remove_given_items()
Alex Schultz 2007-01-10

server/gods.c: Apply patch #1627442 by Aaron Baugher, to fix bug #1551735. Works
   by using a key_value of "divine_giver_name" to objects that are given by a god
.
Alex Schultz 2007-01-04

Fix a logic mistake: code should be called unless cursed and good only, not if g
ood
  only set (since t->item is never NULL). This would make empty spellbooks and cr
ash.
  common/treasure.c
Ryo 2007-01-03

Check len of client-sent commands.
  socket/item.c: a few checks.
Ryo 2007-01-02

Implement feature request #1443844: Lock in 1.9.0 is ethernal.
  Added new 'lock' command, locking/unlocking specified item.
  include/sproto.h
  server/c_object.c commands.c
Ryo 2007-01-02

server/{player.c, gods.c, apply.c, monster.c}: Fix bug #1543130 and make
   handling of can_use_armour and can_use_shield consistant.
Alex Schultz 2006-12-31

Implemented proposal #1497089: fix for some random items.
lib/artifacts, lib/formulae
Changed the title of several treasures from Gaea to Vitality, and from
Ruggilli to Blazing Fires, to match better the personality of those gods.
Yann Chachkoff 2006-12-30

Fix for bug #1539120: talisman of Evocation grants wrong skill.
Changed the name of the "Talisman of Evocation" artifact to "Talisman of Creatio
n",
so there is no confusion with the skill name.

Last part of the fix for bug #1612838
common/treasure.c: Changed the formula used to compute the item_power of a
generated artifact treasure.
Yann Chachkoff 2006-12-30

Partial fix for bug #1612838: Problem with item_power code
server/apply.c
Now armours get +3*magic increase to their item_power field.

Corrected stupid mistakes made when fixing bug #1528525
Yann Chachkoff 2006-12-30

Fix for bug #1573294: Flesh displays speed +x and gives lot identification exp.
common/item.c
Patch initially submitted by Aaron Baugher
Yann Chachkoff 2006-12-30

Fix for bug #1528525: Sometimes "bad" initial items are created.
common/treasure.c
Changed the behavior of create_one_treasure, that will now not generate a
treasure whose base object is cursed or damned when the GT_ONLY_GOOD flag is set
.
Yann Chachkoff 2006-12-30

common/c_misc.c lib/settings
Fix for bug #1622609: Specific flags no longer displayed with 'who command
Replaced [] by <> in the who output command, as [] are reserved for the various
formatting tags.
Yann Chachkoff 2006-12-29

Fix for bug #1622575: Range attack switches to punching on contact,
  applied patch courtesy Aaron Baugher
  server/skill_util.c: use good flag to not switch.
Ryo 2006-12-27

Fix some crashes observed on metalforge:
common/treasure.c: When generating flesh items from custom monsters,
   update other_arch of the flesh item to point back to the original
   base archetype, not the custom archetype.
random_maps/treasure.c: Create the key object before we reference it
   in find_first_free_spot()
MSW 2006-12-26

Make method/property coherent for Python objects.
  plugins/cfpython/cfpython_archetype.c cfpython_party.c cfpython_region.c
  plugins/cfpython/include/cfpython_archetype_private.h cfpython_party_private.h
cfpython_region_private.h
Ryo 2006-12-26

Fix for bug #1527978: summon fog spell is somewhat broken.
Summon now occurs either randomly around (when casting on oneself),
or around, either clockwise or anticlockwise.
  server/pets.c
Ryo 2006-12-26

Implement feature request #1617446 :add "glow radius" to perceive self
  server/spell_effect.c
Ryo 2006-12-26

Add "Crossfire.Object.LastEat. More return fixes.
  plugins/cfpython/include/cfpython_object_private.h: add "Subtype".
  plugins/cfpython/cfpython_object.c: add "Subtype".
  server/plugins.c: fix wrong return values.
Ryo 2006-12-26

Fix wrong return values for plugin calls. Add "Crossfire.Object.Subtype" propert
y.
  plugins/cfpython/include/cfpython_object_private.h: add "Subtype".
  plugins/cfpython/cfpython_object.c: add "Subtype".
  server/plugins.c: fix wrong return values.
Ryo 2006-12-26

server/player.c: Added a supplementary check on attacked objects, so that an
     alive object that has its FLAG_MONSTER set is always a preferred target over
     an alive object without that flag.
     Fix for the bug mentioned in #1551404

server/skill_util.c: Corrected the flags passed to change_exp when failing
     to properly write a spell scroll, which resulted in loss of experience in
     the wrong skill.
     Fix for the bug mentioned in #1530000
Yann Chachkoff 2006-12-26

lib/{Makefile.in,adm/map_info,collect.pl.in,Makefile.am}: ignore .svn rather
     than CVS.
Andreas Kirschbaum 2006-12-24

common/loader.l: Fix some problems related to curse spell monster
   handling.  Specifically, coordinates of custom monsters was not
   being saved (always set to 0,0), which caused crashes for multipart
   monsters upon load.  Also, speed was being set to 0, resulting in
   customized monsters not having any speed.
MSW 2006-12-21

Fix a crash due to non-checking of parameters.
  socket/item.c
Ryo 2006-12-13

Tentative fix for bug #1551398: Curse spell breaks customized monsters.
The server will now create a "temporary" archetype when loading a customized mon
ster.
This archetype will have the same name, but not be part of regular archetype lis
t.
It'll be removed when last object using it is removed.
A new field "reference_count" is added to archetype structure, to store how many
objects reference that temporary archetype (think of item duplication with custo
mized archetype).
This fix has been roughly tested, but could certainly use more tests.
Modified files:
  common/loader.l: handle customized monsters
  common/object.c: increment reference_count if copying a temporary archetype. De
crement it when freeing an
   object, and free archetype if needed
  common/treasure.c: add "artifact_init" to signal start/end of artifact loading,
  required for temporary archetypes handling.
  include/object.h: new "reference_count" field
Ryo 2006-12-09

Tentative fix for bugs
  #1605033: Random map gets blocked
  #1522796: Random map, locked door(s) and no key
Random map generator will try harder to put keys, and not lock if no spot found
(can happen if chest is surrounded by locked doors blocking the corridor).
Modified files:
  random_maps/rproto.h
  random_maps/treasures.c
Ryo 2006-12-03

Cosmetic fixes only, before bugfix.
  random_maps/treasures.c: fix indentation.
Ryo 2006-12-03

Fix for bug #1556723: Broken Show invisible - scrolls, wands, staves and rods
  server/spell_effect.c: use the item's level, and not computed level, to see if
should be shown.
Ryo 2006-12-03

Fix for bug #1569017: Healing gives grace cost to target.
Information sent to client is now stored in a special structure, to not
  conflict with spell fields. Note that this doesn't fix player files.
  common/player.c: free spell information, new function for spell state.
  include/libproto.h: new function.
  include/player.h: new structure, new field in player structure.
  socket/request.c: use spell information instead of spell fields.
Ryo 2006-12-02

Merge patch #1558073: newpickup flesh courtesy bencha
  include/define.h
  server/c_object.c player.c
Ryo 2006-11-29

Implement feature request #1555887: Thief player - should have bargaining as def
ault skill
  lib/treasures: add skill to class items.
Ryo 2006-11-26

Fix bug #1539207: "Max speed" attribute does not work
  common/living.c: armor's max_speed should always be taken into account.
  Ryo 2006-11-26

include/newclient.h: Grab/merge copy from 2.x head - some code brought
   back from the 2.x head in the build_map.c file is using the MSG_TYPE
   declarations.
MSW 2006-11-19

Fix bug #1599307:
server/shop.c: In pay_from_container() handle non-standard MONEY objects when
    buying items.
Andreas Kirschbaum 2006-11-19

server/rune.c: If skill is NULL in dispel_rune(), just return as server
   will otherwise crash in trap_disarm()
server/spell_util.c: Fix bug in that runes that hold other spells (glyphs,
    firetraps, magic runes, etc) do not find a skill object, and thus
    player doesn't get exp.  Instead, for runes, try to find owner, and
    then the relevant skill object.
MSW 2006-11-18

Fix bug #598649: Building apartments use multiple materials per tile
server/build_map.c: don't redo same floor.
Ryo 2006-11-18

Tentative fix for bug #1519089: item cannot afford in container can be taken fro
m store.
server/shop.c: do a real recursion in can_pay.
Ryo 2006-11-16

include\{treasure.h path.h face.h commands.h win32.h shstr.h timers.h
   config.h funcpoint.h object.h loader.h attack.h race.h newserver.h
   re-cmp.h living.h book.h plugproto.h player.h artifact.h material.h
   plugin.h spellist.h skills.h spells.h recipe.h god.h sounds.h map.h
   tod.h newclient.h}: Clean up anti-double-include mechanisms.
----
include/arch.h: Removing unused file.
include/Makefile.am: Remove reference to arch.h
common/arch.c: Remove reference to arch.h
Alex Schultz 2006-11-14

Fix bug #1573296: arena : spells with "target" doesn't works
server/spell_util.c: spell_find_dir should consider players when on battleground
.
----
Fix bug #1594696: Altar created with creator - consecration
server/time.c: copy creator's level, as per behaviour before function rewrite.
Ryo 2006-11-13

doc/Developers/protocol: Add documentation about exp_table requestinfo
     addition
socket/loop.c: Add call to send_exp_table() in request_info_cmd()
socket/request.c: Add send_exp_table() to use a replyinfo exp_table to
    send data to client.
MSW 2006-11-03

socket/loop.c: Fix replyinfo, in that it was using incorrect length parameter
   when replying to unsupported requests.
MSW 2006-11-02

Fix for bug #1547517: DM issue with containers
  server/apply.c: move_apply shouldn't exit if opened container.
Ryo 2006-10-29

Implement feature request #1551406: Add player's name to disease symptoms
  server/disease.c: add player's name.
Ryo 2006-10-28

/plugins/cfpython/{cfpython.c, cfpython_map.c, cfpython_object.c}: Remove
    redundent checks in values passed to Crossfire_Foobar_wrap() functions.
Alex Schultz 2006-10-27

Fix for bug #1573381 (death attacks does works on skull)
server/attack.c: check for undead when no slaying set for hitter in deathstrike_
player.
Ryo 2006-10-22

Fix for bug #1553636 (Crashbug: reset/swaped map after use of "overlay_save").
Make command coherent with ingame command (command_overlay_save since overlay_sa
ve).
Add 'overlay_reset' command to reset a saved overlay.
common/map.c: if flag is 2, map is still valid (non destructive save).
include/sproto.h: rename function, new function.
server/c_wiz.c: no need to save and reload the map for overlay. Rename function.
  New function.
server/commands.c: rename function, new function.
Ryo 2006-10-22

common/loader.l: Make it so that long msg/endmsg won't overflow temp buffer
   by using safe_strcat.  Will result in long messages being truncated, but
   better than crashes.
server/pets.c: Check for existance of object existance after call to
   follow_owner() in remove_all_pets().  Can be cases where put is killed
   when moving to new map.
MSW 2006-10-18

server/apply.c: If the captain of a transport exits the transport, make the
    next player on the transport the captain.
server/server.c: Like change to apply.c to make player another player captain
    if one leaves the game.  But in addition, in all cases, we need to clean
    up the transport->contr pointer, which will otherwise cause crashes.
MSW 2006-10-12

common/readable.c: Rewrite god_info_msg() - a buffer overflow crash was seen
   on metalforge, and the old code had lots of dangerous string operations
   (non safe strcats, sprintf with overlapping buffers).  No code is
   functionally equivalant, just uses safe string funtions.
MSW 2006-10-12

doc/Developers/objects updated to better describe @match use in objects. Many
objects contain useless case handling keys like @match Hello|hello because
mapmakers do not know how @match works.  Also add mention of the limited
regular expression support that applies to match keys.
Kevin R. Bulgrien 2006-10-08

Make converters inside shops work again.
---
server/c_object.c: Sell item after dropping because converters do not accept
    unpaid items.
Andreas Kirschbaum 2006-10-08

Fix bug where in players could unequip cursed weapons by switching to a hand
to hand skill (punching, karate, etc).
--
include/define.h: Add AP_NOPRINT flag.
server/apply.c: Modify the apply_special() code to take AP_NOPRINT option,
    which as implies, causes messages not to be printed.  Used in change
    to skill_util.c, since the code thre prints better message about uequipping
    of weapon.
server/skill_util.c: Do some cleanup of unused vars in do_skill().  Modify
    attack_hth() to call apply_special() to unequip weapon (that takes care
    of checking cursed status, etc).
--
MSW 2006-10-05

server/rune.c: Fix mistake in revision 4979, causing get_rangevector to be calle
d
     with an uninitialized env.
Alex Schultz 2006-10-04

server/c_misc.c: Fix incorrect use of FMT64 in commant_statistics().
Alex Schultz 2006-10-02

server/monster.c: Revert message formatting of NPC responses back to the
    two-line format. Fix a possible buffer overflow when players talk to
    certain NPCs.
Andreas Kirschbaum 2006-10-02

server/rune.c: Cleanup spring_trap() and clean some questionable logic.
server/attack.c: Cause spell traps to be triggered when containers with traps
    are destroyed by a spell effect.
Alex Schultz 2006-09-25

server/plugins.c: Change cfapi_object_say() to use either command_say() or
    npc_say() depending on if the object is a player. Fixes bug #1534889.
server/monster.c, include/sproto: Move code for NPCs to talk from the code that
    handles NPC replies into npc_say().
server/spell_effect.c: Implement proposed alchemy changes from the mailing list.
    Make value of nuggets given range from 5% to 40%. Depends on archetype
    changes to the alchemy spell and nuggets. (Without archetype changes will
    give obscenely low value.)
server/spell_util.c, include/sproto.h: Make min_casting_level() non-static.
Alex Schultz 2006-09-16

server/alchemy.c: Make shadow alchemy and random alchemy failures ignore the
    'cauldron' type being used. Fixes bug #1551385.
Alex Schultz 2006-09-15

lib/README: Large update to the ancient readme file describing the files in lib.
Alex Schultz 2006-09-12

common/treasure.c, include/treasure.h: Add MAX_SPELLITEM_LEVEL set to 110.
include/living.h: Set MAXLEVEL to 115.
doc/settings: Document create_home_portals outside of comments in lib/settings.
server/player.c: Comment cleanup. No code changes.
server/apply.c: Add check to auto-dropping of applied transports to not
    drop in shops.
common/treasure.c: Make fix_flesh_item only run when the donor is a
    monster. Fixes bug #1555569.
Alex Schultz 2006-09-10

server/apply.c, server/c_object.c, server/player.c: Use is_in_shop() to
    check if it's in a a shop.
server/shop.c, include/sproto.h: Add is_in_shop() and coords_in_shop()
    based on addition of is_in_shop() in cf+ by elmex.
server/apply.c: When applying a transport which is in an inventory, drop
    the transport.
server/c_object.c, include/sproto.h: Make drop_object return a pointer to
    the dropped object, NULL otherwise.
Alex Schultz 2006-09-09

common/treasure.c: add exp and other_arch to flesh; more info about
    the original monster, to be used in spells or scripts.
Lalo Martins 2006-09-10

doc/Developers/protocol: Fix off by one on how many layers are currently
    defined.
server/swap.c: When loading up temp maps, make sure timeout is set to 0 -
   fixes bug 1539203.
MSW 2006-09-06

lib/collect.pl.in: Explicitly ignore backup files (*~), just because they
    really annoy me.
Lalo Martins 2006-09-06

server/gods.c: Make get_god_for_race() safe for gods of no race.
Alex Schultz 2006-09-06

server/shop.c: Make (real) sure shops won't give amber/jade
Lalo Martins 2006-09-06

Apply patch #551467 (type mismatch in surround_flag3() can cause SIGSEGV)
  courtesy Mark Kidder.
  random_maps/rproto.h wall.c
Ryo 2006-09-04

Bulk of this change is updating some files to use draw_ext_info() - all
    future code should use this, since there is no real reason not to and
    it provides additional features.  One notable change - reversed the
    order of the new and old formats in draw_ext_info_format() - the
    order was different than that of draw_ext_info(), which leads to confusion.
    draw_ext_info_format() wasn't used in many places, so easier to change
    that than all the draw_ext_info() calls.  Only another 1200
    new_draw_info calls left in the server.
--
doc/mediaTags: Fix some typos, clarify some behaviour (the way it works
    now so that there will not be confusion in the future).
include/define.h: Remove MSG_ tags - moved to newclient.h
include/newclient.h: Synchronize with client version.  Add MSG_ defines
include/newserver.h: Move some defines from here to newclient.h
server/apply.c:  Reverse format parameters to draw_ext_info_format() calls.
server/c_misc.c: Rewrite to use draw_ext_info{_format} - this allows nice
    formatting of tables, etc.  Also general style cleanups, clarify some
    messages.  in help_topics(), don't do linewrap - let the client
    handle it.  remove bug_report() function - no longer used.  Remove
    explore_mode() - wasn't used.  Move command_style_map_info() to
    c_wiz.c since it is a wiz only command.
server/c_wiz.c: As per above, move command_style_map_info() to this file
    since it is a wiz command.
server/player.c: Reverse format parameters to draw_ext_info_format() calls.
server/shop.c: Update to use draw_ext_info{_format} instead of new_draw_info()
socket/info.c: Reverse format parameters in draw_ext_info_format().
    Update va_start() to use new last parameter.  Remove call to
    strip_media() if the client supports the tag - that should only be
    used if the client does not support the tag.
socket/request.c: remove commented out MSG_TYPE values.
MSW 2006-09-03

plugins/common/hashtable.c: make Win32 define of uintptr_t more correct.
Alex Schultz  2006-09-03

plugins/common/hashtable.c: fix Win32 compilation.
server/spell_effect.c: missing return value.
----
Potential fix for bug #1551307 (crash in python plugin). If event_destroy is
  not found, set del_event to NULL. And don't dare you call remove_ob on it! :)
  plugins/cfpython/cfpython_object.c
----
Fix for bug #1551371 (No-magic prevents monsters from casting spells)
  server/skill_util.c: ignore no_spell/no_magic for monsters.
----
Fix for bug #1551386 (Alchemy with unpaid items).
  include/sproto.h: new function declaration.
  server/alchemy.c: check for unpaid items/cauldrons in new function.
  server/skill_util.c: move alchemy code to other function.
Ryo 2006-09-03

server/attack.c: Store away victim_map in hit_with_arrow() - what could
   otherwise happen is that victim is a player, and killed and ends up
   on new map, so that victim->map points at the wrong map.
MSW 2006-09-02

server/swamp.c: swamp will now kill players with woodsman, but slower than
  players without that skill. Feature request #1539125 by Andreas Kirschbaum.
socket/lowlevel.c: apply patch #1550716 (Frequent crashes after client disconnec
ts)
  courtesy Mark Kidder
Ryo 2006-09-02

server/attack.c:  Move kill_player() after we set up the pl->killer string.
   Needed just so right message is on grave stone - also prevents crashes,
   as if the hitter is poison or disease, kill_player() will remove those.
MSW 2006-08-30

lib/attackmess: Fix missing space in a 'type 17' attack message.
Alex Schultz 2006-08-30

server/player.c: Fix logic error in fire_bow and avoid unnecessary messages.
     Fixes bug #1547699.
Alex Schultz 2006-08-28

Add plugin access to move fields. Add sint64 type to plugin. 'AddExp' wrapper.
  include/plugin.h
  plugins/common/plugin_common.c
  plugins/common/include/plugin_common.h
  server/plugins.c
-----
Add 'object->env' and move_xxx wrappers to Object.
  plugins/cfpython/cfpython_object.c
  plugins/cfpython/include/cfpython_object_private.h
-----
Add constants for many things. Note that they aren't real constants and can
  be changed from a Python script. But it's the case for everything, so...
  plugins/cfpython/cfpython.c
Ryo 2006-08-27

Removed obsolete 'event' field from object struct, and associated functions.
  common/living.c
  common/loader.[cl]
  common/object.c
  common/treasure.c
  include/libproto.h
  include/object.h
  server/apply.c
  test/unit/common/check_arch.c
Ryo 2006-08-26

server/weather.c: change spurious logic in weather_avoid function.
Ryo 2006-08-26

Hopefully fix weather-related bug.
common/object.c: tentatively fix insert_ob_in_map weird behaviour when
  both INS_MAP_LOAD and INS_ABOVE_FLOOR_ONLY are set.
Ryo 2006-08-26

common/object.c, server/time.c: Make generators work properly with multi-tile ob
jects.
     Fixes bugs #1543220 and #1546835 and also allows generators themself to be m
ulti-tile.
Alex Schultz 2006-08-25

check-fragment.am: Add some quotes to avoid problems with spaces appearing
   in macro expansions.
Raphael Quinet 2006-08-25

configure, aclocal.m4, utils/config.guess, utils/config.sub,
   utils/ltmain.sh, include/autoconf.h.in, */Makefile.in: regenerated using
   slightly newer versions of libtoolize, aclocal, automake and autoconf.
Raphael Quinet 2006-08-25

configure.ac: add option to disable unit tests, fix incorrect usage of
   AC_ARG_ENABLE for dmalloc, fix some typos.
Raphael Quinet 2006-08-25

common/map.c: static buffers are evil. This resulted in name weirdness, and
  strange results with overlays.
Ryo 2006-08-25

server/server.c: fix a weird name change. Basically, function path_combine_and_n
ormalize
  was called twice while first result was still in use, resulting in weird names.
Ryo 2006-08-23

Fix for bug #1528636 (Invisible player disappears from map view).
  socket/request.c: special case for view's center.
Ryo 2006-08-22

Fix/improve login procedure such that if a player is trying to log in with
the name & correct password of character already on server, terminate old
connection and let them log in.
---
server/login.c: Remove name check for players on server in check_name().
     Make wrong_password() to handle error message handling for wrong password
     In check_login(), iterate over players on system to see if there is a
     match - if mismatched password, print error.  If correct password,
     terminate old connection.  Move wrong password logic from check_login()
     to wrong_password().
MSW 2006-08-21

server/attack.c: Call kill_player() from the kill_object() code. Fixes bug #1539
192.
Alex Schultz 2006-08-21

server/spell_effect.c: Make counterspell not effect permenant spell effects.
     Fixes bug #1539220.
lib/adm/getfaces.pl, lib/adm/README: Add 'getfaces' script that I had on the tra
cker and
     forgot about.
Alex Schultz 2006-08-20

Fix timers not working properly and potentially crashing.
  include/timers.h: use tag instead of pointer to avoid crashes.
  server/init.c: init timers.
  server/timers.c: wrong check for EVENT_TIMER.
-----
Add timers to functions a plugin can call.
  include/sproto.h: new functions.
  server/plugins.c: callbacks to timers.
-----
Add Python wrappers to timer, Object.CreateTimer(delay,mode) and Crossfire.Destr
oyTimer(id)
  plugins/cfpython/cfpython.c
  plugins/cfpython/cfpython_object.c
  plugins/cfpython/include/cfpython_object_private.h
  plugins/common/plugin_common.c
  plugins/common/include/plugin_common.h
Ryo 2006-08-20

common/object.c: Scatter objects dropped from a multi-tile object being freed.
     Fixes bug #1542884
server/c_wiz.c: Make DM 'free' command safe on multi-tile objects.
Alex Schultz 2006-08-19

Fix for bug #1540158 (Broken spells - Face of Death)
  server/attack.c: death attack always kills, no escape from it.
-----
Fix for bug #1460251 (Big monsters generated by generators broken). The generato
rs
  didn't correctly create the other monster parts.
  common/map.c: move stuff out of link_multipart_objects to object.c
  common/object.c: add fix_multipart_object function, taken from link_multipart_o
bjects
  include/libproto.h: new function.
  server/time.c: call new function when adding big monster.
-----
Fix for bug #1523571 (Diseases work only on "head" part).
  server/spell_attack.c:  the "more" part doesn't always have all the right flags
,
   so get head before testing.
-----
  common/object.c: add "more", "head" and "env" values when dumping an object.
  server/spell_util.c: DMs can cast denied spells.
Ryo 2006-08-19

Recollected archetypes in order to integrate fix for bug #1530006:
   lib/smooth, lib/faces, lib/bmaps.paths, lib/bmaps, lib/archetypes,
   lib/animations, lib/crossfire.1, lib/crossfire.0, lib/treasures.bld
Raphael Quinet 2006-08-18

Added a plugin function to get time. Add Python wrapper.
  include/plugin.h sproto.h
  plugins/cfpython/cfpython.c
  plugins/common/include/plugin_common.h
  plugins/common/plugin_common.c
  server/plugins.c
Ryo 2006-08-15

common/map.c, include/plugin.h, plugins/cfpython/{cfpython.c, include/cfpython_m
ap.h,
     include/cfpython_map_private.h}, server/plugins.c, server/server.c,
     server/swap.c: Add EVENT_MAPLOAD and EVENT_MAPUNLOAD, add support to cfpytho
n.
         Modify EVENT_MAP* to send the map object (in place of the path for
         MAPRESET). Impliment wrapper invalidation for cfpython map wrapper objec
ts.
crossedit/stubs.c, include/funcpoint.h, random_maps/standalone.c,
     test/unit/common/stubs_common.c: Allow execute_global_event() to be called f
rom
     common.
Alex Schultz 2006-08-12

lib/artifacts: Add artifact descriptions, courtesy of Raphael Quinet. Applies pa
tch
     from tracker item #1538983
Alex Schultz 2006-08-12

server/c_object.c: Corrected a mistake in examine that would display the
     content of a message prefixed by @match to the player.
     Fix for the bug mentioned in #1539227
server/spell_effect.c, common/map.c, common/map.h: Added a field in the map
     structure to store the timestamp of the last original map loading, and
     modified the Town Portal spell so that it now cannot lead to a map that
     was marked before a reset, after a reset.
     Fix for bug #1539155
server/apply.c: changed the comparaison code between the weapon's name and the
     player's, so that a weapon created by "gro" cannot be used by "gros.
     Fix for bug #1539150
server/c_object.c: modifier command_take so it is less noisy about no_pick items
     when doing a "get all" request.
     Fix for bug #1539122
server/c_object.c: modified command_drop so it is less noisy about locked items
     when doing a "drop all" request.
     Fix for bug #1539121
server/pets.c: added filling of inventory for monsters magically created that
     didn't come from a player caster, and aren't golems.
     Fix for bug #1529980
server/spell_effect.c: fixed incorrect behavior of the create missile spell,
     that couldn't find a proper archetype when a bow or a crossbow was wielded.
     Fix for bug #1532403
Yann Chachkoff 2006-08-12

server/apply.c: keep converters from accepting unpaid items
Lalo 2006-08-12

lib/addexp: update help text.
server/c_wiz.c: update addexp's help text.
Ryo 2006-08-11

server/c_wiz.c: fix create command with some artifact fun. Update player invento
ry if removing
  an item.
Ryo 2006-08-10

server/apply.c: Tell the client the map has scrolled when applying transports. F
ixes bug #1528565.
Alex Schultz 2006-08-10

lib/regions, common/region.c: Move regions file to map files.
server/player.c: Set default listen level to 10.
Alex Schultz 2006-08-09

common/loader.l, include/object.h, include/plugin.h, server/plugins.c: Add no_sa
ve attribute.
     Prevents object from being saved to disk. Add plugin support for the attribu
te.
plugins/cfpython/{cfpython.c, cfpython_object.c include/cfpython_object.h,
     include/cfpython_object_private.h}: Add cfpython support for no_save, and ha
ve cfpython
     "invalidate" object wrappers when the object is destroyed. Add "Exists" prop
erty to python
     object wrappers.
Alex Schultz 2006-08-08

Feature request #1465397 (improved feedback in character creation for existing n
ames).
Made message more explicit.
  server/login.c
Ryo 2006-08-08

Implement feature request #821645 (change password command). This introduces 3 n
ew
  player states, "entering current password", "new password", "confirm new passwo
rd".
include/define.h: new states.
include/player.h: add new_password field.
include/sproto.h: new command prototype.
server/c_misc.c: new command.
server/commands.c: bind command.
socket/request.c: handle new states.
Ryo 2006-08-08

Implement feature request #1528641 (consecrate should change face of altar). Thi
s simply
  removes the altar, and add the god's altar. Note that the name of the altar sho
uld be
  altar_<god's name>, which seems to be the case everywhere.
  server/spell_effect.c
Ryo 2006-08-07

Tell player whether she's the transport's captain or not.
  server/apply.c
Ryo 2006-08-07

Commit patch #1389033 (Large-value coins) courtesy Lalo Martins
  server/shop.c: accept jade & amber coins, never give'em back.
Ryo 2006-08-07

Fix bug #1534727 (create_home_portals TRUE doesn't work)
  server/init.c: wrong variable changed.
Ryo 2006-08-05

Committed patch #1389432 (Per-race HallOfSelection) courtesy Lalo Martins.
Modified files:
  include/global.h
  common/init.c
  server/server.c player.c
Rebuilt archetypes and treasures.
Ryo 2006-08-05

plugins/cfpython/cfpython.c, plugins/cfpython/cfpython_object.c,
     plugins/cfpython/include/cfpython_object_private.h: Modify
     Crossfire_Object_wrap() to use the hash tables provided by hashtable.c
     to avoid creating more python wrapper objects than is needed.
Alex Schultz 2006-07-29

common/object.c: fix bug #1526364 (stacking Royal Guards). Use find_free_spot
  to place dropped items if living. Also fix indent of function free_object2.
server/c_object.c: fix bug #1529969 (shop floor not working in random maps).
Ryo 2006-07-29

server/c_wiz.c: fix addexp not working on skills.
server/time.c: don't crash if duplicator doesn't have other_arch set.
Ryo 2006-07-28

plugins/common/hashtable.c, plugins/common/include/hashtable.h,
     plugins/common/Makefile.am, plugins/common/include/Makefile.am,
     plugins/cfpython/Makefile.am: Add hashtable.c, to add ptr-to-ptr hash tables
     for plugins to use. (Useful to use a cf object as a key for the table)
plugins/cfpython/include/cfpython.h: Include compile.h which Python.h doesn't
     include on it's own in versions of python older than 2.4.
include/plugin.h, common/object.c: Add EVENT_DESTROY, a local event triggered wh
en
     an object is freed.
include/funcpoint.h, crossedit/stubs.c, random_maps/standalone.c,
     test/unit/common/stubs_common.c: Allow execute_event to be called from commo
n
     and add appropriate stubs.
Alex Schultz 2006-07-28

common/item.c: In describe_item() correct capacity description of large
    (>1000 maxsp) Glowing Crystals.
Andreas Kirschbaum 2006-07-28

plugins/cfpython/cfpython.c: Added compilePython() function to split the compili
ng
     of python bytecode from the execution of it. Add support for caching the
     bytecode for a fixed number of scripts (default of 16) to increase speed.
Alex Schultz 2006-07-27

server/c_wiz.c: prevent a DM to reset a random map if (s)he is on that map.
     Workaround for bug #1528173.
Yann Chachkoff 2006-07-26

server/c_wiz.c: call update_ob_speed if removed object is animated.
server/spell_attack.c: stop generating swarm/bullet if player moved. This
  fixes bug #1528194.
server/spell_util.c: don't report blocking if caster is not player. It then
  is a swarm spell or equivalent, so position is random, no need to warn.
Ryo 2006-07-25

server/server.c: Select op->facing instead of op->direction in process_events
     for players and monsters as the direction reference for the face to display.
     Fix for bug #1528182. (*few* ! that's a lot of bugs ! :))
server/spell_util.c: Make the search for a friendly target for some spells also
     browse transports located in the square from which the spell was cast.
     This is a fix for bug #1528018
server/c_wiz.c: Prevents the use of reset on self-map while in a transport.
     Work-around for bug #1528172.
server/skill_util.c: Make dragons prefer clawing over anything else as unarmed
     combat technique. Fix for bug #1528197
Yann Chachkoff 2006-07-25

common/treasure.c: Added explicit item_power calculation for generated items tha
t
     got an item_power of 0 - should solve bug #1460354.
Yann Chachkoff 2006-07-21

scommon/map.c: Add check to block_linked() to make sure things never block thems
elf.
server/spell_attack.c: Target the head of monsters diseases are cast at.
Alex Schultz 2006-07-18

Fix player count reporting to the metaserver. It now excludes connections with
not-yet-logged-in players and AFK/WIZ/BOT players.
---
socket/metaserver.c: In metaserver_update() use the same conditions as for the
    who command.
Andreas Kirschbaum 2006-07-16

server/spell_effect.c, include/global.h, common/init.c, server/init.c: Add
     setting "create_home_portals" which allows server admins to allow town
     portals to be created in apartments. Based on a patch by pippijn in the
     cf-ext project.
lib/settings: Set default create_home_portals to FALSE
Alex Schultz 2006-07-12

lib/regions: Fix typo in region "portjoseph". Bug #1518392 (Port Joseph
    region spelling inconsistent with map directory) by Kevin R. Bulgrien.
Andreas Kirschbaum 2006-07-07

acinclude.m4, configure: Fix last fix which discarded any passed in
    CFLAGS or if that is set in the environment.
MSW 2006-07-05

common/button.c: Fix for sourceforge bug common/button.c - harpsicord crashes
    client.  The problem is that the trigger code presumed that the object
    would be animated, and blindly set teh face to the second animation frame.
    harpsicords are not animated, so this could amount to garbage.  So add
    check for trigger objects to see if they are in fact animated before
    blindly setting the face.
MSW 2006-07-05

server/daemon.c: Patch by wart, tracker 1489902 - open a file like /dev/null
    to then dup - this fixes -detach crash problem.  Might be better to use
    some other file, but in theory, shouldn't be much going here, and I
    don't think we can safely use a file that is already opened by the
    server.
MSW 2006-07-05

common/region.c: wrong order for memset call.
Ryo 2006-07-04

common/object.c: revert my previous fix, it's actually a feature :)
Ryo 2006-06-27

------------------------------------------------------------------------------
client:
gtk-v2/src/info.c: For extended message handling, special case the
     MSG_TYPE_SIGN - the 1.x server puts a number in front of the message to
     denote it is auto apply - strip it off in the gtk2 client.  Not an
     issue as far as 2.x goes, as the server doesn't prefix the message
     anymore.
MSW 2007-02-11

gtk-v2/gtk-v2.glade: Apply patch 1636013 - standardize on underscored
    widget names.  Patch by Veli-Matti Valtonen - maligor.
MSW 2007-02-06

Fix for bug #1538948: Assertion failure for map2 command.
Add checks for x,y and layer validity in the Map2Cmd.
Note that invalid values are not discarded, but clipped to valid ones.
  common/commands.c: add checks.
  common/mapdata.[ch]: move #define to header for access outside .c.
Ryo 2007-01-07

Merge patch #1558073: newpickup flesh courtesy bencha
  gtk/gx11.c
  gtk-v2/gtk-v2.glade
  gtk-v2/src/callbacks.h gtk2proto.h interface.c pickup.c
Ryo 2006-11-29

common/Makefile.am: Change svnversion.h generation to not update the file
    unless it needs updating.
Alex Schultz 2006-11-09

Fix problem in display logic when the size of the image was not a multiple
of the map_image_size.  This shows up when using tall character images.
It also shows up when using different -mapscale options due to rounding
errors - in both cases now, things are drawn correctly.
--
gtk/map.c: Add size parameters to draw_pixmap().  Add logic to figure out
   proper offsets for drawing odd sized images.
gtk/sdl.c: Add logic to figure out proper offsets for drawing these odd
   sized images.
gtk-v2/src/map.c: Add size parameters to draw_pixmap().  Add logic to figure
   out proper offsets for drawing odd sized images.
gtk-v2/src/sdl.c: Add logic to figure out proper offsets for drawing these
   odd sized images.
MSW 2006-11-05

gtk/image.c: Fix bug that results in SDL mode not working if map_scale and
   icon_scale are the same - can't use GDK pixmaps for SDL drawing.
MSW 2006-11-05

Fix bug 1559804 - unable to drop items from inventory into open container
on the ground.
gtk-v2/src/inventory.c: Add check to see if container is on the ground in
   addition to being in the player inventory as a valid drop target.
MSW 2006-11-03

Add ability for client to get exp table from server.  Add exp progressbar
to GTK2 client.
--
common/client.c: Add declarations for exp_table, exp_table_max, and call to
   send 'requestinfo exp_table' to server.
common/client.h: Add extern declarations for exp_table, exp_table_max
common/commands.c: Add get_exp_info() function to get exp table from
   server in replyinfo command.  Fix crash bug in ReplyInfoCmd() if replyinfo
   with no parameters is sent to client.
common/init.c: Add code to clear/initialize exp_table, exp_table_max
gtk-v2/gtk-v2.glade: Add exp progessbar widget.
gtk-v2/src/gtk2proto.h: rebuilt
gtk-v2/src/interface.c: Rebuilt
gtk-v2/src/stats.c: Add code to draw/update the exp progressbar.  Replace
    some static numeric constants with #define values instead.  Add
    can_alert option to update_stat()
MSW 2006-11-03

Fix annoying bug where popups appear all the time.
  common/newclient.h: add some missing message types.
  gtk/text.c: by default, admin commands are just sent to draw_info. This
   prevents annoying popups.
Ryo 2006-10-29

common/Makefile.am: Make sure svnversion.h rebuilds every time.
Alex Schultz 2006-10-29

gtk/rcs-id.h, common/rcs-id.h, x11/rcs-id.h, gtk/gx11.c, x11/x11.c: Remove
    rcs-id code.
gtk/Makefile.am, common/Makefile.am, x11/Makefile.am: Remove references to
    rcs-id.h files.
--
configure.in, common/Makefile.am: Generate svnversion.h to define SVN_REV from
    running the svnversion command if avaliable.
common/version.h: Add FULL_VERSION macro, to include SVN_REV if avaliable.
gtk/gx11.c, x11/x11.c, gtk-v2/src/main.c: Use FULL_VERSION instead of VERSION.
Alex Schultz 2006-10-20

common/client.c, gtk-v2/src/main.c: Remove excess log messages that flood
    console.
Alex Schultz 2006-10-12

Apply patches #1562945, #1562947, #1563796, and #1566467 to allow the gtk2
    client to be built in mingw. Courtesy of Kurt Fitzner.
---
configure.in, gtk-v2/src/Makefile.in: Clean up build system a little and add
    mingw supports.
common/item.c, common/commands.c, common/init.c, common/script.c,
    common/mapdata.c, common/client.c, common/p_cmd.c, common/player.c,
    common/newsocket.c, common/metaserver.c: Add mingw/win32 support.
gtk-v2/src/keys.c, gtk-v2/src/map.c, gtk-v2/src/image.c,
    gtk-v2/src/sdl.c, gtk-v2/src/main.c, gtk-v2/src/opengl.c, gtk-v2/src/png.c,
    gtk-v2/src/Makefile.am, gtk-v2/src/sound.c, gtk-v2/src/menubar.c: Add win32
    support to gtk2 client code, including for sdl and opengl.
Alex Schultz 2006-10-07

common/mapdata.c, common/proto.h: Move clearing of old map data from
    mapdata_set_face_layer() to a new mapdata_clear_old() function.
common/commands.c: Call mapdata_clear_old() in Map2Cmd() instead of relying on
    mapdata_set_face_layer() to clear it. Fixes bug #1559683.
x11/x11.c: Fix display_mapscroll() to handle scrolling by greater than 1 tile
    at a time. Fixes bug #1564584.
Alex Schultz 2006-09-26

gtk-v2/src/info.c: Add some notes about downloading font.  Add support
   for underline in extended text modes.
MSW 2006-09-17

configure.in: Fix opengl checks.
Alex Schultz 2006-09-17

Fix bug 1531060 - metaserver selection button is improperly activated.
Fix this by clearing the text box if an entry in the tree widget is selected -
if text is entered in the text box, unselect any selection - keeps it
very consistent what the connect button does.  Have it greyed out until
there is either text in the text box or something selected in the treeview.
--
gtk-v2/gtk-v2.glade: add callback for key press events for text entry
   box.
gtk-v2/src/callbacks.h,gtk-v2/src/interface.c: Rebuilt
gtk-v2/src/metaserver.c: Add code to activate/disable button based on
   status.  Add code to clear text box when treeview selected.  Add code
   to deselect treeview if data is entered in textbox.
MSW 2006-09-05

gtk-v2/src/stats.c: Fix bug 1527966 - protections window not properly
    updated.  Wrong variable was being used in loop.
MSW 2006-09-05

gtk-v2/src/map.c: Clear clipmask and clear window in draw_splash() so that
    splash is correctly redrawn.
gtk-v2/src/metaserver.c: Add call to draw_map() in metaserver selection just
   to make sure splash is drawn correctly.
MSW 2006-09-04

gtk-v2/src/inventory.c: Fix bug 1528014 - when dropping all objects, display
   isn't updated correctly.  Remove checks for cpl.ob->inv - relying on
   cpl.ob->inv_updated appears to work fine.
gtk-v2/src/keys.c: Fix bug 1527988 - message about unused keys isn't very
    useful.  Include meta and alt information about unused keys.  Add
    warning message to bind when trying to bind a key that may conflict
    with an existing binding.
MSW 2006-09-04

Add suggestion from bug 1528536 - some menu items should be disabled during
metaserver selection.
--
gtk-v2/gtk-v2.glade: Fix some incorrect name (meny vs menu)
gtk-v2/src/interface.c: Rebuilt
gtk-v2/src/menubar.c: Add enable_menu_items(), which enables/disables some
    menu items.
gtk-v2/src/metaserver.c: Add calls to enable_menu_items() to disable
   some menu items before metaserver selection, and to enable them after.
MSW 2006-09-04

gtk-v2/gtk-v2.glade: Add callback for pressed event on metaserver quit button -
    allows alt-Q to work - fix for bug 1551373
gtk-v2/src/interface.c: Rebuilt
--
gtk-v2/server/metaserver.c: Make some changes related to bug 1548290 - cached
    entries show 0 value in players.  Add code to check list of servers from
    metaserver - if we have a match in the cached server list, don't display
    the cached entry - use the one from the metaserver instead. Also, add
    logic to not display empty server if the default server is null.
--
gtk-v2/src/config.c: Make save_winpos() do actual saving, have
     on_save_window_position_activate() call save_winpos() - fixes
     bug 1551395 where savewinpos command does not work.
gtk-v2/src/main.c: Remove empty function save_winpos()
MSW 2006-09-04

gtk-v2/src/stats.c: Remove extra Player: in the player name.  Fixes bug
1528011.  MSW 2006-09-03

This change mainly adds support for the extended info messages for the gtkv2
client.  Note that unlike the gtkv1 client, the gtkv2 client doesn't in any
way try to do pop up windows or fancy graphics - rather, the support is there
just so it can do font changes, color changes, etc, within the normal text
window.
--
common/newclient.h: Sync it back up with server version.  Several new
   MSG_ types added.
gtk-v2/src/info.c: Redo info pane handling - move all the relevant variables
    into a structure - this should make it easier to add more panes in the
    future, but right now, it means an integer can be passed in to functions
    to control what pane to draw in.  Add support for extended draw info -
    notably, this means listing alternative fonts, and adding support
    for different tags.  Add callsbacks for the different message types.  Add
    code to process extended text message tags.
gtk-v2/src/keys.c: Change the grab focus after user enters command to use
    the treeview_look widget instead fo the textview - given that the textview
    is now stored away in a structure, harder to get to that variable.
MSW 2006-09-03

common/client.c: fix Win32 compilation.
Ryo 2006-09-03

gtk-v2: Fix bug 1528540 - if metaserver window is closed, client is unusable.
Take suggested fix - if metaserver window is closed, exit client.  Just
another hook to last commit.
gtk-v2/gtk-v2.glade: Add callback for destroy event on metaserver window.
gtk-v2/src/interface.c: rebuilt.
MSW 2006-08-21

gtk-v2: Fix bug 1530024 - errors when manually closing a window.
gtk-v2/gtk-v2.glade: Add callback for destroy event on main window.
gtk-v2/src/callbacks.h, gtk-v2/src/interface.c: Updated by glade with new
     callback
gtk-v2/src/main.c: Code to handle callback
MSW 2006-08-20

gtk/gx11.c: if cpl.no_echo is set, hide input.
Ryo 2006-08-08

configure: add --enable-cfgtk2 flag, to build gtk1 client with gtk2.
configure.in: add --enable-cfgtk2 flag. Add getaddrinfo check.
common/commands.c: check buffer length.
common/init.c: free allocated memory.
gtk/gx11.c: replace some WIN32 with CFGTK2.
gtk/win32/config.c: add #define CFGTK2.
Ryo 2006-07-29

Make common/cconfig.h act as the default server if set, if not set, connect
to metaserver.  Prior to this, it always went to the metaserver unless
-server option was given.
--
common/cconfig.h: Comment out SERVER so by default it connects to metaserver
common/client.c: Add handling to initialize server from SERVER if defined,
    null otherwise.
common/metaserver.c: Don't present default server in metaserver selection
    default is null.
gtk/gx11.c, gtk-v2/src/main.c, x11/x11.c: Change command line handling -
    if server is set, use that as default to connect to.
--
MSW 2006-07-17

gtk-v2/src/inventory.c: Add another invisible column to inventory/look
    lists for sorting based on name without nrof clogging results.  Comment
    out code that makes image fixed width.
MSW 2006-07-17

x11/xutil.c: Use snprintf() to avoid possible buffer overflows.
gtk/image.c gtk-v2/src/image.c gtk-v2/src/opengl.c: Remove superfluous casts.
common/item.h, gnome/gnome.c, gtk/gx11.c, x11/x11.c: Remove unused macros.
common/commands.c: Unify/fix calls to LOG().
common/commands.c: In DeleteItem() and DeleteInventory() do not crash if an
    invalid object tag was received.
Andreas Kirschbaum 2006-07-16

Fix problem in gtk1 & gtk2 client when player issues disconnect command -
client would hang and consume all CPU time.
---
common/external.h: Add declaration to cleanup_connection()
common/p_cmd.c:  In disconnect command, add call to cleanup_connection()
gtk/gx11.c, gtk-v2/src/main.c: Add cleanup_connection() - removes socket
    from one of the gdk input device, call gtk_main_quit so it returns
    to metaserver selection.
x11/x11.c: Add empty cleanup_connection() - x11 client doesn't need to
   do anything special.
MSW 2006-07-06

More changes related to default logging.  Able to specify default log level
with configure.  Note:  you will need to re-run configure after this change,
as otherwise MINLOGLEVEL will not be defined in config.h.
---
configure.in, configure:  Add --with-loglevel=<val> to specify default
     loglevel.
crossfire-client.spec: Update to include --with-loglevel for building RPMs
common/config.h.in: Add MINLOGLEVEL #define.
common/misc.c: Modify to use the MINLOGLEVEL #define
MSW 2006-07-05

Clean up some compile warnings.  They generally fall into either wrong form
for variable (%lld vs %ld), or cast for data (char* vs uint8*)
---
common/client-types.h: Add FMT64 defines like done in the server.  Removes
    need for #ifdef WIN32 in many places.
common/client.c: Remove unneeded cast for ReplyInfoCmd().  Change type
    of length parameter passed to getsockopt() to be a socklen_t.
common/commands.c: Change ReplyInfoCmd() to take a uint8*.  Add several
   char*/uint8* casts.  Change TickCmd() to also take uint8*
common/external.h: Add extern void client_tick(uint32 tick).
common/image.c: load_image() so that its fourth param (checksum) is a uint32.
     In finish_face_cmd() change filename to be a char*.  Add some casts in
    ImageCmd() & Image2Cmd().  Change display_newpng() so its first param
    (face) is just a int, not a long.  Change get_image_info() to take in
    a uint8* for data, add some casts.  Change get_image_sums() to take in
    a char*
common/item.c: Change several buffers used by the socklist structure to
    be uint8, add casts as needed.
common/newsocket.c: Change SockList_Init() so that the passed in buffer
    is a uint8*, so that is what the target buffer type is.  Add some
    casts and update some types within the program.
common/player.c: Change a buffer from char to uint8.
common/proto.h: Rebuilt.
common/script.c: Change it to take in a uint8 for data.  Change %lld
    to use FMT64
common/script.h: Update declaration of script_watch()
gtk/config.c: Remove const from titles.  While they may be used as a const,
    the gtk function they are passed to isn't declared that way.
gtk/gx11.c: Remove unused function end_windows().  Replace %lld with
    FMT64.  Removed const from title declaration.
gtk/inventory.c: Remove const from titles declaration.  re-enable cast
    for image creation for tabs.
gtk/keys.c: Add note about compiler warning and bad code technique for
    for getting the selection.
gtk/png.c: Removed unused variables/function - png_to_gdkpixmap()
gtk/text.c:  Change void_callback() to match format of other callbacks
    to prevent warning.
gtk-v2/src/gtk2proto.h: Rebuilt.
gtk-v2/src/png.c: Remove unused variable.
gtk-v2/src/stats.c: Replace %lld with FMT64.
pixmaps/question.111, pixmaps/stipple.111, pixmaps/stipple.112: Change
     types to be char and not unsigned char, since that is what
    the function tha uses this data expects.
x11/x11.c: Replace %lld with FMT64
---
MSW 2006-07-04

Changes related to logging of version information.
aclocal, Makefiles.*: Rebuilt for new file in gtk-v2/src.
common/misc.c: Change MINLOG to be a variable so it can be changed via
    command line options.
gtk/gx11.c: Have bug window display rcsid versions.  Add -loglevel command
    line option.  Move printing of some log messages until after we process
    command line options since that can change the log level.
gtk-v2/gtk-v2.glade: Add an about window for the gtkv2 client.
gtk-v2/src/Makefile.am: Add about.c file.
gtk-v2/src/about.c: file for about window.
gtk-v2/src/callbacks.h: on_about_close_clicked() added by glade.
gtk-v2/src/interface.c, interface.c: New logic for about window.  New
    function - create_about_window()
gtk-v2/src/main.c: Add -loglevel command line option.  Move printing of some
    log messages after we process command line options.
gtk-v2/src/menubar.c: remove menu_about() - now in about.c
MSW 2006-07-04

common/misc.c: Make default log level 2 when not in debug mode.  Normal users
   probably don't want all the INFO log messages, and it never makes a good
   impression about stability/quality if a program spews out lots of errors
   or other messages.
MSW 2006-07-01

Make some changes to the defaults so that the game is a bit more user friendly
to completely new users (eg, those that don't have a settings file):
--
common/init.c: Turn off popups (gtkv1 client) by default - general seems
   that it isn't popular, and placement of the popups needs to be fixed.
gtk-v2/src/main.c: Change default map size to ask from server to be
    25x25 - the gtkv2 client has default window size for that, so lets use
    it.
x11/x11.c: Turn on scroll of text by default - non scroll is really ugly
    and doesn't make any sense give the power of even very slow cpus now.
MSW 2006-07-01

gtk-v2/src/config.c: Fix bug resulting in a crash when opening the
    configuration dialogue if you have an empty gdefaults2 file.
MSW 2006-06-30



More information about the crossfire-announce mailing list