Complete.Org: Mailing Lists: Archives: freeciv-dev: December 2004:
[Freeciv-Dev] (PR#11477) gen imprs
Home

[Freeciv-Dev] (PR#11477) gen imprs

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
Subject: [Freeciv-Dev] (PR#11477) gen imprs
From: "Vasco Alexandre da Silva Costa" <vasc@xxxxxxxxxxxxxx>
Date: Sun, 19 Dec 2004 10:22:01 -0800
Reply-to: bugs@xxxxxxxxxxx

<URL: http://bugs.freeciv.org/Ticket/Display.html?id=11477 >

> [cazfi - Sun Dec 19 17:27:31 2004]:
> 
>   That's true for improvement_redundant(), but not for equiv_repl check:
> equiv_dupl    = "Great Wall"
> ;equiv_repl   =

Hmmm... Yes you are right. I believe someone pointed this to me before
but I forgot. Great Wall was ok.

But this is true for Sun Tzu as well, which also gets obsolete and uses
equiv_repl. Forbidding you to build Barracks just because you have
Sun Tzu doesn't make much sense IMO. Neither does forcing you to
destroy your Power Plant to be able to build a cleaner Hydro Plant.
Or not allowing you to build a Solar Plant if you have Hoover Dam.
The Solar Plant cleanups global warming while Hoover Dam will not.

> I were not talking about improvement_redundant(), but only its 
> equiv_repl part. It gave ruleset authors power to prohibit building 
> 'conflicting' buildings:
> ; equiv_dupl  = list of buildings that duplicate this building if
> ;               this city is within that building's range (may
> ;               still build this, but will have no effect)
> ; equiv_repl  = list of buildings that replace this building if
> ;               this city is within that building's range (not
> ;               allowed to build this)
> 
>   Is similar effect possible by other means?

This was a very clumbsy solution. The alternate solution chosen is
simpler and works.

For the old code:
equiv_repl was used for Cathedral/Michelangelo,
Barracks I/II/III/Sun Tzu, Granary/Pyramids and Hoover Dam/Power
Plant/Nuclear Plant/Hydro Plant/Solar Plant.

equiv_dupl was just used for City Walls/Great Wall.

To recap, I think forbidding the player to build something
just because it is redundant was a plain bad choice. The source for
the redundance may vanish, either because the source wonder goes
obsolete or you lose the city with that wonder. The player may know
this will happen beforehand and want to have redundance for safety.
We allow this for Great Wall, I see no reason not to allow this for the
others.

For buildings with non-equivalent feature sets, like the Plants, this
mechanism makes no sense at all. All generate the same shields, but some
are cleaner than others. They are not exact duplicates or replacements
of each other. Except for Hoover Dam/Hydro Plant.

With gen imprs you can build anything that isn't obsoleted for which
you have the reqs, which is basically what already happens for units.

Obsoleted improvements get automagically sold once that obsoletion tech
is discovered.




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