Quick Questions / Quick Answers

I've just discovered you can change the Minimum Zoom Level in the config.ini file. Is there a way to change the Maximum Zoom Level too? I would love to be able to zoom out more.
 
I haven't played this mod in a couple of years, so some of the stuff that's been added has definitely passed me by. I'm also not 100% sure if I've installed correctly, so with that in mind, 2 quick questions:

1. I feel like I used to be able to see what impact on happiness a city was having, before it became unhappy (and how far above/below each line the city was). Has that changed just to show when cities are unhappy now?
2. Fighting America with the Huns in the Classical era. All the American melee units seem to have a promotion that grants them +33% vs Archery units - I think it's represented by the symbol of a crossed mace and axe. I can't find any mention of the promotion in the Civilopedia, or any reason that the American units would all have it. Where's this come from?

Thanks for the help, and sorry if I'm missing something really obvious. I did try looking it all up first.
 
I was unaware puppets (excluding Venice) can build national wonders and prevent you from building things like Circus Maximus in your capital?
 
I have a problem. I added code like this:
Code:
<Worlds>
        <Update>
            <Where Type="WORLDSIZE_DUEL"/>
            <Set DefaultPlayers="5" DefaultMinorCivs="8" MaxActiveReligions="3" NumNaturalWonders="4"/>     
        </Update>
        <Update>
            <Where Type="WORLDSIZE_TINY"/>
            <Set DefaultPlayers="10" DefaultMinorCivs="17" MaxActiveReligions="6" NumNaturalWonders="8"/>
        </Update>
        <Update>
            <Where Type="WORLDSIZE_SMALL"/>
            <Set DefaultPlayers="15" DefaultMinorCivs="25" MaxActiveReligions="8" NumNaturalWonders="12"/>
        </Update>
        <Update>
            <Where Type="WORLDSIZE_STANDARD"/>
            <Set DefaultPlayers="20" DefaultMinorCivs="34" MaxActiveReligions="11" NumNaturalWonders="16"/>
        </Update>
        <Update>
            <Where Type="WORLDSIZE_LARGE"/>
            <Set DefaultPlayers="25" DefaultMinorCivs="42" MaxActiveReligions="13" NumNaturalWonders="20"/>
        </Update>
        <Update>
            <Where Type="WORLDSIZE_HUGE"/>
            <Set DefaultPlayers="30" DefaultMinorCivs="50" MaxActiveReligions="16" NumNaturalWonders="24"/>
        </Update>
    </Worlds>
Received table like this during the game:
View attachment 553292

Problems are:
  • Default minor civs are not what we can see in that table. When I choose Small, I get 12 instead of 25;
  • Wonder number is still default; I should have 12, and I get 4;
  • Religions number didn't change in the table;
Mods: VP, IGE, Tectonic (here was the file).

And second question: Where can I find latest version of "AssignStartingPlots.lua" changed by VP?
Also third thing: Can someone check for me if those changes are in the dll file?:
Code:
From 0c8c50039dc723a8676ef9b63919f9c1dfc7ab77 Mon Sep 17 00:00:00 2001
From: Lamil Lerran <lamillerran@gmail.com>
Date: Wed, 2 Mar 2016 10:34:47 -0800
Subject: [PATCH 1/1] Added PseudoNaturalWonder feature type

---
 CvGameCoreDLL_Expansion2/CvInfos.cpp                 | 11 +++++++++--
 CvGameCoreDLL_Expansion2/CvInfos.h                   |  4 +++-
 CvGameCoreDLL_Expansion2/CvPlot.cpp                  | 16 ++++++++--------
 CvGameCoreDLL_Expansion2/CvPlot.h                    |  2 +-
 CvGameCoreDLL_Expansion2/CvUnit.cpp                  |  2 +-
 CvGameCoreDLL_Expansion2/CvVotingClasses.cpp         |  2 +-
 CvGameCoreDLL_Expansion2/CvWorldBuilderMapLoader.cpp |  2 +-
 7 files changed, 24 insertions(+), 15 deletions(-)

