[crossfire] Map Protocol Question

Mark Wedel mwedel at sonic.net
Wed Jul 6 01:43:33 CDT 2005


Alex Schultz wrote:
>
     
      Hi,
     
     >
     
     
     >
     
      I'm currently making a bot framework with a GUI display similar to a normal
     
     >
     
      client in python. I have managed to impliment handling for the map protocol in a
     
     >
     
      way that works quite well except for a few obscure bugs, one of which I'm
     
     >
     
      wondering if anybody has any idea about.
     
     >
     
     
     >
     
      I've noticed that often while teleporting in the GTK client, that sometimes some
     
     >
     
      seemly random tiles are blank for a very brief moment and then display after the
     
     >
     
      others. In the bot that I'm making, for some reason this same thing happens
     
     >
     
      except those tiles stay blank. I haven't been able to determine the pattern to
     
     >
     
      which tiles are blank, but I'm wondering if anybody has any idea about possible
     
     >
     
      cause of that.
     
     
  I'm not sure why the tiles would stay blank on your client - that bit seems odd.

  I've not investigated the problem at all, because as said, it does correct 
itself pretty quickly.

  My thought is something like this:  The server logic is to only send those 
spaces that change.  When you change maps, there are cases where some spaces may 
be the same (or perhaps some faulty logic on the server part).  So those aren't 
send on the first map command.  On the next one, the server sees that some data 
it has sent isn't correct, and sends the updated data correcting the problem. 
But since there is roughly 1/8th a second between those two commands, you see 
the missing spaces briefly.

  I seem to notice the most when leaving some of the shops in scorn.  But the 
map draw logic has gotten very complicated with various changes and I really 
need to redo it at some point.


    
    


More information about the crossfire mailing list