On Clarity and Beauty

I noted today how much I like programming - especially when I can try out new stuff. Not necessarily thematically new stuff (it’s not like I haven’t programmed a score manager before), but when I can do it in a stylistically new way. In this case, I tried to do it using dependency injection, something I stumbled over while trying to learn Angular.js – and then subsequently on the Unity blog.

Yes, I will absolutely obsess over these things.

I noted today how much I like programming - especially when I can try out new stuff. Not necessarily thematically new stuff (it’s not like I haven’t programmed a score manager before), but when I can do it in a stylistically new way. In this case, I tried to do it using dependency injection, something I stumbled over while trying to learn Angular.js – and then subsequently on the Unity blog. Yes, I will absolutely obsess over these things. I will read rather dry texts about the merits and problems of a specific pattern, and then meditate over it, as Dragica once so nicely put it. I will then try to use these ideas, immediately, on my next task. Usually failing, at first. I will know myself that it isn’t perfect yet, that it is impure, hobbled and flawed. So I will rewrite it until it is where I want it. I will rewrite other parts of my code in order to conform to that newly found pattern. (Sometimes, it will make thinks a lot more complicated. Then I’ll have to scrap those changes again.) I like it when code becomes clean and structured, when each class is nicely encapsulated in itself. I love it when I can create order from chaos, when I can combine tiny little machines in order to let them make something bigger and way more complex. That desire for stylistic purity, that poetic grace of code regularly means that I have to rewrite code that I’ve just written few days before. Some details were not yet perfect, some ideas not properly formed out yet, the intricacies of a specific pattern not yet completely understood. I will do it anyway. What is curious, though, is the fact that something I considered lost seems to have returned by way of writing code. 15 years ago, I wanted to become an author. I knew back then that becoming an author meant writing, and then editing, rewriting again and again. These days, I hardly ever write, fiction or otherwise. But still, I write, and then I edit, and rewrite again and again – until my code has the most clear, concise, pure form. What helped me then will help me now. What fascinated me then keeps on fascinating me.

The Art of Modern Games

Images have always been used to transport ideology, and it isn’t that different in games.

Case in point, because I just recently stumbled over concept art for Modern Combat 5. I don’t play these games. But what the concept art, though technically brilliant, tells you about the mindset of the developers behind the game, is quite … interesting.

Have a look here, and then observe a few things, especially regarding the character design:

Review: Unity 2D Game Development by Dave Calabrese

[Disclaimer: I have been asked by Packt Publishing to review this book. I received a free e-book copy of the book as compensation.]

Unity 3D has always, despite its name, been used for 2D game development. Unity Technologies have realised that and have recently released an update to their game engine with better support for 2D game development. Obviously, it couldn’t take long until the first books on the topic were released.

[Disclaimer: I have been asked by Packt Publishing to review this book. I received a free e-book copy of the book as compensation.] Unity 3D has always, despite its name, been used for 2D game development. Unity Technologies have realised that and have recently released an update to their game engine with better support for 2D game development. Obviously, it couldn’t take long until the first books on the topic were released. Written in a very conversational tone, Unity 2D Game Development by Dave Calabrese is best suited for people that downloaded Unity and played around with it, but then never got any further. It is a longer tutorial, and it can help future game designers in taking their first steps within Unity and a 2D environment. Unity 2D Game Development offers good advice and gives an introduction into commonly used programming patterns, such as events-based design and finite state machines; as well as an overview on how it is possible to create complex behaviours by combining basic scripts together with cleverly placed colliders. The book does, however, occasionally sit in a somewhat uncomfortable spot. At times it does not seem to be able to decide on whether it actually requires previous knowledge of Unity or not. While some steps are being explained in painstaking detail, others are being glossed over. As such, I’d recommend this book mostly for people that took their first steps in Unity, already worked through a few tutorials to learn the basic workflow, and now want to know more about creating 2D games in Unity.

Automatic Quality Adaption for Unity3D

While most gamers enjoy having as many options as possible to fine-tune the look and performance of the games they play, this is not always possible or advisable to do.