diff --git a/CvGameCoreDLL_Expansion2/CvInfos.cpp b/CvGameCoreDLL_Expansion2/CvInfos.cpp
index 7baac21..0f14cb3 100644
--- a/CvGameCoreDLL_Expansion2/CvInfos.cpp
+++ b/CvGameCoreDLL_Expansion2/CvInfos.cpp
@@ -4746,6 +4746,7 @@ CvFeatureInfo::CvFeatureInfo() :
     m_bNukeImmune(false),
     m_bRough(false),
     m_bNaturalWonder(false),
+    m_bPseudoNaturalWonder(false),
     m_iWorldSoundscapeScriptId(0),
     m_iEffectProbability(0),
     m_piYieldChange(NULL),
@@ -4906,9 +4907,14 @@ bool CvFeatureInfo::IsRough() const
     return m_bRough;
 }
 //------------------------------------------------------------------------------
-bool CvFeatureInfo::IsNaturalWonder() const
+bool CvFeatureInfo::IsNaturalWonder(bool orPseudoNatural) const
 {
-    return m_bNaturalWonder;
+    return m_bNaturalWonder || (orPseudoNatural && IsPseudoNaturalWonder());
+}
+//------------------------------------------------------------------------------
+bool CvFeatureInfo::IsPseudoNaturalWonder() const
+{
+    return m_bPseudoNaturalWonder;
 }
 //------------------------------------------------------------------------------
 const char* CvFeatureInfo::getArtDefineTag() const
