I actually really like that you have to spend a resource to learn new information and that the score is dependent on luck. I.e. you use limited resources to optimize the gamble you are making. That seems like a very good description of how life works, only, it’s all transparent and quantified in your game.
Some suggestions:
In the tutorial, why do I first get to read a description of a picture and then I’m presented with the picture? Obviously, it should be the other way around.
You should be able to progress the text by mouse.
It should be easier to distinguish new text from old. I think in visual novels, the text box never “scrolls”. If the new text doesn’t fit into the text box, or to make a new paragraph, the text box is cleared. You could make separate textboxes for the current message and the history.
The confusing notation is a real distraction and zaps away a lot of the potential fun. Understanding the notation actually seems more interesting than winning the game, but I have too little information to understand it, which leads to frustration. Why are there two big boxes with normal nodes? Why do normal nodes have all those boxes instead of simple bar that shows the probability? Why do bayes-nodes have all those rows instead of just two bars? What are there grey bars? How do ‘and’ and ‘or’ nodes work? I would think that one input corresponds to the vertical division and one input to the horizontal division. It should be more obvious which node is which (by having the input into that side of the box). The connections of nodes did not have arrows. If I understood the game correctly, that would help distinguish inputs from outputs.
The effect of clicking on one node shouldn’t be instant. At first, it should probably go step by step: You click on a node and reveal it’s truth-value (some text appears explaining which node changed and why). Press a key → the next affected node gets updated. Until affected nodes are updated. Later you don’t have to click, there is a small pause between each change. That way you could see the effect of measuring a node and understand why the effect was the way it was, instead of … trying to work that information out for yourself with only being able to see the aftermath.
You should make it more linear. Put the tutorial and the main game into one. I don’t see the use of this decision between introductory and intermediate psychology.
Have the player start out with much simpler networks and infinite energy.
Introduce new types of nodes during the game, not all at once in the tutorial. Every time you introduce something new, go back to simple networks with unlimited energy.
Of those, explaining or simplifying the notation seems the most important to me.
Thanks! I agree with all of your points and had considered implementing many of them myself: unfortunately, while working on this project I learned that I hate UI programming, and finally got to the point where I just wanted to put out a not-too-totally-horrible prototype and be done with it. :(
The source code was written to employ a bit of an MVC architecture, with the intention of making it easier for other people to implement a better UI afterwards… but in retrospect just rewriting the whole thing under a better platform than Java might be the best approach, if anyone wants to do that.
I actually really like that you have to spend a resource to learn new information and that the score is dependent on luck. I.e. you use limited resources to optimize the gamble you are making. That seems like a very good description of how life works, only, it’s all transparent and quantified in your game.
Some suggestions:
In the tutorial, why do I first get to read a description of a picture and then I’m presented with the picture? Obviously, it should be the other way around.
You should be able to progress the text by mouse.
It should be easier to distinguish new text from old. I think in visual novels, the text box never “scrolls”. If the new text doesn’t fit into the text box, or to make a new paragraph, the text box is cleared. You could make separate textboxes for the current message and the history.
The confusing notation is a real distraction and zaps away a lot of the potential fun. Understanding the notation actually seems more interesting than winning the game, but I have too little information to understand it, which leads to frustration. Why are there two big boxes with normal nodes? Why do normal nodes have all those boxes instead of simple bar that shows the probability? Why do bayes-nodes have all those rows instead of just two bars? What are there grey bars? How do ‘and’ and ‘or’ nodes work? I would think that one input corresponds to the vertical division and one input to the horizontal division. It should be more obvious which node is which (by having the input into that side of the box). The connections of nodes did not have arrows. If I understood the game correctly, that would help distinguish inputs from outputs.
The effect of clicking on one node shouldn’t be instant. At first, it should probably go step by step: You click on a node and reveal it’s truth-value (some text appears explaining which node changed and why). Press a key → the next affected node gets updated. Until affected nodes are updated. Later you don’t have to click, there is a small pause between each change. That way you could see the effect of measuring a node and understand why the effect was the way it was, instead of … trying to work that information out for yourself with only being able to see the aftermath.
You should make it more linear. Put the tutorial and the main game into one. I don’t see the use of this decision between introductory and intermediate psychology.
Have the player start out with much simpler networks and infinite energy.
Introduce new types of nodes during the game, not all at once in the tutorial. Every time you introduce something new, go back to simple networks with unlimited energy.
Of those, explaining or simplifying the notation seems the most important to me.
Thanks! I agree with all of your points and had considered implementing many of them myself: unfortunately, while working on this project I learned that I hate UI programming, and finally got to the point where I just wanted to put out a not-too-totally-horrible prototype and be done with it. :(
The source code was written to employ a bit of an MVC architecture, with the intention of making it easier for other people to implement a better UI afterwards… but in retrospect just rewriting the whole thing under a better platform than Java might be the best approach, if anyone wants to do that.