added lock/unlock patch from shawn robinson.
fix icecube thawing bug
indent
lots of cleanups
remove all protos from include/*proto.h for functions that are effectively static
cleanups, save 3.5kb code
cleanups
clarify license
*** empty log message ***
dimdoor spellarg
added ratelimited food table and made convert_item available to perl. and fixed manafountain.
added cursed effect to lamps and torches.
made torches automatically update their animation if they are on.
added new lamp and torch system.
connected => shstr, beginning of mapscript
sanatized alchemy skill.
*** empty log message ***
refactoring of shstr classe,s new shstr_tmp, lots of minor rewriting
indent
use new iterator for diaeses, clean up code
refactored drop code a bit, and hopefully fixed some bugs with it.
spell effective level system reworked
*** empty log message ***
*** empty log message ***
update copyright
*** empty log message ***
selling of things a shop is not interested doesn't work anymore
rewrote party commands
*** empty log message ***
- fix weight/pickup bugs, visible_to - do more automatic nrof/weight updates - kill funcpoint.h
reloadable archetypes, maybe
*** empty log message ***
moved update_stats from the inner drop/put loop to the callers. and converted some old messages. also hard limited pick_up now.
update copyrights and other minor stuff to deliantra
- clean up message system, combine all boxes into one. - suppress too long messages (we need a more robust solution to this problem). - get rid of INS_MAP_LOAD, leading to slightly cleaner/faster code and certainly one special case less. - insert objects manually at load time, this is both faster and also more correct, as loading a map is never supposed to trigger anything (and also for symmetry to the save code).
finally remove the old buggy plug-in cruft
rent was calling blocking functions in the main coro. doh.; also, do some cleanups
support exit sounds, remove some cruft
fix cure disease giving exp for the wrong skill
first, untested, try at spicing up the message system
very very preliminary, non-working sound framework
added handle_apply_yield to cfperl.xs and renamed cfperl::invoke_results => cf::invoke_results. also added the new slag ex(tm) extension
drop unpaid items on disconnect. far easier than to do it at connect time
- 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.
updated docs
*** empty log message ***
- update copyrights in .h files, where applicable - rename preprocess to genkeywords
some more optimisations
new speed management: - weapon speed and object speed is now completekly decoupled for players. - both can be used at the same time, or indeepndent, when running or firing. - still only one command per object speed can be issued.
more skill tuning: - clear_skill is gone, use change_skill (0) instead. - change_skill now clears the current_weapon. - more intelligent weapon switching on unapply. - be more clever when initially applying weapons on player load/connect. - survive wrong setting of READY_WEAPON.
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.
breath life into completely broken skill tools
- rework body locations to give betetr feedback and make use of combat and shield slots.
reset (some) signal handlers to default after fork, limit the number of concurrent async backtraces
rewrote and greatly simplified generator code. if there were any issues with elmex' monster-in-inventory stuff then they should be fixed by now.
fixed shop inventories
- 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.
remove clockdata and base it off of the runtime; improve the tod code.
clean up makefiles, add dummy pod.pm
at least I can read it now..
possess is too dangerous
shutdown in perl
kick in perl
- run, fire, mark in perl - no more NewServerCommands
body in perl
mapinfo in perl
whereami in perl
output-count, output-sync in perl
- petmode, applymode in perl - echo something back to the user when he does "fix_me"
sound, usekeys in perl
some tiny cleanups and moving of non-time-critical commands into perl
afk in perl
all chat commands are now in perl
cointoss in perl
moved me to perl
removed prototypes for chat commands
""
be nicer to clients on shutdown and crashes
fix quit to actually delete the directory, should all be moved to perl
preliminary snapshot check-in, DO NOT USE IN PRODUCTION SYSTEMS See the Changes file for details
i cannot find, nor reproduce, the problem at all. the log clearly shows map loads where there shouldn't be any, so we lose maps. but only on cf.schmorp.de. i am frustrated.
- preliminary check in, stuff is rudimentarily working - moved most of the player creation process into a perl coroutine - changed internal design of player management to not reuse and morph the object in funny ways. should be safer and much nicer to handle. - got rid of some annoying hacks, such as clear() (TODO: get rid of player_pod and other stuff now unnecessary?)
- minor cleanups - minor optimisations (in_player vs. is_player_inv) - added P_PLAYER map flag - some (dead) concept code
reverted the last change to move_apply and check_inv and fixed check_inv differntly: as all the buttons and pedestals check themselves whether the objects above them satisfy their conditions i thought the best would be if check_inv would do the same. The new semantics are compatible with the semantics used by the map makers (at least i hope that) and won't end up in a broken state so easily now. While fixing check_inv i documented inventory checkers in objects.pod
Added a parameter to move_apply that indicates whether something moved on or off and changed check_inv to take the same additional argument. An inventory checker is now mostly state-independend and a bad state is corrected now if the inventory checker is activated. While fixing that i've documented the HOLE type and FLAG_ACTIVATE_ON_(PUSH|RELEASE) in objects.pod.
the rename for sanity campaign hits you died - renamed stuff - partially updated copyrights - some cleanups
while goofing around, trying to understand the command code - did some reindentation - which lead me to find some dead code - which lead me to some optimisations and more dead code fun.
- implement event watcher autoncancellation on reload - used it everywhere - removed lots of compatibility cruft - configure does no longer check for mandatory unix functionality/headers - confgiure now runs much faster
moar\! rewrite\!
- use new event mechanism for command handling instead of the old plugin system
added fix_walls_around for the builder ui extension.
*** empty log message ***
remove who command
mapstruct => maptile removed many ytypedefs in favor of structure tags
cleanup
- temporarily disabled shstr garbage collection - use sint64 instead of uint64 in shop code - implement fully recursive item iterator for object - add some utility functions
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
added find_archetype
finally _do_ generate logout everytime
removed all the broken SHOP_FLOOR checks and replaced them with the is_in_shop () check function.
- 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
added need_identify to perl plugin
added utility function for reseller
added another utility function
Made server compile with C++. Removed cfanim plugin and crossedit. C++ here we come.
tentative fix for the crash today: a summoned monster has been removed twice, casuign the crash. the reason _probably_ was that follow_owner couldn't follow the owener but left the monster removed. The monster later died, was removed, and the server crashed. some callers of follow_owner checked for this and removed the monster in _SOME_ cases, leading to a certain crash if the monster dies for whatever reason (in our case, poison). fix: changed follow_owner to free the object in every case. simplifies code and gets rid of weird undocumented conditions that would lead to a sure crash anyways.
Removed dead code
distconf
Removing the suicide command, work is in progress to move it to perl.
Adding suicide command
Renaming skills and fixing non-static declaration of attack_hth in include/sproto.h.
he who is unable to create a clean interface is destined to fail
Initial revision
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.