Complete.Org: Mailing Lists: Archives: freeciv-dev: November 2000:
[Freeciv-Dev] Re: Patch: Use original city id at client (Fixes some bugs

[Freeciv-Dev] Re: Patch: Use original city id at client (Fixes some bugs

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: Thue <thue@xxxxxxx>
Cc: Freeciv dev <freeciv-dev@xxxxxxxxxxx>
Subject: [Freeciv-Dev] Re: Patch: Use original city id at client (Fixes some bugs)
From: Marko Lindqvist <caz@xxxxxxxxx>
Date: Tue, 21 Nov 2000 16:50:00 +0200 (EET)

 I hope I figured out right what you tried to say. If my response seems
not to make sense, it's most likely my fault (if my logic is not obvious,
don't bother trying to figure it out)

On Mon, 20 Nov 2000, Thue wrote:

> On Tue, 17 Oct 2000 12:05:05 Marko Lindqvist wrote:
> >
> >  Always use original city id at client side instead of one currently used
> > internally at server (changes when citychanges owner). This way all
> > clients (and server with some mapping between original id and internal
> > id)
> > always have same id for cities.
> >
> >  This fix following known problems:
> >
> >  1. Client reports traderoute to end up in unknown city when city in fact
> >     is known.
> >
> The fix to 1. doesn't seem rigth. You could concievably have a city C with
> a traderoute to p1. Then the city is transformed to D by being taken by
> another player, but p1 still sees it as C. Then p2 makes a traderoute to D.

 All clients see city with original id (id city is founded with). So, p2
also makes traderoute to C.

> Then the city is taken again and becomes E. Now you would need to keep the
> ids of both C and D, not just the original ID.
> A better way would be, when sending a city to a client with a traderoute to
> a city at x,y , to check the players private map and find the ID of the
> city there, and send that.

 It could be another city founded at same place after first one is
destroyed. One might consider it same (refounded) city, though.



[Prev in Thread] Current Thread [Next in Thread]