Especially in therapy games, where games are on one hand used by non-hardcore gamers that are oblivious to those possibilities and on the other hand are likely to be played on systems that have not been built to be used as powerful gaming machines, another solution is needed.

The following MonoBehaviour can easily be added to a project and adapts the quality of a game automatically in order to provide smooth frame rates.

Simple Version Numbering in Unity3D

Keeping track of different builds of (Unity) games can occasionally be convoluted, especially if you’re in a workflow where you also have to provide installers with your builds. With different testers potentially testing different versions, it’s easy to lose track what bug is fixed in what version or build.

Luckily, Unity3D is based on Mono (.NET), and therefore the problem can be solved by simply dropping in a new MonoBehaviour. Read on for how it works.

Keeping track of different builds of (Unity) games can occasionally be convoluted, especially if you’re in a workflow where you also have to provide installers with your builds. With different testers potentially testing different versions, it’s easy to lose track what bug is fixed in what version or build. Luckily, Unity3D is based on Mono (.NET), and therefore the problem can be solved by simply dropping in a new MonoBehaviour. Read on for how it works. The following script uses the assembly version property to keep track of the version number. It has the format of major.minor.build.revision. The first two numbers can be set by yourself, the following two are set during build time (but could also be set manually, if you wish so). The build number is increased every day, the revision number every second (and resets once a day). And just like this, your different builds will get a new version number every day, without you having to lift a finger. The script is set up to show the version number in the first 20 seconds the game is playing and emit the version number in the log file, so your testers can give you feedback which version they tested, but of course you could adapt that to your own needs. Additional Hints Depending in which folder in your Unity project you place this file, either the CSharp or CSharp-Firstpass assembly will get the version number you define here. This version number will also be set as the built assembly’s version number. If you are using an additional tool that creates an installer for your game, you could set up that tool to read the version of that DLL in order to set the version number of your complete project.

The Virtue of Limitations: Journey of a Roach and Drei

If you care about Swiss game design, then you have some serious playing to do. In the last few weeks two games have been released that couldn’t be more different. On second glance however, it becomes apparent that they share the same qualities.

These games are Journey of a Roach by Koboldgames and Drei by Etter Studios.

If you care about Swiss game design, then you have some serious playing to do. In the last few weeks two games have been released that couldn’t be more different. On second glance however, it becomes apparent that they share the same qualities. These games are Journey of a Roach by Koboldgames and Drei by Etter Studios. In one game, you control a cockroach traversing underground tunnels in search for his friend. In the other, you stack building blocks onto each other to build a tower. This might not sound interesting at first. But both games have this one idea that manages to elevate the initial idea to something more. Cockroaches can walk on walls, right? So can you in Journey of a Roach, opening up a different way to look at puzzles, both for the designers at Koboldgames as well as the player, who has to start thinking with port– sorry, with ceilings. The classic adventure game is set in a post-nuclear world where no humans survived. The two eponymous roaches live underground and have to deal with their neighbours, namely spider moms, drunken rats and totalitarian ants. Combining the bleak world of Fallout with the charm of a children’s book isn’t the most obvious thing to do, but Koboldgames pull it off with ease and aplomb. Drei, an iPad game, on the other hand adds what usually happens in public sandboxes as well: Other people start joining you in building the tower, which turns the whole game a lot more unpredictable and erratic, but likely also more fun. Drei is part of a new breed of multiplayer games that has been spearheaded by thatgamecompany’s Journey: without any visible “multiplayer” interface, players are automatically connected in the background while playing, shifting in and out of other people’s games, collaborating and sharing a good time for a short while, without knowing who’s behind the glass facade of their TV or iPad. Communication is limited to a few words, everything else has to be told through movement and concrete action. So, what’s especially Swiss about those games? I’d say it’s the fact that both games take limitations and turn them into virtues. Without a budget to pay for big translation or voice work, Koboldgames decided to tell the story without using any text or speech, going for images and talk-like sounds. Not only is this incredibly charming, but it also opens up the game for a larger audience – both age-wise (small kids) as well as globally: the game is available in 19 languages, since the few remaining texts visible in the menu were easily translated. Drei does a somewhat similar thing when it comes to language. Building towers, a somewhat multilingual affair since the age of myths and legends, requires some sort of communication. Drei offers this by giving players a limited vocabulary translated into 18 different languages to choose from in order to issue commands and shouts. These words will show on the screen of other players translated to their language, allowing them to understand each other across language barriers. Not only does Drei circumvent the inconvenient keyboard of the iPad, but it limits griefing and harassing by restricting the player’s vocabulary. Stylistically, both studios were aware of the fact that they don’t have the (wo)manpower to deliver high-definition realistic graphics as AAA studios can. Instead they sat down and developed their own visual language. Koboldgames went with an elaborate, comic-like style that complements the fantastic story, while Etter Studio went with an elegant, minimal, flat look that resembles more vector art than 3D realtime rendering. It clearly works for both of them, giving them a unique look – not a bad thing when you have to compete against other games on Steam or the iTunes App Store. It is no surprise that both of these games actually got awarded at this year’s Call for Projects. They are fine examples of what the Swiss game industry is able to produce and where it could excel. The best thing of course is the fact that they did not only have big plans and great ideas – but the fact that they managed to deliver. You can find Drei by Etter Studio in the iTunes App Store or try out a free, limited version right in your browser. Journey of a Roach by Koboldgames is available on Steam or in a boxed version, if you prefer to have something to put on your bookshelf, for both Mac and PC.

