IndieStone - Visual Tech Tree Editor

:D thanks! I'm glad the bugs haven't frustrated you to the point of hating it! :D

will get them all ironed out soon enough, I'm going to slow down on feature additions for a while now I've got enough functionality in there to edit most everything in the game, and concentrate on stability and usability stuff for a while.
 
Uhrm... can I bug you for _1_ feature request please?

Ability to print out the tech tree with what's tied to a tech?

Not with pipes, but with their order ID, in order?

I keep trying to find/create a way to get a listing of what actually is in civ5, but I end up writing it down... It's for the environment man! ;p

Ideally I'd like a simple txt listing of units/building/features as well.. if it could be all combined, maybe in a outline type layout, that would be great, but hell, I'll take any output at this time... the civ5 manual doesn't list everything sadly.

Tech Name/ID#;Prereq(s);bonuses
Feature name;what it does/bonus
Unit name;prod cost;maint;atk;def;move;sight;bonuses
building name;prod cost;maint;bonuses

repeat each feature, unit, building as found for the tech.

then a section for anything unassigned with it's info.

This would help tremendously in planning things out.... Since i've got a notebook full of tweaks I want to do... which I told myself I wasn't going to... then started to do anyways.. lol... damned moddable games! :X
 
:D thanks! I'm glad the bugs haven't frustrated you to the point of hating it! :D

will get them all ironed out soon enough, I'm going to slow down on feature additions for a while now I've got enough functionality in there to edit most everything in the game, and concentrate on stability and usability stuff for a while.

Nah, the bugs have been pretty light compared to what I had to go through to get my tech tree working when I first started it. :)

Also, it saves me a lot of time from having check my work in the game every time I add or change 1 item. Though I am still uneasy when I make tons of changes and then try to run it in the game. So far so good anyway. :)

Looking forward to see this grow.

Will you be adding policy functionality at some point? I am planning on adding 200+ policies when FiresForever finishes his multiple policy page mod, so this could come in handy if it also takes care of that business for me.

And I haven't tried it yet, but how does this integrate with the multiple tech page mod? I am guessing that I would just have to go through my alternate tech pages that I make using the editor, and apply the correct tags for whichever page they belong to. Though, I don't know how prereqs on other pages would work beyond doing it manually.

Anyway, if you added support for multiple tech pages that would be bonus. :)
 
Wow, this is an amazing program!

However it's not quite working for me: it's showing three of every icon. :crazyeye:



This is with the most recent version right now (0.9.1b). I know my CiV runs fine, and I've successfully made/uploaded/used a mod for it. I'm on Win7 32 bit. I can provide more details if that would be helpful.

(Note: in the screenshot I rebuilt it from the default Civ V tree after messing around with it a bit, but this is how it looked upon first loading too.)
 
I must say that I've had none of the problems Decimatus is referring to. I've done pretty light changes, however, just adding a few techs in the Medieval Era and so. I can relate to the broken pipes and pipes going out into Oblivion though, but I consider that of minor importance.

I get two Archers at the beginning of the tree though. I added a UU fpr France last night real easy with this utility too, complete with Civilopedia and stats changes. There's no function to make units Unique for one Civ yet in the Tech Tree Editor. You might consider that in future updates. Oh, when I dragged the French UU to the tech where I wanted it it just disappeared, but it did show up in the xml at the correct location.

I've had only small things like that.
 
Got a new one. Had an exception, and after I clicked continue the tech screen turned into a white screen with a giant red X going through all of it.


************** Exception Text **************
System.NullReferenceException: Object reference not set to an instance of an object.
at IndieStoneTechEditor.Diagram.Designer.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.UserControl.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)



I think the cause of this was when I tried to move a tech pipe to a tech directly above it. It didn't take obviously, but when I brought the pipe down to the original tech to let it go, the program died. :)
 
I have noticed a case where your pipes don't seem to act the same way as game pipes.

If you open my mod up in your editor you can see that the area where Priesthood and Monotheism lead to Theology is different than it is in the game. The pipe from Priesthood branches up to meet the other pipe in the middle of the tech space as opposed to further down the line where the pipes usually branch(the space between the techs).


Also, I have noticed that some of these cases with broken pipes involve the pipe actually trying to insert itself at the front of a tech instead of the back. So it goes from the front of the prereq tech to the front of the next tech, instead of back to front as it is supposed to.

So this caused me to mistakenly think it was coming from another tech ahead of it.

Instead, it comes out the front, goes in the opposite direction, and then doubles back passing through the tech it is coming from and appearing out the back of the tech it originated from. You can see this when you pick the tech up and move it around the screen.

In many cases it causes the pipes to be darker than they should because the doubleback causes there to be twice as many lines in that space as there should be.

In other cases you can actually see a spear of tech pipe sitting out in the open by itself, which is where it is doubling back.


One way that would help us determine whether or not it is really working correctly would be to include the Prereq techs in the edit DB window. That way we could see where the game thinks it is going, and compare it with where the editor shows the pipe to be going. And also, it would let us just type in a prereq tech in the event that we are do some non-standard prereq setup.

To kind of going along with that, can you add an ignore function to the conflict finder? There is an option to delete the item in conflict, and an option to replace it with something from the list, but I didn't see one for "Ignore this specific conflict".


Back to tinkering. :)
 
Here are some examples of the doubleback. I moved Atomic Theory down a block so you can see the full loop.

Notice how Atomic Theory's Prereq Pipe comes out of the front of the tech, doubles back to hit the front of Nuclear Fission.

The only reason you know Atomic Theory is doing that is because it has enough space in front of it to fully show the big spear of tech pipe that is coming from it in the opposite direction, which is sitting out there all by itself looking like a double thick pipe.

