Are Civ Art styles hardcoded?

Pouakai

It belongs in a museum.
Moderator
Joined
Jun 16, 2010
Messages
7,194
Location
Aotearoa
Given the scope of Zambezi, I've been looking into the possibility of a Sub-Saharan African city style. I looked at the Polynesia DLC for guidance, since that should have the Polynesian city style encased within. I made some progress, finding the below code:

Code:
<BuildingArtInfos>

  <!-- Polynesian ************************************************************ -->
  <Culture name="Polynesian" lighting="Asia">
    <Era name="Ancient">
      <PopulationBuildings>
        <Granny>Poly_Anc_City.gr2</Granny>
      </PopulationBuildings>
    </Era>
    <Era name="Rennaisance">
      <PopulationBuildings>
        <Granny>Poly_Ren_City.gr2</Granny>
      </PopulationBuildings>
    </Era>
    <Era name="Industrial">
      <PopulationBuildings>
        <Granny>Poly_Ind_City.gr2</Granny>
      </PopulationBuildings>
    </Era>
    <Era name="Modern">
      <PopulationBuildings>
        <Granny>Poly_Mod_City.gr2</Granny>
      </PopulationBuildings>
    </Era>
  </Culture>
  
</BuildingArtInfos>

Code:
<WonderArtInfos xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="Civ5ArtDefineSchemas_Wonders.xsd">
  <!-- WONDER POLYNESIAN CASTLE **************************************** -->
  <WonderArtInfo>
    <Type>POLYNESIAN CASTLE</Type>
    <WonderArtState state="Any">
      <fScale>0.2</fScale>
      <Granny>Poly_Castle.fxsxml</Granny>
    </WonderArtState>
  </WonderArtInfo>
  <!-- WONDER POLYNESIAN COLESSEUM ************************************* -->
  <WonderArtInfo>
    <Type>POLYNESIAN COLESSEUM</Type>
    <WonderArtState state="Any">
      <fScale>0.2</fScale>
      <Granny>Colesseum_Asia.fxsxml</Granny>
    </WonderArtState>
  </WonderArtInfo>
  <!-- WONDER POLYNESIAN PALACE **************************************** -->
  <WonderArtInfo>
    <Type>POLYNESIAN PALACE</Type>
    <WonderArtState state="Any">
      <fScale>0.2</fScale>
      <Granny>Poly_Palace.fxsxml</Granny>
    </WonderArtState>
  </WonderArtInfo>
</WonderArtInfos>

But what confused me is the <Culture name="Polynesian" lighting="Asia"> line. Are the culture names for the art styles hard coded in the DLL, or is there something I'm missing? I also can't seem to find where it's converted from Culture name="Polynesian" to ARTSTYLE_POLYNESIA, which leads me to assume it's all handled in the DLL.

That leads on to my next question, which would be is it possible now that we have the DLL, to add in a new ARTSTYLE, and thus new city art?
 
Neither BuildingArtInfos nor WonderArtInfos are tables in the database that we're able to modify. I imagine this setup is much like the formations xml file, where it doesn't update the database, but I believe we can alter it by replacing the base game file with a equivalently-named, VFS=true file of our own, but I've never tried it to see if it works with these specific files.

Alternatively, the 'fake DLC' route may allow you to just do the same kind of thing Firaxis has done, but I can't be sure.
 
As far as I remember, though I'd need to test again, Issue Number 2 is also how those tags are linked to the actual city-style.

Culturename = "Polynesian" ; doesn't seem to be exactly "ARTSTYLE_POLYNESIAN"... though it could work automatically as with music...

I remember testing and failing, but that could have changed, we need more knowledge.
 
Top Bottom