FlyingThunder
Chieftain
- Joined
- Aug 10, 2023
- Messages
- 4
I am trying to make a custom civ using MCs awesome custom civ template just as a way to get into modding. So far i started with giving my leader a trait that changes tile yields.
Just giving all tiles flat yields works just fine. Giving the yields a Requirement also works.
Another thing i tried is giving the leader an improvement, and giving that improvement yields. Again, works just fine.
But my end goal is having my leader ability give tile yields based on appeal. This already exists in the base game, but only on improvements (Seaside Resort, Ski resort, Mapuche Improvement etc)
Giving my improvement Yields based on Appeal works.
However when i add the exact same values into my ModifierArguments in my leader trait, the yields dont work at all, i just get nothing.
Here is what my trait looks like when it does work, just straight out of the box:
This is how i tried to adjust the ModifiersArgument with the yields on appeal. This does not work for me:
Note that i already tried removing the Minimum/Maximum Appeal and it didnt make a difference.
Can someone confirm that this approach in general should work, and that it is even possible to make a leader ability like this? As theres nothing like it in the base game that i know of i feared that it might just not be possible. I checked the base game db to see if there even is a "YieldFromAppeal" in the ModifiersArgument table and it is not. Maybe i have to do further work on that end since it does not already exist?
Just giving all tiles flat yields works just fine. Giving the yields a Requirement also works.
Another thing i tried is giving the leader an improvement, and giving that improvement yields. Again, works just fine.
But my end goal is having my leader ability give tile yields based on appeal. This already exists in the base game, but only on improvements (Seaside Resort, Ski resort, Mapuche Improvement etc)
Giving my improvement Yields based on Appeal works.
However when i add the exact same values into my ModifierArguments in my leader trait, the yields dont work at all, i just get nothing.
Here is what my trait looks like when it does work, just straight out of the box:
INSERT INTO Types
(Type, Kind )
VALUES ('TRAIT_CIVILIZATION_FLYINGTHUNDER_ARBARE_YIELDS', 'KIND_TRAIT' );
INSERT INTO Traits
(TraitType, Name, Description )
VALUES ('TRAIT_CIVILIZATION_FLYINGTHUNDER_ARBARE_YIELDS', 'LOC_TRAIT_CIVILIZATION_FLYINGTHUNDER_ARBARE_YIELDS_NAME', 'LOC_TRAIT_CIVILIZATION_FLYINGTHUNDER_ARBARE_YIELDS_DESCRIPTION' );
INSERT INTO CivilizationTraits
(CivilizationType, TraitType )
VALUES ('CIVILIZATION_FLYINGTHUNDER_ARBARISTAN', 'TRAIT_CIVILIZATION_FLYINGTHUNDER_ARBARE_YIELDS' );
INSERT INTO TraitModifiers
(TraitType, ModifierId )
VALUES ('TRAIT_CIVILIZATION_FLYINGTHUNDER_ARBARE_YIELDS', 'MODIFIER_FLYINGTHUNDER_ARBARE_YIELDS_POSITIVE_APPEAL_YIELD' ),
('TRAIT_CIVILIZATION_FLYINGTHUNDER_ARBARE_YIELDS', 'MODIFIER_FLYINGTHUNDER_ARBARE_YIELDS_NEGATIVE_APPEAL_YIELD' );
INSERT INTO Modifiers
(ModifierId, ModifierType, SubjectRequirementSetId)
VALUES ('MODIFIER_FLYINGTHUNDER_ARBARE_YIELDS_POSITIVE_APPEAL_YIELD', 'MODIFIER_PLAYER_ADJUST_PLOT_YIELD', 'REQUIREMENTS_FLYINGTHUNDER_ARBARE_YIELDS_POSITIVE_APPEAL'),
('MODIFIER_FLYINGTHUNDER_ARBARE_YIELDS_NEGATIVE_APPEAL_YIELD', 'MODIFIER_PLAYER_ADJUST_PLOT_YIELD', 'REQUIREMENTS_FLYINGTHUNDER_ARBARE_YIELDS_NEGATIVE_APPEAL');
--
--
INSERT INTO ModifierArguments
(ModifierId, Name, Value )
VALUES ('MODIFIER_FLYINGTHUNDER_ARBARE_YIELDS_POSITIVE_APPEAL_YIELD', 'YieldType', 'YIELD_PRODUCTION' ),
('MODIFIER_FLYINGTHUNDER_ARBARE_YIELDS_POSITIVE_APPEAL_YIELD', 'Amount', 2 ),
('MODIFIER_FLYINGTHUNDER_ARBARE_YIELDS_NEGATIVE_APPEAL_YIELD', 'YieldType', 'YIELD_CULTURE' ),
('MODIFIER_FLYINGTHUNDER_ARBARE_YIELDS_NEGATIVE_APPEAL_YIELD', 'Amount', 2 );
INSERT INTO RequirementSets
(RequirementSetId, RequirementSetType )
VALUES ('REQUIREMENTS_FLYINGTHUNDER_ARBARE_YIELDS_POSITIVE_APPEAL', 'REQUIREMENTSET_TEST_ANY' ),
('REQUIREMENTS_FLYINGTHUNDER_ARBARE_YIELDS_NEGATIVE_APPEAL', 'REQUIREMENTSET_TEST_ANY' );
INSERT INTO RequirementSetRequirements
(RequirementSetId, RequirementId )
VALUES ('REQUIREMENTS_FLYINGTHUNDER_ARBARE_YIELDS_POSITIVE_APPEAL', 'REQUIRES_FLYINGTHUNDER_ARBARE_YIELDS_POSITIVE_APPEAL' ),
('REQUIREMENTS_FLYINGTHUNDER_ARBARE_YIELDS_NEGATIVE_APPEAL', 'REQUIRES_FLYINGTHUNDER_ARBARE_YIELDS_NEGATIVE_APPEAL' );
INSERT INTO Requirements
(RequirementId, RequirementType )
VALUES ('REQUIRES_FLYINGTHUNDER_ARBARE_YIELDS_POSITIVE_APPEAL', 'REQUIREMENT_PLOT_IS_APPEAL_BETWEEN' ),
('REQUIRES_FLYINGTHUNDER_ARBARE_YIELDS_NEGATIVE_APPEAL', 'REQUIREMENT_PLOT_IS_APPEAL_BETWEEN' );
INSERT INTO RequirementArguments
(RequirementId, Name, Value )
VALUES ('REQUIRES_FLYINGTHUNDER_ARBARE_YIELDS_POSITIVE_APPEAL', 'MinimumAppeal', 1 ),
('REQUIRES_FLYINGTHUNDER_ARBARE_YIELDS_NEGATIVE_APPEAL', 'MaximumAppeal', -1 );
This is how i tried to adjust the ModifiersArgument with the yields on appeal. This does not work for me:
INSERT INTO ModifierArguments
(ModifierId, Name, Value )
VALUES ('MODIFIER_FLYINGTHUNDER_ARBARE_YIELDS_POSITIVE_APPEAL_YIELD', 'YieldFromAppeal', 'YIELD_GOLD' ),
('MODIFIER_FLYINGTHUNDER_ARBARE_YIELDS_POSITIVE_APPEAL_YIELD', 'YieldFromAppealPercent', 500 ),
('MODIFIER_FLYINGTHUNDER_ARBARE_YIELDS_POSITIVE_APPEAL_YIELD', 'MinimumAppeal', 1 ),
('MODIFIER_FLYINGTHUNDER_ARBARE_YIELDS_NEGATIVE_APPEAL_YIELD', 'YieldFromAppeal', 'YIELD_FAITH' );
('MODIFIER_FLYINGTHUNDER_ARBARE_YIELDS_NEGATIVE_APPEAL_YIELD', 'YieldFromAppealPercent', 500 ),
('MODIFIER_FLYINGTHUNDER_ARBARE_YIELDS_NEGATIVE_APPEAL_YIELD', 'MaximumAppeal', -1 );
Note that i already tried removing the Minimum/Maximum Appeal and it didnt make a difference.
Can someone confirm that this approach in general should work, and that it is even possible to make a leader ability like this? As theres nothing like it in the base game that i know of i feared that it might just not be possible. I checked the base game db to see if there even is a "YieldFromAppeal" in the ModifiersArgument table and it is not. Maybe i have to do further work on that end since it does not already exist?