IndieStone - Visual Tech Tree Editor

Sorry about asking so many questions, but is there a way to move tech lineage? e.g. theology leads to compass, but it cannot be changed by clicking and dragging. Holding alt and dragging the end of a line will make is go past the end of the tech tree and loop back around and not connect.
If a tech is moved back and moved back forward, its lineage is still the same.

I think I always end up deleting the line and redrawing it.
 
How? Whenever I select a line and press delete it does nothing. I haven't been able to find another bind for it either.

Deleting prereqs (pipes between the techs that control dependencies) is still working for me. If you left click on a pipe, does it turn blue? (This indicates it is selected.) Once it turns blue, pressing the Delete key should remove it. You should be able to add new prereqs by dragging a new pipe out of the small box on the right hand side of the tech.
 
Deleting prereqs (pipes between the techs that control dependencies) is still working for me. If you left click on a pipe, does it turn blue? (This indicates it is selected.) Once it turns blue, pressing the Delete key should remove it. You should be able to add new prereqs by dragging a new pipe out of the small box on the right hand side of the tech.

I was pressing the backspace key all this time and not the delete key. Guess that's fixed.
 
I think I'm confused. I'm running v0.9.1b. I get an unhandled exception within a couple of seconds as its "Loading Base Database:"

Spoiler Unhandled exception :

