[MOD] Fall from Heaven

Kael said:
Did you just suggest that our mod is boring? :lol:

Of course its boring, thats why only one other person than myself has ever commented on it ;)

Just keep making this boring mod better so that me myself and I can happily be bored silly till long after I should be in bed.
 
woodelf said:
I second (or third) the desire to play some scenarios once 1.0 is out. Sometimes random maps get boring and I can't wait to see what other people do with the FfH universe. :crazyeye:

with FFH, I always play Highlands with thin peaks, seas and twice the players of the proposed number. That kind of map gives a nice fantasy feel IMO.

Btw, scenario maps are way more boring than random maps... or do you think static vs random is better to fight monotony ? ;)
 
onedreamer said:
with FFH, I always play Highlands with thin peaks, seas and twice the players of the proposed number. That kind of map gives a nice fantasy feel IMO.

Btw, scenario maps are way more boring than random maps... or do you think static vs random is better to fight monotony ? ;)

Ive been playing with maps that have under the normal amount of players lately. It makes the wilderness sitck around longer and increases the amount of barbarians and animals.
 
onedreamer said:
with FFH, I always play Highlands with thin peaks, seas and twice the players of the proposed number. That kind of map gives a nice fantasy feel IMO.

Btw, scenario maps are way more boring than random maps... or do you think static vs random is better to fight monotony ? ;)

Right, higlands rocks for this type of MOD. Also, lots of mountainchains and large seas on a large/huge map will really make it fantasyfeal as well as a strategic challange.

I really think the Faerun map would be cool for FfH. Imagine capturing Waterdeep and Candlekeep that reminds me of the baldur's gate series.
 
Kael said:
Ive been playing with maps that have under the normal amount of players lately. It makes the wilderness sitck around longer and increases the amount of barbarians and animals.

well with highlands map you don't need to play with under the normal amount of players... you can play with the regular settings though. I don't like it too much though as the AI will try to colonize even if it shouldn't because of maintenance problems... and the game becomes uninteresting because anyways a war with such open spaces is tedious.
 
Kael said:
Im guessing that Stirrups weren't researched and the computer was trying to make a horse archer. So the computer first checks to see if it can build a horse archer (do you have stirrups?) and it cant so it drops down to a horseman (do you have horseback riding?) and it can so it builds that.

I'd suggest altering the code so that it tries the alternative top upgrade paths in case the originally picked one isn't available, to make the Great Commander more useful. (Just three units seems pretty weak to me in the first place, but I suppose it has its uses in really dire situations)

How about:

Code:
	def FFHgetRecruit(self, pCity):

		pPlayer = gc.getPlayer(pCity.getOwner())
		eTeam = gc.getTeam(pPlayer.getTeam())
		iRand = CyGame().getSorenRandNum(100, "Bob")
		iUnit = -1
		if iRand <= 10:
			iUnit = gc.getInfoTypeForString('UNIT_SCOUT')
			if eTeam.isHasTech(gc.getInfoTypeForString('TECH_HUNTING')):
				iUnit = gc.getInfoTypeForString('UNIT_HUNTER')
			if eTeam.isHasTech(gc.getInfoTypeForString('TECH_ANIMAL_HANDLING')):
				iUnit = gc.getInfoTypeForString('UNIT_RANGER')
			elif eTeam.isHasTech(gc.getInfoTypeForString('TECH_POISONS')):
				iUnit = gc.getInfoTypeForString('UNIT_ASSASSIN')
		elif iRand <= 20:
			iUnit = gc.getInfoTypeForString('UNIT_SCOUT')
			if eTeam.isHasTech(gc.getInfoTypeForString('TECH_HUNTING')):
				iUnit = gc.getInfoTypeForString('UNIT_HUNTER')
			if eTeam.isHasTech(gc.getInfoTypeForString('TECH_POISONS')):
				iUnit = gc.getInfoTypeForString('UNIT_ASSASSIN')
			elif eTeam.isHasTech(gc.getInfoTypeForString('TECH_ANIMAL_HANDLING')):
				iUnit = gc.getInfoTypeForString('UNIT_RANGER')
		elif iRand <= 30:
			iUnit = gc.getInfoTypeForString('UNIT_SCOUT')
			if eTeam.isHasTech(gc.getInfoTypeForString('TECH_HORSEBACK_RIDING')):
				iUnit = gc.getInfoTypeForString('UNIT_HORSEMAN')
			if eTeam.isHasTech(gc.getInfoTypeForString('TECH_STIRRUPS')):
				iUnit = gc.getInfoTypeForString('UNIT_HORSE_ARCHER')
			elif eTeam.isHasTech(gc.getInfoTypeForString('TECH_TRADE')):
				iUnit = gc.getInfoTypeForString('UNIT_HORSE_CHARIOT')
		elif iRand <= 40:
			iUnit = gc.getInfoTypeForString('UNIT_SCOUT')
			if eTeam.isHasTech(gc.getInfoTypeForString('TECH_HORSEBACK_RIDING')):
				iUnit = gc.getInfoTypeForString('UNIT_HORSEMAN')
			if eTeam.isHasTech(gc.getInfoTypeForString('TECH_TRADE')):
				iUnit = gc.getInfoTypeForString('UNIT_HORSE_CHARIOT')
			elif eTeam.isHasTech(gc.getInfoTypeForString('TECH_STIRRUPS')):
				iUnit = gc.getInfoTypeForString('UNIT_HORSE_ARCHER')
		elif iRand <= 50:
			iUnit = gc.getInfoTypeForString('UNIT_WARRIOR')
			if eTeam.isHasTech(gc.getInfoTypeForString('TECH_BRONZE_WORKING')):
				iUnit = gc.getInfoTypeForString('UNIT_AXEMAN')
			if eTeam.isHasTech(gc.getInfoTypeForString('TECH_IRON_WORKING')):
				iUnit = gc.getInfoTypeForString('UNIT_MACEMAN')
			elif eTeam.isHasTech(gc.getInfoTypeForString('TECH_METAL_CASTING')):
				iUnit = gc.getInfoTypeForString('UNIT_PIKEMAN')
		elif iRand <= 60:
			iUnit = gc.getInfoTypeForString('UNIT_WARRIOR')
			if eTeam.isHasTech(gc.getInfoTypeForString('TECH_BRONZE_WORKING')):
				iUnit = gc.getInfoTypeForString('UNIT_AXEMAN')
			if eTeam.isHasTech(gc.getInfoTypeForString('TECH_METAL_CASTING')):
				iUnit = gc.getInfoTypeForString('UNIT_PIKEMAN')
			elif eTeam.isHasTech(gc.getInfoTypeForString('TECH_IRON_WORKING')):
				iUnit = gc.getInfoTypeForString('UNIT_MACEMAN')
		elif iRand <= 70:
			iUnit = gc.getInfoTypeForString('UNIT_WARRIOR')
			if eTeam.isHasTech(gc.getInfoTypeForString('TECH_ARCHERY')):
				iUnit = gc.getInfoTypeForString('UNIT_ARCHER')
			if eTeam.isHasTech(gc.getInfoTypeForString('TECH_FEUDALISM')):
				iUnit = gc.getInfoTypeForString('UNIT_LONGBOWMAN')
			elif eTeam.isHasTech(gc.getInfoTypeForString('TECH_MONARCHY')):
				iUnit = gc.getInfoTypeForString('UNIT_CROSSBOWMAN')
		elif iRand <= 80:
			iUnit = gc.getInfoTypeForString('UNIT_WARRIOR')
			if eTeam.isHasTech(gc.getInfoTypeForString('TECH_ARCHERY')):
				iUnit = gc.getInfoTypeForString('UNIT_ARCHER')
			if eTeam.isHasTech(gc.getInfoTypeForString('TECH_MONARCHY')):
				iUnit = gc.getInfoTypeForString('UNIT_CROSSBOWMAN')
			elif eTeam.isHasTech(gc.getInfoTypeForString('TECH_FEUDALISM')):
				iUnit = gc.getInfoTypeForString('UNIT_LONGBOWMAN')

		elif iRand <= 90:
			iUnit = gc.getInfoTypeForString('UNIT_PROPHET2')
			if eTeam.isHasTech(gc.getInfoTypeForString('TECH_WRITING')):
				iUnit = gc.getInfoTypeForString('UNIT_ADEPT')
			if eTeam.isHasTech(gc.getInfoTypeForString('TECH_SORCERY')):
				iUnit = gc.getInfoTypeForString('UNIT_MAGE')
			elif eTeam.isHasTech(gc.getInfoTypeForString('TECH_SUMMONING')):
				iUnit = gc.getInfoTypeForString('UNIT_CONJURER')
		elif iRand <= 100:
			iUnit = gc.getInfoTypeForString('UNIT_PROPHET2')
			if eTeam.isHasTech(gc.getInfoTypeForString('TECH_WRITING')):
				iUnit = gc.getInfoTypeForString('UNIT_ADEPT')
			if eTeam.isHasTech(gc.getInfoTypeForString('TECH_SUMMONING')):
				iUnit = gc.getInfoTypeForString('UNIT_CONJURER')
			elif eTeam.isHasTech(gc.getInfoTypeForString('TECH_SORCERY')):
				iUnit = gc.getInfoTypeForString('UNIT_MAGE')
		if iUnit != -1:
			newUnit = pPlayer.initUnit(iUnit, pCity.getX(), pCity.getY(), UnitAITypes.NO_UNITAI)
 
I too dig Highlands for FfH, especially for my dwarves. Lots of snow and nice long extended wilderness exploration. Anyone else noticed a marked lack of resources, though? I played one map that had not one pile of copper.

Incidentally, made the mistake of playing with raging barbarians, once. Boy was that a mistake!
 
Xuenay said:
I'd suggest altering the code so that it tries the alternative top upgrade paths in case the originally picked one isn't available, to make the Great Commander more useful. (Just three units seems pretty weak to me in the first place, but I suppose it has its uses in really dire situations)

How about:

