Yeah, but AI_chooseFreeTech() only calls AI_bestTech(), so I'd have to limit that one, but it has no way of knowing that it has to decide on a free tech in this case and thus have limited options.
def refreshPlayerTabCtrl(self):
initWBToolPlayerControl()
self.m_normalPlayerTabCtrl = getWBToolNormalPlayerTabCtrl()
self.m_normalPlayerTabCtrl.setNumColumns((gc.getNumUnitInfos()/10)+2);
self.m_normalPlayerTabCtrl.addTabSection(localText.getText("TXT_KEY_WB_UNITS",()));
self.m_iUnitTabID = 0
self.m_iNormalPlayerCurrentIndexes.append(0)
self.m_normalPlayerTabCtrl.setNumColumns((gc.getNumBuildingInfos()/10)+1);
self.m_normalPlayerTabCtrl.addTabSection(localText.getText("TXT_KEY_WB_BUILDINGS",()));
self.m_iBuildingTabID = 1
self.m_iNormalPlayerCurrentIndexes.append(0)
self.m_normalPlayerTabCtrl.setNumColumns((gc.getNumTechInfos()/10)+1);
self.m_normalPlayerTabCtrl.addTabSection(localText.getText("TXT_KEY_WB_TECHNOLOGIES",()));
self.m_iTechnologyTabID = 2
self.m_iNormalPlayerCurrentIndexes.append(0)
addWBPlayerControlTabs()
return
I'm getting a C++ exception when trying to call the method "addWBPlayerControlTabs()", line 2367 in CvWorldBuilderScreen.py. Does somebody know what the method does, and what could've caused the error?
Don't know, seems to be some part of the WB interface. All I know is that it throws exceptions at meWhat is that for, if I may ask?
Never did it, but I think yes.So the function addWBPlayerControlTabs is nowhere in there?
mmhh...do you know how to compile a debug dll?
It's likely not that function itself that is the problem. Looks like the function its crashing on is checking Unit, Building and Tech infos. Did you make any changes to any of those three sections of the game recently?
That was my first idea as well, but I checked my recent additions and they all showed the correct buttons in civilopedia. Can they still cause problems then? I'll check for leading commas anyway, thanks.Like, for example, adding one of those three things and giving it a bad button path (extraneous leading comma being the typical example). What it is doing is building the display that has the 3 tabs that show the buttons for each of the three things. Therefore buttons are a likely culprit.