How To Improve Blender Cycles Renders In One Easy Step and Save Time

Experiments in Blender, using the cell fracture plug-in.Shattered

(Okay, I lied, there are slightly more steps involved.)

The Cold Equations

I regularly listen to short stories on podcasts, among them also The Drabblecast, which recently had a somewhat longer story: The Cold Equations.

Normally, these stories don’t elicit a very strong reaction from me, but this time, it did. (From now on: spoiler warning, in case you want to listen to the story first. Do it, it’s worth it.)

I regularly listen to short stories on podcasts, among them also The Drabblecast, which recently had a somewhat longer story: The Cold Equations. Normally, these stories don’t elicit a very strong reaction from me, but this time, it did. (From now on: spoiler warning, in case you want to listen to the story first. Do it, it’s worth it.) There were two things that I realised while listening to the story. For one thing, the story was not exactly suited to be produced as a radio play. Or rather: the idea of the story would have been well suited: one room, two people talking about what it means to reach for the outer corner of the known universe. Perfect. In this case, however, the source was very literary. The dialogue sounded stilted on one hand, on the other hand the same dialogue was interspersed with the narrator’s philosophical musings that mostly spelled out the story’s main point, repeated over and over again, making it painfully clear what the author was aiming for. The second thing I noticed was that during my listening, I was quite sure the author would go with a happy ending – no way he would jettison a young girl into space, right? The story was set up for some deus-ex-machina-like contraption that would turn the whole thing into roses and merriment. Of course, this ending would go against everything the story set up so far: that physics are physics, that action begets reaction without fail. My surprise was all the bigger when I finally realised that the girl would be jettisoned. It did deliver the necessary, final punch to the story, that made it stand out in my eyes. It is also a testament to how much a good editor can actually improve a story. Apparently, the first draft of the story featured the happy ending the whole story seems to aim for, and only through the intervention of the editor the author came to the only logical ending … As such, it is classic science fiction: the “future” as a tool to meditate about some human condition. The story for me is not so much about the hard rules of physics, but to a larger degree about de-humanised people that are so bound by rules that they forget their humanity in order to comply with those rules. It’s not the equations that are cold. Humans are.

6 Things that Therapy Games can learn from Facebook Games

When rolling two dice, the probabilities of getting a:  
7 = 6/36 or 16.7%,
6 or 8 = 5/36,  or 13.9%, 
5 or 9 = 4/36,  or  11.1%,
4 or 10 = 3/36 or  8.3%,
3 or 11 = 2/36 or  5.6%,
2 or 12 = 1/36 or 2.8%.Come On 7!!!

