Hairlock - dev pic

Let’s face it, Good Old Fashioned AI was practically (if unintentionally) invented for making games. Why? Because it works well with clean, clearcut data sets. So instead of lamenting that the lab methods only work with ‘block-worlds’, take notice and realize game worlds are all ‘block-worlds’. Or shall we?

I should be elated I suppose. I wouldn’t be considering implementing a general purpose solver unless I actually had a use in mind, and I if I do, then I’m in for fun and the weather, since I get to do the kind of programming I like best – as if coding a game wasn’t hard work, hard fun enough.

A conversation

Hyde: Your objects and functions. All of this lacks structure.

Jekyll: It’s because I want to address a few more practical problems before normalizing the structure.

Hyde: Well, I think it’s time. Actually, aren’t you getting tired of reusing the same recipes over and over?

Jekyll: We’ve been through this before. Sometimes applying the same recipe over and over is better than attempting to normalize everything, only to realize that we weren’t applying quite the same recipe over and over.

Hyde: Just a simple heuristic solver would breeze over the tedious steps you take in programming your game logic. Plus you could subtly vary the solver’s behavior to emulate agents with various degrees of intelligence and contrasting personas.

Jekyll: Specifically what can a problem solver do, other than add more mess to the ambient mess?

Hyde: Come to reason. Our problem solver will solve our problems.

Jekyll: Can I trust you?

Hyde: No, but you have to.

Jekyll: How about performance. Won’t this ruin performance?

Hyde: Probably not. Once you’ve objectified search steps, you’ll find it easy to stagger processing. Besides the solver load is independent from  the rendering/animation load.

Jekyll: Back to the original point, why take excuse of the lack of structure to suggest introducing a problem solver?

Hyde: Elementary. Solvers don’t look at individual steps. Good solvers heuristically chain steps without consideration for what each individual step does. Ergo, programming-wise writing a solver will force your game code into normalized structures.

Jekyll: Sounds Ominous.

A Piece of Cake

Chocolate isn’t enough. The world is not enough. I’ve been wondering all week why my girlfriend has been babbling about how she’d been thinking of ordering a cake, and how it would be great to have a cake done to spec. Even asking me if I’d like mint chocolate. I don’t really think mint and chocolate are such great pals.

Either way. Enjoy the cake – or the picture at least. See you in the app store.