Bug Reports and Discussion

I've had a several unexplained crashes when using worldbuilder

I also noticed that when I go to Map Mode -> Standard Mode and try to change terrain types using any brush size other than 1x1, it does not seem to do anything.

(This is not exactly a bug, but I would like to complain about how Worldbuilder's Edit City Mode no longer lets you select buildings based on their icons. This is confusing in my modmod, as there are multiple different wonders called Wyrmhold which can be distinguished by art by not by name. I love having the ability to edit cities the new way, I just wish you had kept the old way of changing buildings too. You did after all keep the old way of changing a unit's promotions despite adding a new way.)

It would be best to direct any issues with the new World Builder to Platyping on this thread. All I did was copy his code (its all done in python by the way).


bAlwaysHostile units can still enter rival cities peacefully

Known issue

bool CvPlot::isCity(bool bCheckImprovement, TeamTypes eForTeam) const now has parameters for checking suprforts, and these are used in isEnemyCity, but the python exposed bool CyPlot::isCity() has no such parameters.

OK. I'll try to fix that for 2.51


pCity.getNumBuilding(gc.getInfoTypeForString('BUILDING_RING_OF_WARDING')) seems to return true for cities that are not actually cities and thus cannot have any buildings.

OK. Entered as a bug. Maybe Red Key will get a chance to look into that.


Any ETA for 2.51?

No ETA. Dont wait around for me.
 
bool CvPlot::isCity(bool bCheckImprovement, TeamTypes eForTeam) const now has parameters for checking suprforts, and these are used in isEnemyCity, but the python exposed bool CyPlot::isCity() has no such parameters.


My Ring of Warding code was applying to superforts. For some reason I do not understand, pCity.getNumBuilding(gc.getInfoTypeForString('BUILDING_RING_OF_WARDING')) seems to return true for cities that are not actually cities and thus cannot have any buildings.

I haven't changed CvPlot::isCity - those parameters were always. I did change isEnemyCity() because it was necessary to prevent some other bugs like "no capture" units being able to capture forts. It might be necessary to add a bCheckImprovement parameter to isEnemyCity(). Both isCity() and isFriendlyCity() have a bCheckImprovement parameter, but for some reason isEnemyCity() does not. I didn't add it before because I examined everywhere isEnemyCity() is called in the SDK and everywhere would have passed true for the parameter so it seemed unnecessary. I doubt I will get the chance for modding for the next couple months (dang work and thesis).

This bug only affects modders and there are ways around it - like how MC first calls isCity() then isEnemyCity(). Another way would be to use isCity() then check if the unit is an enemy of the city's owner, but it looks like CvUnit::isEnemy() isn't exposed to python because I don't see it in CyUnit.cpp. There is no special reason pCity.getNumBuilding() should return a value for Super Forts my guess is that this could happen for any plot that isn't actually a city.
 
python exception while playing as Grigori
 

Attachments

  • Civ4ScreenShot0012.JPG
    Civ4ScreenShot0012.JPG
    205.4 KB · Views: 59
not sure, it was an AIautoplay ( I started as doviello, who were defeated and control autoswitched to grigori )

btw, during this autoplay I've noticed AI is imho too willing to settle cities in bad tundra/snow spots.
 
Its so great Im finally playing MNAI! A completely enhanced FFH experience. Tho ill have to admit I rly miss vanilla hawks..
Anyway, about a bug I noticed, maybe two.
Playing as Svartalfar, when I upgrade disciple units (all kinds of priests actually) to druids or paladins, I get the default unit model and not the civ specific one. Since the ai always upgrades from disciple units, we all end up having our druids/paladins looking the same. This is not the case if I upgrade from a ranger to druid, but who wud waste their druids that way?
Also, if I upgrade a nightwatch to assassin, I get the default unit model, and not the civ specific one (my nina williams looks like a man :lol:).
Another thing I noticed is that whenever I upgrade a unit that gets a free promotion from the process (for example an adept to illusionist), if I get this promotion whilst the unit has no movement left (that is, on exactly the same turn I upgraded them), the unit will keep glowing as if it has a pending promotion, until it gets the next one.
 
I've noticed the final Altar and the Tower of Mastery have different hurrycostmodifier values ( 50 and 100 respectively - 50 is for national wonders, 100 for world wonders ) , they should probably have the same value. personally I set them both to 150 i.e. consider them as both national and world wonders.
 
I've noticed a tile with corn AND the pool of tears with one of the stock mapscripts. not sure if it's easy to fix, similar issue as to lairs and resources sometimes coexisting on a tile.
 
any idea why, when you finish researching Infernal Pact, sometimes you get lucky and switch to Hyborem immediately ( giving you a chance to choose civics, but not choose where to found Dis ) , while other times the AI plays the first infernal turn for you, forcing you to wait 10 turns before you can choose civics?

I guess it's because all this happens between turns so it depends on the order the civs play their turns... still it would be great if the player got to pick the capital city location :)
 
I've noticed Enclaves are set to spawn demagogs under crusade. it's debateable whether or not this is good for the Bannor player ( I'd rather keep the enclaves ) , but they're currently set to turn into a village upon doing so, which is a bug ( they should become towns instead )
 
If I add skeleton crew promotion (+1 cargo -1 strength) to a Frigate, I still can't load units aboard.
However, if I add skeleton crew to a Trireme - I can load a unit aboard.
So issue seems specific to a Frigate, not ships that don't start with cargo space.
 
[to_xp]Gekko;12566097 said:
any idea why, when you finish researching Infernal Pact, sometimes you get lucky and switch to Hyborem immediately ( giving you a chance to choose civics, but not choose where to found Dis ) , while other times the AI plays the first infernal turn for you, forcing you to wait 10 turns before you can choose civics?

I guess it's because all this happens between turns so it depends on the order the civs play their turns... still it would be great if the player got to pick the capital city location :)

Sometimes I can also give Hyborem all the cities and gold, etc. from the summoning civ! I think it would be overpowered to pick your location, but sometimes the location sucks and makes no sense.

[to_xp]Gekko;12566734 said:
Liches are currently set to be max 3 per team, should be 4 per player.

I remember it used to be 4, but idk what happened. Doesn't really matter to me.
 
I believe that the adult Giant Spiders that generate Baby Spiders have always been invisible, but that Baby Spiders themselves never were.
 
EDIT: Figured this out. Second part still valid

Also, with Thane of Kilimorph (missionary) I can't go into someone else's territory with rights of passage. IMO shouldn't missionary units be allowed?
 
If I add skeleton crew promotion (+1 cargo -1 strength) to a Frigate, I still can't load units aboard.
However, if I add skeleton crew to a Trireme - I can load a unit aboard.
So issue seems specific to a Frigate, not ships that don't start with cargo space.

Frigate cargo can only carry birds like hunters (mouse the frigate and the info is there).
 
Top Bottom