Feature Requests and Discussion

I see calls to RealTerrainType in both CvWBDesc and WBPlotScreen. Should all of these be uncommented?
Yes, although since I of course could not check that code for errors you'll want to do that too before the next release.

WBPlotScreen should let the player alter the type in worldbuilder, while the CvWBDesc should let it be saved to and read from scenario files.
I dont think this code will work. It assumes that TempTerrainTimers are tied to Temp Features, which they are not. And you can't access the TempFeatureTimer for a number because it has already been set to 0 at this point.

For a quick short-term fix, I've simply made it so that Blizzards wont move onto plots with temporary features (note: Call Blizzard still ignores all these checks for the moment)
It seemed to work ok in my version.

There is no reason why TempTerrainTimers and TempFeatureTimer must always be tied together, but it just so happens that the End of Winter game option code does always use the same number for them both.

There are other things which may change the terrain or feature and make the timers no longer correspond, but they are good enough in most cases. I found it better than loosing most of the Floodplains.
That's something that modders could add to but I won't be doing it for MNAI. The player gets no insight as to what the "real" versions might be.

MNAI will be sticking with the philosophy that permanent terrain changes always override temporary changes.
It is a bit harder for python modders to do if you still overwrite temp types in C++, but ok I guess.

Here is the code I added to the Unit kill function

Code:
	if (bIllusion) // Make sure that we properly adjust the stats when an Illusionary unit is removed from the game
	{
		GC.getGameINLINE().decrementUnitCreatedCount(getUnitType());
		GC.getGameINLINE().decrementUnitClassCreatedCount((UnitClassTypes)(m_pUnitInfo->getUnitClassType()));
	}
I guess that would be fine in base MNAI, but in my modmod there are still cases where I would want to decrement the counts of units who do not have a racial promotion with <iCombatHealPercent>100</iCombatHealPercent>

I use a "Dark Reflection" promotion for some things, where I used to use Illusion but wanted to preserve the race. Also, Illusions but not Dark Reflections are defensive only in my modmod.

More of the issues related to decrementing in my modmod have to do with Gibbon Goetia's "Shape Shifting" ability. The unit can turn into other units types and back. His "Assume True Form" ability converts him back to his normal type, in the process initializing a new unit and incrementing those counts. When he is shapeshifted, I use python to force him to abandon an owner who leaves his state religion. I need to decrement things then too to let another player train him the way they would be able to if he had abandoned the player without shapeshifting first.

In regards to your changes to CvGameUtils, I don't think that you really want tolerant civs building Temples of the Hand and Demons Altar (or maybe you do). I edited those two parts for MNAI.

It looks like I deleted the Demons Altar push a while back and did not realize that it was till in the MNAI version. However, it would still make sense for a a city that would be producing demons to have a building that gives demons free xp.

I think you are probably right that we shouldn't want tolerant trait non-Illlians civs making Temples of the Hand in their Illian cities. In the event that there is a tolerant Illian leader (probably with Unrestricted leaders), we probably would want to check for the city's civ type as well as the player civ type though.

----

Oh, and if you are updating how the bAlwaysHostile tag anyway, it would be nice to make it so that it does not count as a declaration of war when such units damage neutral units with spells.
 
Could you make it so selecting Regenerate Map decrements the counts of any World Buildings or World Units which may have been deleted in the process of regenerating?

As it is currently, it is possible to make a wonder unbuildable by adding it in an advanced start game and then regenerating the map.

I don't think that this problem comes up in base CIV IV, FfH2, or MNAI because world items all have <iAdvancedStartCost>-1</iAdvancedStartCost> there, but I'd rather still be able to add wonders in worldbuilder in my version.
 
What is wrong with this version of MNM? I've played 20 games and they always end with everyone declaring war on me, usually around turn 300. Please remove the "dog pile on human player" code. I would like to return to a normal game of FFH, not this nonsense.

Time to check out Orbis.
 
I agree. But, even when other civs are significantly weaker, the dog pile happens. This is especially true if I'm in a war. One civ declares war on me, and then a few turns later several others pile on. Even though I'm increasing the size of my military, and kicking the first civ's butt.

The old MNAI (version 2.5) didn't have this problem. Is there any way to reload it?
 
