Hissy Fit Recovery

Ok, I think I'm better now. As usual, several hours away from the problem, a good night's sleep, and explaining the problem to my charitable wife, all seem to have calmed the feckless rage from yesterday. I was able to think of one or two more things to try, and we're getting some traction again:

IMAGE(http://bluebottlegames.com/img/screenshots/screenshot-2015-10-06.jpg) Last time I said this, hubris caught up to me.

Basically, since the StableXUI library seems to prefer UIs done in XML, I decided to revisit making the UI in XML. I originally gave up on it when I ran into trouble getting references to each UI widget at runtime. I'd load up one blob with some text from a game object, and upon trying to do the same with the next blob+game object, ran into name collision crashes.

Upon further investigation, however, I noticed some documentation stating that I could edit the widgets' ID after it is loaded. And if I apply some algorithmic naming convention to things, I can make each blob's widgets names both universally unique and also easy to figure out/point to. (Essentially, the original widget ID plus a unique number for that blob.)

Once I got that working, I went back and recreated my widget blobs in XML. And as progress was made, I started adding data to the fields, layout parameters, and color schemes. I ran into some trouble using the StableXUI drop-downs, since they aren't really designed for dozens or more options (runs out of screen space). So I borrowed my hacky scrolling drop-down from the NEO Scavenger Editor project.

Finally, I arrived at the main challenge: figuring out how to display the relationship between in-game interactions visually.

The screenshot above shows the beginnings of an idea at work. A drop-down at the top left allows the user to select which interaction they want to inspect/edit. I've chosen "SeekAltruism" in this case, and it will point to both "SeekAltruismAllow" and "SeekAltruismDeny" replies, seen on the right. I want to draw arrows kinda like the blue one on the left running from origin to destination for each pair. And probably continue the chain of interactions in a branching way until they run out of replies.

This way, I'm hoping I can visually make sense of how the interaction chains look. Where it needs more variety, where circular loops might be, etc. That'll be tomorrow. Tonight, a beer to reward myself. And maybe some humble pie for yesterday's impatience :)