While I have posted several in-depth analyses of Facebook games during the last half year, an actual conclusion was still missing. Even though I abandoned my master’s thesis for now, I’d like to add a conclusion to the work already done. Therefore, I present to you after the jump: Things that therapy games can learn from Facebook games.

1. Have clear, visible goals A good therapy game should have goals the player can work towards. The ultimate goal is the patient’s physical recovery, but especially for children, this is too far out, too abstract. Instead, the game should provide goals on several levels: as a game as a whole, within a therapy session and finally from moment to moment. Additionally, these goals need to be clearly communicated, and their progress visible at all time; as can be seen in FarmVille 2 with their list of quests that are visible all the time, or Candy Crush Saga, which uses counters and a progress bar to show how many moves the player has left and how many points they made. Given the fact that actual therapy progress happens gradually over a long period of time and is often hard to perceive, it is important to give patients a sense of progress in other areas. Games can be that area. 2. Hand out rewards Facebook games are tiny little rewarding machines: they hand out rewards – in form of items, power-ups or just audio-visual spectacle whenever the player does something good. Therapy games have a tendency to skip this part. During play, they merely acknowledge success with a beep, while at the end they usually just jump cut from whatever the player happened to be doing to a stats-filled screen without so much of a warning. Facebook games however go overboard celebrating the player’s achievements. Every successful action is rewarded with a sound and some particle effect. The end of a game is marked with more fireworks, with more sounds, with voices cheering and laughing and cartoon characters celebrating. The player is showered with gifts: bonus points, achievements, medals and power-ups. They might be just virtual goods, but the can make you happy anyway. Given the fact that the ultimate reward of therapy is usually far off in the distance, games can provide small stepping stones of feeling successful and being rewarded for the labour in between.  3. Structure gameplay into distinct bursts of activity Facebook games not only reward players in sometimes a somewhat excessive manner, but also very often. This is based on the fact that play sessions are kept very short: the player needs to have the feeling that they can abandon the game at any time. Therefore, gameplay is presented in distinct rounds that only take a few minutes to play and are rewarded right afterward. It is the player’s decision to close the browser window at this point or continue playing. This principle of having short rounds should also be applied to therapy games, and not just because actions can be rewarded more often. By structuring the difficult tasks into short bursts of high intensity, and then immediately rewarding the player with some spectacle, the patient is allowed to rest for a moment and gain strength for the next burst of activity. Given the fact that therapy games are in most cases physically taxing for the patient, such a pacing provides a training pattern that resembles high intensity interval training, challenging the patient, but still giving them enough time to recover. Having to pay attention for sustained periods of time is incredibly tiring, and therapy games should take this into account. 4. Make patients want to return to your game When there is something most Facebook games excel at, it must be their mechanics to get players to return to the game over and over. Of course, therapy games are not dependent on players returning – the games are paid for by the clinic, and it is usually the therapists who decide which games the patient will play during a therapy session. Still, it is likely beneficial to therapy if the patient wants to play a game over and over, and through that, improve their skills. Therapy games could take advantage of some of the mechanics employed by Facebook games in order to get players to return to their game. I. e. by letting players earn objects during gameplay, which then take time to gestate in order to have their full potential. Through this, the player is given a reason to return to the game. These objects do not even necessarily need to have an influence on gameplay. They can just as well be objects that change the environment the game plays in, giving the player an opportunity to explore the game over and over again, while in the same time hinting at the progress the player is making in therapy. 5. Create a social context Gifting, a common element in Facebook games, can be used in a similar vein to make patients return to already played games. It can be used especially in clinical settings, where therapy devices are usually used by several patients in turn. Giving players the possibility to leave gifts for patients that come after them has the potential to improve the attitude and mood of the following patient (who does not like gifts?) and may give the patient a feeling that they are not completely alone with their affliction, as other patients do have to train as well. Therapy games can be a framework for random acts of kindness. 6. Add a random touch The last point, as I already pointed out in an earlier article, is the use of some gambling-like elements. These elements can easily add new content to explore, adding replay value to a game that, through necessity, has to be played repeatedly. This becomes even more important when a therapy game exclusively relies on repetitive movement. Just remember the one-armed bandit, which requires the player to make exactly one motion repeatedly; yet the game still keeps the player captivated, purely through its chance-based game mechanic. While there is a growing discussion concerning the ethics of using gambling-like structures in Facebook games (usually in order to monetize them, see Rose 2013 for an in-depth discussion of the topic and its ramifications), I feel that these can be used in therapy games – at least in moderation. The addictive qualities of these game mechanics should be offset on one hand by the fact that patients need to work against their affliction, which is usually exhausting work for them, and on the other hand that therapy games are, at least in a clinical setting, supervised when played. As such, therapists can take actions as soon as they feel that it gets out of hand. In summary, it seems clear to me that therapy games can learn a lot from Facebook games. After all, Facebook games are created with mass appeal in mind, and, what’s even more important, target directly middle-aged adults (and not just, as people might assume, children and teenagers). Just because they are adults does not mean they don’t like playing games. As a matter of fact, today’s slightly younger grown-ups already belong to a generation that were raised on a steadily growing diet of video and computer games, and they keep playing to this day. As such, they know “how games work” and will expect nothing else from therapy games. By taking hints from Facebook games, therapy games can easily become better games, and through that, become better therapy games. Bibliography Manz, K. (2012, June 6). 7 Game Design Rules that Apply to Therapy Games (as well). xeophin. net. Retrieved August 5, 2013, from http://xeophin.net/en/blog/2012/06/06/7-game-design-rules-apply-therapy-games-well Rose, M. (2013, July 9). Chasing the Whale: Examining the ethics of free-to-play games. gamasutra. com. Retrieved August 6, 2013, from http://www. gamasutra.com/view/feature/195806/Chasing_the_Whale_Examining_the_ethics_of_freetoplay_games.php

