July 2001 Commit Log

Number of Commits:
Number of Active Developers:
mwedel 2001-07-31 00:55 Rev.: 1245

Update version string to be date so easier to know what version
of the server is running on a host. MSW 2001-07-30

2 lines of code changed in 1 file:

mwedel 2001-07-31 00:54 Rev.: 1244

Fix compilation bug if using recycle temp maps. MSW 2001-07-30

2 lines of code changed in 1 file:

mwedel 2001-07-31 00:33 Rev.: 1243

common/map.c free_map Set in_memory status to MAP_SWAPPED - fixed bugs of maps
not getting reset properly
common/object.c: insert_ob_in_map - was passing wrong value to check_walk_on,
resulting in some things not working as expected.
doc/Protocol: Clarify how the sending of the version command works.
server/move.c: move_ob redone. It should hopefully be more efficient (only'
remove objects after verifying they can in fact move). IMO, code is
also simpler, and hopefully has fewer bugs.
socket/init.c: InitConnection - modified to set faces_sent[0] to one
so that we will never send any information about face 0 to the client.
facecode 0 is sent in the map1 command to clear spaces/layers.
MSW 2001-07-30

135 lines of code changed in 6 files:

smacfiggen 2001-07-24 17:40 Rev.: 1242

Fixed bug in sdl client where scrolling in the left-right direction
while using a non rectangular view caused redraw problems. I was
making a bad assumption about how the scanlines in the SDL surface
were being padded. This fix should be tested more on non 32bit
displays though.
SMACFIGGEN 2001-07-24

2 lines of code changed in 1 file:

reeve 2001-07-24 09:26 Rev.: 1241

Scott Barnes: Removed some unused variables to eliminate warnings.

53 lines of code changed in 1 file:

smacfiggen 2001-07-23 15:52 Rev.: 1240

Bug fix for fog of war code. Only affected client when using
the map1cmd. Tiles that went out of view then came back into
view weren't always marked as cleared so stale map layer data
could appear on the screen.
SMACFIGGEN 2001-07-23

1 lines of code changed in 1 file:

smacfiggen 2001-07-22 12:48 Rev.: 1239

Server side of the fog of war feature to the gtk client. Adds the
protocol command newmap and adds a call to MapNewmapCmd in enter_map()
in main.c. More additionals will need to be made, for example when
someone casts a teleport spell but teleports within the same map.

24 lines of code changed in 5 files:

smacfiggen 2001-07-22 12:44 Rev.: 1238

Added fog of war code. A fairly complex checkin so I suspect I may have
broken something. Note, this code only works in conjunction with the
SDL client for now. The infrastructure is all there for the other
blitters to take advantage of it though. This code also requires the
cooperation of the server, a new protocol command was added 'newmap' to
let the client know when to reset the state of the map (which should
happen every time the player enters a new map with the exception of
tiled maps). To use, give the -fog command line option along with

773 lines of code changed in 9 files:

mwedel 2001-07-20 00:14 Rev.: 1237

common/object.c: remove_ob - set P_NEED_UPDATE before calling update_position
to prevent warnings from update_position being called with P_NEED_UPDATE
being set. MSW 2001-07-19

12 lines of code changed in 2 files:

mwedel 2001-07-20 00:04 Rev.: 1236

socket/request.c: Fix bug in map1 command which resulted in it sending
too much data with even maps. For example, if the client requested
a 16x16 map, the server would effectively send a 17x17 map to the client.
MSW 2001-07-19

8 lines of code changed in 2 files:

mwedel 2001-07-15 22:38 Rev.: 1235

Fix error in darkness handling for small mapsize - was doing
incorrect comparison. MSW 2001-07-15

1 lines of code changed in 1 file:

mwedel 2001-07-13 22:13 Rev.: 1234

Map tiling checkin. MSW 2001-07-13

153 lines of code changed in 3 files:

mwedel 2001-07-13 22:12 Rev.: 1233

Map tiling checkin.
socket/info.c: Modified to use new map structure/macros
socket/request.c: Modify draw_map_routines to use get_map_from_coord so
that it properly deals with tiled maps. Modified to deal
with potentially NULL face values. Modified update routine to
call update_position for spaces within player view which need an
MSW 2001-07-13

87 lines of code changed in 2 files:

mwedel 2001-07-13 22:11 Rev.: 1232

Map tiling checkin
server/Makefile.in: Remove encounter.c file. Use cproto instead of
cextract to create proto file.
server/disease.c, server/login.c, server/main.c, server/monster.c,
server/move.c, server/pets.c, server/player.c, server/resurrection.c,
server/rune.c, server/shop.c,server/skill_util.c, server/skills.c,
server/spell_effect.c, server/spell_util.c, server/swap.c, server/time.c
modified to use modified insert_ob_in_map function,
use new macros to access map structure related data.
change calls to update_all_los, remove lighting related code.
server/apply.c: modified to use new insert_ob_in_map function. Update
calls to update_object. remove RANDOM_ENCOUNTER code.
for exits, modified to use the head for valid coordinates since the
other parts may not have valid values since they are not saved out to
disk anymore.
server/c_misc.c,server/hiscore.c: modified to use new map
server/commands.c: remove dumplights command.
server/encounter.c: removed - code no longer used
server/init.c: remove RANDOM_ENCOUNTERS code.
server/script.c: change Script_getMapObject to return NULL since there
is no longer a map object. Modify to use new insert_ob_in_map and
update_object functions.
MSW 2001-07-13