Also notice how the pipes right in front of Electronics, Mass Media, Radio, and Refrigeration are all extra thick? They all doubleback. And the broken pipe right in front of Ecology? Also a doubleback.




I can't remember if I exported and reloaded after I fixed them(I had that crash sometime around there). It may fix it. Either way, it doesn't seem to affect the actual game, just the display in the editor which can be confusing.
 
I would like to formally request a full text box for updating and editing the various Text lines found in the game. At least big enough to see a full paragraph in.
 
I would like to formally request a full text box for updating and editing the various Text lines found in the game. At least big enough to see a full paragraph in.

Add that to my wishlist too. It would really be easier to overview what you've written in there.
 
You can. :p press the ... at the end of Civilopedia etc and you get a full box. <- I was writing this when I went to check and seen that this isn't working. Doh! That's a bug.

Either way will be replacing that panel with a nicer one at some point anyway.

Wow a lot of stuff to read through. :)

re: Decimatus' pipe bugs, the problem is when you link them up it's putting down control points, and then when you move it sufficiently it's not moving one of the control points, I'll look into it.

re: Le Sage "I get two Archers at the beginning of the tree though." - One of them is a Barbarian archer. ;p

re: SevenSpirits, thanks! and yikes! that's an odd bug :-o will think on that but for the life of me can't think what would be causing that.
 
re: SevenSpirits, thanks! and yikes! that's an odd bug :-o will think on that but for the life of me can't think what would be causing that.

My thoughts exactly. :lol:

Here, I did some testing. (First tried reinstalling CiV and your program, just to be sure.)

I open it up and drag Great Engineer onto Agriculture. Visually, there are now TWO GE icons on Agriculture. Only the rightmost duplicate icon is ever selectable/draggable. (That's true for the one I added, and the other dupes.)

Soon, the following lines show up in autosave:

Code:
  <Units>
    <Update>
      <Set ID="186" PrereqTech="TECH_AGRICULTURE" />
      <Where Type="UNIT_ENGINEER" />
    </Update>
    <Update>
      <Set ID="186" PrereqTech="TECH_AGRICULTURE" />
      <Where Type="UNIT_ENGINEER" />
    </Update>
    <Update>
      <Set PrereqTech="TECH_AGRICULTURE" />
      <Where Type="UNIT_ENGINEER" />
    </Update>
  </Units>

Now I drag the (rightmost) GE icon back to unassigned. The left icon stays. In the autosave, the new lines stay exactly the same! Edit: Wrong, the prereqtech is now blank.

Now I drag Worker from unassigned to Pottery. The icons behave in the same pattern (there are now two Worker icons on Pottery). The autosave now says:

Code:
  <Units>
    <Update>
      <Set ID="181" PrereqTech="TECH_POTTERY" />
      <Where Type="UNIT_WORKER" />
    </Update>
    <Update>
      <Set ID="186" PrereqTech="" />
      <Where Type="UNIT_ENGINEER" />
    </Update>
    <Update>
      <Set ID="181" PrereqTech="TECH_POTTERY" />
      <Where Type="UNIT_WORKER" />
    </Update>
    <Update>
      <Set ID="186" PrereqTech="" />
      <Where Type="UNIT_ENGINEER" />
    </Update>
    <Update>
      <Set PrereqTech="TECH_POTTERY" />
      <Where Type="UNIT_WORKER" />
    </Update>
    <Update>
      <Set PrereqTech="" />
      <Where Type="UNIT_ENGINEER" />
    </Update>
  </Units>

Of note:
- Same problem.
- Engineer lines are still unchanged. Edit: The prereqtech is blank as noted above.
- They are interleaved - just like how all the dupe icons are interleaved for things of the same class (e.g. unit, or worker action).

So the short of it is that dragging a tech in from "unassigned" adds 3 xml lines instead of 1, and one extra image, and the extra image never goes away. And upon loading, techs get another extra image, I'm guessing either because they are in some sense loaded twice or because the third XML line only translates to a third image under some conditions and not others.

One last test: applying the xml I pasted above works just fine. So the brokenness appears to be limited to the initial db copy and the drag and drop from unassigned, I guess.

Yup, that's bizarre. I think I'll give up on trying to use it for now, try new versions as you post them, and let you know if it starts working. Good luck. :)
 
Decimatus did you get the latest version I put up last night :S that ecology problem in particular was confirmed fixed my end, when you load it completely deletes the pipes and recreates them in the version I put up there before bed. It's got same version number.

I am currently using the latest version after I reloaded, and this is the version I made the screenshot with.

As soon as I finish the last text update I am going to reload it again.


I have another text related request. :)

Can you make it so that the tech help text updates with whatever unit, building, etc we add to it? So if we add a Casino, it automatically fills the help box with the fact that the tech lets you build casinos and that casinos increase gold generation.

I guess that could be pretty open ended, but it sure would save some time. :)

Even if it just updates the help text with building/unit names it would be nice.
 
Ehhhhh? ;)

How do you close it btw? :S there's no X button on it.

I mouse over it on the task bar and both windows popup with Xs.
 

Attachments

  • splashclose.png
    splashclose.png
    52.9 KB · Views: 265
Thing that confuses me, Decimatus, is in the version I uploaded last night, whenever you do a load it completely deletes all the pipes and remakes them when loading finishes. That problem is caused by one of the points of the tech not moving when the tech is displaced by the XML GridX / GridY, so considering it's creating them all fresh when they're all there it should work just as well as the normal tech tree.

i.e. the problem still being there like that with Atomic etc is impossible.

I can only think I messed up the upload or you messed up the download somehow.
 
Top Bottom