Alex Schultz wrote:
> Quoting Andreas Kirschbaum <[EMAIL PROTECTED]>:
> > - client receives "map_scroll +1/0"
> >   client basically ignores it because it has a cleared map state
>
> This ignoring as I see it is the main issue with the current
> semantics. For one thing the python bot that I started on a while ago
> wouldn't ignore the map_scroll in this case, and therefore there isn't
> such a display error in that respect (though it's probably not a good
> thing to model a proper implimention based on because it has even more
> display errors).

Maybe I did use the wrong words here, but the client does not just
ignore the map_scroll command: I tried to say that the client currently
has an empty map. Now he receives the map_scroll command and properly
scrolls the map view. But since an empty map scrolled by one tile is
still an empty map I said it "basically ignores" the map_scroll command.


> > - client receives "map1a <difference of Scorn to gatehouse>"
> >   Note: this information is not correct because it is a difference
> >         from Scorn, not a difference from an empty map. This is why
> >         some tiles show up as blank for a short time: all tiles that
> >         did not change are displayed blank (client already has
> >         cleared his map view).
>
> I'm not exactly sure this is an issue *if* the client doesn't ignore
> the map_scroll.

This is not the problem I tried to explain: the client does *not* ignore
the map_scroll command (see above), but the problem is that the server
sends:

1. newmap

2. difference S->G

3. difference E->G

(with S=Scorn, G=gatehouse, E=empty)


Therefore the client updates his map view as follows:

1. newmap: client clears his map view; it is now E.

2. diff S->G: client "patches" his map view (currently E) with a
   difference S->G. This is not correct because that difference should
   be applied to the map view S, but not to E.

3. diff E->G: client "patches" his map view (currently "E patched by
   S->G", which is often "G with a few blank holes in it"). Again, this
   is not correct because this difference should be applied to the map
   view E but not to "G with holes".

_______________________________________________
crossfire mailing list
[email protected]
http://mailman.metalforge.org/mailman/listinfo/crossfire

Reply via email to