ee the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.Xml.XmlException: 'Offset' is a duplicate attribute name. Line 173, position 93.
at System.Xml.XmlTextReaderImpl.Throw(Exception e)
at System.Xml.XmlTextReaderImpl.AttributeDuplCheck()
at System.Xml.XmlTextReaderImpl.ParseAttributes()
at System.Xml.XmlTextReaderImpl.ParseElement()
at System.Xml.XmlTextReaderImpl.ParseElementContent()
at System.Xml.XmlTextReaderImpl.Read()
at System.Xml.XmlLoader.LoadNode(Boolean skipOverWhitespace)
at System.Xml.XmlLoader.LoadDocSequence(XmlDocument parentDoc)
at System.Xml.XmlLoader.Load(XmlDocument doc, XmlReader reader, Boolean preserveWhitespace)
at System.Xml.XmlDocument.Load(XmlReader reader)
at System.Xml.XmlDocument.Load(String filename)
at IndieStoneCiv5XMLTools.Civ5XmlDatabase.LoadTables(String file)
at IndieStoneCiv5XMLTools.Civ5XmlDatabase.Load()
at IndieStoneTechEditor.TechTree.FirstUpdate()
at IndieStoneTechEditor.TechTree.panel1_Paint(Object sender, PaintEventArgs e)
at System.Windows.Forms.Control.OnPaint(PaintEventArgs e)
at System.Windows.Forms.Control.PaintWithErrorHandling(PaintEventArgs e, Int16 layer)
at System.Windows.Forms.Control.WmPaint(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


If I continue, the splash screen never disappears, but I can access the menu items above.

Selecting "File>New From Civ5 Tree" results in two messages below "Creating copy of Base System," and "Creating Editor Icons." Then it hits another unhandled exception:

Spoiler Unhandled exception :

See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.Collections.Generic.KeyNotFoundException: The given key was not present in the dictionary.
at System.Collections.Generic.Dictionary`2.get_Item(TKey key)
at IndieStoneTechEditor.EraSlider.Instance_PostLoad()
at IndieStoneTechEditor.TechEditorGlobals.DB_LoadedDatabase(Civ5XmlDatabase db)
at IndieStoneCiv5XMLTools.Civ5XmlDatabase.OnLoadedDatabase()
at IndieStoneCiv5XMLTools.Civ5XmlDatabase.Copy(Civ5XmlDatabase other, Boolean DelayEndLoad)
at IndieStoneTechEditor.Form1.loadBaseTechTreeToolStripMenuItem_Click(Object sender, EventArgs e)
at System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
at System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e)
at System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
at System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
at System.Windows.Forms.ToolStripItem.FireEventInteractive(EventArgs e, ToolStripItemEventType met)
at System.Windows.Forms.ToolStripItem.FireEvent(EventArgs e, ToolStripItemEventType met)
at System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
at System.Windows.Forms.ToolStripDropDown.OnMouseUp(MouseEventArgs mea)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.ToolStrip.WndProc(Message& m)
at System.Windows.Forms.ToolStripDropDown.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

************** Loaded Assemblies **************
mscorlib
Assembly Version: 4.0.0.0
Win32 Version: 4.6.1586.0 built by: NETFXREL2
CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
----------------------------------------
IndieStoneTechEditor
Assembly Version: 0.0.0.0
Win32 Version: 0.0.0.0
CodeBase: file:///C:/Program%20Files%20(x86)/Civ5%20Dev%20Tools/IndieStoneTechEditor/IndieStoneTechEditor.exe
----------------------------------------
System.Core
Assembly Version: 4.0.0.0
Win32 Version: 4.6.1586.0 built by: NETFXREL2
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System
Assembly Version: 4.0.0.0
Win32 Version: 4.6.1586.0 built by: NETFXREL2
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Windows.Forms
Assembly Version: 4.0.0.0
Win32 Version: 4.6.1586.0 built by: NETFXREL2
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
Assembly Version: 4.0.0.0
Win32 Version: 4.6.1586.0 built by: NETFXREL2
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
IndieStoneTools
Assembly Version: 0.0.0.0
Win32 Version: 0.0.0.0
CodeBase: file:///C:/Program%20Files%20(x86)/Civ5%20Dev%20Tools/IndieStoneTechEditor/IndieStoneTools.DLL
----------------------------------------
System.Xml
Assembly Version: 4.0.0.0
Win32 Version: 4.6.1586.0 built by: NETFXREL2
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Configuration
Assembly Version: 4.0.0.0
Win32 Version: 4.6.1586.0 built by: NETFXREL2
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
Accessibility
Assembly Version: 4.0.0.0
Win32 Version: 4.6.1586.0 built by: NETFXREL2
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/Accessibility/v4.0_4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
----------------------------------------
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
For example:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.

Continuing. Splash screen still there. " File>Clear All Techs" does nothing obvious, but there might not be anything to do.

"File>Load" is looking for .ismod file. I don't think I have one of those and am just trying to load the vanilla BNW tech tree. So, I don't think if this works or doesn't.

"Mod>Mod Load XML into Current" looks promising. I try and load <Civ5 Install>/Assets/Gameplay/XML/Technologies/Civ5Technologies.xml. Two messages are posted "Creating copy of Base Database" and "Creating editor icons." Then, BOOM! Unhanded exception:

Spoiler Unhandled exception :

See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.Collections.Generic.KeyNotFoundException: The given key was not present in the dictionary.
at System.Collections.Generic.Dictionary`2.get_Item(TKey key)
at IndieStoneCiv5XMLTools.Civ5XmlDatabase.CreateTextKey(String tag, String text)
at IndieStoneTechEditor.TechEditorGlobals.CreateFunctionality(GenericFunctionalityData mapping, String techType, String propertyValue)
at IndieStoneTechEditor.TechEditorGlobals.UpdateFunctionalities(PropertyEventArgs e)
at IndieStoneTechEditor.TechEditorGlobals.DB_AnyGameDataChanged(PropertyEventArgs e)
at IndieStoneCiv5XMLTools.Civ5XmlGameDataRow.ElementGameDataPropertyHandler.Invoke(PropertyEventArgs e)
at IndieStoneCiv5XMLTools.Civ5XmlDatabase.OnAnyGameDataChanged(PropertyEventArgs EventArgs)
at IndieStoneCiv5XMLTools.Civ5XmlGameData.OnAnyRowChanged(PropertyEventArgs e)
at IndieStoneCiv5XMLTools.Civ5XmlGameDataRow.OnRowChanged(PropertyEventArgs e)
at IndieStoneCiv5XMLTools.Civ5XmlGameDataProperty.set_Value(String value)
at IndieStoneCiv5XMLTools.Civ5XmlGameDataRow..ctor(Civ5XmlGameData parent, XmlNode row)
at IndieStoneCiv5XMLTools.Civ5XmlGameData.AddRow(XmlNode row, DataOrigin dlc)
at IndieStoneCiv5XMLTools.GameDataModder.ApplyModEntry(XmlElement entry, Civ5XmlDatabase targetDatabase)
at IndieStoneCiv5XMLTools.GameDataModder.ApplyModGameDataNode(XmlNode node, Civ5XmlDatabase targetDatabase)
at IndieStoneCiv5XMLTools.GameDataModder.ApplyModXML(XmlDocument doc, Civ5XmlDatabase targetDatabase)
at IndieStoneCiv5XMLTools.GameDataModder.ApplyModXML(String filename, Civ5XmlDatabase targetDatabase)
at IndieStoneTechEditor.TechTree.DoLoad(String[] FileNames)
at IndieStoneTechEditor.TechTree.LoadNoNew()
at IndieStoneTechEditor.Form1.modXMLIntoCurrentToolStripMenuItem_Click(Object sender, EventArgs e)
at System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
at System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e)
at System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
at System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
at System.Windows.Forms.ToolStripItem.FireEventInteractive(EventArgs e, ToolStripItemEventType met)
at System.Windows.Forms.ToolStripItem.FireEvent(EventArgs e, ToolStripItemEventType met)
at System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
at System.Windows.Forms.ToolStripDropDown.OnMouseUp(MouseEventArgs mea)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.ToolStrip.WndProc(Message& m)
at System.Windows.Forms.ToolStripDropDown.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

