juk wrote:I have *finanally* got the x11 client to draw (inefficiently) maps which contain large images...
The function gtk_draw_map() is an example of one of *many* 'timebombs', that *will* go bang in the end!
I think this (current/cvs) comment sums up the foreseable future of cf devel:
/*After long long long investigations on why the multipart objects did
disappear when entering map view from right or bottom, scrolling
through whole server code, i concluded the following line should be
commented. If a multipart object was on a square outside of map,
containing the tail, tail may be cleared by following process and
so we end up with things like tower disappearance.
tchize@myrealbox.com*/
Notice the words: "long long long...", if things carry on this way, then more, and more, and more, time will be *wasted* on stuff like this, leaving less, and less, and less, time for actually adding things to cf!!!



Baaaka!
I reworked the gtk_draw_map() to handle the smoothing code a while ago. This was not easy since i had to take care of multipart objects, heads, tails, smoothinglevels and the 3 layers of pictures used to draw. The way to draw things are clearly documented in Developper doc (not in source code, since this would make very long comments). But it took time since it is simply some algorithmic problem, not because of documentation problems. Some behaviours related to smoothing code still need to be documented but they are quite well understandable from the doc i wrote for GFXers. Unlike what you say, there is beta testing. But it's not easy to think about every problems and test them. I know there has been problems with smoothing code which laid to crash in some configuration (image cache related prolems) and which have been fixed.
Now, why did it take a long long time to fix? Quite simple, i made the algorithmic error. But, i don't know why, i was thinking this was a server related problem. So i check the map1cmd for server, looked at it from all points of view, and the saw that the problem was simply the concerned line in client (sic). I wrote the comment late at night, feeling a lot stupid not to have noticed the error before and most important not willing anyone for strange reason to uncomment my line (this has been seen in the past, 2 developper doing exactly the same mistake by writting exactly the same erroneous line of code).
If you think algorithmic errors are always easy to spot, shame on you. I think i have enough experience to say some errors are not easy to spot, especially in a multi developpers envirronement.
Ok you might also ask why we don't submit, for example, the patch on the mailing list so it can be beta tested before CVS submitting. I don't do this for a simple reason. When i submitted patches for feedback and beta testing i got some suggestion, worries, and notices from people who didn't even open the patch to look at the content. So i stopped submitting patches, except for really important changes.
Now, please, could you stop using comment from joking developpers as political arguments. Doing this only proves you have no knowing of other developpers background. Most of developpement discussions take place on irc channel (faster than mailing list) where we say stupid things along with, sometime, interresting things. But i never saw a "juk" on irc channel. I don't blame you for that but don't blame me for sparing time to develop a game i like and who, am sure, is far more stable than some commercial 'released' games.