Real Building Upgrades

Real Building Upgrades 4.1.3

Good Evening gents !

i want to report something.
I was playing with your mod, and it was fine until i use a new mod called "Industrial Improvement GS" https://steamcommunity.com/sharedfiles/filedetails/?id=1425931695&searchtext=industrial+improvement, and found the same bug like Tsikhe Upgrade. Now every nation can build Japan's Electronic Factory Upgrade, even bypassing the requirement to build a factory. In addition, i can still build a Factory Upgrade.
So now any nation can build Japan's Electronic's Factory right after building an Industrial Zone if they have the technology. While the requirement for a Factory Upgrade still exist.

Im not a programmer, been trying to find a solution by replicating what you did to Tsikhe Upgrade but to no avail :/

edit:
when using this mod along with "Industrial Improvement GS", any industrial zone's upgrade is not giving any bonuses. what confused me is that mod has a load order of -100
so im not sure, AFAIK, this mod has a load order of 50 for the base RBU_Base.sql

need help :(
 
Last edited:
This mod defines the same requirements as RBU.
If you want to use them both, try to change INSERT INTO to INSERT OR REPLACE INTO in the lines below and set LoadOrder for 100.

Code:
INSERT INTO RequirementSetRequirements (RequirementSetId, RequirementId) VALUES ("PLOT_HAS_LUMBER_MILL_REQUIREMENTS", "REQUIRES_PLOT_HAS_LUMBER_MILL");
INSERT INTO RequirementSets (RequirementSetId, RequirementSetType) VALUES ("PLOT_HAS_LUMBER_MILL_REQUIREMENTS", "REQUIREMENTSET_TEST_ALL");

INSERT INTO RequirementArguments (RequirementId, Name, Type, Value, Extra, SecondExtra)
VALUES ("REQUIRES_PLOT_HAS_LUMBER_MILL", "ImprovementType", "ARGTYPE_IDENTITY", "IMPROVEMENT_LUMBER_MILL", null, null);

INSERT INTO Requirements (RequirementId, RequirementType, Likeliness, Impact, Inverse, Reverse, Persistent, ProgressWeight, Triggered)
VALUES ("REQUIRES_PLOT_HAS_LUMBER_MILL", "REQUIREMENT_PLOT_IMPROVEMENT_TYPE_MATCHES", 0, 0, 0, 0, 0, 1, 0);

INSERT INTO RequirementSetRequirements (RequirementSetId, RequirementId) VALUES ("PLOT_HAS_PLANTATION_REQUIREMENTS", "REQUIRES_PLOT_HAS_PLANTATION");
INSERT INTO RequirementSets (RequirementSetId, RequirementSetType) VALUES ("PLOT_HAS_PLANTATION_REQUIREMENTS", "REQUIREMENTSET_TEST_ALL");
 
@Infixo sorry for the late reply, gonna try once i got the time. thanks for the fix
you're handsome/beautiful, i love you :lol:


edit:

i tried changing the code inside ImprovementsData.sql following your example and change the load order in Industrial_Improvements.modinfo to 100, but the same problem still occurs.

Spoiler :


--LUMBER_MILL:
--INSERT INTO BuildingModifiers (BuildingType, ModifierId) VALUES ("BUILDING_WORKSHOP", "WORKSHOP_LUMBER_MILL_PRODUCTION");


INSERT INTO Modifiers (ModifierId, ModifierType, RunOnce, NewOnly, Permanent, OwnerRequirementSetId, SubjectRequirementSetId, OwnerStackLimit, SubjectStackLimit)
VALUES ("WORKSHOP_LUMBER_MILL_PRODUCTION", "MODIFIER_CITY_PLOT_YIELDS_ADJUST_PLOT_YIELD", 0, 0, 0, null, "PLOT_HAS_LUMBER_MILL_REQUIREMENTS", null, null);

INSERT INTO ModifierArguments (ModifierId, Name, Type, Value, Extra, SecondExtra) VALUES ("WORKSHOP_LUMBER_MILL_PRODUCTION", "Amount", "ARGTYPE_IDENTITY", 1, null, null);
INSERT INTO ModifierArguments (ModifierId, Name, Type, Value, Extra, SecondExtra) VALUES ("WORKSHOP_LUMBER_MILL_PRODUCTION", "YieldType", "ARGTYPE_IDENTITY", "YIELD_PRODUCTION", null, null);


INSERT OR REPLACE INTO RequirementSetRequirements (RequirementSetId, RequirementId) VALUES ("PLOT_HAS_LUMBER_MILL_REQUIREMENTS", "REQUIRES_PLOT_HAS_LUMBER_MILL");
INSERT OR REPLACE INTO RequirementSets (RequirementSetId, RequirementSetType) VALUES ("PLOT_HAS_LUMBER_MILL_REQUIREMENTS", "REQUIREMENTSET_TEST_ALL");

INSERT OR REPLACE INTO RequirementArguments (RequirementId, Name, Type, Value, Extra, SecondExtra)
VALUES ("REQUIRES_PLOT_HAS_LUMBER_MILL", "ImprovementType", "ARGTYPE_IDENTITY", "IMPROVEMENT_LUMBER_MILL", null, null);

INSERT OR REPLACE INTO Requirements (RequirementId, RequirementType, Likeliness, Impact, Inverse, Reverse, Persistent, ProgressWeight, Triggered)
VALUES ("REQUIRES_PLOT_HAS_LUMBER_MILL", "REQUIREMENT_PLOT_IMPROVEMENT_TYPE_MATCHES", 0, 0, 0, 0, 0, 1, 0);

--CAMP PRODUCTION:
INSERT INTO BuildingModifiers (BuildingType, ModifierId) VALUES ("BUILDING_WORKSHOP", "WORKSHOP_CAMP_PRODUCTION");

INSERT INTO Modifiers (ModifierId, ModifierType, RunOnce, NewOnly, Permanent, OwnerRequirementSetId, SubjectRequirementSetId, OwnerStackLimit, SubjectStackLimit)
VALUES ("WORKSHOP_CAMP_PRODUCTION", "MODIFIER_CITY_PLOT_YIELDS_ADJUST_PLOT_YIELD", 0, 0, 0, null, "PLOT_HAS_CAMP_REQUIREMENTS", null, null);

INSERT INTO ModifierArguments (ModifierId, Name, Type, Value, Extra, SecondExtra) VALUES ("WORKSHOP_CAMP_PRODUCTION", "Amount", "ARGTYPE_IDENTITY", 1, null, null);
INSERT INTO ModifierArguments (ModifierId, Name, Type, Value, Extra, SecondExtra) VALUES ("WORKSHOP_CAMP_PRODUCTION", "YieldType", "ARGTYPE_IDENTITY", "YIELD_PRODUCTION", null, null);

--PASTURE PRODUCTION:
INSERT INTO BuildingModifiers (BuildingType, ModifierId) VALUES ("BUILDING_WORKSHOP", "WORKSHOP_PASTURE_PRODUCTION");

INSERT INTO Modifiers (ModifierId, ModifierType, RunOnce, NewOnly, Permanent, OwnerRequirementSetId, SubjectRequirementSetId, OwnerStackLimit, SubjectStackLimit)
VALUES ("WORKSHOP_PASTURE_PRODUCTION", "MODIFIER_CITY_PLOT_YIELDS_ADJUST_PLOT_YIELD", 0, 0, 0, null, "PLOT_HAS_PASTURE_REQUIREMENTS", null, null);

INSERT INTO ModifierArguments (ModifierId, Name, Type, Value, Extra, SecondExtra) VALUES ("WORKSHOP_PASTURE_PRODUCTION", "Amount", "ARGTYPE_IDENTITY", 1, null, null);
INSERT INTO ModifierArguments (ModifierId, Name, Type, Value, Extra, SecondExtra) VALUES ("WORKSHOP_PASTURE_PRODUCTION", "YieldType", "ARGTYPE_IDENTITY", "YIELD_PRODUCTION", null, null);

--PASTURE FOOD:
INSERT INTO BuildingModifiers (BuildingType, ModifierId) VALUES ("BUILDING_WORKSHOP", "WORKSHOP_PASTURE_FOOD");

INSERT INTO Modifiers (ModifierId, ModifierType, RunOnce, NewOnly, Permanent, OwnerRequirementSetId, SubjectRequirementSetId, OwnerStackLimit, SubjectStackLimit)
VALUES ("WORKSHOP_PASTURE_FOOD", "MODIFIER_CITY_PLOT_YIELDS_ADJUST_PLOT_YIELD", 0, 0, 0, null, "PLOT_HAS_PASTURE_REQUIREMENTS", null, null);

INSERT INTO ModifierArguments (ModifierId, Name, Type, Value, Extra, SecondExtra) VALUES ("WORKSHOP_PASTURE_FOOD", "Amount", "ARGTYPE_IDENTITY", 1, null, null);
INSERT INTO ModifierArguments (ModifierId, Name, Type, Value, Extra, SecondExtra) VALUES ("WORKSHOP_PASTURE_FOOD", "YieldType", "ARGTYPE_IDENTITY", "YIELD_FOOD", null, null);

--PLANTATION FOOD:
INSERT INTO BuildingModifiers (BuildingType, ModifierId) VALUES ("BUILDING_WORKSHOP", "WORKSHOP_PLANTATION_FOOD");

INSERT INTO Modifiers (ModifierId, ModifierType, RunOnce, NewOnly, Permanent, OwnerRequirementSetId, SubjectRequirementSetId, OwnerStackLimit, SubjectStackLimit)
VALUES ("WORKSHOP_PLANTATION_FOOD", "MODIFIER_CITY_PLOT_YIELDS_ADJUST_PLOT_YIELD", 0, 0, 0, null, "PLOT_HAS_PLANTATION_REQUIREMENTS", null, null);

INSERT INTO ModifierArguments (ModifierId, Name, Type, Value, Extra, SecondExtra) VALUES ("WORKSHOP_PLANTATION_FOOD", "Amount", "ARGTYPE_IDENTITY", 1, null, null);
INSERT INTO ModifierArguments (ModifierId, Name, Type, Value, Extra, SecondExtra) VALUES ("WORKSHOP_PLANTATION_FOOD", "YieldType", "ARGTYPE_IDENTITY", "YIELD_FOOD", null, null);


INSERT OR REPLACE INTO RequirementSetRequirements (RequirementSetId, RequirementId) VALUES ("PLOT_HAS_PLANTATION_REQUIREMENTS", "REQUIRES_PLOT_HAS_PLANTATION");
INSERT OR REPLACE INTO RequirementSets (RequirementSetId, RequirementSetType) VALUES ("PLOT_HAS_PLANTATION_REQUIREMENTS", "REQUIREMENTSET_TEST_ALL");



i also tried to change all INSERT to INSERT OR REPLACE INTO but still have the same problems (all production zone upgrade's not giving any bonus and additionally anyone can build electronic factory upgrade and workshop upgrade with no requirements except the tech).

am i doing it wrong ?
thanks in advance :)

i kinda like the idea this 'Industrial Improvements' mod have, such as the adjacent improvement tiles around the industrial workshop provide bonuses to the industrial zone... giving more consideration of not cutting down trees for the long term bonuses, since GS put more emphasis on 'environmental awareness'.
 

Attachments

  • Industrial Improvements GS.zip
    4.1 KB · Views: 142
Last edited:
Infixo updated Real Building Upgrades with a new update entry:

Version 4.0 GS buildings

Version 4.0
- Added: Upgrades for GS buildings: Coal, Oil and Nuclear Power Plansts, Hydroelectric Dam, Marae, Thermal Bath and Grand Bazaar.
- Added: Unique upgrades will have the same illustration for a historic moment as the base building.
- Changed: Icons for Rise & Fall buildings re-created using original textures from the SDK.
- Changed: Many INSERT into INSERT OR REPLACE to improve compatibility with other mods.

Read the rest of this update entry...
 
This mod aint working with game version that is older than April 2019 update.
Is it somehow possible to have version 3.3 of this mod please? It shall work with original GS release of civ6, with no April update of the game
 
Yup, you are the only one reporting this.
Check database.log if you have any errors.
I've played a game with just this mod enabled and the problem is still there so it's not a compability issue. ver 1.0.0.328. I played with mod's files and changed the lines so there is no +3 faith effect and changed base faith to 8 for now.
In database.log everything seems fine.Any suggestions? Should i stick with the increased base faith?
Thanks in advance.
 
I've played a game with just this mod enabled and the problem is still there so it's not a compability issue. ver 1.0.0.328. I played with mod's files and changed the lines so there is no +3 faith effect and changed base faith to 8 for now. Any suggestions?
Out of curiosity, I started a test game and in fact there is a problem. Super weird, as this was working 100%. Now one of the SQLs doesn't work as intended. Anyway, I am fixing it, I will post an update soon.
 
Top Bottom