I apologize. I'm just grumpy because this mod used to have a near perfect balance of trading, diplomacy and battle. Part of the problem seems to be in that "the dastardly so-and-so has convinced the whomever to declare war on you". When this happens I usually get not one, but two or three civs declaring war on me. Even civs that are friendly will join in. And it's not just the human player. The AI civs get ganged up on, too. This results in one civ becoming a superpower by midgame, by eliminating several other players. Not that it shouldn't happen, occasionally. Just not so often.
 
The AI civs get ganged up on, too. This results in one civ becoming a superpower by midgame, by eliminating several other players. Not that it shouldn't happen, occasionally. Just not so often.

OK. This really belongs in the bug thread. Please include information about difficulty level and game settings when making these sorts of reports. Thanks!
 
Here is a very minor World Builder update, merely incorporating Platyping's recent changes to the diplomacy screen.


Any ETA on your next release? I might release another update of my modmod soon, but as usual would want to wait to incorporate your latest changes if it won't take too long.
 
Here is a very minor World Builder update, merely incorporating Platyping's recent changes to the diplomacy screen.

Any ETA on your next release? I might release another update of my modmod soon, but as usual would want to wait to incorporate your latest changes if it won't take too long.

Thanks for the update! I've generally stopped giving out ETAs since something always seems to come up, but I do hope to have a new release soon.
 
I would quite like it if you could expose these functions to python:

gc.getTraitInfo(iTrait).isFreePromotionUnitCombat(iUnitCombat)

pPlayer.getUnitArtStyleType()

gc.getUnitInfo(iUnit).getCost()


p.s. I've made a few improvements to WorldBuilder lately. I could share what I have now, but think I'd like to try improving a couple more things first. Make sure you warn me before your next release so that an updated worldbuilder can be included.
 
I guess I'll go ahead and release the WorldBuilder update now.

This fixes a minor graphical error in the Plot Data screen related to temporary terrain types.

It adds the ability to adjust a unit's fortified turns in the Unit Data screen.

More significantly, it extends the functionality of the Units + Cities screen. You can apply the Skip/Kill commands not merely to a specific unit or to all units but also to all units of the same unit type, same unit combat, same domain, same unit AI, same group, same plot, or same area. It also allows you to kill all cities in the same area. The number of units or cities to which each command may apply is listed for convenience.

I also changed the Promotion screen so that when specialized categories like race, items, and effects are selected it won't exclude those promotions which cannot be purchased by xp by units of that unitcombat.
 

Attachments

  • WorldBuilder 4.13b for MNAI v 2.62.zip
    WorldBuilder 4.13b for MNAI v 2.62.zip
    72.9 KB · Views: 187
  • Civ4ScreenShot0059.JPG
    Civ4ScreenShot0059.JPG
    140.3 KB · Views: 187
That would be a bit tricky, because while pUnit.setBlocading(bool) is exposed to python, pUnit.isBlockading() is not.

I could create buttons that let you turn blockading on or off, but would have no way of showing whether it is on or off.

That would only work anyway while the blockading unit is still around.

I don't think anything related to whether plots or cities are being blockaded is exposed to python yet.
 
Here is the new WorldBuilder update, bringing things into line with Platyping's version 4.14b.

The big changes are to the Units + Cities screen again. It undoes pretty much everything I personally changed for the last version, to bring things in line with Platyping's new style.

Gone are the recently added "Apply to all..." commands. Instead there are new drop down boxes to filter through Player/Team/All, Single Plot/Area Plots/All Plots, and various unit categories.

Platyping only let you sort by all units, same unit type, same unit combat, same Domain, and same group.

I also added same unitclass, same immobile timer, same duration, same fortify turns, same race, same has casted status, whether the unit is a summon, and same alternate unit type to that drop down menu on the far right.

Platyping removed the area and x/y coordinates from the table (since the filters make those a bit redundant), and added the unit's level, strength, and moves.

I added the units' defensive strengths, durations, and immobile timers to the table too.

Platyping (at my suggestion) included a window to show the city/unit mouseover for the selected unit.

I made those (plus the unit mouseovers themselves) also show the city revolution index, the alternate unit type, and if the unit has already casted.

I include a count of how many Cities/Units are on the list to effected by the "All" commands.


On the unit screen, I made the button to shift to the alternate unit type identify what that type is.

(I commented it out since things don't work the same in base MNAI, but for my mod I made clicking the Alternate Unit Type button remove the Held, Werewolf, and Cannot Cast promotions from the new unit.)
 

Attachments

Back
Top Bottom