i told you... because it's more organized.
How is lines connecting to other lines at seemingly random places "more organized"? (You didn't explain how / why they are connected where they are...) Or, if you mean that it just looks nicer / opener / less complicated, that's more a feature of the example than the system (see below).
actually i've come to the conclusing, it's better to use as few links as possible, because if you link too much you will force the player to research everything. we should allow the player more freedom in the decision which way he chooses to go in the tree.
I didn't mean that a real tree would have more links between a small number of techs so you'd have to research everything. I meant that a real tree would have many more techs, all spread out, and thus more links regardless of how many links there are per tech.
I don't expect a real tree to be so tightly linked as my mockup. The mockup is just to show the various features I proposed, which was easiest to do in a smaller space with lots of links all over the place. Having lots of optional redundant paths is the main reason I want the ability to expand / collapse the tree... so that you can hide the branches you don't care about.
It looks like you've got expand/collapse buttons on your mockup, which are all open... Is that what they're for, and if so, how do they work?
if we don't combine them the tree will spead more and more. we could prevent this with just removing one connection. but then again, you would force the player in one direction...
We could also consider having an "or" connection, so if you research one or the other, you can get the next theory... or make the next theory dependent on a big age-advanccement theory from the "Learning" category, rather than theories from within the category.
But more likely, we can make theories dependent on previous theories, rather than applications. The number of theories would be quite small compared to applications, so researching all theories isn't a big waste of time, and there's plenty of choice of which applications branches to skip.
it would be nice if we could come up with a xml representation of the techtree to minimize the coding effort instead of letting the code build the tree.
That was what I had hoped... to generate it algorithmically on the fly. It'd probably be easier to modify the tree if each tech is just represented by its prerequisites, rather than trying to code the whole tree structure into XML, which probably won't work at all since we can have multiple inheiritance...
BreadMan wrote:@ Geoff's latest diagram
I don't think its so much that people don't understand the expand / collapse idea, I think its just the way you're showing it. Just having a little (+) on the line with nothing else around it isn't very intuitive, and hard to find in that big web of things.
Is there a better way to represent a collapsed section of the tree? The (+) could be to the left of the root tech, and the various lines could connect directly to the tech box, rather than the (+), more like in Windows directory explorers...
I had to look at your two diagrams pretty hard before I could find what was different between the two.
I find this rather hard to accept... there's a big box added right in the middle, and I referred to the purple lines of the first diagram in the explanitory text. You say you understand expanding / collapsing, so this should be clear. I could have made a basic closed / open tree illustration, but that wouldn't serve to illustrate all the details I was suggesting. Also, keep in mind that the expanding / collapsing of a tree would be in response to a player's clicking on a + or - icon, and hopefully animated, so it would be clear where a change has occurred and why. The player could open and close the branch repeatedly if it's difficult to see (which I still don't think it is, aside from the rather busy example tree I've used, which isn't the fault of the system itself)
Needs to be more indication that something will happen by clicking there, like an icon next to it or something.
What more obvious of an icon do you need than a circle with a + or - in it? It would presumably have some mouseover highlighting feedback, if that helps... maybe it'd change into a => arrow to indicate the tree would expand to the right when you click?
Also I think just the way you've got everything arranged is confusing, hard to see any natural progression of things, kinda scattered. Changing the lines to arrows would help immenseley.
I have to agree with pd that it'd be much clearer in a real system with all the researched / available GUI information that's not shown in these basic mockups. That said, I can see some benefit to putting arrows or directed animation (like move orders on the galaxy map), in addition to highlighting and other graphical hints as to what's going on. There's no real reason not to... in the real GUI... but these mockups aren't meant to be final, so it's not necessary to put in all that stuff at this stage, which discussing more fundamental issues.
And also, while many of these diagrams look good, they're still all just small parts of what is probably going to be a huge tech tree. While they may work on a smaller scale, they're gonna get a lot more confusing when you have to deal with 40x the info
40x is a rather low estimate, I'd think, given all the applications and refinements and such. But this is exactly why we need an expandable / collapsable tree... to hide all the extra info that doesn't matter anymore, or info that is not immediately relevant because it can't be researched for some time.