************** Loaded Assemblies **************
mscorlib
Assembly Version: 4.0.0.0
Win32 Version: 4.6.1586.0 built by: NETFXREL2
CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
----------------------------------------
IndieStoneTechEditor
Assembly Version: 0.0.0.0
Win32 Version: 0.0.0.0
CodeBase: file:///C:/Program%20Files%20(x86)/Civ5%20Dev%20Tools/IndieStoneTechEditor/IndieStoneTechEditor.exe
----------------------------------------
System.Core
Assembly Version: 4.0.0.0
Win32 Version: 4.6.1586.0 built by: NETFXREL2
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System
Assembly Version: 4.0.0.0
Win32 Version: 4.6.1586.0 built by: NETFXREL2
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Windows.Forms
Assembly Version: 4.0.0.0
Win32 Version: 4.6.1586.0 built by: NETFXREL2
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
Assembly Version: 4.0.0.0
Win32 Version: 4.6.1586.0 built by: NETFXREL2
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
IndieStoneTools
Assembly Version: 0.0.0.0
Win32 Version: 0.0.0.0
CodeBase: file:///C:/Program%20Files%20(x86)/Civ5%20Dev%20Tools/IndieStoneTechEditor/IndieStoneTools.DLL
----------------------------------------
System.Xml
Assembly Version: 4.0.0.0
Win32 Version: 4.6.1586.0 built by: NETFXREL2
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Configuration
Assembly Version: 4.0.0.0
Win32 Version: 4.6.1586.0 built by: NETFXREL2
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
Accessibility
Assembly Version: 4.0.0.0
Win32 Version: 4.6.1586.0 built by: NETFXREL2
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/Accessibility/v4.0_4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
----------------------------------------
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
For example:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.

Slash screen never goes away. Neither does the big red 'X' through the upper right box. No depiction of any tech tree.

Since others are having success, I feel like I must be doing something pretty basic wrong. Any help would be appreciated.

Thanks,

SR
 
I think I'm confused. I'm running v0.9.1b. I get an unhandled exception within a couple of seconds as its "Loading Base Database:"

Spoiler Unhandled exception :

