Pie AE K-MOD merge Project

Could we also set them back to UNITCOMBAT_ANIMAL? Right now, they are all UNITCOMBAT_MELEE. But if that were to be changed, also the promotions would require modification.
That would be cool! Animals being animals again, not melee! I can't even remember why Pie changed that long time ago.

Great work keldath! That I wanted to say anyway! PEA is finally entering a new age! Really cool!
(And it only started because I had long turn times ;o)

But still some work to do:
- with the current version (from today, 03-Jun) the Eurasia XXXL map is not working. Not loading...
- and on the XXL map I'm getting CTDs after a few turns

Probably Flunky is already investigating, but I just wanted to say it here on Fanatics, too...


[edit] If you want to have a look at the CTD, here is the save (Eurasia XXL - turn 11)
https://www.civforum.de/showthread.php?112652-PAE-VI-mit-kmod-dll&p=8816993&viewfull=1#post8816993
 
Last edited:
hi,
brettschmitt. im very happy to assist to such a veteran mod.
also, thank you for testing it.

your save does not crash with the latest files in our git.
copy the assests folder into you pae folder and youll be able to continue to play.


*****
guys,
kmod wont save you from long long turns, improve, yes.
but the mod is large, with huge maps, if possible , consider making it smaller - less civs on a map, map sizes smaller...
 
Last edited:
your save does not crash with the latest files in our git.
copy the assests folder into you pae folder and youll be able to continue to play.
Strange... not working for me. I took this version (3-Jun-21 - Minor fixes to the fixes) and still the XXXL map doesn't load.
And the save of the XXL map in turn 11 does not crash to desktop anymore, but endless turning globe...

upload_2021-6-4_18-32-43.png



Turn times seem lots faster. With your version from 28-Jun I could play until turn 600 or so on the XXXL map... still had around 10 sec per turn. That's great!

And it also means that the XXXL map once worked (with the older git version).
 
Last edited:
Ok... it's the full screen mode! When i switch to windowed in the graphics options the save continues.
This message appears. Ignore Once and it works .

upload_2021-6-4_21-43-24.png
 
I'm looking through the failing asserts.

This one can be removed, since animals do try to enter cities now.

What I'm wondering about is an access to CvUnit::canBuild with eBuild == -1.

It originates from CvGame::canHandleAction with the call: pSelectedInterfaceList->canStartMission(GC.getActionInfo(iAction).getMissionType(), GC.getActionInfo(iAction).getMissionData(), -1, pMissionPlot, bTestVisible, bUseCache)
The italic part is MISSION_BUILD and the bold part eBuild, which happens to be -1.
I don't know how to access the stack trace, so all I could do was read through the calls. There are two possible ways I found to get to this result:
1) GC.getActionInfo(iAction).getSubType() == ACTIONSUBTYPE_MISSION and m_iOriginalIndex == MISSION_BUILD by chance
2) GC.getActionInfo(iAction).getSubType() == ACTIONSUBTYPE_BUILD and GC.getBuildInfo((BuildTypes)m_iOriginalIndex).getMissionType() == MISSION_BUILD and m_iOriginalIndex == -1
2) should fire another Assert, so it has to be 1) or something I've overlooked. I think this is a serious bug, if really an ACTIONSUBTYPE_MISSION is confused for a MISSION_BUILD.

€: I checked, and it really is the ACTIONSUBTYPE_MISSION with m_iOriginalIndex == MISSION_BUILD
 
@keldath: Pie is thinking about a feature inspired by the old colonization: when a river has no bridge, a unit should need full movement points to cross over. So it needs to wait before crossing and, since the crossing takes a look of movement points, also after.

Do you think that could be easily implemented in the A*?

I gotta say I'm not sold on the idea, but if it is at least possible, we could open the discussion.
 
Hey,

Brett, very odd, i play only on window...
So ill try to reproduce, bizzare.

Animals to citied,
No worries, ill add a check instead of the can get into culture borders.
I like this one, ill use it in my mod also.

Flunky,, get me a save with the build err, ill fund it.


River, all movement you say?
Well i guess its an easy one.
I can make it optinal... In the xml global or custom game option.

Ill handle the animals next and tge ice movement.

P. S
I assume theres more chatter in the German forum, so please ask people to test with super forts on.. I hope no errors will pop.
 
Last edited:
Hey,

Brett, very odd, i play only on window...
So ill try to reproduce, bizzare.

P. S
I assume theres more chatter in the German forum, so please ask people to test with super forts on.. I hope no errors will pop.
When you play with full screen mode the Assert messages just stay in the back behind the game and you can't reach them for clicking ignore.
So with Assert Fails on you have to play in window mode... No problem.

I'm already testing your new dll with super forts. Will try to build a fort as soon as possible...
 
Do you have to switch on super forts in the Bug options?
no, its a game option from the custom game option.
if you want it as a default on - youll have to edit the super forts game option in the gameoptions.xml.
for scenarios you might have to edit the scenario / map file and add the option to the file (the options are listed in each file of that type).
i hadn't thought about this part :)

hen you play with full screen mode the Assert messages just stay in the back behind the game and you can't reach them for clicking ignore.
So with Assert Fails on you have to play in window mode... No problem.
cool
 
hehe sorry, just thought about it.
i can make if a definition in the global defines rather then a custom game option, or both...

yes,
there is a new dll coming, tonight:

upload_2021-6-5_22-9-39.png


move on ice mod component is ready.
just need to set which units are allowed to do so with a new tag:
<bCanMoveIce>1</bCanMoveIce>
AI should handle it as a regular tile.
maybe i need to check the path code though.


*************
i noticed several issues:
text is wrong for one of the era's.
Platyping world builder is not working well, you can choose anything in the tables , for example a specific unit.
better someone look at the code merge :)


***********
edit - ok,
all my code is updated on git.
also fixed animals going in cities + forts is super forts is on.

cheers, have a good week.
 
Last edited:
hey again,
im adding this:

AttitudeTypes CyPlayer::AI_getAttitude(int /*PlayerTypes*/ ePlayer)
{
//Keldath Pae - there are lots of python places that call this
//which was probably implemented wrong since there are calls on self attitude.
//Flunky and me changed places to check this out, but i decided to add a bypass here.
//best practice is to fix the python, it also adds performance issues.
if ((PlayerTypes)ePlayer != getID())
{
return NO_ATTITUDE;
}
return m_pPlayer ? m_pPlayer->AI_getAttitude((PlayerTypes)ePlayer) : NO_ATTITUDE;
}

Flunky FYI...

also - adding path find code for the can move on ice mod.
 
Last edited:
Should the first guard not be == getID()?

And did we not fix all Python calls of the function with my last commit on the topic?
 
I think <bCanMoveIce>1</bCanMoveIce> is not really necessary!
Every land unit can move ice. why should there be an extra tag for? simply use DOMAIN_LAND or DOMAIN_SEA whatever.... more easy and more uncomplicated!
 
I think <bCanMoveIce>1</bCanMoveIce> is not really necessary!
Every land unit can move ice. why should there be an extra tag for? simply use DOMAIN_LAND or DOMAIN_SEA whatever.... more easy and more uncomplicated!
I thought only Submarines can move on Water-Ice. Land units can't beacause it's water... so the new tag is needed (my thought).

Ok... or do you mean it could be implemented globally for ALL land units. Than it maybe could work wihout that new tag...
 
Last edited:
Yes, ICE is a feature. why not put a tag into the Feature Infos! but yes, for this purpose, it's really not necessary to add a new tag, because EVERY land unit can walk on thick ice/snow. from ant to elephant.
 
Top Bottom