Rebirth and Legend

A little late to the party but I just wanted to mention that removing/reducing terraforming should speed up the game by quite a bit. It's one of the larger reasons for slowness that I couldn't even try to fix, since the code is in the graphics engine and we don't have access to that.
 
well, in any cases, the auto-terraform is a bit of the game that borders on cheating :D how do some civ get there favourite terrain without paying for it in any way ?
 
Rebirth and Legend 1.1 is finally being uploaded, and will be available just as soon as my 'net connection eventually manages to get there.

As yet, the plans for modularising many parts of RiFE are not present, and the Jotnar have not been changed to take into account the most recent discussions about them.
Those changes will be handled in the next version, in which most of the work will be based around modules and a massive slew of text fixes.

For now, until the upload is completed, here's the change log. As I've noted before, the lines noted as having come from Ashes of Erebus use no AoE code - I've implemented each one myself, just using their change log to find and address each issue.

Known issues:
-Frozen module is not stable. Use at your own risk.
-Due to the changes made to the Infernals, 'Gone to Hell' victory and spreading Hell Terrain is much more difficult without the Infernals in play. If you want to spread it, capture Bradeline's Well within your Cultural Influence - and if the Elohim are around, hope they haven't purified it.

Rebirth and Legend 1.1:
-Grigori: Temple of the Hand now blocked
-Grigori: Eidolon added to blocked units
-Mercurians: Basium no longer has his city stealing spell
-Mercurians: No longer a summonable Civ, can be selected from the start
-Mercurians: No longer have any blocked units
-Mercurians: Basium is now trainable at Righteousness, costs 1200 hammers and requires the Mercurian Gate in city
-Mercurians: Mercurian Gate is now a UB Wonder. Living units in the city may cast a spell that may kill them, but may apply the Angel Racial (If they die, they may come back as Angel units as usual)
-Infernals: No longer a summonable Civ, can be selected from the start
-Infernals: An Infernal city no longer gains any free buildings except for Demonic Citizens ('pedia has been updated to reflect this)
-Infernals: Hyborem trainable at Malevolent Designs, must have AV Religion, costs 1200 hammers.
-Doviello: Baron Duin Halfmorn's trait now grants the Werewolf promotion to all units.
-Mimics can no longer aquire Leash (and similar) promotions from combat (Python code contributed by Viatos)
-White Hand religion now properly disabled for Civ's that shouldn't be able to get it
-Ashes of Erebus style additions to all upgradable tile improvements except Cottages - each one now has (I), (II), (III) or (IV) appended to the end to make it easier to tell the ordering.
-Fixed missing text key for discovering the Ring of Striking
-LPlate's Frozen Souls python fix merged (From my Ashes Frozen module - Be warned this module still has issues)
-Jotnar: Start with only one Jotnar Citizen and Jotnar Warrior
-Barbarians should no longer be so barbaric. Most Barbarian spawning improvements should spawn less often. Scouts everywhere rejoice... and get killed from making too much noise.
-Climateform has been disabled everywhere except for White Hand, Frozen, Illians and D'Tesh.

All changes below here came from the Ashes of Erebus changelogs. Thanks go to them an all those who helped find and fix them.
-Lizard Racials now exclude Amphibious promotion, as the effects were in the racial already
-Humanist text keys have been fixed
-'pedia corrected for Orc Slaying
-And also for Eyes and Ears Network
-Mekara Sluga creation spells fixed to require their Mage Guild UB (Max's Mekara Mod)
-Battle Sluga creation spell now correctly requires Alteration (Max's Mekara Mod)
-Fixed Mekara Leaders being able to train each others units (Max's Mekara Mod)
-D'Teshi Fort Commander and Thanatos now start with the Flying promotion
-Taking the Flying Promotion now excludes the Amphibious promotion as the Ampib effect is contained in flying.
-Salt no longer provides a pointless health bonus by the D'Tesh Crypt
-Lichdom spell now requires the caster to be alive, and is hidden if not castable.
-D'Tesh Corrupted Pasture now requires Animal Husbandry. Fixes it deleting resources if the tech is not researched.
-Dwarven Mines can now be built on Peaks
-D'Tesh no longer have access to Wells, Public Baths or Sewers as there was no use for them.
-D'Tesh Crypts no longer provide a bonus for Patrian Artifacts, which they could not see or use
-D'Tesh now start with a Vessel of D'Tesh, not a Settler
-Dural can no longer access the Temple of the Hand
-Dural no longer access the default White Hand disciple units
-Dural now have School and Student of Winter (XML entries for them were copied from AoE)
-Mechanos now start the game using the Nationhood Civic, which is also used during Anarchy
-Farms no longer work Banana resources. Plantations only.
 
And, Version 1.1 is released!
Enjoy, people. Further tweaks, fixes and bugs will be forthcoming.
 
When Keepers resurrect, they add the "1 demonic spirit" promotion back to themselves. If they have 2+ already, they keep that promotion but their count starts from the 1 spirit - forcing them to recapture as many spirits as they had before they can advance again. There might not be that many spirits on the map, meaning their only hope is to find random units capable of killing them and die again and again in the hope of forcing a spread.

Obviously this is unattractive and problematic. Setting a bunch of PROMOTION_EXCLUDES didn't help so it has something to do with how they're created in the first place, I think.
 
You want the module thread for that actually, but I'll have a look into that when I get the chance.
 
I'll throw in my two eurocents here, I think.

Terraforming is a very powerful thing that is much too accessible, especially with the automatic climate changes. In my opinion it shouldn't be there at all, unless you're willing to pay for it - either through an actual cost, or through opportunity cost - like having your mages locked up for a few turns to change a tile's terrain.

I personally think it would be better to roll it back all the way to third level spells for most civs, and just removing auto-terraforming entirely, instead giving the civs with a specific climate flavour more easy access to (still costly) terraforming spells. Ultimately, if terraforming is unambiguously bad for everyone but the civ doing it, it should either not be there, or it should be really expensive. D'tesh, Malakim and the Lizards are prime examples - wastelands, jungles and deserts are worthless to anyone else, and that makes them too secure, since taking their territory would be a pain in the ass as well as adding little to your own civ's assets without further investments.

The only auto-terraform I'd think would be ok is the White Hand / Illians snow terraforming, since that's a core part of their concept - stopping the spread of one Hell by bringing another into the world; the Fellowship of Leaves' spreading of Ancient Forests and Kelp Forests, since that is good for anyone involved (although I'm not sure that actually qualifies as "terraforming"); and Hell spread, which is arguably not really terraforming anyway.

I tend to agree with Jheral here (even though I really enjoy playing both the Malakim and the Mazatl)....

as i was reading the thread though I think i may have hit upon an answer. Provide a feature like the hands temple changing things to ice in a two square radius to a unique building for those civs that do climate forming. its a one time effect that would change the surrounding terrain around the city. for the lizardfolk- wetlands. For the malakim- desert. ...The Legion's wasteland spread is a pain, but im sure you could do something similar there.

Maybe tie those temple effects to either a civic (like the lizards losts lands) or to a unique feature like the mirror of heaven for the malakim
 
I think "Master of Mana" does have an Auto Terraform which Reverses itself back to the original state if the Nation with Auto Terraform loses this Region. Its used there for Hostil Terraforming too ( Global Spells ).
 
The Master buildings and their buyable equipments could be made modular, but as Viatos points out it'd hurt the engineering centric civs. It could be done though. I'll look into it, since it is in keeping with the modular idea of Rebirth and Legend.


I rather like the Master's buildings. :) I don't think there is anything wrong with the buildings or promotions themselves. If you're style doesn't include Engineers, they don't cost you anything and don't come into play. If you're style does include engineers or spending excess gold to create a certain type of elite unit, than they are a rather prominent choice.

For the player it is (very) inconvenient in the pedia to see hundreds of equipment promotions though. I think that could be fixed in python with a filter?
 
Terraforming is a very powerful thing that is much too accessible, especially with the automatic climate changes. In my opinion it shouldn't be there at all, unless you're willing to pay for it - either through an actual cost, or through opportunity cost - like having your mages locked up for a few turns to change a tile's terrain.

I agree that it's too powerful. But I also feel that it's a core feature (although not necessarily in its current state). In the current game, The civ's that have climate change/terraforming are better for it. So obviously a slight rebalance is in order.

Two thoughts on the issue: 1) you could balance it a bit by slowing a civ-specific climate change substantially... which would serve work to lessen the issue; 2) you could allow every civ to use climate change.

The second idea has two components. You could tie it to a spell (as Jheral suggested) and base the rate of change on the number of specific mana a civilization controls. Alternatively, you could simply allow more civs to form climate and grant more specific tile bonuses to lock in that theme
Examples
Chislev, Archos, Ljosalfar: Green Forest
Clan of Embers: Green Jungle
Hippus, Kuriotates: Plains no features
Svartalfar: Tundra Forest; grant food bonus for cold (they are the winter court after all)
Doviello: Tundra Foreset
Illians: Snow

For Civ's without a climate, tie a bonus to a greater terrain set, or a stronger bonus to specific improvements. This negates the bad location issue
Grigori, Elohim: receive bonuses from all terrains, no unhealth from jungles (Diverse population)
Dwarves: +1 food from mines in general (living underground)
Mechanos: more bonuses from industrial improvements (machine)
 
Hi,

I was trying to sort out an intermittent CTD with my module and removed all of my python. I still get the intermittent CTD, so it might just be down to my old laptop. It did however, lead me to look through the main RifE python. There's a few bits of Jotnar code that could be moved out into your Jotnar module.

onBuildingBuilt in CvEventManager
Spoiler :
Code:
		elif iBuildingType == Building["Jotnar Monument"]:
			Unit = self.Units["Jotnar"]
			newUnit1 = pPlayer.initUnit(Unit["Jotnar Citizens"], iX, iY, iNoAI, iNorth)
onUnitPillage in CvEventManager
Spoiler :
Code:
				if gc.getInfoTypeForString('CIVILIZATION_JOTNAR') != -1:
							if gc.getCivilizationInfo(pVictim.getCivilizationType()) == gc.getInfoTypeForString('CIVILIZATION_JOTNAR'):
								iUnit = gc.getInfoTypeForString("UNIT_JOT_SLAVE")
							newUnit = pPlayer.initUnit(iUnit,iPlotX, iPlotY, UnitAITypes.NO_UNITAI, DirectionTypes.DIRECTION_SOUTH)
onCityDoTurn in CvEventManager
Spoiler :
Code:
# 	Jotnar
		if iCiv == Civ["Jotnar"]:
			cf.doCityTurnJotnar(iPlayer, pCity)

CustomFunctions
Spoiler :
Code:
# Start Jotnar
	def doCityTurnJotnar(self, iPlayer, pCity):	
		gc = CyGlobalContext()
		pPlot 		= pCity.plot()
		pPlayer 	= gc.getPlayer(iPlayer)

		self.doGiantSpawnChance(iPlayer, pCity)
		iGiantSpawnChance = pCity.getCityCounter()

		if CyGame().getSorenRandNum(10000, "Giants born") < iGiantSpawnChance:
			newUnit = pPlayer.initUnit(self.Units["Jotnar"]["Jotnar Citizens"], pPlot.getX(), pPlot.getY(), UnitAITypes.NO_UNITAI, DirectionTypes.DIRECTION_NORTH)
			CyInterface().addMessage(iPlayer,True,25,CyTranslator().getText("TXT_KEY_MESSAGE_GIANT_BORN",()),'AS2D_DISCOVERBONUS',1,gc.getUnitInfo(newUnit.getUnitType()).getButton(),ColorTypes(8),pCity.getX(),pCity.getY(),True,True)
			if pCity.getNumBuilding(self.Buildings["House of Ancestors"]) > 0:
				newUnit.setHasPromotion(self.Promotions["Effects"]["Spirit Guide"], True)

	def doGiantSpawnChance(self, iPlayer, pCity):
		iPlayer = pCity.getOwner()
		if iPlayer == -1:
			pPlayer = CyGlobalContext().getPlayer(CyGame().getActivePlayer())
		else:
			pPlayer = CyGlobalContext().getPlayer(iPlayer)
		
		iGiantKinPromotion = self.Promotions["Race"]["Giantkin"]
		iCurrentNumberOfGiants = 0

		for pUnit in PyPlayer(iPlayer).getUnitList():
			if pUnit.isHasPromotion(iGiantKinPromotion):
				iCurrentNumberOfGiants += 1

		iMaxGiants = 5 + (10 * pPlayer.countNumBuildings( self.Buildings["Jotnar Staedding"] ))

		iGiantSpawnChance = 7 * (iMaxGiants - iCurrentNumberOfGiants)
		iGiantSpawnChance = (iGiantSpawnChance * 10)
		iGiantSpawnChance = scaleInverse(iGiantSpawnChance)
		
		pCity.setCityCounter(iGiantSpawnChance)
# End Jotnar


CvRandomEventInterface
Spoiler :
Code:
def doJotSearchForLostChildren(argsList):
	iEvent = argsList[0]
	kTriggeredData = argsList[1]
	iPlayer 	= kTriggeredData.ePlayer
	gc			= CyGlobalContext()
	getInfoType	= gc.getInfoTypeForString
	pPlayer		= gc.getPlayer(iPlayer)
	
	if pPlayer.getCivilizationType() == getInfoType('CIVILIZATION_JOTNAR'):
		randNum 	= CyGame().getSorenRandNum
		iNoAI		= UnitAITypes.NO_UNITAI
		iNorth		= DirectionTypes.DIRECTION_NORTH
		addMessage	= CyInterface().addMessage
		getPlot		= CyMap().plot
		szText		= CyTranslator().getText("TXT_KEY_MESSAGE_JOT_SEARCH_FOR_LOST_CHILDREN", ())
		for pyCity in PyPlayer(iPlayer).getCityList():
			pCity = pyCity.GetCy()
			pPlot = getPlot(pCity.getX(), pCity.getY())
			iPopChange = 0
			if pCity.getPopulation() > 1:
				if iPopChange == 0:
					iPopChange = -1
			if iPopChange != 0:
				pCity.changePopulation(iPopChange)
				addMessage(pCity.getOwner(),True,25,szText,'',1,'Art/Civs/Jotnar/buttons/jot_wall.dds',ColorTypes(7),pCity.getX(),pCity.getY(),True,True)

			iMult = 1000
			if randNum(10000, "Giants born2") <= iMult:
				iUnit 	= getInfoType('UNIT_JOT_ADULT')
				newUnit = pPlayer.initUnit(iUnit, pPlot.getX(), pPlot.getY(), iNoAI, iNorth)
				if pCity.getNumBuilding(getInfoType('BUILDING_JOT_HOUSE_OF_THE_ANCESTORS')) > 0:
					newUnit.setHasPromotion(getInfoType('PROMOTION_SPIRIT_GUIDE'), True)

		pCapital 	= pPlayer.getCapitalCity()
		iUnit 		= getInfoType('UNIT_JOT_ADULT')
		newUnit 	= pPlayer.initUnit(iUnit, pCapital.getX(), pCapital.getY(), iNoAI, iNorth)
		if pCapital.getNumBuilding(getInfoType('BUILDING_JOT_HOUSE_OF_THE_ANCESTORS')) > 0:
			newUnit.setHasPromotion(getInfoType('PROMOTION_SPIRIT_GUIDE'), True)

def getJotSearchForLostChildrenHelp(argsList):
	szHelp = localText.getText("TXT_KEY_EVENT_JOT_SEARCH_FOR_LOST_CHILDREN_HELP",())
	return szHelp


cannotDoCivic in CvGameUtils
Spoiler :
Code:
		if eCiv == Civ["Jotnar"]:
			if eCivicType == Civic["Government"]:
				if eCivic != Civic["Traditions"]:	return True

I don't think that the CvGameUtils can be done modularly but that's only a couple of lines.

The rest can all be done in modular python. doCityTurnJotnar and doGiantSpawnChance can be handled in onBeginPlayerTurn.
 
I agree that civs like the malakim and lizards get a significant advantage to auto-terraforming, but that said I actually really like the idea. I think it should even be added to the lore. Say after touching the mirror of the sun the dunes of the malakim spread as they did and something similar involving khalashek and the lizard swamps.

To make it manageable ingame there should be a counter to offset the benefit. Say decrease food production for malakim in deserts if they aren't irrigated or have a bedouin village and remove their resistance to unhealthiness from floodplains maybe? Definitely get rid of desert stealth except maybe for recon units.

Better yet, double or triple the negative diplomacy modifiers of close borders with other civs who resent the encroachment of the desert rats or the filthy swamp things.
 
just wanted to add that from playing as Infernals getting most of the ashen veil techs never once gained a manes in any of my cities
 
How many other Ashen Veil / Octopus Overlords / Council of Esus civs were there in your game?
 
wow turns out I didn't even know where manes were coming from. there were 2 civs with octopus overlords I was ashen veil obviously, Bannor had just picked it up as I ended my game. I don't know how many units the octopus civs were losing because I had not managed to get any vision of their lands. Declared war on Cualli so no manes generation there. I lost 2 scouts since joining ashen veil and I assume on Chieftain the AI lost some units too but I cant give you details. :(
 
None of your units will become manes, because they aren't alive. As for the Octopus civs, a unit has to personally have one of the evil religions (or an entropy spell promotoion) to become a manes; it isn't enough for it to be owned by an evil civ. You might have just got really unlucky. Try doing a test in the World-builder; as the Infernals, declare war on a civ, give them a stack of ashen veil priests, then give yourself an Auric Ascended or two. See if you get any manes from that.
 
I followed your advice A Moon and set up an all evil civ game. I got Os-Gabella to pick ashen veil and killed off plenty of her Ashen units I also made her a bunch of priests and killed them. Not a single manes was generated. Also Infernal axemen are getting iron weapons for free. I assume this is left over from only spawning mid to late game before this modmod.
 
vs axemen... it is because the infernal palace gets free iron iirc ...
 
I'll have a look into this. I may have broken something when I made them playable instead.

I'm aware I haven't been around much for a while, I recently started a new job and all the pressures that go with it. I don't have as much time as I'd like to devote to Rebirh (among other things). Rest assured however, I'm still reading here and making notes on what I need to work on. Updates will come, even if they are a bit slow.

Quick Edit: @Sachrid, do a 'Play Now' game, as this resets all the settings you find in a Custom Game to their defaults, and generally fixes a lot of things. It should fix this issue too, as I am unable to replicate the issue at the moment.
 
you are correct Calavente. @Derf this was in no way moaning at you just listing stuff I find for your use as and when. I will say that waiting till someone happens to get an evil religion and only if the other civs get one before your cities grow beyond 3 pop (most of my enemies take Kilmorph or Fellowship of Leaves) seems like quite a rough start. Especially considering Infernals are vulnerable to the Calabim world spell and the -1 pop disease events. I happened to spawn near Bassium last game, he quickly declared war on me and thrashed me with his iron weapon angels plus extra's from some of his mortal units I killed. Having imps with rust helped somewhat. Maybe give a lower chance for your killed demons to come back as manes, representing returning to life but at the lowest tier of demon society It may just be showing my lack of experience with fallow style civs of course.

It took almost all game but I finally started getting manes when I fought the Dural and killed some Ashen Veil and Overlord units. So it does work just takes up to the fates when other civs starting making evil religion units
 
Top Bottom