On Sat, Mar 30, 2013 at 10:02:02PM +0200, Marko Lindqvist wrote:
> On 30 March 2013 18:42, Emmet Hikory wrote:
> >     For terrain.ruleset, there are [options] and [parameters] sections.
> > Do most of these still serve useful purposes?  From a quick look at the
> > code and a bit of testing, I would think they are mostly also handled in
> > a different way:
> >
> > [options]
> >
> > may_road:
> > may_irrigate:
> > may_mine:
> > may_transform:
>  Their removal has been in my TODO for a very long time, but I've
> never initiated the discussion (they have originally been added for
> some reason, right?)

    Bernd Jendrissek helpfully pointed me at SVN commit 1466 which added
these values.  The inclusion of the more recent per-terrain controls
seems to be SVN commit 7513 with per-terrain target activities, which
also inherited the may_* values (perhaps for compatibility).  I'm not
sure they are still needed since commits 19264, 21796, 21845, and 21850
which included the effect controls, and even less with the more recent
gen_road changes (I'm not sure precisely which commit to blame for this
obsolescence of may_road).

    Given the timing and history, I think they can be safely removed now
that everything else has landed (arguably they might have been candidates
for removal post 7513, but the more recent work gives ruleset authors
enough flexibility that the original options seem awkward).

> > [parameters]
> >
> > road_superhighway_trade_bonus:
> >     This appears to be used only to store the value in the ruleset and
> > send ruleset packets continaing the value, but not in any of the code
> > that actually checks the trade value of a square.  For all the shipping
> > rulesets that have a "Super Highways", this appears to be managed with
> > the Output_Per_Tile effect.
>  Is this true for stable branches too, or have I changed this as part
> of gen-roads? If stable branches are affected, their documentation
> (ruleset comments) should be updated to describe the situation. With
> ruleset format and network protocol freezes we can't remove it
> completely from stable branches.

    This appears to be true for S2_0, S2_1, S2_2, S2_3, S2_4, and trunk.
In S1_14, the value is used in city.c:base_city_get_trade_tile().  It
appears to be removed with SVN revision 8202, which introduces the
effect-based improvement for relevant then-current rulesets.  While
there's no handy way to search for gen-road revisions, I believe that
this was rendered obsolete before any of the gen-road work.

    For the ruleset comment patches, which releases are still sufficiently
supported to benefit from this?  For 2.4, can the parameter just be dropped?
For trunk, I presume it should be dropped.  Also, procedurally, should this
be one ticket or multiple tickets?  Is it better to call it "patch" or "bug"?

> > pollution_* and fallout_*:
> >     These seem like they would be better handled by effects.  Something
> > like:
>  As we're going to rework specials for 2.6, I don't think it makes
> much sense to change this to temporary format that would change again
> to next version (forcing ruleset authors to update it for each
> version)

    I looked through the mailing list archives a bit trying to find
discussion of the plan for extras, without success.  Is there a
reference available?


Freeciv-dev mailing list

Reply via email to