I always kinda liked the fact that you got random units. They are recruits after all, not nessesarily the best and the brightest (or the best equiped). How about if I change it to grant a random 3-6 recruits instead of the fixed 3?
 
immanuel said:
I too dig Highlands for FfH, especially for my dwarves. Lots of snow and nice long extended wilderness exploration. Anyone else noticed a marked lack of resources, though? I played one map that had not one pile of copper.

Incidentally, made the mistake of playing with raging barbarians, once. Boy was that a mistake!

Yeah FfH already has double the normal barbarian activity, I couldn't imagine playing with raging barbarians.

I haven't noticed any resource problem lately, they seem to be pretty well distributed. What does everyone else think?
 
Myre said:
ok a while back i talk about my friend having problems with letters missing in game

he reinstalled 4 to 5 times and this is what he gets

error2ql.png
can someone help me on this we really want to play this vs each other
 
Myre said:
can someone help me on this we really want to play this vs each other

It looks like a font problem. The same letters are missing when displayed at that size. Does this only happen with Fall from heaven?
 
Kael said:
Im guessing that Stirrups weren't researched and the computer was trying to make a horse archer. So the computer first checks to see if it can build a horse archer (do you have stirrups?) and it cant so it drops down to a horseman (do you have horseback riding?) and it can so it builds that.

Ok my suggestion is the random number at the start (iRand = CyGame().getSorenRandNum(100, "Bob"). You can have for example bronze working and barracks but if you roll a 70 you still only get a warrior, right? Not sure if i read this code correctly though. Although You would get an axemen if you would have rolled a 50. Its all not that bad because you can manually upgrade the lowest tier anyway...

Solution would be possibly to make Mr. Not appearing the first choice, not the lowest tier. And if not possible to choose any unit at all new random number until a valid unit is selectable (make seperate choices for warrior,scout and prophet)

Edit(quick test result) Using world builded commanders in my capital just now gave me: 3 Macemen 2 Rangers 1 X-Bowman 3 Horse archers 1 Axeman 3 Mages 3 Archers 2 Hunters) Just to explain what I mean (Mace > Axe, X-Bow> Archer etc. but still manually upgradeable in the same turn as they were created) I personally like it this way anyway because it adds the bummer factor (doh I got a warrior) I just want to know if this is the way it is meant to be.
 
Kael said:
I always kinda liked the fact that you got random units. They are recruits after all, not nessesarily the best and the brightest (or the best equiped). How about if I change it to grant a random 3-6 recruits instead of the fixed 3?

Only problem being, I already consider the GC's "recruit" ability next to useless - if there's even a random chance of getting outdated units it gets even worse.

Maybe if you weighted the amount of numbers gained by their strength, so that if lower-strength units were generated you'd gain more of them.
 
Kael said:
It looks like a font problem. The same letters are missing when displayed at that size. Does this only happen with Fall from heaven?
yup ony with FfH when he plays normal civ4 it all works fine
 
Myre said:
yup ony with FfH when he plays normal civ4 it all works fine

No idea. Is he using a foreign language version of civ4?
 
Furin said:
Ok my suggestion is the random number at the start (iRand = CyGame().getSorenRandNum(100, "Bob"). You can have for example bronze working and barracks but if you roll a 70 you still only get a warrior, right? Not sure if i read this code correctly though. Although You would get an axemen if you would have rolled a 50. Its all not that bad because you can manually upgrade the lowest tier anyway...

Solution would be possibly to make Mr. Not appearing the first choice, not the lowest tier. And if not possible to choose any unit at all new random number until a valid unit is selectable (make seperate choices for warrior,scout and prophet)

Edit(quick test result) Using world builded commanders in my capital just now gave me: 3 Macemen 2 Rangers 1 X-Bowman 3 Horse archers 1 Axeman 3 Mages 3 Archers 2 Hunters) Just to explain what I mean (Mace > Axe, X-Bow> Archer etc. but still manually upgradeable in the same turn as they were created) I personally like it this way anyway because it adds the bummer factor (doh I got a warrior) I just want to know if this is the way it is meant to be.

Yes it is working as intended. I think I will change it to grant 3-6 recruits instead of a set 3.
 
no he has same version as me the only thing i can think of is that he has a french keyboard (we live in montreal) could that have somethign to do with it ?
 
Kael said:
Yeah FfH already has double the normal barbarian activity, I couldn't imagine playing with raging barbarians.

I haven't noticed any resource problem lately, they seem to be pretty well distributed. What does everyone else think?

Stone is ridiculously rare. I usually play on large for large or huge maps, and I've seen huge maps with only one stone resource. It's just stone for crying out loud, not mithril!. I can walk outside my house and get some:p ( I live a mile from a major quarry heh) I only get access to stone when it's actually usefull (early game)every 5-6 games.

I think resource distribution in general needs work, though that's an issue for Firaxis. Resources should clump in similar types like in real life. So that trading or conquering for resources becomes both more necceasry and available. A civ with a ton of wheat could trade it to all other civs for stuff it needs, say to one that has a ton of sheep. Too often, I look at the trade screen, and see nothing available to trade for but a few measly gold.
 
Back
Top Bottom