bugFreeciv - Bugs: bug #21419, Conjunctive requirement sanity...

 
 
Show feedback again

bug #21419: Conjunctive requirement sanity checking applied to disjunctive building obsolete_by list

Submitted by:  Jacob Nevins <jtn>
Submitted on:  Fri 03 Jan 2014 01:45:14 AM UTC  
 
Category: NoneSeverity: 3 - Normal
Priority: 5 - NormalStatus: Fixed
Assigned to: Jacob Nevins <jtn>Open/Closed: Closed
Release: Operating System: Any
Planned Release: 2.4.2,2.5.0,2.6.0

Add a New Comment (Rich MarkupRich Markup):
   

You are not logged in

Please log in, so followups can be emailed to you.

 

Sun 05 Jan 2014 10:58:57 AM UTC, SVN revision 24045:

Add a notion of conjunctive/disjunctive checking to ruleset sanity
checking. (Disjunctive checking does almost nothing currently.)

See gna bug #21419.

(Browse SVN revision 24045)

Jacob Nevins <jtn>
Project AdministratorIn charge of this item.
Sun 05 Jan 2014 10:54:44 AM UTC, SVN revision 24033:

Add a notion of conjunctive/disjunctive checking to ruleset sanity
checking. (Disjunctive checking does almost nothing currently.)

See gna bug #21419.

(Browse SVN revision 24033)

Jacob Nevins <jtn>
Project AdministratorIn charge of this item.
Sun 05 Jan 2014 10:47:06 AM UTC, SVN revision 24019:

Valid obsolete_by requirements lists for buildings could be rejected.
Add a notion of conjunctive/disjunctive checking to ruleset sanity
checking. (Disjunctive checking does almost nothing currently.)

See gna bug #21419.

(Browse SVN revision 24019)

Jacob Nevins <jtn>
Project AdministratorIn charge of this item.
Fri 03 Jan 2014 01:45:14 AM UTC, original submission:

In sanity_check_ruleset_data(), sanity_check_req_vec() is used for all requirements lists, including pimprove->obsolete_by.
However, obsolete_by is a disjunctive ("or") list -- any of the requirements is sufficient to obsolete the building. The checks currently in sanity_check_req_vec() are only appropriate for "and" lists.
For instance, it's a bit of a stretch, but it would be possible to allow either of two different Govs to obsolete a building, but the sanity checking forbids it. (Two techs are more likely, but the ruleset checking allows this.)

(Not that complex obsolete reqs are currently handled particularly gracefully elsewhere, particularly in the help, but it would work in gameplay terms.)

Jacob Nevins <jtn>
Project AdministratorIn charge of this item.

 

(Note: upload size limit is set to 1024 kB, after insertion of the required escape characters.)

Attach File(s):
   
   
Comment:
   

Attached Files
file #19638:  S2_5-rssanity-disjunctive-reqs.patch added by jtn (7kB - text/x-diff - trunk/S2_5/S2_4 r24003)
file #19639:  S2_4-rssanity-disjunctive-reqs.patch added by jtn (7kB - text/x-diff - trunk/S2_5/S2_4 r24003)
file #19623:  trunk-rssanity-disjunctive-reqs.patch added by jtn (7kB - text/x-diff - trunk r23987)

 

Depends on the following items: None found

Digest:
   bug dependencies, patch dependencies.

 

Carbon-Copy List
  • -unavailable- added by jtn (Submitted the item)
  •  

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.

     

    Please enter the title of George Orwell's famous dystopian book (it's a date):

     

     

    Follow 9 latest changes.

    Date Changed By Updated Field Previous Value => Replaced By
    Sun 05 Jan 2014 11:03:01 AM UTCjtnStatusReady For Test=>Fixed
      Open/ClosedOpen=>Closed
    Fri 03 Jan 2014 08:06:07 PM UTCjtnAttached File-=>Added S2_5-rssanity-disjunctive-reqs.patch, #19638
      Attached File-=>Added S2_4-rssanity-disjunctive-reqs.patch, #19639
      StatusIn Progress=>Ready For Test
      Planned Release=>2.4.2,2.5.0,2.6.0
    Fri 03 Jan 2014 05:16:26 AM UTCjtnDependencies-=>bugs #21422 is dependent
    Fri 03 Jan 2014 05:15:21 AM UTCjtnDependencies-=>bugs #21418 is dependent
    Fri 03 Jan 2014 05:12:05 AM UTCjtnAttached File-=>Added trunk-rssanity-disjunctive-reqs.patch, #19623
    Show feedback again

    Back to the top


    Powered by Savane 3.1-cleanup