I have added a new ideology system mainly just by copying the religion parts. I have built the dll without errors, and even the game loading goes fine without errors. But when I start a new game, I get infinite ammount of those python errors in the first screenshot. I tried using debug dll with VC attached and got a different error. See second screen.
I haven't changed anything in CvMainInterface that could cause the crash. Here's part of python logs
Here's the function that is failing in python's oppinion with line 1190 in red
The assert mentions CvTeamAI.h which I havent touched. Line 22 in red
I know there might be many places where the problem is, but does anyone have ideas how to narrow the search?
I haven't changed anything in CvMainInterface that could cause the crash. Here's part of python logs
Spoiler :
Code:
Traceback (most recent call last):
File "CvScreensInterface", line 717, in forceScreenRedraw
File "CvMainInterface", line 706, in redraw
File "CvMainInterface", line 1190, in updateFlag
RuntimeError: unidentifiable C++ exception
ERR: Python function forceScreenRedraw failed, module CvScreensInterface
Spoiler :
Code:
def updateFlag( self ):
if ( CyInterface().getShowInterface() != InterfaceVisibility.INTERFACE_HIDE_ALL and CyInterface().getShowInterface() != InterfaceVisibility.INTERFACE_MINIMAP_ONLY and CyInterface().getShowInterface() != InterfaceVisibility.INTERFACE_ADVANCED_START ):
screen = CyGInterfaceScreen( "MainInterface", CvScreenEnums.MAIN_INTERFACE )
xResolution = screen.getXResolution()
yResolution = screen.getYResolution()
[COLOR="Red"]screen.addFlagWidgetGFC( "CivilizationFlag", xResolution - 288, yResolution - 138, 68, 250, gc.getGame().getActivePlayer(), WidgetTypes.WIDGET_FLAG, gc.getGame().getActivePlayer(), -1)[/COLOR]
The assert mentions CvTeamAI.h which I havent touched. Line 22 in red
Spoiler :
Code:
class CvTeamAI : public CvTeam
{
public:
CvTeamAI();
virtual ~CvTeamAI();
#ifdef _USRDLL
// inlined for performance reasons, only in the dll
static CvTeamAI& getTeam(TeamTypes eTeam)
{
[COLOR="Red"]FAssertMsg(eTeam != NO_TEAM, "eTeam is not assigned a valid value");[/COLOR]
FAssertMsg(eTeam < MAX_TEAMS, "eTeam is not assigned a valid value");
return m_aTeams[eTeam];
}
#endif
DllExport static CvTeamAI& getTeamNonInl(TeamTypes eTeam);
static void initStatics();
static void freeStatics();