@@ -5037,6 +5043,7 @@ bool CvFeatureInfo::CacheResults(Database::Results& kResults, CvDatabaseUtility&
     m_bNukeImmune = kResults.GetBool("NukeImmune");
     m_bRough = kResults.GetBool("Rough");
     m_bNaturalWonder = kResults.GetBool("NaturalWonder");
+    m_bPseudoNaturalWonder = kResults.GetBool("PseudoNaturalWonder");
 
     m_strEffectType = kResults.GetText("EffectType");
     m_strEffectTypeTag = kResults.GetText("EffectTypeTag");
diff --git a/CvGameCoreDLL_Expansion2/CvInfos.h b/CvGameCoreDLL_Expansion2/CvInfos.h
index 095ee9e..63b9fec 100644
--- a/CvGameCoreDLL_Expansion2/CvInfos.h
+++ b/CvGameCoreDLL_Expansion2/CvInfos.h
@@ -1455,7 +1455,8 @@ public:
     bool isVisibleAlways() const;
     bool isNukeImmune() const;
     bool IsRough() const;
-    bool IsNaturalWonder() const;
+    bool IsNaturalWonder(bool orPseudoNatural = false) const;
+    bool IsPseudoNaturalWonder() const;
 
     const char* getArtDefineTag() const;
     void setArtDefineTag(const char* szTag);
@@ -1512,6 +1513,7 @@ protected:
     bool m_bNukeImmune;
     bool m_bRough;
     bool m_bNaturalWonder;
+    bool m_bPseudoNaturalWonder;
 
     // Set each time the game is started
     bool m_bClearable;
diff --git a/CvGameCoreDLL_Expansion2/CvPlot.cpp b/CvGameCoreDLL_Expansion2/CvPlot.cpp
index 0c5a80b..216f956 100644
--- a/CvGameCoreDLL_Expansion2/CvPlot.cpp
+++ b/CvGameCoreDLL_Expansion2/CvPlot.cpp
@@ -5115,7 +5115,7 @@ void CvPlot::setOwner(PlayerTypes eNewValue, int iAcquiringCityID, bool bCheckUn
 
                 if(getFeatureType() != NO_FEATURE)
                 {
-                    if(GC.getFeatureInfo(getFeatureType())->IsNaturalWonder())
+                    if(GC.getFeatureInfo(getFeatureType())->IsNaturalWonder(true))
                     {
                         bShouldUpdateHappiness = true;
                     }
@@ -5566,7 +5566,7 @@ void CvPlot::setFeatureType(FeatureTypes eNewValue, int iVariety)
         if(eNewValue != NO_FEATURE)
         {
             // Now a Natural Wonder here
-            if((eOldFeature == NO_FEATURE || !GC.getFeatureInfo(eOldFeature)->IsNaturalWonder()) && GC.getFeatureInfo(eNewValue)->IsNaturalWonder())
+            if((eOldFeature == NO_FEATURE || !GC.getFeatureInfo(eOldFeature)->IsNaturalWonder(true)) && GC.getFeatureInfo(eNewValue)->IsNaturalWonder(true))
             {
                 GC.getMap().ChangeNumNaturalWonders(1);
                 GC.getMap().getArea(getArea())->ChangeNumNaturalWonders(1);
@@ -5575,7 +5575,7 @@ void CvPlot::setFeatureType(FeatureTypes eNewValue, int iVariety)
         if(eOldFeature != NO_FEATURE)
         {
             // Was a Natural Wonder, isn't any more
-            if(GC.getFeatureInfo(eOldFeature)->IsNaturalWonder() && (eNewValue == NO_FEATURE || !GC.getFeatureInfo(eNewValue)->IsNaturalWonder()))
+            if(GC.getFeatureInfo(eOldFeature)->IsNaturalWonder(true) && (eNewValue == NO_FEATURE || !GC.getFeatureInfo(eNewValue)->IsNaturalWonder(true)))
             {
                 GC.getMap().ChangeNumNaturalWonders(-1);
                 GC.getMap().getArea(getArea())->ChangeNumNaturalWonders(-1);
@@ -5597,14 +5597,14 @@ void CvPlot::setFeatureType(FeatureTypes eNewValue, int iVariety)
 
 //    --------------------------------------------------------------------------------
 /// Does this plot have a natural wonder?
-bool CvPlot::IsNaturalWonder() const
+bool CvPlot::IsNaturalWonder(bool orPseudoNatural) const
 {
     FeatureTypes eFeature = getFeatureType();
 
     if(eFeature == NO_FEATURE)
         return false;
 
-    return GC.getFeatureInfo(eFeature)->IsNaturalWonder();
+    return GC.getFeatureInfo(eFeature)->IsNaturalWonder() || (orPseudoNatural && GC.getFeatureInfo(eFeature)->IsPseudoNaturalWonder());
 }
 
 //    --------------------------------------------------------------------------------
@@ -6880,7 +6880,7 @@ int CvPlot::calculateNatureYield(YieldTypes eYield, TeamTypes eTeam, bool bIgnor
     if(isImpassable() || isMountain())
     {
         // No Feature, or the Feature isn't a Natural Wonder (which are impassable but allowed to be worked)
-        if(getFeatureType() == NO_FEATURE || !GC.getFeatureInfo(getFeatureType())->IsNaturalWonder())
+        if(getFeatureType() == NO_FEATURE || !GC.getFeatureInfo(getFeatureType())->IsNaturalWonder(true))
         {
             return 0;
         }
@@ -6965,7 +6965,7 @@ int CvPlot::calculateNatureYield(YieldTypes eYield, TeamTypes eTeam, bool bIgnor
                 }
             }
             // Natural Wonders
-            if(m_eOwner != NO_PLAYER && pFeatureInfo->IsNaturalWonder())
+            if(m_eOwner != NO_PLAYER && pFeatureInfo->IsNaturalWonder(true))
             {
                 int iMod = 0;
 
@@ -8069,7 +8069,7 @@ bool CvPlot::setRevealed(TeamTypes eTeam, bool bNewValue, bool bTerrainOnly, Tea
         {
             if(getFeatureType() != NO_FEATURE)
             {
-                if(GC.getFeatureInfo(getFeatureType())->IsNaturalWonder())
+                if(GC.getFeatureInfo(getFeatureType())->IsNaturalWonder(true))
                 {
                     GET_TEAM(eTeam).ChangeNumNaturalWondersDiscovered(1);
 
diff --git a/CvGameCoreDLL_Expansion2/CvPlot.h b/CvGameCoreDLL_Expansion2/CvPlot.h
index df62de6..ad92fee 100644
--- a/CvGameCoreDLL_Expansion2/CvPlot.h
+++ b/CvGameCoreDLL_Expansion2/CvPlot.h
@@ -448,7 +448,7 @@ public:
 
     void setFeatureType(FeatureTypes eNewValue, int iVariety = -1);
 
-    bool IsNaturalWonder() const;
+    bool IsNaturalWonder(bool orPseudoNatural = false) const;
 
     ResourceTypes getResourceType(TeamTypes eTeam = NO_TEAM) const;
     ResourceTypes getNonObsoleteResourceType(TeamTypes eTeam = NO_TEAM) const;
diff --git a/CvGameCoreDLL_Expansion2/CvUnit.cpp b/CvGameCoreDLL_Expansion2/CvUnit.cpp
index 9b784a0..03c4bcd 100644
--- a/CvGameCoreDLL_Expansion2/CvUnit.cpp
+++ b/CvGameCoreDLL_Expansion2/CvUnit.cpp
@@ -13413,7 +13413,7 @@ void CvUnit::setXY(int iX, int iY, bool bGroup, bool bUpdate, bool bShow, bool b
 
                 // Natural wonder that provides free promotions?
                 FeatureTypes eFeature = pAdjacentPlot->getFeatureType();
-                if(eFeature != NO_FEATURE && GC.getFeatureInfo(eFeature)->IsNaturalWonder())
+                if(eFeature != NO_FEATURE && GC.getFeatureInfo(eFeature)->IsNaturalWonder(true))
                 {
                     PromotionTypes ePromotion = (PromotionTypes)GC.getFeatureInfo(eFeature)->getAdjacentUnitFreePromotion();
                     if(ePromotion != NO_PROMOTION)
diff --git a/CvGameCoreDLL_Expansion2/CvVotingClasses.cpp b/CvGameCoreDLL_Expansion2/CvVotingClasses.cpp
index e2d88a0..3a854c0 100644
--- a/CvGameCoreDLL_Expansion2/CvVotingClasses.cpp
+++ b/CvGameCoreDLL_Expansion2/CvVotingClasses.cpp
@@ -3890,7 +3890,7 @@ int CvLeague::GetFeatureYieldChange(FeatureTypes eFeature, YieldTypes eYield)
     if (pInfo)
     {
         // Natural Wonders
-        if (pInfo->IsNaturalWonder())
+        if (pInfo->IsNaturalWonder(true))
         {
             int iNaturalWonderMod = 0;
             if (eYield == YIELD_CULTURE)
diff --git a/CvGameCoreDLL_Expansion2/CvWorldBuilderMapLoader.cpp b/CvGameCoreDLL_Expansion2/CvWorldBuilderMapLoader.cpp
index e869163..1c125b4 100644
--- a/CvGameCoreDLL_Expansion2/CvWorldBuilderMapLoader.cpp
+++ b/CvGameCoreDLL_Expansion2/CvWorldBuilderMapLoader.cpp
@@ -1348,7 +1348,7 @@ bool CvWorldBuilderMapLoader::Save(const wchar_t* wszFilename, const char* szMap
         else
         {
             CvFeatureInfo* pkFeatureInfo = GC.getFeatureInfo(eFeatureType);
-            if(pkFeatureInfo != NULL && pkFeatureInfo->IsNaturalWonder())
+            if(pkFeatureInfo != NULL && pkFeatureInfo->IsNaturalWonder())    //TODO: Not sure whether to include PseudoNatural Wonders here...
             {
                 kPlotData.SetFeatureType(CvWorldBuilderMap::PlotMapData::InvalidFeature);
                 kPlotData.SetNaturalWonderType((byte)eFeatureType);
--
2.9.0.windows.1
Copy in uploaded file. I read that @Iamblichos added them, but I cannot make this work... and I'm the DLL lame.
 

Attachments

  • 0001-Added-PseudoNaturalWonder-feature-type.zip
    2.5 KB · Views: 62
Bump.


And second question: Where can I find latest version of "AssignStartingPlots.lua" changed by VP?

In MODS\6(a)...\LUA (assuming you use EUI, presumably in an equivalent place if not.

Regarding your previous question, MaxActiveReligions is updated by Worldsizes.sql. It looks like this runs after your file that changes it. I use the Change VP Options mod for things like that, which runs last.

As for the default number of city states etc, perhaps the game is remembering the last number you used, but don't know how to change that.

Also, how did you get that table display please? Looks like something I should know about!
 
Use SQLite. post
 
@psparky Can you dig in dll or you don't touch it at all?
 
@psparky Can you dig in dll or you don't touch it at all?
Yes, I debug, bug fix and tweak the very old version that I mostly play with (I use DLC modpacks to try out the latest versions from time to time, without disturbing my installed version).

I post bugs on github, but haven't used it for development. I didn't really understand your recent question, but I do see references to PseudoNaturalWonder in the code if that helps
 
Yes, I debug, bug fix and tweak the very old version that I mostly play with (I use DLC modpacks to try out the latest versions from time to time, without disturbing my installed version).

I post bugs on github, but haven't used it for development. I didn't really understand your recent question, but I do see references to PseudoNaturalWonder in the code if that helps
One guy wrote this mod with its own dll changes described in the file I posted earlier. Then @Iamblichos added them to CP (2nd page of the thread), but not tested probably. I used the same settings, but still have problems with not loaded custom natural wonder model, which should be fixed in dll. I just need someone to compare current dll with his file to check if there is nothing wrong. I know it can be hard, but I have no knowledge about dlls.

The main problem is fact that adding natural wonder to the tables and his model is not enough because some hardcoded things in civ 5. This guy found way to program wonder as a feature, and his model like for improvement. PseudoNaturalWonder tag is used for the model finding. For now I got some default Mt. Fuji model and it does not depend on actual model I set in my mod files (fxsxml).

To be sure its not my fault I experimented with different xml file settings, used different models, but effect is still the same.

I managed to add all stuff related to Natural Wonders beside model.
 
Last edited:
Could someone explain to me the difference between Election Rigging and Coup in regards to spy's and city states. (My current understanding is that election rigging increases influence, and im not quite sure what a coup does and how you get it vs election rigging). Also it says a failed coup will kill your spy, although as far as I can remember I have never lost a spy in this way. Also how the interplay works when there are multiple similarly leveled spys in the same city
 
Also it seems that my spies leveled up from sucessful action in a city state and for some reason I thought that didnt happen. Did they change this?
 
Can you tell me why this:
Code:
local g_tDirectionTypes = {
    DirectionTypes.DIRECTION_NORTHEAST,
    DirectionTypes.DIRECTION_EAST,
    DirectionTypes.DIRECTION_SOUTHEAST,
    DirectionTypes.DIRECTION_SOUTHWEST,
    DirectionTypes.DIRECTION_WEST,
    DirectionTypes.DIRECTION_NORTHWEST
}
at the beginning of the lua file (imported to vfs) throws me an error:
Code:
Runtime Error: C:\Users\Adam\Documents\My Games\Sid Meier's Civilization 5\MODS\(overhaul) More Wonders for VP (v 1)\NaturalWonders\Lua\NaturalWondersCustomMethods.lua:44: attempt to index global 'DirectionTypes' (a nil value)
on map loading? Funny thing is taht all later lua script works fine...
 
Could someone explain to me the difference between Election Rigging and Coup in regards to spy's and city states. (My current understanding is that election rigging increases influence, and im not quite sure what a coup does and how you get it vs election rigging). Also it says a failed coup will kill your spy, although as far as I can remember I have never lost a spy in this way. Also how the interplay works when there are multiple similarly leveled spys in the same city

If a spy is stationed in a City-State, it will rig the elections every X turns, increasing your Influence and decreasing the Influence of other civs. This does not risk your spy's death.

When in a City-State that someone else is allied with, your spy can attempt a coup (available under the Espionage Overview, must be performed manually). Chances of success depend on factors such as your spy's level and how close you are to the other civ in Influence. If a coup succeeds, your Influence total is swapped with the City-State's ally, all other civs have their Influence lowered, and you receive diplo penalties (especially with the former ally). If a coup fails, your spy is killed. If a coup is attempted, a cooldown timer starts, and no more coups can be attempted in that City-State for some time.

Also it seems that my spies leveled up from sucessful action in a city state and for some reason I thought that didnt happen. Did they change this?

Your spy can gain experience and level up from rigging elections in a City-State. I believe this was added in a version last year.
 
I haven't played this mod in a couple of years, so some of the stuff that's been added has definitely passed me by. I'm also not 100% sure if I've installed correctly, so with that in mind, 2 quick questions:

1. I feel like I used to be able to see what impact on happiness a city was having, before it became unhappy (and how far above/below each line the city was). Has that changed just to show when cities are unhappy now?
2. Fighting America with the Huns in the Classical era. All the American melee units seem to have a promotion that grants them +33% vs Archery units - I think it's represented by the symbol of a crossed mace and axe. I can't find any mention of the promotion in the Civilopedia, or any reason that the American units would all have it. Where's this come from?

Thanks for the help, and sorry if I'm missing something really obvious. I did try looking it all up first.
HI there!
Happiness has been redesigned, and its UI too.
Brief. Happiness is now local. Check each city to see how much happiness and unhappiness they are producing. A few global bonuses (think luxuries) are distributed among cities, in order of size.
When there is more unhappy than happy people in your empire, global penalties apply (combat penalty, risk of revolt), but penalties are mostly applied at local level, reducing city growth and increasing the cost of producing military units.

I wasn't aware of that America change. But every swordsman starts with a cover promotion now, so maybe it's that.

Promotions have changed a big deal, especially naval units, and you might not recognize the new enhancement beliefs.
Another nice change you might notice is the AI diplomacy, it has been reworked.
 
If a spy is stationed in a City-State, it will rig the elections every X turns, increasing your Influence and decreasing the Influence of other civs. This does not risk your spy's death.

When in a City-State that someone else is allied with, your spy can attempt a coup (available under the Espionage Overview, must be performed manually). Chances of success depend on factors such as your spy's level and how close you are to the other civ in Influence. If a coup succeeds, your Influence total is swapped with the City-State's ally, all other civs have their Influence lowered, and you receive diplo penalties (especially with the former ally). If a coup fails, your spy is killed. If a coup is attempted, a cooldown timer starts, and no more coups can be attempted in that City-State for some time.



Your spy can gain experience and level up from rigging elections in a City-State. I believe this was added in a version last year.

Holy horsehocky, how long has this coup concept where you click it been in the game? Have I just not known about this all these years or is this a vox populi recent addition? Does Englands spy increased level work beyond lv 3 for increasing Coup chance? England is my most played civ and I have never used this Coup function.... 100's of hours probably wasted losing games lol
 
Holy ****, how long has this coup concept where you click it been in the game? Have I just not known about this all these years or is this a vox populi recent addition? Does Englands spy increased level work beyond lv 3 for increasing Coup chance? England is my most played civ and I have never used this Coup function.... 100's of hours probably wasted losing games lol

Since vanilla BNW. Not a Vox Populi addition :)
 
One guy wrote this mod with its own dll changes described in the file I posted earlier. Then @Iamblichos added them to CP (2nd page of the thread), but not tested probably. I used the same settings, but still have problems with not loaded custom natural wonder model, which should be fixed in dll. I just need someone to compare current dll with his file to check if there is nothing wrong. I know it can be hard, but I have no knowledge about dlls.

The main problem is fact that adding natural wonder to the tables and his model is not enough because some hardcoded things in civ 5. This guy found way to program wonder as a feature, and his model like for improvement. PseudoNaturalWonder tag is used for the model finding. For now I got some default Mt. Fuji model and it does not depend on actual model I set in my mod files (fxsxml).

To be sure its not my fault I experimented with different xml file settings, used different models, but effect is still the same.

I managed to add all stuff related to Natural Wonders beside model.

The source code for the current version is here if that helps:

https://github.com/LoneGazebo/Community-Patch-DLL/tree/master/CvGameCoreDLL_Expansion2

If you believe it's not working, possibly due to one of these "bad merge" events, it would be best to raise an issue on github - that would also bring it to the attention of the developers you may be able to help you. I don't think there's anything more I can do.:(
 
When I capture Celtic Holy City and make their religion my official religion, do I get benefit from their pantheon?

Similarly when I capture Byzantine Holy City, do I get benefit from extra belief adopting that religion?
 
When I capture Celtic Holy City and make their religion my official religion, do I get benefit from their pantheon?
Every city benefits from the pantheon and follower beliefs of the majority religion in the city. As a player, you benefit from founder beliefs. If you are a founder, you can't change it. If you become an usurper, then you get founder beliefs of the religion you usurped and is majority in your empire.

Similarly when I capture Byzantine Holy City, do I get benefit from extra belief adopting that religion?
Curious too.
 
Every city benefits from the pantheon and follower beliefs of the majority religion in the city. As a player, you benefit from founder beliefs. If you are a founder, you can't change it. If you become an usurper, then you get founder beliefs of the religion you usurped and is majority in your empire.


Curious too.

I have just conquered Celtic Holy City and I cannot benefit from their pantheon even though their religion became my official religion.
 
Top Bottom