After a long and bumpy road, with lots of joy, tears, sweat, hard on the body and soul changes and many many challenges, I can say Garden Planet is finished (in several perceived meanings of the word).
The first game that combines user created music as an input device and simulated emotion is finally complete. I am really glad it is finished and also glad that the core gameplay of the game is finished and working as well. Many features I had in my initial design and what we had in the prototype we unfortunately had to cut out because the project timeline was reduced by one year. But nevertheless I am pleased with the outcome and what the team was able to do in what was essentially just two months of development after a whole redesign was asked for (for reasons I really don’t understand short of someone having a bad case of changeitis, again).
But lets dive into some more specifics on what Garden Planet is, what it not is, what it was supposed to be, what I think we did right, and what we did horribly wrong. And I shall try my best not to point fingers, except at myself, for better or for worse. I hope some of the findings, and I want to give credit to the rest of the team for this as well, again for better or for worse, will prove useful to whoever actually thinks I have enough “cred” to be listened to. In any case, I have learned some very valuable lessons, either for the first time, or again because I forgot them. I am human after all, be nice….please.
What on earth is “Garden Planet “? (I will be lazy from now on and just type GP, in the spirit of Singaporeans who just can’t go without a day of using abbreviations like they were one cent coins waiting to be thrown at a crowd of beggars over in JB.(If you wonder what JB is, then you know how I feel every day at the office. The good thing is, I always get a nice “AHA” moment on a daily basis. Makes you at least feel like you learning something new.) But back to the point at hand…)
Essentially GP is a tech demo (if you are very gallant you might call it a sandbox game…) that takes sounds as an input, mashes it through it’s fancy probability algorithm, maps it out, and gives you some colorful output. This might sound very harsh when I talk about the game that I in fact designed, maybe it sounds even degrading, *big* but, I can without a doubt say I am proud of what we have done. Why? GP now is not the game I set out to make, and through “changeitis” was forced to alter it into it’s current form. And even despite that fact, we accomplished something amazing in the short time left for this endeavor by essentially proving a point.
To slow down on the possibly perceived “rant” that I am on, chew on this:
“Garden Planet is the first system to actively simulate emotion through music AND use it in a conversational, interactive way.”
That, I agree, is a damn bold statement.
Let me explain:
GP uses a new kind of input system called M-EDGE (Music-Emotion Driven Game Engine). That one could be considered a bit of a misnomer for the fact that is it not a game engine at all, just a plugin. What is does is analyze audio and tries to categorize it via a probability algorithm into emotional perceptions of the feelings “happy”, “sad” and “angry” or short HaSaA (pronounced for funs’ sake, husaaaahhhh!).
Now you might say (or should in fact say this): “But Simon, this is ridiculous, a computer cannot understand emotion, that’s something humans do! How would a computer know what HaSaA is!?”
Point taken my dear friend, but let me edify you. The first conundrum we face of course is: What is emotion?
“Dear Mr. Dictionary, please give us a sensible reply?”
“Simon, I shall do as you command:”
“Here is thy answer: ‘emotion, noun, an affective state of consciousness in which joy, sorrow, fear, hate, or the like, is experienced, as distinguished from cognitive and volitional states of consciousness.’Among certain others…”
“Thanks Mr. Dictionary.”
The words we are especially keen on are “state” and “consciousness”. Make that into “state consciousness” and remember what a state is. Now I ask you what is a computer? Essentially a “state machine”. If you don’t agree I suggest you learn how a computer chip really works and come back to argue (In case you do, be reminded I will purposely ignore this discussion if it has the smallest hint of ending in a flame war, savvy?).
Now that we have this revelation, it means we can in fact program a computer to have an emotional state. I am not saying the computer has a profound and deep understanding the way we do, but like any other state machine, we can simulate this state very easily. The tricky part comes when we want to show this state to the player.
Problem #2: Emotion is subjective and personal. How do you show, unmistakably, your feelings to another person? Without being ambiguous?
“Simon, go an get a computer to understand that one! HA!”
You thought you got me there, but wait, we don’t have to. I didn’t tell you all there is to know about M-EDGE yet.
M-EDGE doesn’t just analyze the audio but it also categorizes it as I explained earlier. This categorisation happens via a probability calculation that requires one of two things to map what it recorded to the correct emotion. The first is hard data that Dr. Roberto Dillon, the inventor of M-EDGE generated from research data collected that provides a stereotypical value range how people in general feel about certain tunes. Those values are matched to correspond to the emotion flag output and when now M-EDGE detects value that match in the probability mapping to thos stereotypical values you have a detected emotion. The second one is by letting the player provide the hard data himself by configuring the system to those target values. This can make the system more taylored to the the users own taste and perception of emotion in music.
I want to remind that this is not simple pattern matching. The system can very well be configured with Led Zeppelins’ Immigrant Song for happy and when the user plays Deep Purples’ Space Trucking it will be detected as happy. The two songs have similarities enough in the way they are played, even when we ignore the actual notes, that M-EDGE will detect them similarly.
Now as for how you in fact show what M-EDGE detected is really up to the design team.
For Garden Planet I used two ways. One for immediate feedback so the player can see what M-EDGE is doing in realtime and secondly buffer system that looks at changes of M-EDGE over time.
The first just shows themed models popping up and dissapearing on a rotating cylinder shape that represent the current emotion detected. The second one is a bit more complicated. Over time I am basically pouring in and out values of three buckets that represent the basic emotions happy, sad and angry. The values I put/remove are based on the probability calculated by M-EDGE. This bucket system will then depending on how full or empty the buckets are control the spawn and change rate of emotion themed assets on the planet that we try to influence with our music. Once you play it you will see very quickly how it essentially works.
This are the absolute core features of GP and how they tie in with M-EDGE. It is also the main way how games should use the M-EDGE engine.
It is really difficult to design games with it but just based on those core features many a good game can be made with M-EDGE.
Recent Comments