- 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
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.