Andreas Vogl wrote: > On some machines (like SUNs at my university), I'm still bound to > use cfclient. > I've noticed that cfclient has a few problems: > > - Darkness doesn't work. The tiles are either fully visible or pitch black. > I suspect this might be due to the transparent darkness code not working > or something? > > - Fog of war doesn't work either. Probably related, but I'm not sure > how it is supposed to work. As it stands, I can't tell which squares are > really visible and which are fog of war. That's quite confusing. > The worst thing about it is that the fog of war tiles stay like "frozen" > after moving out of sight. That means there are sometimes images > of myself/spell animations/bolts etc which stay "frozen" on those tiles. I fixed those up - they both use stippling logic (given the opaque nature of Xpixmaps, we can't easily do clever things like adjust the color in the images themselves). I don't know what that feature was removed, but I'm the one that probably did it :) > > - When large parts of the map view change (like when applying an > exit, or casting dimesion door) there are display errors for a short > moment. Some tiles go black/white for a split second, then return > to normal. That's not terrible, but it didn't happen in older versions. I actually see it on the gtk client at times. I looked into it, but can't remember the details now. I seem to recall the problem was really that the server was sending to map commands, and thus the client re-draws the map two times. I don't remember the details on why the server sent two commands, but I recall there was a decent recent for it. I think in the case of exits, it sends the idea to scroll the map to the client (since the player moved in some direction), but the exit then transports the player to another map, so everything has to get re-drawn at that point. This is indirectly caused by the fact that the client draws the map whenever it gets new map information from the server. A smoother approach would be for the client to draw the map when what is has displayed is out of date with respect to information it has from the server, and when there is no pending data to be read from the socket from the server. This has the advantage that the display is pretty much the must cpu intensive portion of the client - thus, if you were playing on a slow machine, the map update may skip a few frames, but at least not be lagged (I'd rather see current state of things than a complete record of things that may be out of date). > > > Is cfclient kinda "out of support"? Well, I can understand if it is, but > it would be really great if the issues could be improved with some > minimal effort: > 1. If it was possible to disable fog of war for example, that would do fine > for cfclient. Fog of war is nice but really not neccessary, so instead of > having a "broken" fog of war, I'd much rather disable it. > 2. It would also be great if the old darkness code could be reused for > cfclient, where patterns of black and transparent pixels used to > "simulate" darkness. That was not perfect maybe, but good enough, > and a lot better than the current state (not working). ;-) Your wish have been met - I'll check in my changes sometime this evening. I don't remember why I didn't fully implement the display logic in the client - perhaps I forgot or lack of time. But it was ignoring things like darkness and fogofwar on the space. Now it should properly honor the -fogofwar and -nofogofwar as well as -darkness and -nodarkness flags. the support for the x11 client is so-so. The fact that it compiles and runs and use the same basic logic as the gtk client means that it is not that hard to support. However, bug fixes for it are not high on my priority list, and highly unlikely that there will be much in the way of new features added to it. _______________________________________________ crossfire-devel mailing list crossfire-devel at lists.real-time.com https://mailman.real-time.com/mailman/listinfo/crossfire-devel