update copyrights and other minor stuff to deliantra
cleanup
move hiscore and whereabouts to perl
- 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).
rename arch->name to arch->archname for preparation of subclassing object
update copyrights in server/*.C
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.
*** empty log message ***
rip out old help implementation in favour of the new one (which incidentally is non-blocking)
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
why check twice for wiz flag?
afk in perl
bug reports should be in perl, if ever
nano-cleanups
- tell player about each region as she enters. - region longnames no longer are prefixed with in, change accordingly.
replace amny strcpy by checked assign's
- remove google sparsehash dependency again, its actually slower than gcc's current std::tr1::unordered_hash. - remove hardcoded archtable code - the archetypes table is now no longer limited by an hardcoded constant but can grow dynamically at runtime. - removed some cruft
- improve error messages from object_thawer to incldue line numbers - provide geenric parse error handler - finish basic design of generic object loader - implement generic regions loader - use it to load regions: loader_region loader; if (!loader.load (filename)) error; - regions should now be the very first filetype that could be reloaded at runtime
fix abort
partial region cleanup
- implement per-space regions
*** empty log message ***
comments
""
added some copyrights
preliminary snapshot check-in, DO NOT USE IN PRODUCTION SYSTEMS See the Changes file for details
misc stuff
introduce for_all_maps
the big rename
interim.checkin
- implement (mostly untested) array member support for genacc - make some arrays and other members available to perl - redefined meaning of NUM_FLAGS (really meaning number of flags now, as the code assumed anyway). - moved afk flag to client, where it belongs (make sno sense to save it, is also true for wiz &c). - updated extensions to reflect all that (Jewler.pm should be tested w.r.t. resistances)
- 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?)
- made state a per-client variable (that does not magically make state a per-client thing!) - rename player->socket to player->ns. its not a good name for "client", but it is an historical artifact, and better than "socket".
- 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...
- rewrote most of the socket loop code - moved connection accept into tcp.ext - no evil socket copying anymore, needs more cleanups
further cleanups and oofication
- medium decruftification - medium cleanups - make settings accessible to perl using cf::settings->mutator (completely untested)
- more ooficiation - removed now superfluous remove calls
replace some function- by method-calls
- simplify headerfiles (this is the 21st century) - remove long long hacks for printf etc.
lld -> I64_PFd
removed #ifn?def WIN32 from all files
removed regex comparison. this is now done with perl
re-implement dump and dumpbelow
remove wizcast, wizpass, goto
*** empty log message ***
remove who command
added many accessors and mutators to struct player, including *title* and (hint, hint) *own_title*
mapstruct => maptile removed many ytypedefs in favor of structure tags
indent
indent
Changes... - alternative shstr representation, saves code - use glibs splice memory allocator (seems slower) - use simpler memory/lifetime management for objects, no recycling
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
remove compression support, intiialise perl earlier etc. etc.
expand initial tabs to spaces
- 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.