Complete.Org: Mailing Lists: Archives: freeciv-dev: August 2003:
[Freeciv-Dev] Re: (PR#5568) add I_DEMOLISHED Impr_Status
Home

[Freeciv-Dev] Re: (PR#5568) add I_DEMOLISHED Impr_Status

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: kaufman@xxxxxxxxxxxxxxxxxxxxxx
Subject: [Freeciv-Dev] Re: (PR#5568) add I_DEMOLISHED Impr_Status
From: "Per I. Mathisen" <per@xxxxxxxxxxx>
Date: Sun, 31 Aug 2003 03:51:03 -0700
Reply-to: rt@xxxxxxxxxxxxxx

On Fri, 29 Aug 2003, Mike Kaufman wrote:
> The problem comes on city destruction. What happens if a building confers a
> global effect that survives and then its city is destroyed. We still want
> that effect active (Apollo and Manhattan are examples). Where is the effect
> stored in a savegame? Currently we have a destroyed_wonders field which can
> be transformed into a global_improvements field: a array of B_LAST elements
> that counts the total number of improvments for everybody. But we would
> also need such an array for each player (Player range) and each island
> (Island range). Unless we restrict .survives in some way, I don't see
> another way.

I dislike the idea of free-floating effects. Effects should IMHO be
grounded in a game basic element like global, city, unit, player or
government. An island is not a game basic element, it is a data property,
and therefore to assign an effect to an island seems wrong to me.

A quick suggestion: It is only cities that can have these ghost effects.
So perhaps we can ground ghost effects in ghost cities? Every city that is
destroyed is moved over to a pplayer->destroyed_cities genlist of cities,
which for now can have the sole use of being a storage container for city
effects. (Bonus: Clients can use this genlist to implement city ruins as a
visual effect.)

This avoids the problem of commensurability of effects. Can a city effect
always be translated into a player/global effect? What if the city effect
is dependent on the (x, y) position, or some other property, of the city?

> Maybe it's time to think hard about breaking forward compatibility for
> savegames (i.e. 1.14 servers won't be able to load [correctly] games saved
> with 1.15 servers).

This is fine with me. 1.14.0 and 1.15.0 will be incompatible in so many
ways anyway.

  - Per




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