There are 3 very interesting Requirement Types:
I have tried using it to create a modifier that would react to the number of buildings in the city. There's a collection COLLECTION_CITY_BUILDINGS, so it would seem easy. Well, it's not working. I can attach a modifier to either a building or a district, and put requirement into an OwnerReq or SubjectReq, but no matter what option, I always get the same message: Warning: Failed to create Requirement <REQUIRES_BUILDINGS_MORE_THAN_2> to <District: 65536, Owner: 0, City: 65536> because <Invalid Definition>. There's always <Invalid Definition>.
Here's my definition.
Question 2. Do you find any errors in these definitions? Maybe I've missed something obvious.
- REQUIREMENT_COLLECTION_COUNT_ATLEAST
- REQUIREMENT_COLLECTION_COUNT_EQUALS
- REQUIREMENT_COLLECTION_COUNT_GREATERTHAN
- VICTORY_MIN_MAJOR_TEAMS, CollectionType=COLLECTION_MAJOR_TEAMS, Count=2
- REQUIREMENT_COLLECTION_COUNT_EQUALS, CollectionType=COLLECTION_MAJOR_TEAMS, Count=1
I have tried using it to create a modifier that would react to the number of buildings in the city. There's a collection COLLECTION_CITY_BUILDINGS, so it would seem easy. Well, it's not working. I can attach a modifier to either a building or a district, and put requirement into an OwnerReq or SubjectReq, but no matter what option, I always get the same message: Warning: Failed to create Requirement <REQUIRES_BUILDINGS_MORE_THAN_2> to <District: 65536, Owner: 0, City: 65536> because <Invalid Definition>. There's always <Invalid Definition>.
Here's my definition.
Code:
INSERT INTO RequirementSets (RequirementSetId, RequirementSetType)
VALUES
('CITY_HAS_BUILDINGS_MORE_THAN_1', 'REQUIREMENTSET_TEST_ALL'),
('CITY_HAS_BUILDINGS_MORE_THAN_2', 'REQUIREMENTSET_TEST_ALL'),
('CITY_HAS_BUILDINGS_MORE_THAN_3', 'REQUIREMENTSET_TEST_ALL');
INSERT INTO RequirementSetRequirements (RequirementSetId, RequirementId)
VALUES
('CITY_HAS_BUILDINGS_MORE_THAN_1', 'REQUIRES_BUILDINGS_MORE_THAN_1'),
('CITY_HAS_BUILDINGS_MORE_THAN_2', 'REQUIRES_BUILDINGS_MORE_THAN_2'),
('CITY_HAS_BUILDINGS_MORE_THAN_3', 'REQUIRES_BUILDINGS_MORE_THAN_3');
INSERT INTO Requirements (RequirementId, RequirementType)
VALUES
('REQUIRES_BUILDINGS_MORE_THAN_1', 'REQUIREMENT_COLLECTION_COUNT_ATLEAST'),
('REQUIRES_BUILDINGS_MORE_THAN_2', 'REQUIREMENT_COLLECTION_COUNT_ATLEAST'),
('REQUIRES_BUILDINGS_MORE_THAN_3', 'REQUIREMENT_COLLECTION_COUNT_ATLEAST');
INSERT INTO RequirementArguments (RequirementId, Name, Value)
VALUES
('REQUIRES_BUILDINGS_MORE_THAN_1', 'CollectionType', 'COLLECTION_CITY_BUILDINGS'),
('REQUIRES_BUILDINGS_MORE_THAN_1', 'Count', '2'),
('REQUIRES_BUILDINGS_MORE_THAN_2', 'CollectionType', 'COLLECTION_CITY_BUILDINGS'),
('REQUIRES_BUILDINGS_MORE_THAN_2', 'Count', '3'),
('REQUIRES_BUILDINGS_MORE_THAN_3', 'CollectionType', 'COLLECTION_CITY_BUILDINGS'),
('REQUIRES_BUILDINGS_MORE_THAN_3', 'Count', '4');
Question 2. Do you find any errors in these definitions? Maybe I've missed something obvious.