ee the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.Xml.XmlException: 'Offset' is a duplicate attribute name. Line 173, position 93.
at System.Xml.XmlTextReaderImpl.Throw(Exception e)
at System.Xml.XmlTextReaderImpl.AttributeDuplCheck()
at System.Xml.XmlTextReaderImpl.ParseAttributes()
at System.Xml.XmlTextReaderImpl.ParseElement()
at System.Xml.XmlTextReaderImpl.ParseElementContent()
at System.Xml.XmlTextReaderImpl.Read()
at System.Xml.XmlLoader.LoadNode(Boolean skipOverWhitespace)
at System.Xml.XmlLoader.LoadDocSequence(XmlDocument parentDoc)
at System.Xml.XmlLoader.Load(XmlDocument doc, XmlReader reader, Boolean preserveWhitespace)
at System.Xml.XmlDocument.Load(XmlReader reader)
at System.Xml.XmlDocument.Load(String filename)
at IndieStoneCiv5XMLTools.Civ5XmlDatabase.LoadTables(String file)
at IndieStoneCiv5XMLTools.Civ5XmlDatabase.Load()
at IndieStoneTechEditor.TechTree.FirstUpdate()
at IndieStoneTechEditor.TechTree.panel1_Paint(Object sender, PaintEventArgs e)
at System.Windows.Forms.Control.OnPaint(PaintEventArgs e)
at System.Windows.Forms.Control.PaintWithErrorHandling(PaintEventArgs e, Int16 layer)
at System.Windows.Forms.Control.WmPaint(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


...

Since others are having success, I feel like I must be doing something pretty basic wrong. Any help would be appreciated.

Thanks,

SR

This first part about the exception when loading the base database is going to be the cause of all the other issues you mention - if the base database won't load then the rest of the program won't work. (Can't load a mod against a differential of the base if you don't have the base. Can't create an ismod file if you can't get a tree up to start and export it.)

Have you tried verifying your local files via Steam? It looks like one of the XML files in your CiV install has an extra tag in it that it shouldn't. Do you have any "fake DLC" mods installed like EUI? If you remove those, does it start working?
 
This first part about the exception when loading the base database is going to be the cause of all the other issues you mention - if the base database won't load then the rest of the program won't work. (Can't load a mod against a differential of the base if you don't have the base. Can't create an ismod file if you can't get a tree up to start and export it.)

Have you tried verifying your local files via Steam? It looks like one of the XML files in your CiV install has an extra tag in it that it shouldn't. Do you have any "fake DLC" mods installed like EUI? If you remove those, does it start working?

I do have EUI installed and that's my bad. I remember reading about removing it when I was about to try this a month ago. I had forgotten. Let me give that a go and see.

EDIT: Bingo! Damn, sorry for the long post. Maybe if you can put an error message in there that says, "hey, move your UI_bc1!" :(
 
Last edited:
I do have EUI installed and that's my bad. I remember reading about removing it when I was about to try this a month ago. I had forgotten. Let me give that a go and see.

EDIT: Bingo! Damn, sorry for the long post. Maybe if you can put an error message in there that says, "hey, move your UI_bc1!" :(

No problem, glad you've got it working! I'm hoping to make it so that the Editor can just deal with EUI rather than the user needing to uninstall it, but I haven't had time to do so.
 
I've added the XML files to a mod and set the onmodactivated to update the database for all the files but it only moves and adds techs and doesn't move or change anything
 
I've added the XML files to a mod and set the onmodactivated to update the database for all the files but it only moves and adds techs and doesn't move or change anything

Can you attach the XML file that you've included? Or better yet, the whole mod?

If you've pulled out part of the exported file from the Editor and put it in a mod - do you definitely have all of the elements that do updates? (The Update elements modify existing techs.)
 
Another new version! Same download link as always!

This time I'm trying to address by far the largest problem that most users seem to run into with the Tech Tree Editor: running it for the first time and having it find their Civ5 install!

Changes:

  • The Editor now checks in the frequent install location in "C:\Program Files (x86)\Steam\Steamapps\Common\Sid Meier's Civilization V" if it can't find your Civ5 install via the registry.
  • If that fails, the Editor will prompt you to find your Civ5 install folder:
    • Once you have picked the right folder, the Editor will load normally and will remember that folder for future sessions on your PC, so you don't need to find it every time.
      • If you move your Civ5 install folder, the Editor will prompt you again when it can't find the installation in the old location.
    • If you accidentally pick the wrong folder, then it will prompt you again:
    • And if you cancel, then the Editor will close:


THANKS a lot, i've been trying to modify it since a year lol :D the previous version of the program crashed just after launching it, although this one at LEAST starts and does not crash, working so far, thanks a lot ♥
 
hello
I am having some problems with trying to actually use this in a mod. Loading the editor works fine, and actually putting it into the mod is fine, but trying to load the mod causes civ to crash. Any ideas what may be causing this?
 
hello
I am having some problems with trying to actually use this in a mod. Loading the editor works fine, and actually putting it into the mod is fine, but trying to load the mod causes civ to crash. Any ideas what may be causing this?

Database Log will likely contain the cause of the CTD. Welcome to modding; you get used to the crashes and logs :p
 
Hello, I would like to say that this is an amazing editor that could really make modding accessible for an idiot like myself who has a lot of ideas and little skill. That is, if i could get it to work. Hopefully im just being stupid and you can show me the error of my ways.

To test out the functionality of a new mod type i always try something simple to see how it works and expand from there. In this case i created a new technology called Crop Rotation that increases farm yield (screenshot 1). Simple right? However when i try to export the project with conflict detection on i get an unhandled exception stating value cannot be null (screenshot 2)

Full text of the exception:

Code:
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.ArgumentNullException: Value cannot be null.
Parameter name: item
   at System.Windows.Forms.ComboBox.ObjectCollection.AddInternal(Object item)
   at System.Windows.Forms.ComboBox.ObjectCollection.Add(Object item)
   at IndieStoneTools.Forms.ConflictDialog.FillReplaceDropDown(String replaceType)
   at IndieStoneTools.Forms.ConflictDialog..ctor(Conflict conf, Int32 index)
   at IndieStoneTools.Forms.ConflictDialog.DoConflicts(ConflictInfo info, Civ5XmlDatabase db)
   at IndieStoneTools.Forms.Export.SaveISMod()
   at IndieStoneTools.Forms.Export.button2_Click(Object sender, EventArgs e)
   at System.Windows.Forms.Control.OnClick(EventArgs e)
   at System.Windows.Forms.Button.OnClick(EventArgs e)
   at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ButtonBase.WndProc(Message& m)
   at System.Windows.Forms.Button.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Loaded Assemblies **************
mscorlib
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.36365 built by: FX452RTMLDR
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
----------------------------------------
IndieStoneTechEditor
    Assembly Version: 0.0.0.0
    Win32 Version: 0.0.0.0
    CodeBase: file:///E:/Games/Civilization%205/indiestone%20techtree%20editor/IndieStoneTechEditor.exe
----------------------------------------
System.Windows.Forms
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34251 built by: FX452RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34285 built by: FX452RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34294 built by: FX452RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Core
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.36365 built by: FX452RTMLDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
IndieStoneTools
    Assembly Version: 0.0.0.0
    Win32 Version: 0.0.0.0
    CodeBase: file:///E:/Games/Civilization%205/indiestone%20techtree%20editor/IndieStoneTools.DLL
----------------------------------------
System.Xml
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34283 built by: FX452RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Configuration
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34209 built by: FX452RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
Firaxis.Framework
    Assembly Version: 1.0.0.0
    Win32 Version: 1.0.0.0
    CodeBase: file:///E:/Games/Civilization%205/indiestone%20techtree%20editor/Firaxis.Framework.DLL
----------------------------------------
DevIL.NET2
    Assembly Version: 1.1.2619.31671
    Win32 Version:
    CodeBase: file:///E:/Games/Civilization%205/indiestone%20techtree%20editor/DevIL.NET2.DLL
----------------------------------------
msvcm80
    Assembly Version: 8.0.50727.6195
    Win32 Version: 8.00.50727.6195
    CodeBase: file:///C:/Windows/WinSxS/x86_microsoft.vc80.crt_1fc8b3b9a1e18e3b_8.0.50727.6195_none_d09154e044272b9a/msvcm80.dll
----------------------------------------
System.Design
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34209 built by: FX452RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Design/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Design.dll
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.

If i disable conflict detection it generates the XML files, which i then tried to convert to a mod the usual way (with SDK). The game loads, however the techtree is bugged. I cannot scroll tree to the right and as you can see in (screenshot 3) the era title seems to have appeared in the middle of the tree for some reason. I also can click on the technology but it will not research it, the research icon will show title of last technology being researched but use the icon of my technology, so the game clearly cannot determine what it is supposed to do.

The modding and testing was done with all other mods and fakeDLC removed to make sure they arent the source of conflicts, so its not that. I also tried adding the <system.windows.forms jitDebugging="true" /> line in the config file of the program but it made no difference.

Hopefully i am just doing something wrong and you can point me into the right direction.

Strazdas

Edit: Did some more testing. Apperently if i select the new technology, it does not show it being selected but skipping turns will "research" it and the farms will get the bonus, however it will still show as unresearched in tech tree.

I looked at database validation logs and apperently its giving me errors for all the xml files the program is generating. It states:

[147955.669] Database::XMLSerializer (TechTreeUnits.xml): There was an error executing the update statement! See Database.log for details.
[147955.669] PRIMARY KEY must be unique
[147955.669] In XMLSerializer while updating table UnitPromotions from file TechTreeUnits.xml.
[147956.387] Validating Foreign Key Constraints...


And the same error for 10 of the files. In those files the editor generated some code which i assume is just a copy of vanilla code, because i did not change things like units at all. however i assume since the program generated these, they are needed?

Edit 2: I have found a culprit, kind off. I still get the same error when exporting the XML files in editors, however it seems to work ingame. I have assumed correctly that the problem is my own stupidity. I looked at what an existing technology - fertilizer - does and tried to copy it. Fertilizer increases food yield on both farm and terrace farm. So i increased the yield for both on my technology as well. However apparently i do not have that nation DLC purchased, so terrace farm improvement was not found by the game and it bugged out. So despite the vanilla technology having a reference to terrace farm, one cannot have this reference in mods if the DLC is not present.

Now to test it with my building mods and enhanced UI.....

Edit 3: I realized this mod does not add flavors to technologies, so AI will research them only when it has no other options, making AI research patch horrible. I would suggest adding an option in the technolgy options to add/change technology flavor so one would not need to manually change the XMLs afterwards. Luckily i have gone over flavor creating with my building mod and noticed them missing.
 

Attachments

  • TT1.png
    TT1.png
    509 KB · Views: 320
  • TT2.png
    TT2.png
    468.1 KB · Views: 287
  • TT3.png
    TT3.png
    1 MB · Views: 314
Last edited:
Top Bottom