ChaosSlayer
King
- Joined
- Feb 3, 2011
- Messages
- 608
Thank You!
I suppose I can edit .py files with a simple notepad, right? No compiling needed?
I suppose I can edit .py files with a simple notepad, right? No compiling needed?
Also, is it possible to give unit higher maintenance cost? (sadly bMilitarySupport is also a Boolean)
The dll handles loading of the xml files and if you are unhappy with how it works, you will have to mod the dll. If you can't mod it, then you really are stuck with a fixed set of options.However the game gave me an error saying that this is a BOOLEAN value, which means its either yes or no, and I can't give it a 2.
Edit civic xml and change iHappyPerMilitaryUnit to 2. I think that should do it, but it appears that you have one setting to affect all units and you can't have some city guard unit with double happiness effect.Is there a way around this to have unit provide more than 1 point of happiness under Monarchy?
<ElementType name="Help" content="textOnly"/>
"C:\Program Files\Firaxis Games\Sid Meier's Civilization 4\Beyond the Sword\Mods"
"C:\Program Files\Firaxis Games\Sid Meier's Civilization 4\Beyond the Sword\Civ4BeyondSword.exe" mod=\WWI_Jon_Shafer_BtS319
"C:\Program Files\Firaxis Games\Sid Meier's Civilization 4\Beyond the Sword\Civ4BeyondSword.exe" "mod=\History Rewritten"
I'm not sure that I'm following you on the first one,
but there is a hidden tag 'Help' that you can insert in the BuildingInfos in-between the Civilopedia and Strategy tags, as referenced in the schema file:
.Code:<ElementType name="Help" content="textOnly"/>
For the Shortcut icon, I find it easier to just copy one and edit its properties (it works with Windows 8 too):
in Start in:
or appropriate path for you.Code:"C:\Program Files\Firaxis Games\Sid Meier's Civilization 4\Beyond the Sword\Mods"
in Target:
Code:"C:\Program Files\Firaxis Games\Sid Meier's Civilization 4\Beyond the Sword\Civ4BeyondSword.exe" mod=\WWI_Jon_Shafer_BtS319
Note that it works because of the underscores in the name of the Mod. If not, add quotes like this:
Code:"C:\Program Files\Firaxis Games\Sid Meier's Civilization 4\Beyond the Sword\Civ4BeyondSword.exe" "mod=\History Rewritten"
Another question: I want to alter dimensions my Civic screen a bit so it fits 6 civics per type rather than 5.
How/where I could do that?
Thank You!
self.HEADINGS_BOTTOM = 280
self.HELP_TOP = 350
Dawn of Civilization has it.
Question: how do I provide a separate soundtrack for my mod? I know how to alter music, but the soundtrack files themselves are broken up into Civ IV, Warlords and BTS folders. My attempt to create one in my mod resulted in my custom ancient era tracks being played in all eras- even in the base game, and all other mods! How does that even happen?
<EraInfo>
<Type>ERA_CLASSICAL</Type>
<Description>TXT_KEY_ERA_CLASSICAL</Description>
<Strategy>TXT_KEY_ERA_CLASSICAL_STRATEGY</Strategy>
<bNoGoodies>0</bNoGoodies>
<bNoAnimals>1</bNoAnimals>
<bNoBarbUnits>0</bNoBarbUnits>
<bNoBarbCities>0</bNoBarbCities>
<iAdvancedStartPoints>1200</iAdvancedStartPoints>
<iStartingUnitMultiplier>1</iStartingUnitMultiplier>
<iStartingDefenseUnits>1</iStartingDefenseUnits>
<iStartingWorkerUnits>1</iStartingWorkerUnits>
<iStartingExploreUnits>1</iStartingExploreUnits>
<iStartingGold>10</iStartingGold>
<iFreePopulation>0</iFreePopulation>
<iStartPercent>10</iStartPercent>
<iGrowthPercent>100</iGrowthPercent>
<iTrainPercent>100</iTrainPercent>
<iConstructPercent>100</iConstructPercent>
<iCreatePercent>100</iCreatePercent>
<iResearchPercent>90</iResearchPercent>
<iBuildPercent>100</iBuildPercent>
<iImprovementPercent>100</iImprovementPercent>
<iGreatPeoplePercent>100</iGreatPeoplePercent>
<iCulturePercent>100</iCulturePercent>
<iAnarchyPercent>50</iAnarchyPercent>
<iEventChancePerTurn>2</iEventChancePerTurn>
<iSoundtrackSpace>400</iSoundtrackSpace>
<bFirstSoundtrackFirst>0</bFirstSoundtrackFirst>
<EraInfoSoundtracks>
<EraInfoSoundtrack>AS2D_SONG_ALEXANDER</EraInfoSoundtrack>
<EraInfoSoundtrack>AS2D_SONG_VIKING</EraInfoSoundtrack>
<EraInfoSoundtrack>AS2D_SONG_ROME</EraInfoSoundtrack>
<EraInfoSoundtrack>AS2D_SONG_PELOPONNESIAN</EraInfoSoundtrack>
<EraInfoSoundtrack>AS2D_SONG_CIV_III_MID_ROME</EraInfoSoundtrack>
<EraInfoSoundtrack>AS2D_SONG_CIV_III_ANC_EUROPE</EraInfoSoundtrack>
<EraInfoSoundtrack>AS2D_SONG_CIV_III_ANC_ROME</EraInfoSoundtrack>
<EraInfoSoundtrack>AS2D_SONG_CIV_III_MID_EUROPE</EraInfoSoundtrack>
<EraInfoSoundtrack>AS2D_SONG_CIV_III_MOD_CELTIC</EraInfoSoundtrack>
<EraInfoSoundtrack>AS2D_SONG_CONQUESTS_FANTASY1</EraInfoSoundtrack>
<EraInfoSoundtrack>AS2D_SONG_CONQUESTS_FANTASY2</EraInfoSoundtrack>
<EraInfoSoundtrack>AS2D_SONG_CONQUESTS_ROMAN</EraInfoSoundtrack>
<EraInfoSoundtrack>AS2D_SONG_DIP_EC_EARLY_PEACE</EraInfoSoundtrack>
<EraInfoSoundtrack>AS2D_SONG_DIP_EC_EARLY_WAR</EraInfoSoundtrack>
<EraInfoSoundtrack>AS2D_SONG_DIP_EU_LATE_PEACE</EraInfoSoundtrack>
<EraInfoSoundtrack>AS2D_SONG_DIP_EU_LATE_WAR</EraInfoSoundtrack>
<EraInfoSoundtrack>AS2D_SONG_DIP_GR_EARLY_PEACE</EraInfoSoundtrack>
<EraInfoSoundtrack>AS2D_SONG_BARBARIAN</EraInfoSoundtrack>
<EraInfoSoundtrack>AS2D_SONG_DIP_GR_EARLY_WAR</EraInfoSoundtrack>
</EraInfoSoundtracks>
<CitySoundscapes>
<CitySoundscape>
<CitySizeType>CITYSIZE_SMALL</CitySizeType>
<SoundscapeScript>ASSS_CITY_ANCIENT_SMALL_SELECT_AMB</SoundscapeScript>
</CitySoundscape>
<CitySoundscape>
<CitySizeType>CITYSIZE_MEDIUM</CitySizeType>
<SoundscapeScript>ASSS_CITY_ANCIENT_SMALL_SELECT_AMB</SoundscapeScript>
</CitySoundscape>
<CitySoundscape>
<CitySizeType>CITYSIZE_LARGE</CitySizeType>
<SoundscapeScript>ASSS_CITY_ANCIENT_LARGE_SELECT_AMB</SoundscapeScript>
</CitySoundscape>
</CitySoundscapes>
<AudioUnitVictoryScript>AS2D_VICTORY_EARLY</AudioUnitVictoryScript>
<AudioUnitDefeatScript>AS2D_LOSS_EARLY</AudioUnitDefeatScript>
</EraInfo>
I think they are defined in CIV4EraInfos in Gameinfo folder
Code:<EraInfo> <Type>ERA_CLASSICAL</Type> <Description>TXT_KEY_ERA_CLASSICAL</Description> <Strategy>TXT_KEY_ERA_CLASSICAL_STRATEGY</Strategy> <bNoGoodies>0</bNoGoodies> <bNoAnimals>1</bNoAnimals> <bNoBarbUnits>0</bNoBarbUnits> <bNoBarbCities>0</bNoBarbCities> <iAdvancedStartPoints>1200</iAdvancedStartPoints> <iStartingUnitMultiplier>1</iStartingUnitMultiplier> <iStartingDefenseUnits>1</iStartingDefenseUnits> <iStartingWorkerUnits>1</iStartingWorkerUnits> <iStartingExploreUnits>1</iStartingExploreUnits> <iStartingGold>10</iStartingGold> <iFreePopulation>0</iFreePopulation> <iStartPercent>10</iStartPercent> <iGrowthPercent>100</iGrowthPercent> <iTrainPercent>100</iTrainPercent> <iConstructPercent>100</iConstructPercent> <iCreatePercent>100</iCreatePercent> <iResearchPercent>90</iResearchPercent> <iBuildPercent>100</iBuildPercent> <iImprovementPercent>100</iImprovementPercent> <iGreatPeoplePercent>100</iGreatPeoplePercent> <iCulturePercent>100</iCulturePercent> <iAnarchyPercent>50</iAnarchyPercent> <iEventChancePerTurn>2</iEventChancePerTurn> <iSoundtrackSpace>400</iSoundtrackSpace> <bFirstSoundtrackFirst>0</bFirstSoundtrackFirst> <EraInfoSoundtracks> <EraInfoSoundtrack>AS2D_SONG_ALEXANDER</EraInfoSoundtrack> <EraInfoSoundtrack>AS2D_SONG_VIKING</EraInfoSoundtrack> <EraInfoSoundtrack>AS2D_SONG_ROME</EraInfoSoundtrack> <EraInfoSoundtrack>AS2D_SONG_PELOPONNESIAN</EraInfoSoundtrack> <EraInfoSoundtrack>AS2D_SONG_CIV_III_MID_ROME</EraInfoSoundtrack> <EraInfoSoundtrack>AS2D_SONG_CIV_III_ANC_EUROPE</EraInfoSoundtrack> <EraInfoSoundtrack>AS2D_SONG_CIV_III_ANC_ROME</EraInfoSoundtrack> <EraInfoSoundtrack>AS2D_SONG_CIV_III_MID_EUROPE</EraInfoSoundtrack> <EraInfoSoundtrack>AS2D_SONG_CIV_III_MOD_CELTIC</EraInfoSoundtrack> <EraInfoSoundtrack>AS2D_SONG_CONQUESTS_FANTASY1</EraInfoSoundtrack> <EraInfoSoundtrack>AS2D_SONG_CONQUESTS_FANTASY2</EraInfoSoundtrack> <EraInfoSoundtrack>AS2D_SONG_CONQUESTS_ROMAN</EraInfoSoundtrack> <EraInfoSoundtrack>AS2D_SONG_DIP_EC_EARLY_PEACE</EraInfoSoundtrack> <EraInfoSoundtrack>AS2D_SONG_DIP_EC_EARLY_WAR</EraInfoSoundtrack> <EraInfoSoundtrack>AS2D_SONG_DIP_EU_LATE_PEACE</EraInfoSoundtrack> <EraInfoSoundtrack>AS2D_SONG_DIP_EU_LATE_WAR</EraInfoSoundtrack> <EraInfoSoundtrack>AS2D_SONG_DIP_GR_EARLY_PEACE</EraInfoSoundtrack> <EraInfoSoundtrack>AS2D_SONG_BARBARIAN</EraInfoSoundtrack> <EraInfoSoundtrack>AS2D_SONG_DIP_GR_EARLY_WAR</EraInfoSoundtrack> </EraInfoSoundtracks> <CitySoundscapes> <CitySoundscape> <CitySizeType>CITYSIZE_SMALL</CitySizeType> <SoundscapeScript>ASSS_CITY_ANCIENT_SMALL_SELECT_AMB</SoundscapeScript> </CitySoundscape> <CitySoundscape> <CitySizeType>CITYSIZE_MEDIUM</CitySizeType> <SoundscapeScript>ASSS_CITY_ANCIENT_SMALL_SELECT_AMB</SoundscapeScript> </CitySoundscape> <CitySoundscape> <CitySizeType>CITYSIZE_LARGE</CitySizeType> <SoundscapeScript>ASSS_CITY_ANCIENT_LARGE_SELECT_AMB</SoundscapeScript> </CitySoundscape> </CitySoundscapes> <AudioUnitVictoryScript>AS2D_VICTORY_EARLY</AudioUnitVictoryScript> <AudioUnitDefeatScript>AS2D_LOSS_EARLY</AudioUnitDefeatScript> </EraInfo>
and then sound references themselves are defined in AudioDefines in Audio folder.
Note that I haven't actualy tried this myself![]()
if (gDLL->getXMLIFace()->SetToChildByTagName(pXML->GetXML(), "UnitMeshGroup"))
{
for ( k = 0; k < iIndexVal; k++ )
{
pXML->GetChildXmlValByName( &m_piUnitGroupRequired[k], "iRequired");
pXML->GetChildXmlValByName(szTextVal, "EarlyArtDefineTag");
setEarlyArtDefineTag(k, szTextVal);
pXML->GetChildXmlValByName(szTextVal, "LateArtDefineTag");
setLateArtDefineTag(k, szTextVal);
pXML->GetChildXmlValByName(szTextVal, "MiddleArtDefineTag");
setMiddleArtDefineTag(k, szTextVal);
gDLL->getXMLIFace()->NextSibling(pXML->GetXML());
}
gDLL->getXMLIFace()->SetToParent(pXML->GetXML());
}
gDLL->getXMLIFace()->SetToParent(pXML->GetXML());