343 lines of code changed in 27 files:

mwedel 2001-07-13 22:08 Rev.: 1231

Map tiling checkin.
random_maps/decor.c,random_maps/door.c, random_maps/exit.c,
random_maps/standalone.c, random_maps/style.c,random_maps/treasure.c,
modified to use modified insert_ob_in_map function,
use new macros to access map structure related data
MSW 2001-07-13

63 lines of code changed in 10 files:

mwedel 2001-07-13 22:06 Rev.: 1230

Map tiling checkin.
include/config.h: remove RANDOM_ENCOUNTERS (no longer available) and
USE_LIGHTING (now standard part and always on).
include/define.h: move P_... values to map.h
include/global.h: add definition for compression externals, as they
are used in a few files. remove map macro functions - moved to map.h
as appropriate. Add FREE_AND_CLEAR macro that frees data and then
sets the pointer to NULL.
include/map.h: Largely redone - many new macros, new map structure.
include/object.h: remove lights object link pointer from objects.
At some #defines that are the flags for update_object and
include/player.h: Add a few comments.
MSW 2001-07-13

1380 lines of code changed in 8 files:

mwedel 2001-07-13 22:06 Rev.: 1229

doc/Makefile.in: add map-technical to list of files.
doc/crossfire.doc: remove map information that was in this file.
doc/map-technical: new file. Describes inner workings of how the maps work.
MSW 2001-07-13

206 lines of code changed in 3 files:

mwedel 2001-07-13 22:05 Rev.: 1228

crossedit/Attr.c: Rename Layout to AppLayout so other files can use it.
crossedit/CrEdit.c: Modified to use new map header. Modified drawing
routines, as face values could be null
crossedit/Edit.c: Move many functions from common/map.c that are only
used here and thus don't need to be in common/map.c. Modify to use
new map structure.
crossedit/Makefile.in: Change to use cproto to make proto.h file.
crossedit/png.c: change user_read_data to be static so proto doesn't pick
it up.
MSW 2001-07-13

311 lines of code changed in 6 files:

mwedel 2001-07-13 22:04 Rev.: 1227

common/Makefile.in: Remove ltostr.c and sqrt.c from list of files
common/ltostr.c, common/sqrt.c: Moved into porting.c
common/anim.c, common/button.c, common/item.c: Update calls to update_object
common/living.c: have fix_player calculate light value for player/monster.
common/logger.c: Remove code that has server exit if too many LOG messages
happen too quickly. This was not a reliable mechanism, and it should
really be up to the functions doing the logging to know if they can
continue or not.
common/los.c: Changes on how it deals with lighting on maps - get light
value from map space array instead of using the linked list. Functions
that managed the light list have been removed. Change logic of
line of sight function to be more efficient (before, we may examine
the same space multiple times). rename update_all_los to
update_all_map_los, and change update_all_los to take coordinates
so that we only have clients within view of the change recalculate
los. Also, have update_all_los check for tiled maps that may have
clients that need to get updated.
common/map.c: remove refresh_map - this used to be used to try to recover
from map errors if many_cores was not set - IMO better to core and
just restart and really fix the error than try to deal with possible
corruption that may otherwise result.
Move open_and_uncompress and close_and_delete functions to porting.c -
they are 'common' functions that are not related to the map code.
Remove some lighting related code, as that is no longer done with
a list. Many modifications because of new map structure. And
logic to load and save the new map structure format. Modify
many of the functions to take map tiling into account. Change
way multipart objects are saved, and add logic to relink objects
when maps are loaded up. Remove some functions that are only
used by the editor into the editor. Move update_position from
object.c to map.c as it is better placed in map.c. Modify
function to figure out light for a space. Make out_of_map a
function that knows about map tiling. New function - get_map_from_coord
which knows about map tiling and does coordinate and map translation.
common/object.c: Have update_object take another parameter which tells
update object what has changed about the object. This lets the function
know if it should call update_position right away or if it can just
mark the space as needing an update at a later time. move update_position
to map.c.
insert_ob_in_map: now takes another parameter that describes actions not
to do. modified to know about map tiling and do appropriate translation.
Does some object sorting so it should handle spell objects more
insert_ob_in_map_simple is now replaced by
using appropriate flag to this changed version of insert_ob_in_map.
Clean up remove_ob - seemed to have done things in a more complicated
fashion that is no longer necessary. Modify check_walk_on to look
at all objects on space, not those below the object - with changes to
insert_ob_in_map, new object won't always be on top.
common/porting.c: functions from ltostr.c, sqrt.c, as open_and_uncompress
close_and_delete, make_path_to_file from map.c
common/treasure.c: Modified to use updated insert_ob_in_map
MSW 2001-07-13

1764 lines of code changed in 11 files:

June 2001 »

Generated by StatSVN 0.7.0