-- Adding Modifiers
INSERT OR REPLACE INTO Modifiers
(ModifierId, ModifierType)
VALUES ('TRADE_ROUTE_GOLD_DESERT_ANT_OPEN', 'MODIFIER_PLAYER_ADJUST_TRADE_ROUTE_YIELD_PER_PATH_TILE');
INSERT OR REPLACE INTO ModifierArguments
(ModifierId, Name, Value)
VALUES ('TRADE_ROUTE_GOLD_DESERT_ANT_OPEN', 'Amount', '1'),
('TRADE_ROUTE_GOLD_DESERT_ANT_OPEN', 'TerrainType', 'TERRAIN_DESERT'),
('TRADE_ROUTE_GOLD_DESERT_ANT_OPEN', 'YieldType', 'YIELD_GOLD');
-- Altering Mali's Trade Route trait
DELETE FROM TraitModifiers
WHERE ModifierId = 'TRADE_ROUTE_GOLD_DESERT_ORIGIN';
INSERT INTO TraitModifiers
(TraitType, ModifierId)
VALUES ('TRAIT_LEADER_SAHEL_MERCHANTS', 'TRADE_ROUTE_GOLD_DESERT_ANT_OPEN');
-- New RequirementID
INSERT OR REPLACE INTO RequirementSets
(RequirementSetId, RequirementSetType)
VALUES ('TRADE_PLOT_HAS_DESERT', 'REQUIREMENTSET_TEST_ALL');
INSERT OR REPLACE INTO RequirementSetRequirements
(RequirementSetId, RequirementId)
VALUES ('TRADE_PLOT_HAS_DESERT', 'REQUIRES_PLOT_HAS_DESERT');
-- Adding Modifiers
INSERT OR REPLACE INTO Modifiers
(ModifierId, ModifierType, SubjectRequirementSetId)
VALUES ('TRADE_ROUTE_GOLD_DESERT_ANT_OPEN', 'MODIFIER_PLAYER_ADJUST_TRADE_ROUTE_YIELD_PER_PATH_TILE', 'TRADE_PLOT_HAS_DESERT');
INSERT OR REPLACE INTO ModifierArguments
(ModifierId, Name, Value)
VALUES ('TRADE_ROUTE_GOLD_DESERT_ANT_OPEN', 'Amount', '1'),
('TRADE_ROUTE_GOLD_DESERT_ANT_OPEN', 'YieldType', 'YIELD_GOLD');
-- Altering Mali's Trade Route trait
DELETE FROM TraitModifiers
WHERE ModifierId = 'TRADE_ROUTE_GOLD_DESERT_ORIGIN';
INSERT INTO TraitModifiers
(TraitType, ModifierId)
VALUES ('TRAIT_LEADER_SAHEL_MERCHANTS', 'TRADE_ROUTE_GOLD_DESERT_ANT_OPEN');
ModifierType CollectionType EffectType
MODIFIER_PLAYER_ADJUST_TRADE_ROUTE_YIELD_PER_TERRAIN_INTERNATIONAL COLLECTION_OWNER EFFECT_ADJUST_PLAYER_TRADE_ROUTE_YIELD_PER_TERRAIN_FOR_INTERNATIONAL
ModifierId ModifierType
TRADE_ROUTE_GOLD_DESERT_ORIGIN MODIFIER_PLAYER_ADJUST_TRADE_ROUTE_YIELD_PER_TERRAIN_INTERNATIONAL
ModifierId Name Type Value
TRADE_ROUTE_GOLD_DESERT_ORIGIN Amount ARGTYPE_IDENTITY 1
TRADE_ROUTE_GOLD_DESERT_ORIGIN Origin ARGTYPE_IDENTITY 1
TRADE_ROUTE_GOLD_DESERT_ORIGIN TerrainType ARGTYPE_IDENTITY TERRAIN_DESERT
TRADE_ROUTE_GOLD_DESERT_ORIGIN YieldType ARGTYPE_IDENTITY YIELD_GOLD
ModifierId Name Type Value
TRAIT_TRADE_GOLD_FROM_CAMPS Destination ARGTYPE_IDENTITY 1
TRAIT_TRADE_GOLD_FROM_PASTURES Destination ARGTYPE_IDENTITY 1
LETTEROFMARQUE_TRADE_ROUTE_YIELD_DROP_DEST_CULTURE Destination ARGTYPE_IDENTITY 1
LETTEROFMARQUE_TRADE_ROUTE_YIELD_DROP_DEST_FAITH Destination ARGTYPE_IDENTITY 1
LETTEROFMARQUE_TRADE_ROUTE_YIELD_DROP_DEST_FOOD Destination ARGTYPE_IDENTITY 1
LETTEROFMARQUE_TRADE_ROUTE_YIELD_DROP_DEST_GOLD Destination ARGTYPE_IDENTITY 1
LETTEROFMARQUE_TRADE_ROUTE_YIELD_DROP_DEST_PRODUCTION Destination ARGTYPE_IDENTITY 1
LETTEROFMARQUE_TRADE_ROUTE_YIELD_DROP_DEST_SCIENCE Destination ARGTYPE_IDENTITY 1
TRAIT_ORIGIN_DESTINATION_RELIGIOUS_PRESSURE Destination ARGTYPE_IDENTITY 1
-- Adding "+1 Gold to International Trade Routes for each Desert tile in Origin City" to all Trade Routes.
INSERTO INTO CivicModifiers
(CivicType, ModifierId)
VALUES ('CIVIC_FOREIGN_TRADE', 'TRADE_ROUTE_GOLD_DESERT_ORIGIN');
"TRAIT_LEADER_MAJOR_CIV"
"MINOR_CIV_DEFAULT_TRAIT"
INSERT INTO TraitModifiers
(TraitType, ModifierId)
VALUES ('TRAIT_LEADER_MAJOR_CIV', 'TRADE_ROUTE_GOLD_DESERT_ORIGIN');
Not that I can think of offhand. There still aren't any ModifierTypes (ie, EffectTypes) that allow or disallow construction of a building so far as I am aware.I feel a bit lazy, but haven't had time to do some digging on this one in the files - is there any logic in the game that allows a civilization to build a building (specifically, a wonder - but I guess the mechanisms are the same) only within a conquered city?
In my head, the requirement is along the lines of checking the original city owner is not the current city owner. I have an idea for some custom wonders that would leverage a mechanism like this, if it is possible.
Not that I can think of offhand. There still aren't any ModifierTypes (ie, EffectTypes) that allow or disallow construction of a building so far as I am aware.
It can be done using an unbuildable building as a Prerequisite Building, and then placing such a building via an lua script, but so far as I know it still cannot be done via Database methods.
-- Changing Alpine Promotion to exclude Desert Hills
DELETE FROM UnitPromotions WHERE UnitPromotionType ='PROMOTION_ALPINE';
DELETE FROM ModifierArguments WHERE ModifierId ='ALPINE_IGNORE_HILLS_MOVEMENT_PENALTY';
INSERT OR REPLACE INTO Modifiers
(ModifierId, ModifierType)
VALUES ('ALPINE_IGNORE_GRASS_HILLS_MOVEMENT_PENALTY', 'MODIFIER_PLAYER_UNIT_ADJUST_IGNORE_TERRAIN_COST'),
('ALPINE_IGNORE_PLAINS_HILLS_MOVEMENT_PENALTY', 'MODIFIER_PLAYER_UNIT_ADJUST_IGNORE_TERRAIN_COST'),
('ALPINE_IGNORE_TUNDRA_HILLS_MOVEMENT_PENALTY', 'MODIFIER_PLAYER_UNIT_ADJUST_IGNORE_TERRAIN_COST'),
('ALPINE_IGNORE_SNOW_HILLS_MOVEMENT_PENALTY', 'MODIFIER_PLAYER_UNIT_ADJUST_IGNORE_TERRAIN_COST');
INSERT OR REPLACE INTO ModifierArguments
(ModifierId, Name, Value)
VALUES ('ALPINE_IGNORE_GRASS_HILLS_MOVEMENT_PENALTY', 'TerrainType', 'TERRAIN_GRASS_HILLS'),
('ALPINE_IGNORE_PLAINS_HILLS_MOVEMENT_PENALTY', 'TerrainType', 'TERRAIN_PLAINS_HILLS'),
('ALPINE_IGNORE_TUNDRA_HILLS_MOVEMENT_PENALTY', 'TerrainType', 'TERRAIN_TUNDRA_HILLS'),
('ALPINE_IGNORE_SNOW_HILLS_MOVEMENT_PENALTY', 'TerrainType', 'TERRAIN_SNOW_HILLS');
INSERT OR REPLACE INTO UnitPromotions
(UnitPromotionType, Name, Description, Level, Column, PromotionClass)
VALUES ('PROMOTION_ALPINE', 'LOC_PROMOTION_ALPINE_NAME', 'LOC_PROMOTION_ALPINE_DESCRIPTION', 1, 3, 'PROMOTION_CLASS_RECON');
INSERT OR REPLACE INTO UnitPromotionModifiers
(UnitPromotionType, ModifierId)
VALUES ('PROMOTION_ALPINE', 'ALPINE_IGNORE_GRASS_HILLS_MOVEMENT_PENALTY'),
('PROMOTION_ALPINE', 'ALPINE_IGNORE_PLAINS_HILLS_MOVEMENT_PENALTY'),
('PROMOTION_ALPINE', 'ALPINE_IGNORE_TUNDRA_HILLS_MOVEMENT_PENALTY'),
('PROMOTION_ALPINE', 'ALPINE_IGNORE_SNOW_HILLS_MOVEMENT_PENALTY');