I found this mod few days ago.
First thanks for every modder who ever did work on this FFH2 and later versions and to the modders who still do it!
I'm checking in the moment how to modify the game, myself. Mostly to make it little less difficult.
1. I love the ancient city ruins, dungeons, graveyards which can be searched and destroyed. Could someone tell me how I can modify the PY-files so they get destroyed with a smaller chance?
2. If I do understand it correct, the spell handled in CvSpellInterface.py and what is in the spoiler does handle it, now.
(The script in the spoiler I do not understand in the moment)
Can I still change the chances what effect will happen if I explore a lair?
I would prefer less negative effects.
##### MARNOK LAIRS
### Replaces the original spell req (was heavy python)
def reqExploreLair(caster):
gc = CyGlobalContext()
if caster.isOnlyDefensive(): return False
if caster.getUnitCombatType() == getInfoType('UNITCOMBAT_SIEGE'): return False
if caster.isBarbarian(): return False
if not caster.getMasterUnit().isNone(): return False
if caster.getSpecialUnitType() == getInfoType('SPECIALUNIT_SPELL'): return False
if caster.getSpecialUnitType() == getInfoType('SPECIALUNIT_BIRD'): return False
pPlot = caster.plot()
pPlayer = gc.getPlayer(caster.getOwner())
if not pPlayer.isHuman():
eBarbCiv = gc.getImprovementInfo(pPlot.getImprovementType()).getSpawnUnitCiv()
eBarbTeam = -1
if (eBarbCiv == Civ["Barbarian (Demon)"] and not CyGame().isOption(GameOptionTypes.GAMEOPTION_NO_DEMONS)):
eBarbTeam = gc.getDEMON_TEAM()
elif (eBarbCiv == Civ["Barbarian (Animal)"] and not CyGame().isOption(GameOptionTypes.GAMEOPTION_NO_ANIMALS)):
eBarbTeam = gc.getANIMAL_TEAM()
elif (eBarbCiv == Civ["Barbarian (Orc)"] and not CyGame().isOption(GameOptionTypes.GAMEOPTION_NO_BARBARIANS)):
eBarbTeam = gc.getORC_TEAM()
if not pPlot.isWater():
pCapital = pPlayer.getCapitalCity()
if pCapital.isNone():
return False
elif (plotDistance(caster.getX(), caster.getY(), pCapital.getX(), pCapital.getY()) < 20):
if (pCapital.plot().getNumDefenders(caster.getOwner()) < 6):
return False
else:
pNearestCity = CyMap().findCity(caster.getX(), caster.getY(), -1, caster.getTeam(), False, False, -1, -1, pCapital, False)
if not pNearestCity.isNone():
if (plotDistance(caster.getX(), caster.getY(), pNearestCity.getX(), pNearestCity.getY()) < 20):
if (pNearestCity.plot().getNumDefenders(caster.getOwner()) < 4):
return False
if not (eBarbTeam == -1):
if not gc.getTeam(pPlayer.getTeam()).isAtWar(eBarbTeam):
return False
return True
I tried also other changing settings in CustomFunctions.py and CvSpellInterface.py, but was not really succesful.
3. Is there a technology necessary to use money to speed up the production of a building or unit? I can't find out how to do it. (Black Imperator mentioned in another thread it would be civ specific if it is possible...)
First thanks for every modder who ever did work on this FFH2 and later versions and to the modders who still do it!
I'm checking in the moment how to modify the game, myself. Mostly to make it little less difficult.
1. I love the ancient city ruins, dungeons, graveyards which can be searched and destroyed. Could someone tell me how I can modify the PY-files so they get destroyed with a smaller chance?
2. If I do understand it correct, the spell handled in CvSpellInterface.py and what is in the spoiler does handle it, now.
(The script in the spoiler I do not understand in the moment)
Can I still change the chances what effect will happen if I explore a lair?
I would prefer less negative effects.

Spoiler :
##### MARNOK LAIRS
### Replaces the original spell req (was heavy python)
def reqExploreLair(caster):
gc = CyGlobalContext()
if caster.isOnlyDefensive(): return False
if caster.getUnitCombatType() == getInfoType('UNITCOMBAT_SIEGE'): return False
if caster.isBarbarian(): return False
if not caster.getMasterUnit().isNone(): return False
if caster.getSpecialUnitType() == getInfoType('SPECIALUNIT_SPELL'): return False
if caster.getSpecialUnitType() == getInfoType('SPECIALUNIT_BIRD'): return False
pPlot = caster.plot()
pPlayer = gc.getPlayer(caster.getOwner())
if not pPlayer.isHuman():
eBarbCiv = gc.getImprovementInfo(pPlot.getImprovementType()).getSpawnUnitCiv()
eBarbTeam = -1
if (eBarbCiv == Civ["Barbarian (Demon)"] and not CyGame().isOption(GameOptionTypes.GAMEOPTION_NO_DEMONS)):
eBarbTeam = gc.getDEMON_TEAM()
elif (eBarbCiv == Civ["Barbarian (Animal)"] and not CyGame().isOption(GameOptionTypes.GAMEOPTION_NO_ANIMALS)):
eBarbTeam = gc.getANIMAL_TEAM()
elif (eBarbCiv == Civ["Barbarian (Orc)"] and not CyGame().isOption(GameOptionTypes.GAMEOPTION_NO_BARBARIANS)):
eBarbTeam = gc.getORC_TEAM()
if not pPlot.isWater():
pCapital = pPlayer.getCapitalCity()
if pCapital.isNone():
return False
elif (plotDistance(caster.getX(), caster.getY(), pCapital.getX(), pCapital.getY()) < 20):
if (pCapital.plot().getNumDefenders(caster.getOwner()) < 6):
return False
else:
pNearestCity = CyMap().findCity(caster.getX(), caster.getY(), -1, caster.getTeam(), False, False, -1, -1, pCapital, False)
if not pNearestCity.isNone():
if (plotDistance(caster.getX(), caster.getY(), pNearestCity.getX(), pNearestCity.getY()) < 20):
if (pNearestCity.plot().getNumDefenders(caster.getOwner()) < 4):
return False
if not (eBarbTeam == -1):
if not gc.getTeam(pPlayer.getTeam()).isAtWar(eBarbTeam):
return False
return True
I tried also other changing settings in CustomFunctions.py and CvSpellInterface.py, but was not really succesful.
3. Is there a technology necessary to use money to speed up the production of a building or unit? I can't find out how to do it. (Black Imperator mentioned in another thread it would be civ specific if it is possible...)