Protocol: | pserver | User: | anonymous |
Machine: | crossfire.cvs.sourceforge.net | CVSROOT: | /cvsroot/crossfire |
Filename: global.h | |||
Revision 1.69 | ryo_saeba | 2006/08/05 03:56:21 | +2 -1 |
Patch #1389432 (Per-race HallOfSelection) courtesy Lalo Martins | |||
Show difference between Revision 1.68 and 1.69 | |||
Revision 1.68 | qal21 | 2006/07/14 12:58:10 | +2 -1 |
Add setting to allow server admins to allow town portals to be created in apartments. Based on a patch by pippijn in the cf-ext project. | |||
Show difference between Revision 1.67 and 1.68 | |||
Revision 1.67 | mwedel | 2006/06/05 01:28:56 | +13 -3 |
Clean up some compiler warnings. Most of the changes are related to replaced %lld with FMT64 defines so that the format will be correct, no matter if the 64 bit type is a long, long long, or if this is windows. #if 0 out a bunch of code that isn't used. -- common/exp.c: Replaced lld with FMT64 common/holy.c: #if 0 out baptize_altar(). Add banner copyright at top of file. common/info.c, common/item.c, common/loader.l, common/loader.c, common/map.c: common/porting.c Replaced lld with FMT64 common/time.c: Replace a bunch of variables declared as longs to be uint32. Update various sprintf appropriately. include/global.h: Add FMT64 and FMT64U as appropriate for different systems. Change max_time to be a uint32 include/sockproto.h, include/sproto.h: rebuilt server/apply.c: #if 0 out monster_apply_special server/c_range.c: Add != 0 in assignment if statement - same meaning, clearer on intention and avoids compiler warning. server/c_wiz.c: Update command_kick() to take const char. Update command_speed() to operate properly based on max_time being a uint32. Update various lld to FMT64. Clarify ambiguous if/if/else statement in command_insert_into() server/commands.c: Add cast to command_kick for new function prototype. #if 0 out find_command(), parse_string(), parse_command() server/disease.c: #if 0 out find_disease(), reduce_symptoms() server/egoitem.c: #if 0 out create_artifact(). Add copyright at top of file. server/gods.c: #if 0 out get_god() server/hiscore.c: Replace lld with FMT64 server/login.c: #if 0 out create_savedir_if_needed() server/resurrection.c: Replace lld with FMT64. #if 0 out dead_character() and dead_player_exists() server/server.c: Remove info_keys() - hasn't been used in a long time. #if 0 out process_active_maps() server/skill_util.c: Replace lld with FMT64 server/spell_util.c: #if 0 out check_spell_effect() server/weather.c: #if 0 out feather_map(). Fix what I suspect is an error in worldmap_to_weathermap() to skip over starting slashes. socket/image.c: Add a fair number of char * casts to suppress warnings. socket/init.c: Change buflen in init_connection() to socklen_t to match function prototype. Add some char * casts. socket/loop.c: Add some char * casts. -- MSW 2006-06-04 | |||
Show difference between Revision 1.66 and 1.67 | |||
Revision 1.66 | mwedel | 2006/05/18 00:27:44 | +2 -2 |
This commit adds support for the map2 protocol command (10 layer map). This changes how the data is stored and sent to the client. This also implements the idea of client handling map animations, so adds some object flags so that the server knows if it should let the client handle animations or not. Support for the original map protocol command is removed. --- aclocal.m4: rebuilt configure.ac: Add checks for zlib.h, libz - not used right now, but will probably be used in the future, so no reason to remove it. common/loader.l: Add client_anim_sync, client_anim_random FLAGS. common/map.c: Add add_face_layer() to set face for a layer. Redo/simplify update_position to store faces away based on layering criteria. common/time.c: Replace long pticks with a uint32, since size of a long will vary, and we now send pticks to the client as a 32 bit value. crossedit/CrEdit.c: Update the draw logic based on the fact there are more layers now. crossedit/Edit.c: Comment out some code that probably should be fixed. Replace calls of SET_MAP_FACE with SET_MAP_FACE_OBJ doc/Developers/protocol: Updated with map2, tick protocol additions. Reorganize the parameters in the setup protocol command so they are now listed in alphabetical order. include/autoconf.h.in: Add HAVE_ZLIB_H define. include/define.h: Update for the FLAG_CLIENT_ANIM values. include/face.h: Remove MapLook structure - no longer used. include/global.h: change extern type for pticks from long to uint32 include/map.h: Change MAP_LAYERS to 10. Add definitions for what each map layer is. Remove GET/SET_MAP_FACE macro - no longer used, GET/SET_MAP_FACE_OBJ replaces it. Add GET_MAP_FACE_OBJS which returns pointer to all the object info for the space. Remove faces from MapSpace structure. include/newclient.h: Update with new defines used for map2 protocol command. include/newserver.h: Change type of faces in map_cell_struct to be uint16 to be consistent. Change 'count' to 'darkness' to more accurately describe what it represents. Add MAP2_COORD_OFFSET define. Add Map2Cmd to MapMode enum. Add map_scroll_x/y to socket structure so we send those as part of map2 command. Add tick field to socket structure to know if we should send tick data to the client. server/login.c: Remove extern long pticks declaration - declared in global.h - don't need to declare it again locally. socket/info.c: Rewrite magic map code to use GET_MAP_FACE_OBJ instead of GET_MAP_FACE macros. socket/init.c: Initialize new fields in socket structure to 0. socket/loop.c: If client wants tick data sent, send one each tick. socket/request.c: Add setup responses for tick, map2 requests. Remove some extra code in Map1a setup. Send error message to client if not using at least Map1 protocol level. Modify map_newmap_cmd() to clear scroll information when using Map2. Remove original (map0) protocol logic. Update map_clearcell() to clear all 10 layers. Replace MAX_LAYERS with MAP_LAYERS. Add add_head() to remove some of the complication from update_space(). Add code in draw_client_map1() to find which 3 layers to send to the client from the 10 we now have. Add map2_add_ob(), map2_delete_layer(), check_space_for_heads(), draw_client_map2() to handle map2 protocol. Add send_tick() - sends tick to client, but also forces flush of data to reduce lag. utils/config.guess.utils/config.sub,utils/ltmain.sh: rebuilt MSW 2006-05-15 | |||
Show difference between Revision 1.65 and 1.66 | |||
Revision 1.65 | ryo_saeba | 2006/03/18 13:30:55 | +2 -2 |
Forgot one file. | |||
Show difference between Revision 1.64 and 1.65 | |||
Revision 1.64 | ryo_saeba | 2006/03/18 09:05:32 | +2 -4 |
Massive cleaning of code. Shouldn't be any functional change. | |||
Show difference between Revision 1.63 and 1.64 | |||
Revision 1.63 | cavesomething | 2006/03/07 12:46:25 | +5 -3 |
Add settings permanent_experience_percentage, death_penalty_percentage and death_penalty_levels to the settings file. --- common/living.c: don't hardcode exp calculations common/init.c, include/config.h, lib/settings: set defaults for new values doc/settings: document new values include/global.h: change settings struct to hold the new values server/init.c: parse new values in the settings file. server/skill_util.c: reference new value | |||
Show difference between Revision 1.62 and 1.63 | |||
Revision 1.62 | akirschbaum | 2006/01/08 10:31:17 | +2 -1 |
Apply modified patch #1396303 (add setting to disable stealing from players) by Terry Brown. It adds a new option "no_player_stealing" to the settings file. If set, it prevents players from stealing from other players. It defaults to ON. | |||
Show difference between Revision 1.61 and 1.62 | |||
Revision 1.61 | akirschbaum | 2005/10/24 15:48:15 | +1 -6 |
Code improvements: common/image.c: Declare some variables and functions as static or const; add safeguards while loading config files; remove support for numeric face names (no active archetype or map does use it); in free_all_images() deallocate memory allocated for smoothing. crossedit/xutil.c: Remove assignment to nrofpixmaps since ReadBmapNames() already sets this variable. include/{global.h, libproto.h, loader.h}: Remove now static variables and functions. | |||
Show difference between Revision 1.60 and 1.61 | |||
Revision 1.60 | akirschbaum | 2005/10/24 13:27:37 | +2 -2 |
common/image.c, include/define.h, include/global.h: Remove unused variables potion_face and POTION_FACE_NAME. | |||
Show difference between Revision 1.59 and 1.60 | |||
Revision 1.59 | akirschbaum | 2005/10/24 13:11:35 | +1 -2 |
common/image.c, include/global.h: Remove unused variable blank_look. | |||
Show difference between Revision 1.58 and 1.59 | |||
Revision 1.58 | qal21 | 2005/10/15 02:07:31 | +2 -1 |
Add directory in preparation for template (where the template can be from the random map generator) maps. | |||
Show difference between Revision 1.57 and 1.58 | |||
Revision 1.57 | qal21 | 2005/09/21 08:06:12 | +3 -3 |
Use #error directive, so certain C processing applications don't complain. | |||
Show difference between Revision 1.56 and 1.57 | |||
Revision 1.56 | ryo_saeba | 2005/08/12 08:46:34 | +3 -3 |
Fields changed from char* to const char*, cleanup. | |||
Show difference between Revision 1.55 and 1.56 | |||
Revision 1.55 | tchize | 2005/05/29 10:37:53 | +3 -1 |
MOTD now splitted in 3 files: rules, news and motd. They are sent on connection to client in this exact order. | |||
Show difference between Revision 1.54 and 1.55 | |||
Revision 1.54 | tchize | 2005/05/06 16:10:15 | +3 -2 |
added a new command to identify the type of text send to client. media tags can be included inside them. Those text types include scrolls, books, message of the day, signs, aso. See protocol doc for details | |||
Show difference between Revision 1.53 and 1.54 | |||
Revision 1.53 | cavesomething | 2005/04/14 19:41:33 | +2 -1 |
patch 1123766 to make PK luck penalty configurable | |||
Show difference between Revision 1.52 and 1.53 | |||
Revision 1.52 | majorwoo | 2005/03/20 16:20:40 | +3 -1 |
This is patch #1152538 to add a server configurable who command | |||
Show difference between Revision 1.51 and 1.52 | |||
Revision 1.51 | mwedel | 2005/03/19 03:14:57 | +2 -2 |
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 | |||
Show difference between Revision 1.50 and 1.51 | |||
Revision 1.50 | ryo_saeba | 2005/03/15 15:06:20 | +3 -1 |
Apply patch #1145089 by cavesomething for region support | |||
Show difference between Revision 1.49 and 1.50 | |||
Revision 1.49 | mwedel | 2005/01/24 01:29:25 | +14 -2 |
common/object.c: Change CAN_MERGE() from an inline function, since it calls itself and inline functions are not supposed to do that. Update type check in insert_ob_in_map() to check against defined type (EXIT) instead of hardcoded integer value (66). crossedit/xutil.c: Update to just include Defines.h, which then includes all the other necessary files, including global.h. include/global.h: Add #ifdef checks for the UINT*_MAX types, as some systems already define these values, which results in a redefinition error. Also fix up // style comment. include/shstr.h: Include proper cast in TOPBIT definition. server/main.c: Don't display 'xyz left the game' messages if the player is only at the get name or get password prompt. Prevents possible spoofing of that message. server/player.c: Clean up formatting of check_pick() function. If player is using newpickup to pick up booze, also pick up poison unless they know it is cursed. socket/request.c: AskSmooth() - change buffer type to uint8 so that it matches what the SockList structure wants. utils/scores.pl.in: Use skill_praying to find players god, and not the deprecated experience_wis object. MSW 2005-01-23 | |||
Show difference between Revision 1.48 and 1.49 | |||
Revision 1.48 | ryo_saeba | 2004/05/08 08:38:04 | +7 -1 |
Add settings to control armor enchantment | |||
Show difference between Revision 1.47 and 1.48 | |||
Revision 1.47 | mwedel | 2004/04/25 02:17:38 | +10 -1 |
Change most shop buy/sell functions to use 64 bit values. Problem arises where player would sell valuable item, and if they wanted to buy them back, it would overflow a 32 bit value, so they could buy them back for free. Note quite as odd when you consider the buy/sell price for really valuable items to be very different. include/global.h: Add UINT32_MAX and other max type defines for our typedef values so that we have standard setting of what the cap is. server/apply.c: Change get_payment call to take second argument. server/plugins.c: Add note about bug in handling of query_cost in this function. server/shop.c: query_cost() now returns 64 bit. Many other functions updated to also take/return 64 bit cost values. Have cost_string nicely deal with values that are beyond affordability. Rename get_payment2() to get_payment(), and remove the later, which was just a simple wrapper function that called get_payment2. server/spell_effect.c: Update alchemy code. Remove some suspect use of static values. MSW 2004-04-24 | |||
Show difference between Revision 1.46 and 1.47 | |||
Revision 1.46 | ryo_saeba | 2004/02/28 04:40:56 | +2 -1 |
Warning cleaning | |||
Show difference between Revision 1.45 and 1.46 | |||
Revision 1.45 | ryo_saeba | 2003/12/14 10:28:47 | +8 -5 |
Compilation warning cleaning | |||
Show difference between Revision 1.44 and 1.45 | |||
Revision 1.44 | mwedel | 2003/09/13 00:01:33 | +6 -16 |
Updated code for skill + spell code. skills and spells are now objects. tuning these now means changing the archetypes. New spells can now be added just by making a new archetype. Lots of code cleanup also done. MSW 2003-09-12 | |||
Show difference between Revision 1.43 and 1.44 | |||
Revision 1.43 | temitchell | 2003/08/26 19:00:45 | +2 -1 |
Added friendly_fire to attack.c, called from hit_player. Will put a cap on maxdam that is a percentage (1-100%) of damage (min 1)based on SET_FRIENDLY_FIRE value (in settings)when players attack other players in peaceful mode. Changed who, statistics commands to show this setting better and added a help file for peaceful. It would be nice to have a indicator (even a toggle button?)in the client for this as well. | |||
Show difference between Revision 1.42 and 1.43 | |||
Revision 1.42 | tchize | 2003/08/02 11:25:22 | +12 -2 |
WIN32 bugfixes, (mappath fix and uint64 fix) thanks to Nicolas Wegeer for submit. Partial Transcript from mail: ... The first, global.patch, fixes bad u/sint46 for Win32 in include/global.h There was no SIZEOF_LONG defined, so it would error... Also, the Python includes define SIZEOF_LONG_LONG as 8, so it's better to have some coherence somewhere :-) The second is for common/map.c It fixes broken check_path which would simply ignore the prepend_dir argument, resulting in broken map links in big maps... (would try to find map in world/world_xxx_xxx instead of share/maps/world/world_xxx_xxx). I think they don't change anything for other platforms. ... | |||
Show difference between Revision 1.41 and 1.42 | |||
Revision 1.41 | mwedel | 2003/03/07 23:35:32 | +15 -1 |
Patch for 64 bit experience total, as well as flexible number of levels. Basically, max level is now dynamic, set in exp_table file. Experience is now a 64 bit value, so much higher totals now allowed. To allow for flexible levels, add new function - did_make_save() which is used for players/monsters to see if they make their saving throw - this is necessary because the savethrow[] array may not be as large as max level - did_make_save takes this into account. NOTE: If your updating a server, you will need to copy over/set up a new exp_table file that has max_levels defined and at least one of the tables uncommented. There are no longer any compiled in defaults -- configure, configure.ac: Add AC_CHECK_SIZEOF calls for long and long long so we can know which one to use for 64 bit support (other checks may need to be added) common/exp.c: Remove levels table, replace it with a 64 bit pointer. Change init_experience to allocate appropriately sized table, have it read max_level value from exp_table file. Replace atoi calls with atoll to get 64 bit value. Update dump_experience to properly print 64 bit values. common/info.c: Update dump routines that dump exp to properly print 64 bit values. common/init.c: Add initializing for settings.max_level value. common/item.c: Update sprintf's to handle 64 bit output of exp (speed) value in objects. common/living.c: change MAX_EXP define, update MAX_EXP_IN_OBJ define, add MAX_SAVE_LEVEL which corresponds to how large the savethrow table is. Change MAXLEVEL to settings.max_level. Change level_exp() to return 64 bit value, other updates in functions to use 64 bit values. Add did_make_save() function. common/loader.l, common/loader.c: Update load/save routins of exp to deal with 64 bit values. common/map.c: Update calculate_difficulty to use 64 bit values when storing exp - unlikely to make a difference, since unlikely any map will get to a point where it has that much exp on it. common/porting.c: Remove dead code from save_long(), add save_long_long() to save 64 bit values. include/autoconf.h.in: SIZEOF_LONG and SIZEOF_LONG_LONG values added. include/global.h: Add code to typedef sint64/uint64 types based on what type gives us those values. Add max_level to settings array. include/libproto.h: rebuilt. include/living.h: Replace exp field with 64 bit value. include/player.h: Update party kill log exp tracking to have 64 bit values. lib/exp_table: Udpate comments about max_level, uncomment what was the default table so new installs have working table. Add 5 levels to all the tables. random_maps/monster.c: Update place_monsters to use 64 bit when storing exp total for map/per square. server/apply.c: Replace MAXLEVEL with settings.max_level, add did_make_save calls where appropriate server/c_misc.c: have statistics command properly print 64 bit exp value. server/c_wiz.c: Have stats command properly display 64 bit value. server/hiscore.c: Replace exp values with 64 bit values, update to properly load/display them. server/player.c: replace savethrow[] reference with did_make_save() server/skill_util.c: Update skills command to properly show 64 bit exp values. server/spell_effect.c: replace savethrow[] reference with did_make_save(), allow players to cast directors right beneath themselves, but other walls must be on empty space. MSW 2003-03-07 | |||
Show difference between Revision 1.40 and 1.41 | |||
Revision 1.40 | garbled | 2002/12/25 00:45:46 | +3 -1 |
New Arrow and Pet Code: Add bowmode and petmode commands. Allowing the player to change the firing style for bows to one of either threewide, or spreadshot. Allow players to change the operating modes of his pet with petmode. Can be either seek and destroy, defend, or normal historical behavior. Change bows to impart speed to arrows based on damage and other magical plusses. Damage decays over distance, to stop arrows from flying forever. Very fast moving arrows will pierce multiple targets. An arrow moving at a speed greater than 10.0 will go straight through a target, losing 1.0 of speed in the process. Change magic missile to use spell_find_dir instead of find_dir to stop it from flying in a circle and hitting the caster, and to make it stop flying into walls to hit creatures behind the walls. | |||
Show difference between Revision 1.39 and 1.40 | |||
Revision 1.39 | garbled | 2002/11/12 23:49:04 | +3 -1 |
#define MOTD -> settings.motd #define DM_MAIL -> settings.dm_mail | |||
Show difference between Revision 1.38 and 1.39 | |||
Revision 1.38 | garbled | 2002/11/12 23:24:53 | +3 -1 |
#ifdef SPELLPOINT_LEVEL_DEPEND -> settings.spellpoint_level_depend #ifdef EXPLORE_MODE -> settings.explore_mode While I was here.. make explore mode actually *work*. It didn't even have an entry in the commands array. | |||
Show difference between Revision 1.37 and 1.38 | |||
Revision 1.37 | garbled | 2002/11/12 22:57:32 | +3 -1 |
#ifdef REAL_WIZ -> settings.real_wiz #ifdef RECYCLE_TMP_MAPS -> settings.recycle_tmp_maps Even found a cute bug while fixing up real_wiz. | |||
Show difference between Revision 1.36 and 1.37 | |||
Revision 1.36 | garbled | 2002/11/12 18:49:46 | +2 -1 |
#ifdef CASTING_TIME -> settings.casting_time | |||
Show difference between Revision 1.35 and 1.36 | |||
Revision 1.35 | garbled | 2002/11/12 18:26:13 | +3 -1 |
#ifdef SPELL_ENCUMBRANCE -> settings.spell_encumbrance #ifdef SPELL_FAILURE_EFFECTS -> settings.spell_failure_effects | |||
Show difference between Revision 1.34 and 1.35 | |||
Revision 1.34 | garbled | 2002/11/12 17:20:11 | +2 -1 |
#ifdef SEARCH_ITEMS -> settings.search_items | |||
Show difference between Revision 1.33 and 1.34 | |||
Revision 1.33 | garbled | 2002/11/12 17:09:11 | +3 -1 |
SET_TITLE and RESURRECTION are now settings. | |||
Show difference between Revision 1.32 and 1.33 | |||
Revision 1.32 | garbled | 2002/11/12 16:34:26 | +2 -1 |
convert #ifdef NOT_PERMADETH into settings.not_permadeth. | |||
Show difference between Revision 1.31 and 1.32 | |||
Revision 1.31 | garbled | 2002/10/27 22:39:07 | +2 -1 |
include/define.h: add FLAG_IS_WATER include/global.h: add fastclock to settings include/map.h: add water to weathermap structure include/sproto.h: add tons of new functions in weather.c | |||
Show difference between Revision 1.30 and 1.31 | |||
Revision 1.30 | mwedel | 2002/09/07 17:08:07 | +2 -1 |
Automake patch - all files. The changes for the source files is using confdir instead of datadir. Patch by Jacek Konieczny (jajcus@bnet.pl), applied by Mark Wedel, 2002-09-07. | |||
Show difference between Revision 1.29 and 1.30 | |||
Revision 1.29 | mwedel | 2002/08/02 00:09:39 | +4 -2 |
include/global.h: add FREE_AND_CLEAR_STR macro, relocate DELETE_STRING by the other macros. server/c_misc.c: Fix string printout in applymode function. server/disease.c: Update name_pl in diseases. server/player.c: replace FREE_AND_CLEAR with FREE_AND_CLEAR_STR - was freeing data that shouldn't be freed. MSW 2002-08-01 | |||
Show difference between Revision 1.28 and 1.29 | |||
Revision 1.28 | mwedel | 2002/06/15 02:47:36 | +5 -1 |
TODO: Additional updates. Add support for loading the EMERGENCY_.. locations from a .emergency file in the map directory. This makes it easy to switch map distributions without the need to recompile. The emergency information is now stored in the settings structure. common/init.c: add EMERGENCY_ defines to default values in setting. Add init_emergency_mappath which loads the information. include/config.h: Remove NEW_WORLD_MAP definition, as it is no longer needed. Update some of the EMERGENCY_.. information as we don't need to include the information for the new world map. include/global.h: Add emergency_.. fields to settings structure. server/login.c, server/main.c, server/player.c: Update references from the EMERGENCY.. values to settings.emergency values. MSW 2002-06-15 | |||
Show difference between Revision 1.27 and 1.28 | |||
Revision 1.27 | mwedel | 2002/06/07 02:00:43 | +6 -1 |
Mostly bugfixes. I'm not sure if this will fix the disappearing arch problem- none of the changes made in the original multiple name would seem to cause it, so hard to say if any of these changes may fix it. -- common/arch.c: Change get_archetype_by_name to be more efficient and not leak memory. Modify code that frees all archetype data to free the name_pl information. Make sure the clone.name_pl is set to NULL. When singularites are created, set the name_pl for them. common/loader.l, common/loader.c: Modify code that fixes up name_pl to be more correct when it fixes up name_pl for old objects. common/map.c: Modify load_map_header so that tile_paths will be normalized - need for editor to be able to load maps that have a multipart object that spans the maps. crossedit/Edit.c: Modify some calls of out_of_map to OUT_OF_REAL_MAP, since tiling code really isn't fully in place for the editor. Modify EditPerformFill so that it actually works and doesn't crash the editor. include/global.h: Move FREE_AND_COPY macro from loader.l to here so that all source code files can use it. lib/adm/map_info: Modify to actually be able to examine just a sub portion of the map directories, and not all of them. Don't always show the unused objects - information isn't very interesting if only a portion is being examined. Modify the exit examining code to properly deal with random maps (if there is a finalmap component, make sure that does exist.) Loade the bmaps file and not the faces file to find valid faces. plugin/plugin_python.c: Add missing %s that described what script was actually loaded. random_maps/special.c, server/alchemy.c, server/c_misc.c, server/gods.c, server/login.c, server/player.c, server/spell_effect.c: Set up proper name_pl value for code that changes the name of objects. server/apply.c: Use FREE_AND_COPY to set up names. Set up proper name_pl values for cases that change name. In apply_lighter, call fix_player if player is lighting an object in his inventory - necessary for the players glow_radius to get updated so the change actually takes effect. socket/request.c: Modify esrv_map_scroll so that it properly clears cells that are moving out of view - failure to do this was resulting in the map1a updating these spaces with empty faces. This was causing fog of war wackiness with the client. MSW 2002-06-06 | |||
Show difference between Revision 1.26 and 1.27 | |||
Revision 1.26 | mwedel | 2002/03/26 01:18:57 | +7 -4 |
Update to improve image caching and faceset support in the client. The main change is adding the 'requestinfo image_info' and 'requestinfo image_sums' commands. common/image.c: Checksum the bmaps file when we load it - we send this as part of the image_info data. doc/Developers/protocol: Document the requestinfo data. include/global.h: Add extern for bmaps_checksum, and the define for ROTATE_RIGHT which is used for checksumming. include/newserver.h: Update SC version to 1027 so that clients can know if they can issue requestinfo commands. include/sockproto.h: rebuilt lib/adm/collect_images.pl: Add support for it to make a crossfire-images distribution that the client can use to bootstrap its image set. socket/image.c: Change SendFaceCmd to take a NewSocket parameter instead of a player parameter - in this way, it can be used before the AddMe command - this allows the client to download images before issuing that command. Add send_image_info and send_image_sums function which send the requestinfo data to the client. socket/loop.c: Move the askface command from the player commands to the newsocket commands. Add RequestInfo functino that determines the type of request and calls the specific function to deal with it. MSW 2002-03-25 | |||
Show difference between Revision 1.25 and 1.26 | |||
Revision 1.25 | garbled | 2002/01/01 18:26:28 | +2 -1 |
Clean up some missing prototypes, protect tod.h against multiple inclusion, and generally make -Wmissing-prototypes happier. | |||
Show difference between Revision 1.24 and 1.25 | |||
Revision 1.24 | garbled | 2001/12/19 04:07:41 | +8 -1 |
More basics for the weather system: document the new map header entries. New settings for the big-worldmap/weather interactions, and code to load them. No functional changes at this time. | |||
Show difference between Revision 1.23 and 1.24 | |||
Revision 1.23 | mwedel | 2001/12/03 01:51:40 | +2 -2 |
This checkin for the most part removes support for xpm and xbm graphics - now the only image supported is the png. common/arch.c: comment out printing on warning of object having no type - getting 300 meaningless messages at startup is annoying. common/image.c: Remove X11 color information from colorname array. Remove processing of color_fg and color_bg information from face file - only use color_fg if no magicmap information is available - foreground and background infoformation was only needed for bitmap graphics. common/loader.c, loader.l: Add elevation element, comment out some logging messages that are excessive and only really relevant for people who want to fix them (really should be in the collect script anyways). Remove some unused code. common/map.c: add outdoor field to map structure - add support for loading and saving it. crossedit/App.c,crossedit/CrUtil.c, crossedit/Defines.h, crossedit/crossedit.c crossedit/xutil.c: Remove support for non png graphics. crossedit/Attr.c: Add support for elevation variable, remove code for non png graphics. doc/map-technical: Add note about outdoor field. include/face.h: remove fg, bg fields from face struecture. include/global.h: Update colorname array definition. include/loader.h: Add V_ELEVATION field. include/map.h: Add outdoor field to map structure. include/newserver.h: Update types so it only loads/knows about png information. include/object.h: Add elevation field to object structure. lib/Makefile.in: Remove support for building crossfire.xpm and crossfire.xbm files. lib/animations, lib/archetypes, lib/bmaps, lib/bmaps.paths, lib/crossfire.png, lib/faces: Rebuilt. Main difference is a few sea types, and the fact that it hadn't been collected for a while. server/spell_effect.c: Modify dimension door so that it calls MapNewmapCmd so that fog of war does not get confused. Also, removes call to draw as functions further up will do that. server/spell_util.c: Remove color information from attack information that shuffle_attack uses. socket/init.c, socket/request.c: Remove support for non png images. MSW 2001-12-02 | |||
Show difference between Revision 1.22 and 1.23 | |||
Revision 1.22 | michtoen | 2001/11/19 17:30:28 | +4 -1 |
Full support now for gender, rank and alignment. Full support for guilds & quests in code, most script functions included. - some fixes - old clients will not be effected - to avoid treasure file error msg, collect arches | |||
Show difference between Revision 1.21 and 1.22 | |||
Revision 1.21 | gros | 2001/10/14 02:57:14 | +4 -17 |
Major changes: Added dynamic plugin support, removed old Guile support. - Gros 10/14/01 | |||
Show difference between Revision 1.20 and 1.21 | |||
Revision 1.20 | mwedel | 2001/07/13 23:06:50 | +9 -12 |
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 insert_ob_in_map include/player.h: Add a few comments. MSW 2001-07-13 | |||
Show difference between Revision 1.19 and 1.20 | |||
Revision 1.19 | michtoen | 2001/06/13 07:52:07 | +1 -1 |
Modified Files: player.c loader.l loader.c init.c request.c newserver.h Log Message: Removed 2 compiler warning from Scriptfire patch in loader.l/loader.c and script.c. added a new setup cmd: "newanim" a client giving the newanim cmd, will enable the new animation system. The interface is open and not server controlled at this moment. First using is to enable the player moving in 8 direction. Giving this option to a server without changed arch will invoke broken player animations. This will be changed in the future. MT 2001-06-13 | |||
Show difference between Revision 1.18 and 1.19 | |||
Revision 1.18 | michtoen | 2001/06/13 05:50:19 | +20 -1 |
Modified Files: aclocal.m4 configure. configure.in Makefile.in crossfire32.dsw crossfire32.dsp INSTALL_WIN32.txt common: arch.c loader.c treasure.c loader.l crossedit: Attr.c doc: README_EXTENSIONS README_SCRIPT include: autoconf.h define.h global.h includes.h loader.h object.h script.h spellist.h spells.h sproto.h version.h server: Makefile.in apply.c attack.c c_object.c gods.c init.c main.c monster.c player.c script.c script_spells.c script_types.c skills.c spell_effect.c spell_util.c time.c Log Message: Adding Scriptfire 0b11 to Crossfire. Massive changes. The facts are in the doc files. MT 2001-06-13 | |||
Show difference between Revision 1.17 and 1.18 | |||
Revision 1.17 | mwedel | 2001/06/04 01:41:02 | +10 -10 |
Checkin of code that supports larger map sizes (configurable in config.h). common/los.c: update los code since it only handled 11x11 maps. Now uses formulatic approach so any map size should be supported. This does result in a few more spaces getting blocked around corners, but it doesn't seem that bad - certainly not compared to the ability to have larger viewable maps. common/map.c, crossedit/CrEdit.c, crossedit/Edit.c, include/global.h, include/map.h,random_maps/monster.c,random_maps/special.c, random_maps/standalone.c, server/apply.c,server/c_misc.c, server/spell_effect.c,socket/info.c: change mapx,mapy to what they really point to, as it prevented using those as variable/structure element names. common/object.c: update_position - if faces for different layers are duplicate, set the duplicates to be blank to increase client update efficiency. doc/Protocol: Add map1 command description, update setup command to describe setting of mapsize. include/config.h: add MAP_CLIENT_X/Y to set maximum map size we can send to the client. include/newserver.h: add mapx, mapy values to socket structure include/player.h: Use MAP_CLIENT_X/Y for sizing arrays that hold map related information in player structure. server/player.c: As per player.h above, use appropriate sizing when initializing player stucture. server/shop.c: Update mapx,mapy like above, but re-do shop listings code as it was doing a lot more work than necessarily (I think some changes got put in for sorting, and the old object manipulation was never removed when that got done) socket/init.c: set default client map size to 11x11 in the socket. socket/item.c: LookAt - change checks for position checking (such that you can only look at things in bounds) use max viewable map size. socket/request.c: Make setup commands a little more forgiving if there are extra spaces. Add 'mapsize' command to setup command. Update old map sending code to use socket map sizes (to support even smaller than normal maps, or 13x13 or 15x15 maps). add draw_client_map1 command which implements the map1 protocol command. MSW 2001-06-03 | |||
Show difference between Revision 1.16 and 1.17 | |||
Revision 1.16 | mwedel | 2001/05/28 23:41:53 | +11 -8 |
Make ALLOW_SKILLS standard part of game (remove #ifdef's for it) Files affected: common/living.c common/object.c common/treasure.c include/config.h include/player.h server/apply.c server/attack.c server/c_move.c server/c_range.c server/c_wiz.c server/commands.c server/init.c server/login.c server/monster.c server/player.c server/rune.c server/skill_util.c server/spell_util.c Make MULTIPLE_GODS standards part of game (remove #ifdefs for it) Files affected: common/readable.c include/spellist.h include/config.h server/attack.c server/gods.c server/skills.c server/spell_effect.c server/spell_util.c doc/Makefile.in, doc/Protocol: Add protocol description file here instead of in the client distribution. include/global.h: Move declaration of MAX_EXP_CAT near top of file so it is set before player.h is included. include/newclient.h: Add CS_STAT_SKILL* values for sending skill experience information to client. include/newserver.h: Add skillexp value to socket struct which determines if client wants skill experience informatiion. include/player.h: Add skill information tracking to player structure so we can easily know when to send updates to client. random_maps/expand2x.c: remove unused variable to prevent compiler warnings. random_maps/square_spiral.c: Include prototype information on all systems, not just win32 to prevent compiler warnings. server/skill_util.c: Initialize skill pointers to make it easier to find skill information when we want to update client. socket/init.c: Init socket->skillexp to 0. socket/loop.c: Fix indentation of table - whitespace change only socket/metaserver.c: Minor fix to prevent compile warnings (on the sprintf that composes the data to send to the metaserver) socket/request.c: Redo SetUp function to be more compact and IMO simpler as wll as easier to read (functionality remains the same). VersionCmd modified to warn users of on dxclients (code on MT) StatsCmd added to send skill information if client wants it. The sending of skill experience is by MT, rest of the changes by me. MSW 2001-05-28 | |||
Show difference between Revision 1.15 and 1.16 | |||
Revision 1.15 | mwedel | 2001/04/09 01:59:46 | +16 -1 |
Main thing this commit does: Undo MT's last commit, which should not have been checked it at this time. As that did not fix any bugs, it should wait until after 1.0 (at least one file also fails to compile) Fix minor bug in server/player.c which prevent keyring weight from getting updated when keys are automatically used out of the rings. move the GETTIMEOFDAY macro to include/global.h so it doesn't have to be done in both arch.c and time.c remove some ^M characters from porting.c MSW 2001-04-08 | |||
Show difference between Revision 1.14 and 1.15 | |||
Revision 1.14 | michtoen | 2001/04/06 14:08:44 | +2 -2 |
win32: change // to /* */ | |||
Show difference between Revision 1.13 and 1.14 | |||
Revision 1.13 | michtoen | 2001/04/05 19:42:16 | +3 -1 |
*** empty log message *** | |||
Show difference between Revision 1.12 and 1.13 | |||
Revision 1.12 | mwedel | 2001/03/30 01:27:48 | +2 -2 |
common/image.c, include/define.h, include/global.h: Add empty_face structure and appropriate code to initialize it. This is used for the server side look selection. include/newserver.h: Add NUM_LOOK_OBJECTS to control number of look objects to send at any one time. add look_position field to the newsocket structure. server/move.c: clear look position as player moves. server/player.c: initalize look_position element in structure. socket/item.c: modify esrv_draw_look to sne NUM_LOOK_OBJECTS at any one time, and to also send pseudo objects that lets the player scroll up and down. modify ApplyCmd so that if it detects the application of one pseudo objects to adjust the look_position. MSW 2001-03-29 | |||
Show difference between Revision 1.11 and 1.12 | |||
Revision 1.11 | mwedel | 2001/03/19 01:58:10 | +2 -1 |
MSW 2001/03/18: common/init.c: add RESET_LOCATION_TIME initializer to settings structure. include/config.h: Add RESET_LOCATION_TIME value. If nonzero and the save was longer than the specified time in seconds, player will be returned home upon login from save. include/global.h: Add reset_loc_time field to settings structure. server/login.c: Remove some unused variables, add support to return player home as described above. server/spell_effect.c: Fix for crashes when casting control undead and your god does not have an enemy. Now properly check to make sure we are not dereferencing null pointers. | |||
Show difference between Revision 1.10 and 1.11 | |||
Revision 1.10 | peterm | 2001/01/23 00:16:25 | +1 -4 |
Improved the porting to HP-UX. | |||
Show difference between Revision 1.9 and 1.10 | |||
Revision 1.9 | cvs | 2000/12/04 01:19:56 | +1 -3 |
MSW 2000/12/3: Misc changes. Main one is adding PNG support to the editor. TODO: Remove outdated things to do (like partial resistance code) configure, configure.in, include/autoconf.h.in: Add check for libpng. include/global.h: Remove displaymodes - moved to crossedit/Defines.h crossedit/App.c, crossedit/App.h crossedit/CrEdit.c crossedit/CrFace.c crossedit/CrList.c crossedit/CrUtil.c crossedit/Edit.c crossedit/crossedit.c crossedit/xutil.c, crossedit/png.c (new file): Add support for png display in crossedit. crossedit/Makefile.in: Add png.c file. server/c_misc.c: Change who command to only display real players, and not players in process of connecting/unconnecting. Also, remove code to display old sockets, since those are not supported anymore. | |||
Show difference between Revision 1.8 and 1.9 | |||
Revision 1.8 | cvs | 2000/12/03 18:40:04 | +2 -1 |
Checking for partial resistance code. Various minor errors also fixed (compiler warnings, unused variables, Makefile.in changes, etc). PR code also includes support to send protections to the client. | |||
Show difference between Revision 1.7 and 1.8 | |||
Revision 1.7 | cvs | 2000/11/14 01:35:05 | +10 -1 |
metaserver update: common/init.c: Add meta_ fields to settings structure initialization. include/global.h: Add meta_ fields to settings structure. include/sockproto.h: Updated for new meta_ functions. lib/Makefile.in: Have it install settings file. lib/settings: Default settings file with some metaserver default value.s server/init.c: Add load_settings file. Add call to metaserver_init. server/main.c: Add call to metaserver_update in do_specials. socket/Makefile.in: Add metaserver.c to list of files. socket/metaserver.c: File that deals with metaserver related data. socket/item.c: Remove some unused variables. Unrelated to metaserver changes. socket/loop.c: Add calls to metaserver_update in block_until_new)connection. Change function so that if there are no active players, it still timeouts and does metaserver update. Basically changed to do it the way the WATCHDOG code did it. End of metaserver update. MSW 2000-11-13 | |||
Show difference between Revision 1.6 and 1.7 | |||
Revision 1.6 | cvs | 2000/08/02 01:04:49 | +3 -1 |
include/config.h, include/global.h, common/init.c, common/living.c, server/init.c, server/player.c, server/skill_util.c: Add permanent experience and balanced stat loss features (code by Garth Denley). Permanent experience make some experience in the skills permanent. Balance stat loss makes stat loss less likely/costly at low level and more costly at higher levels. These features are by default off, but can be turned on either in the config.h file or via command line options. Code checked in by MSW 8/1/2000 | |||
Show difference between Revision 1.5 and 1.6 | |||
Revision 1.5 | cvs | 2000/05/27 00:42:14 | +3 -7 |
include/define.h,include/global.h, common/image.c: Remove following old face information: INV_*_FACES, BLOCKED_FACE, STIPPLE[12]_FACE. This is just a general cleanup - the server has not used these since the X11 code was pulled from the server. MSW 5/26/2000 | |||
Show difference between Revision 1.4 and 1.5 | |||
Revision 1.4 | damn | 1999/09/18 02:34:28 | +1 -2 |
Moved things back, so spells.h doesn't need to be loaded twice any more.-- DAMN | |||
Show difference between Revision 1.3 and 1.4 | |||
Revision 1.3 | damn | 1999/09/17 15:56:15 | +4 -1 |
- #defines from spells.h and material.h loaded early -- DAMN | |||
Show difference between Revision 1.2 and 1.3 | |||
Revision 1.2 | cvs | 1999/07/13 01:02:52 | +0 -0 |
Global commit for 0.95.4 - most files have no changes but just have differing headers between my local RCS and the CVS versions and need to get synced up. | |||
Show difference between Revision 1.1 and 1.2 | |||
Revision 1.1 | uid200 | 1999/04/02 13:10:04 | None |
Initial revision | |||
First version | |||
Revision 1.1.1.1 | uid200 | 1999/04/02 13:10:04 | +0 -0 |
First CVS revsion: crossfire-0.95.3 | |||
Show difference between Revision 1.1 and 1.1.1.1 |