- prepare common/ for head_ => head change - add some copyrights for files where they were missing
cleanup
fucking naming conventiosn
instrument random_roll with new logBacktrace and pray that it works
we get ever more nifty
- add format utility function. - split dynbuf into dynbuf and dynbuf_text. - use dynbuf_text for examine strings instead of outputting each line seperately. tried to use stringstreams but they add insane overheads (as does std::string, but less so).
- rely on new stability for further cleanups and minor improvements
- fix tausworthe generator initialisation (no big deal) - use numerically more correct multiplication instead of remainder. this has surprisingly good consequences (which I originally didn't expect): - the generated code is smaller and faster - gcc optimises the 64 bit arithmetic extremely well on 32 bit archs. - behaviour for negative and zero arguments (both illegal) is pretty well-behaved.
- the damn rotate shift checksum just failed on me - add crc32 and use it for bmaps_checksum (probably also for images).
rework material code in preparation for nuking object->materials, also add some useful object methods in preparation of the mapspace limiting
fix dead code to confuse me less
- experimentall.y determine minimum random map size (12) - harden random map generator by stresstesting - reduced codesize while increasing readability (RANDOM => rndm) - fixed a likely unimportant bug in random_roll64 - possibly broke lots of code
added checkrusage extension
fix random number generator seeding
- goofing around with my skills (overoptimisation to learn something)
RANDOM was broken due to signedness issues, also rewrote random_roll, no longer uses luck, but should
just experimenting
comments
sigh
- fix crash bug - better fork & abort (untested)
added some copyrights
this is close to working
set original flag so decay object doesn't go wild
- style maps need very special treatment - cf has a nonzero chance of crashing in a random map
preliminary snapshot check-in, DO NOT USE IN PRODUCTION SYSTEMS See the Changes file for details
the big rename
interim.checkin
- small, but subtle, rewrite of object management - perl will now keep attachable objects alive - objects are now refcounted - refcouts need to be tested explicitly (refcnt_chk) - explicit destroy is required current - explicit destroy asks "nicely" for the object to self destruct, if possible - refcounts will be used during mortal killing - minor bugfixes, optimisations etc. - some former hacks removed.
- made refcounted use a virtual destructor (codesize enlargement ~5k), in preparation for correctly refcounted objects with definite lifetime on both perl and c sides.
- minor cleanups - minor optimisations (in_player vs. is_player_inv) - added P_PLAYER map flag - some (dead) concept code
ooification
another bug, do some adjustments to coredumping 'algorithm'
- clean up some code - fix some possible (minor) bugs - use a bitset for anims_sent - fix a memory leak - removed dead code
- socket i/o is completely asynchronous now - some command sare handled immediately - others (most palying related commands) are queued for later (as of now synchronous) processing - specifying a max queue length (in seconds) is possible, but disabled - also add some syntax sugar for network code
- 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
* remove arch.h * use refcounting for archetypes * cleanup * strat of generic garbage collector
mapstruct => maptile removed many ytypedefs in favor of structure tags
indent
*** empty log message ***
tuning
make use of slice_allocator and inline zero_initialised
- improve assign to prepend "..." - make more use of assign - implement op->debug_desc() and make some more use of it
fix perl class for archetype, never free once-allocated objects, or destruct them, there are too many long-lived references (and refcount doesn't help, likely because it isn't correctly being incremented/decremented).
indent
fix a few ugly pod-constructs on non-pod objects, and a few newly introduced bugs
genaccess, take three
generic accessors, take one
Cleaned up code a little.
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
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.