copyright update 2018
freearr => DIR
remove eol whitespace
copyright update 2016
trailing space removal
update copyrights to 2012
in_memory => state
update copyright to 2011
use set_speed to change speed
*** empty log message ***
indent
get rid of QUERY_FLAG/SET_FLAG/CLEAR_FLAG macros that I always hated
update copyright for up to 2010
remove bogus 2007 copyright that was added wrongly by the script, update to affero license
move_ob/move_object => ->move
-instance, some los fiddling
speed is positive inside the server
lots of cleanups
make effectively static symbols actually static, part 2
make effectively static symbols actually static, part 1
-MAX_BUF
clarify license
indent
rmeove most shstr-strcmps
eradictae strstr when contains is meant
indent
introduce drop_and_destroy and use it
do the same everywhere else
spell effective level system reworked
update copyright
*** empty log message ***
just in case, set nodrop on the freed objects map. reorder some code in get_pet_enenmy
fix possible crash bug
update copyrights and other minor stuff to deliantra
- rewrite/cleanup ob_blocked a little. its more efficient now, probably has less bugs and more bugs. - get rid of now unused P_NO_PASS.
fix summon golem w.r.t. head
- 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.
- improve observe - remove more cruft code - archetype loading almost works again, reloading probbaly still borked.
- 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
fix segfault, real cause still mysterious
another crash fix - maybe owners should always be players
owners sometimes are not on a map but in the inventory of somehting else
This is the first rough cut of the skill use system (use the STABLE tag). Details will likely change, and combat skills do not work very well, but it works quite well. Players no longer have a shoottype or range slots, instead, each player has these members: combat_skill/combat_ob the currently selected skill (and weapon) for direct attacks. ranged_skill/ranged_ob the currently selected ranged skill (and bow/spell/item) golem the currently-controlled golem, if any.
server crashed this morning because a freed golem tried to follow his owner, triggering the assertion failure. the golem had no owner, but the owner still had him in his range slots. I refactored a bit of the code and rearranged it to hopefully increase chances of this not occuring again.
finally fixed the inactive pet monsters and the disappearing pet monsters of traps/runes and doors. yay!
fixed dissappearing and inactive summoned monster bug with traps and runes.
- rewrote more face handling code - automatically send smooth faces, as the client will need them anyways and it makes little sense to wait for the client to axk for it. of course, gcfclient suffers from weird ordering problems again. - UP_OBJ_FACE was often abused in situations where other things changed, updated lots of spaces, probably more to be done. - update_smooth became so small that inlining it actually clarified the code. similar for update_space, which is not inlined for other reasons. - faces were not initialised properly - add versioncheck for face data - rewrite invisibility handling a bit: god finger etc. now makes you blink, blinking routine has changed to be less annoying and more useful while still indicating invisibleness.
just experimenting
- fix a horrendous bug that might have caused all the map corruption - optimise/modernise some map-insert-related stuff - fix debug_desc - remove crypt configury - minor adjustments/cleanups
comments
more preperations for player eviction
use destroy_on_detah, not no_drop, for summoned stuff
added some copyrights
set no_drop flag on all inv items of created objects (e.g. pets), experimental.
implemented proper support for empty treasures, which sadly occur in empty treasure lists. fixing treasurelists to have no entries at all would be even more complicated, but even when this is fixed, the current changes only make the server more crash robust to bad treasures. Also removed the 'NONE' specialcase for treasure lists. Developers should use 'none' instead now.
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
further cleanups and oofication
- more ooficiation - removed now superfluous remove calls
replace some function- by method-calls
remove golem_count, likely golems are destroyed late now
mapstruct => maptile removed many ytypedefs in favor of structure tags
replace was_destroyed by much simpler and less expensive ->destroyed, which is valid, as objetc pointers are now reliable.
indent
removed now obsolete generation counter checks - further slimmed down sizeof(objetc) to 616 bytes
*** empty log message ***
indent
- introduce shstr_cmp for mass comparisons to shstr and make use of it - introduce assign utility function to replace strncpy
indent
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
expand initial tabs to spaces
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.