copyright update 2018
freearr => DIR
remove eol whitespace
*** empty log message ***
copyright update 2016
*** empty log message ***
move dm/dmhide/nodm/hide to perl, remove most hidden handling and numerous related changes
make sure randomitems don't destroy the scroll
introduce weight_t, make it unsigned
trailing space removal
*** empty log message ***
remove unused variables, kernel_panic
update copyrights to 2012
improved quad removal and building.
*** empty log message ***
*** empty log message ***
set the x/y coords of the open_space properly.
implemented quad wall and floor removing and open_space exits.
update copyright to 2011
use set_speed to change speed
sigh
curse/magic identify
better need_identify
remove fishing code - use mining instead
find_makr_object > mark, fix throwing
*** empty log message ***
mroe failmsg
get rid of QUERY_FLAG/SET_FLAG/CLEAR_FLAG macros that I always hated
*** empty log message ***
*** empty log message ***
*** empty log message ***
mining skill :)
tuning
*** empty log message ***
update copyright for up to 2010
remove bogus 2007 copyright that was added wrongly by the script, update to affero license
*** empty log message ***
indent
-instance, some los fiddling
speed is positive inside the server
*** empty log message ***
lots of cleanups
*** empty log message ***
make effectively static symbols actually static, part 1
*** empty log message ***
indent
Add inscribable arches for other book types. Use 'container'/weight_limit to define capacity of inscribables in characters. Add treasures/arches to specify books with/without text. Scorn and Navar Public Libraries use these so they don't generate inscribables. Fix bug allowing theft of blank books from libraries. Fix bug preventing adding an adjective to a book name if the titles are used up. Change error message on reading empty book to be more clear. Change error message on failed inscription [too much text] to be more informative. Looking at an inscribable will tell you what you can do with it/what its capacity is in a hint. Fix broken debug statements in book generation.
clarify license
Fix exploit where books inscribed or marking runes created by players could contain special text such as "@match" or "@eval" which would allow them to execute arbitrary code.
adjust los lightness a bit
*** empty log message ***
*** empty log message ***
rmeove most shstr-strcmps
refactoring of shstr classe,s new shstr_tmp, lots of minor rewriting
fixed jump fix.
fixed jump skill.
*** empty log message ***
*** empty log message ***
sigh
*** empty log message ***
make oratiry count as kill
indent
*** empty log message ***
see Changes
- remove all "obviously safe" uses of esrv_del_item.
- fix weight update on insert-merge - refactor get_split_ob into ->split, taking advantage (partially only) of split managing client updates.
refactor decrease_ob* into ->decrease method.
*** empty log message ***
update copyrights and other minor stuff to deliantra
increase jumping max to 3 spaces or the skill level, whatever is lower. this is actualy not bad, it quadruples your potential running speed...
adding backtraces really helps: the "hitter in no relation to target" message was actually caused by the jumping skill (ninjas atcually have it!). jumping removed the hitter from the map and only re-.addedit after hitting, so it indeed was in no relation to target.
*** empty log message ***
- hopefully fix say w.r.t. NDI_REPLY - rework the disease code a bit. - set_owene rfater inserting whne throwing or diseasing. these are the only cases i know where the owner is set when inserting into another object. *cough*
- new type: INSCRIBABLE - inscription only works on inscribable items (spellscrolls special cased) - add new empty scroll, empty book and empty mailscroll archetypes - use mailscroll in ipo.
*** empty log message ***
- 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.
- 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).
update copyrights in server/*.C
A player must never apply two skills. crossfire always has and will ever complain about that. Nevertheless, levitation (and ONLY levitation) gets applied in addition to other skills. Now that cannot work with the new skill system. Introduce a special flag for levitation only so it only gets half-applied. This probably fixes quite a number of older "has two skills applied" messages.
rebalance singing and oratory, copy_doc
- fix oratory to correctly account to the oratory skill - change the unapply logic to be more careful (basically ignore skills as they get unapplied a lot)
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.
some floatingpoint µopts
do not output archetypes with names starting with type_ or class_, a bit of a hack
- add two new slots for shields and combat weapons - make slots into bitfields, they are not too speed-critical and this saves 16 bytes in the object structure. - add accessors to body lcoation names etc. to perl - use those in the body command
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.
rework material code in preparation for nuking object->materials, also add some useful object methods in preparation of the mapspace limiting
support maps with and without .map extension, rename to .map on save
- fix a crashing bug inside the random map generator - do not decrease dungeon size with random map depth
comments
more preperations for player eviction
added some copyrights
- added maptile->insert and object->insert_at methods that might make code using it clearer. - replaced some insert_ob_in_map calls.
replace update_ob_speed by ->set_speed
- 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?)
removed EXPERIENCE type.
- minor cleanups - minor optimisations (in_player vs. is_player_inv) - added P_PLAYER map flag - some (dead) concept code
further cleanups and oofication
added a needed abstraction
- more ooficiation - removed now superfluous remove calls
replace some function- by method-calls
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
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
- 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
further refinements
get rid of esrv_map_scroll and MapNewmapCmd, map update will handle it automatically
fixed a possible crashbug with sining...
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.