Where to go from here

As I consider my options when it comes to getting a new job (and more importantly: what kind of job), I’m more and more drawn to the idea of becoming a transmedia storyteller. Not the most obvious thing in Switzerland, I guess – but I might have a shot.

So-Called Social Games

[The following text is part of my upcoming master’s thesis on the use of game mechanics in therapy games for children. This is just a rough first draft, and I gladly welcome all critique and suggestions – be it on a content level or regarding my use of language.

After having analysed some of the most-played Facebook games in previous instalments of this series (Candy Crush Saga, FarmVille 2, Puzzle Bobble Clones, Diamond Dash and Pet Rescue Saga), this final chapter looks at what is so “social” about these “social games” – if at all.]

It is a common assumption that games that are part of the Facebook platform are inherently more “social” than other games, since that platform offers the possibility to developers to tap into the social graph.

Pet Rescue Saga: Mix and Match

[The following text is part of my upcoming master’s thesis on the use of game mechanics in therapy games for children. As part of my master’s thesis I am analysing already existing games that are commonly known to be addictive. A lot of those games are Facebook games.]

Pet Rescue Saga by King is probably one of the best examples of how certain game mechanics are not unique to a game, but can be adapted to other games. Pet Rescue Saga is basically a mixture between Diamond Dash and Candy Crush Saga, yet works surprisingly well.

Puzzle Bobble Clones: Bubble your bubbles tobubble!

[The following text is part of my upcoming master’s thesis on the use of game mechanics in therapy games for children. This is just a rough first draft, and I gladly welcome all critique and suggestions – be it on a content level or regarding my use of language. As part of my master’s thesis I am analysing already existing games that are commonly known to be addictive. A lot of those games are Facebook games.]

Most Puzzle Bobble clones play quite similarly, with their graphics being their most distinguishing feature. The outliers are Bubble Island, which adds the element of time pressure into the mix, and Woobies, which comes from another era of online games, and lacks most of the additional game mechanics the Facebook games use. This core mechanic can be expanded upon, allowing the Facebook game studios to find ways to monetize the game. The game is easy to pick up and is equally well playable with any input device, be it a mouse or a track pad, making it an obvious candidate for a casual game. It is deceptively simple to play: aim, shoot, aim, shoot, with hardly anything that takes the player out of the flow.

Pages

Subscribe to xeophin.net/worlds RSS