FfH2 0.15 Bugs

Found a small bug:

I had some regular flood plains along a river, when I got druids
i upgraded them to grassland/floodplain ->
no problem here, nice 5f 1c tiles now, even w/o improvement

After I completed Genesis, the 'floodplain' part got removed,
and forest where added -> regular grassland with forest tiles now,
2f 1p -> kind of sucks, and I don't suppose that should happen?

(The floodplains didn't have anything build on them when I completed Genesis)
 
It does look like a bug. Genesis build forests in every tile available (= not already improved), but it should leave flood plains alone.
 
Ok, this one is a huuuuuuugely exploitable bug. If you have a high priest with Fire III and stick him in a stack, select the whole stack and use Pillar of Fire... the whole stack will use pillar of fire. Nukes have nothing on that.
 
kzoocauchy said:
Ok, this one is a huuuuuuugely exploitable bug. If you have a high priest with Fire III and stick him in a stack, select the whole stack and use Pillar of Fire... the whole stack will use pillar of fire. Nukes have nothing on that.

!!!! Ok, I need to see that... *run to the find his high priest*
 
kzoocauchy said:
Ok, this one is a huuuuuuugely exploitable bug. If you have a high priest with Fire III and stick him in a stack, select the whole stack and use Pillar of Fire... the whole stack will use pillar of fire. Nukes have nothing on that.
Looking at the python, I can see why this happens.
And actually it looks like there are a whole slew of these -- in most cases, any spell you cast will be cast by every caster selected in the stack. (Notable exceptions being fireball, meteor, and water walking)

Luckily, the groundwork for fixing this is already in place.
 
hey there! awesome mod
just wanted to report that in this last version none of the khazad heroes can reach above level 10 playing in normal speed (I'm not sure about other civs)
keep up the great work :)
 
upthorn said:
Looking at the python, I can see why this happens.
And actually it looks like there are a whole slew of these (tsunami, for instance will be cast by every caster selected, not just your water archmage)

The fix is simple enough, though. But it's tedious.

Whats the fix (and the cause)?
 
Kael said:
Whats the fix (and the cause)?
The cause is that you aren't putting all of the spells' casting requirements in the
reqSpellname functions

the fix would be to make functions like, for instance
isDivine(caster)
isSorceror(caster)
isSummoner(caster)
castLevel(caster)
fireLevel(caster)

and add calls to them in every spell's req.

I've just written those, and can PM you the code after I test it on one or two spells.

Edit: maybe I'm reading this wrong. it turns out all the spells I've found to be effected by this have no "req" at all.
 
Banish works great on ships, is that intended ?

Also, when I tried them, Pillar of Fire did less damage than Ring of Fire.
 
upthorn said:
The cause is that you aren't putting all of the spells' casting requirements in the
reqSpellname functions

the fix would be to make functions like, for instance
isDivine(caster)
isSorceror(caster)
isSummoner(caster)
castLevel(caster)
fireLevel(caster)

and add calls to them in every spell's req.

I've just written those, and can PM you the code after I test it on one or two spells.

Edit: maybe I'm reading this wrong. it turns out all the spells I've found to be effected by this have no "req" at all.

All spells have reqs. The ones you are looking at are probably have AIBlock as their req.

The restrictions you are talking about should be applied in the SDK, not in python. But let me know how your testing turns out.
 
I didnt find what I was looking for with Search, so I post my problems here:

- In my game with patch 015d (playing Clan of Embers) I loaded my game from the previous evening and to my surprise my fire mana node was gone and replaced by body mana. I thought in 15d nodes cannot be changed while remaining under your cultural influence, not being pillaged by an enemy, etc.?

- In the same game I could not build more advanced units (brujah, eidolon, spartiatoi, shield wall, ritualist, marksman, flurry), but I had all the buildings needed for them. On the next day after loading I could suddenly build them. This may have been some bug not related to the mod of course.

- The other units giving me problems were the archmage and the vampire lord. I could not advance my mages to archmage status until very late in the game (I had the tech allowing to build them long beforehand), even they were level 6 to 9 (I believe 6 is required). And when I noticed when he came up I could finally advance him, I still could not with the others, which had to stay mages until end of the game.
The vampire lord requires me to have a unit of level 12 to turn into one, if I got it right. Are world units excluded (I wanted to change Mary), or does it have to be a vampire?

Vatras
 
Vatras said:
I didnt find what I was looking for with Search, so I post my problems here:

- In my game with patch 015d (playing Clan of Embers) I loaded my game from the previous evening and to my surprise my fire mana node was gone and replaced by body mana. I thought in 15d nodes cannot be changed while remaining under your cultural influence, not being pillaged by an enemy, etc.?

- In the same game I could not build more advanced units (brujah, eidolon, spartiatoi, shield wall, ritualist, marksman, flurry), but I had all the buildings needed for them. On the next day after loading I could suddenly build them. This may have been some bug not related to the mod of course.

I dont know what would cause either of those. I would be curious to see a save if it was reproducable (it sounds like it wasnt).

- The other units giving me problems were the archmage and the vampire lord. I could not advance my mages to archmage status until very late in the game (I had the tech allowing to build them long beforehand), even they were level 6 to 9 (I believe 6 is required). And when I noticed when he came up I could finally advance him, I still could not with the others, which had to stay mages until end of the game.

You need reagents to make archmages and summoners.

The vampire lord requires me to have a unit of level 12 to turn into one, if I got it right. Are world units excluded (I wanted to change Mary), or does it have to be a vampire?

It has to be a vampire.
 
Halancar said:
Banish works great on ships, is that intended ?

Also, when I tried them, Pillar of Fire did less damage than Ring of Fire.

Yes, any unit can be banished unless it is immune to magic.
 
Kael said:
All spells have reqs. The ones you are looking at are probably have AIBlock as their req.

The restrictions you are talking about should be applied in the SDK, not in python. But let me know how your testing turns out.

Okay it looks like the bug applies to ranged spells (IE, select a tile).
it could be fixed by giving each of these spells a separate req (eg, reqPillarofFire and reqTsunami) which checks to make sure that the unit attempting to cast the spell has the proper promotions, and then calls AIBlock.

If I could see the FFH dll code, I might be able to get around the need for any SDK change by fiddling with python's eval
For the moment, I've managed to successfully fix PillarofFire and Tsunami so that they will only be cast by selected members that actually know the spell.
And even so the spell sound/visual effect only happens the number of times it's actually cast, also, but it's kind of a dirty hack, and I would feel better if reqPillarofFire was called before spellPillarOfFire, instead of from inside.

For reference
reqPillarofFire
Spoiler :
Code:
def reqPillarofFire(caster):
	if not canCast(caster):
		return False
	if not isDivine(caster):
		return False
	if(castLevel(caster) < 3):
		return False 
	if(firLevel(caster) < 3):
		return False
	return True
isDivine
Spoiler :
Code:
def isDivine(caster):
	if not(caster.isHasPromotion(gc.getInfoTypeForString('PROMOTION_DIVINE'))):
		return False
	return True
castLevel
Spoiler :
Code:
def castLevel(caster):
	if (caster.isHasPromotion(gc.getInfoTypeForString('PROMOTION_CHANNELING3'))):
		return 3
	if (caster.isHasPromotion(gc.getInfoTypeForString('PROMOTION_CHANNELING2'))):
		return 2
	if (caster.isHasPromotion(gc.getInfoTypeForString('PROMOTION_CHANNELING1'))):
		return 1
	return 0
firLevel
Spoiler :
Code:
def firLevel(caster):
	if (caster.isHasPromotion(gc.getInfoTypeForString('PROMOTION_FIRE3'))):
		return 3
	if (caster.isHasPromotion(gc.getInfoTypeForString('PROMOTION_FIRE2'))):
		return 2
	if (caster.isHasPromotion(gc.getInfoTypeForString('PROMOTION_FIRE1'))):
		return 1
	return 0
 
When I see the combat ods for a unit with orthus' axe, He always has +125% strength. However I can't see any mention of the +% from combat I-V. Is it not cumulative or......?
 
I did nothing more than reload two times, but my mana was and stayed changed (I later on conquered a node and watched it like Argus till the end of the game to keep it burning :) ).

I will send you the save, once I have extracted it from my laptop, I should at least have the one before the mana reverted.
 
with changes to some of the traits and turns in pach "g" will this break save games again?
 
This game kick ass, keep up on the improvement of your mod, i also want to listen to some music during the no-religion period. Also brand new music as well as i'm tired of hearing the samn songs in this game.
 
Well, there have been a few songs added over the last few patches. As for listening to your own music, you should be able to burn it all into a file on the computer, go into options, and set it as your custom soundtrack.
 
Chandrasekhar said:
Well, there have been a few songs added over the last few patches. As for listening to your own music, you should be able to burn it all into a file on the computer, go into options, and set it as your custom soundtrack.

Can one create soundtracks for different points in the game, for different civs, for different religions, and after different events? That'd be awesome. Where's civ kid, we could give him a task.
-Qes
 
Back
Top Bottom