Follow-up Comment #10, patch #3835 (project freeciv): I'm inclined to agree that survives shouldn't matter (the code was written to compare the code structures, rather than with careful semantic analysis). That said, I can think of a couple cases where one might use this:
a) Creating a condition that applies only if some Wonder (Great or Small) has been both built and subsequently destroyed (e.g. nobody can build National Libraries until someone destroys the Library of Alexandria). b) Creating a condition that applies only if some nation has been in the game and then subsequently been destroyed (e.g. nobody can build Janissaries until the Byzantines have been thoroughly conquered (but still have remaining citizens in cities (nationality condition)). [Note: this depends on someone addressing patch #1339 ] I don't know if either of these are at all likely, or if there are other future semantics where opposing "survives" may be semantically meaningful. Even if preserved, I imagine this class of requirement would be much more useful for specific scenarios than for a general ruleset intended to be played with random maps and nations. In the event that survives is not compared in are_requirements_opposites(), should it not also be removed from are_requirements_equal()? (Anyone contemplating this should investigate the callers: it may be that the packets_gen stuff complicates this and requires different semantics than the rssanity stuff.) _______________________________________________________ Reply to this item at: <http://gna.org/patch/?3835> _______________________________________________ Message sent via/by Gna! http://gna.org/ _______________________________________________ Freeciv-dev mailing list Freeciv-dev@gna.org https://mail.gna.org/listinfo/freeciv-dev