*** empty log message ***
update copyrights and other minor stuff to deliantra
support exit sounds, remove some cruft
- include experience table as our first generic resource file - swizzle init code around - do not calculate checksum in cfutil but when loading the facedata. this increases loading time by 20%, but since thats just 1.2s instead of 1.0s its not worth the extra effort of doing it beforehand.
- upgrade crossfire trt to the GPL version 3 (hopefully correctly). - add a single file covered by the GNU Affero General Public License (which is not yet released, so I used the current draft, which is legally a bit wavy, but its likely better than nothing as it expresses direct intent by the authors, and we can upgrade as soon as it has been released). * this should ensure availability of source code for the server at least and hopefully also archetypes and maps even when modified versions are not being distributed, in accordance of section 13 of the agplv3.
- introduce global NOW variable storing current tick time. - force some packet send at least every 2 seconds, forcing an ack reply. - timeout connections on ack delay exclusively, by default disconnect after 8 seconds (allowing for at least 5.5s of network hiccups). (linux only, should port to bsds). - nuke ericserver stats code. - reduce number of syscalls (less gettimeofday, only get tcp_info about once/second). - get rid of coroapi.time () in favour of now ().
- archetype is now a subclass of object. - store archetypes in an object_vector. - use a different startegy for archetype loading (reloading is MOST CERTAINLY broken).
rename arch->name to arch->archname for preparation of subclassing object
update copyrights in server/*.C
*** empty log message ***
remove superfluous/broken settings and related code - COZY_SERVER: enabled most msall adjustments, changed digestion formula to the original one, party member treament w.r.t. pets enforced. - PROHIBIT_PLAYERKILL: default - real_wiz: removed and enforced - create_home_portals: removed and enforced - casting_time: removed and forced to be off (was crashing anyways) - was_wiz flag removed and treated as off usually unless it was used in place of flag_wiz. - do not save or restore wiz, wizcast and wizpass flags.
handle only segv signals on the signal stack
reset (some) signal handlers to default after fork, limit the number of concurrent async backtraces
revamp loggin. have a new log flag logBacktrace that logs the message and prepares a backtrace in the background, spewing it into the log at a later time. this is useful to shed some light on otherwise completely useless log messages such as: 2007-04-27 19:48:48.142 Calling random_roll with min=1 max=0 which could just as well not be there as we will never find out who is doing this to puny poor random_roll.
VERY EXPERIMENTAL - change the way archetypes and treasurelists are being loaded: - referring to a nonexisting treasurelist will create an empty one - referring to a nonexisting archetype will create an empty one - archetypes/treasurelists will overwrite any existing object of the same name. - net effect should be to allow reloading of archetypes and treasurelists at runtime at a later stage.
move animation info into facedata and make it reloadable at runtime
- reduce default output-sync to less than a second - output-sync command now uses seconds as unit, not something users cannot even know. - lots of useless const adjustments.
*** empty log message ***
uh, really
- use a simpler, less fancy loader base design (basically a one-line-lookahead top-down parser).
- make server more fragile w.r.t. watchdog on freeze - try to make a perl backtrace on crash, too.
- add density to lib/materials - rewrite parser to use object_thawer (but not new loader framework yet).
so crash-friendly users, ehrm, user-friendly crashes
- enable 8MB of alternate signal stack - use it for all fatal signals (although only SEGV seems to be relevant)
- goofing around with my skills (overoptimisation to learn something)
just experimenting
comments
dump core earlier, by forking. also do not try to clean up twice.
- added $cf::WAIT_FOR_TICK* - tuned map-scheduler and player-scheduler - added $op->inv_recursive - added objects_size/objects($index) and actives_size/actives($index) for access to the object and actives vector. - more robust player loader - removed _perl_data attribute support - SIGINT/TERM/HUP are now safe as they are handled synchronously. - replaced LOOK_OBJ by client_visible - cleanups
""
added some copyrights
be nicer to clients on shutdown and crashes
fixed copyright
fixed credits
initialised :)
started a fix of the log
minor fixes, apartment hopping seems to work now
preliminary snapshot check-in, DO NOT USE IN PRODUCTION SYSTEMS See the Changes file for details
replace update_ob_speed by ->set_speed
- minor cleanups - minor optimisations (in_player vs. is_player_inv) - added P_PLAYER map flag - some (dead) concept code
- remove recycle_tmp_maps setting (hardwired to true) - replace object->flags by std::bitset, seems to be way more efficient, for some unexplainable and not looked-into reason. its way cleaner, too...
another bug, do some adjustments to coredumping 'algorithm'
- remove no_shout - serialise command execution somewhat again :( - avoid exceptions
- medium decruftification - medium cleanups - make settings accessible to perl using cf::settings->mutator (completely untested)
removed #ifn?def WIN32 from all files
nuke metaserver code
let perl use the correct directory stetings at startup
indent
cleanup
preliminary uuid support
fix races, fix switch case indent
indent
removed ox/oy, and then added shstr stuff to the recipes in alchemy
THIS CODE WILL NOT COMPILE use the STABLE tag instead. - major changes in object lifetime and memory management - replaced manual refcounting by shstr class - removed quest system - many optimisations - major changes
rewrote object serialiser, parser is next
remove compression support, intiialise perl earlier etc. etc.
expand initial tabs to spaces
- added ready/unready/can_apply events and their passive versions - removed support for event_*-fields in maps - removed support for current_weapon_script - removed timers - removed say/shout/Tell and related commands
- added cfperl.h, soon to be used by events - no perl == exit, its no longer optional - moved server main loop entirely in perl - removed lots of unneeded timekeeping cruft
Made server compile with C++. Removed cfanim plugin and crossedit. C++ here we come.
This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, select a symbolic revision name using the selection box, or choose 'Use Text Field' and enter a numeric revision.