update copyrights and other minor stuff to deliantra
welcome to fxix protocol version 3, with uniform handling over all resources
the map prefetcher could end in an endless loop if fed with illegal paths. now it will only leak memory on corrupted maps. or so.
- 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.
- support priority as second argument of askface - send images of same priority in fifo order, but higher priorities first.
update copyrights in common/*.C and util/*.C
move animation info into facedata and make it reloadable at runtime
- be more robust when reading faces. - do write face names, not face indices, when saving files.
- 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.
- rewrote smooth face handling, as a side-effect, smoothing seems to work again and smooth faces can be reloaded. - the server now sends the full animation for an object the first time it is seen, this uses slightly more bandwidth initially, but avoids the flickering for objects change their face later.
- MAJOR CHANGE - you now need to use cfutil to install arches. - former bigfaces are broken in the server - bigfaces are no longer supported. at all. - use face numbers instead of pointers * saves lotsa space * saves lotsa indirections * saves lots(?) cpu cycles - completely rewrote face handling - faces can now be added at runtime - reload will add new faces - this does not apply to animations - use a hastable instead of binary search (faster) for faces - face caching is broken - facesets are gone - server always reports MAX_FACES to any client who asks
remove default_smoothed images - unused. remove references to mythical sdefault.001 / default_smoothed.111 image from server code.
- the damn rotate shift checksum just failed on me - add crc32 and use it for bmaps_checksum (probably also for images).
- useless ยต-opts - use maximum norm in get_rangevector (a bit, should use more)
sneaky bug i introduced there
fix rune writing no longer possible due to fixed update caching
- rename Animations => animation - rename New_Face => facetile - add but do not implement some generic loader framework classes
comments
- implement cf::map::unique_maps () - support string overloading for cf::path objects - minor cleanups
added some copyrights
started a fix of the log
- implement event watcher autoncancellation on reload - used it everywhere - removed lots of compatibility cruft - configure does no longer check for mandatory unix functionality/headers - confgiure now runs much faster
indent
indent
generic accessors, take one
Changes... - alternative shstr representation, saves code - use glibs splice memory allocator (seems slower) - use simpler memory/lifetime management for objects, no recycling
remove compression support, intiialise perl earlier etc. etc.
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.