Archive for the 'Personal Projects' Category

Dimension: Demo in Development

Dimension

     Two weeks ago I’ve started developing a demo for my game Dimension, a Platformer/Puzzle/RPG I started designing last year, in Unity. For a recent assignment in uni I had to look into something code related that I was unfamiliar with, and since I go through this process everyday I took this opportunity to continue development on my demo. My milestone for this assignment was simple:

  • Learn how to code/effectively implement all trigger types in Unity.

After a few hours the magic was done. To keep it brief I’ll skip the technical insights this time.

Gameplay (for this milestone)

     A secret cave must be opened through the light of a butterfly. In order for the butterfly to illuminate the crystal set in the cave door, the player has to chase the butterfly to the cave entrance.

Dimension_Scrn1

Drunk Driver

Reflecting on Drunk Driver

For my first project in Scratch I chose to emulate some elements from Atari 2600′s Night Driver. The first step to kick off this task was to watch gameplay footage and evaluate its mechanics. How did the game start/end? How did the car move? What peripherals were used to steer the car? What statistics were being recorded (score, speed, etc.)? What visual feedback did the player get in certain scenarios (crashing cars, exceeding road boundaries)? I eyeballed how difficult it would be to recreate certain mechanics and settled on three main aspects I wanted to rebuild:

  • Incoming traffic
  • Generating the road in perspective
  • Translating the steering experience to a PC with its available peripherals

What seemed like a difficult task at first proved to be even more challenging as the project went on: Generating the road in perspective. The reason for this was because the visual assets, in this case merely a collection of six red road markers on the left and right side of the car, had to be repeatedly displayed in a way that a) felt absolutely synchronized to the other side b) effectively simulated the speed of the car c) became larger at an exponential speed as they moved closer to the car in order to create the illusion of perspective. And in addition to that, I wanted to create randomly generated curves. Before even touching any code I sat down and drew out the relationships between the different triggers and variables with pen and paper. I decided on a cosine function to simulate the curved road and an exponential function for increasing the size of the road markers  Feeling confident I had mapped out functioning collections of interrelated code blocks I started implementing them one by one, always running tests to make sure they executed flawlessly. One thing I have noticed in Scratch is that some control blocks either conflict with each other or work according to a certain hierarchy – in what order often felt like it was subject to chance. What struck me later was the question of how to implement random curves in the road. Using cosine to simulate the road significantly increased the fluidity in its animation, however left me wondering how I could possibly create transitions between straight and curved roads. After experimenting for three hours I finally decided to cut that feature out completely and move on (while a thousand voices continued crying out inside me). There would have been no easy way to do it without changing the core code blocks that simulated the road. Having spent hours on fine tuning the variables for the road markers  implementing incoming traffic was an easy task. Most of the code snippets from the roadblocks could be reused for the cars with little tweaks to the variable’s values here and there and added collision detection.

roadmarker

I won’t go into anymore detail on the car and scores as the code is pretty much self explanatory: Plus/Minus operations on variables, display variables, deduct/add points on collisions, etc.

A Short Game Summary

After our short insight into the scripting approach let’s take a look at the gameplay for Drunk Driver. The first thing you might ask yourself is “why the name Drunk Driver? Isn’t that a little inappropriate?”. To be fairly honest I haven’t spent too much time and energy on my search for a meaningful name. The only thought I put into finding a suitable name was “who would drive at night into oncoming traffic?”, and there you have it. Another argument might be that you cannot win this game. It simply ends when you run out of lives. If I really tried to convince you of its name I would in all likeliness argue there is an underlying metaphor to it. ;)

But let us not get into semantics here. As I have mentioned before Drunk Driver does not end by reaching a goal or driving for a certain time. You run out of lives and have your final score at the end. The objective of the game is to steer your car by moving your cursor and dodge oncoming traffic. For every half second the player survives points are added to the total

ddv

score. It is possible to collect health as well however the spawn time is significantly delayed. One thing I had overlooked when writing the code for the cars is that they should not spawn at the same time. This is ultimately the reason why you cannot win this game. And that is all there is to it. If you would like to try out the game for yourself or create your own version from it feel free to head over to the official Scratch website. Constructive feedback is always welcome!

What’s new?

I’m building several games over the next few weeks as I’m looking into C++ and various IDE’s this quarter!

In addition to that work on my main project, Dimension, is well on the way! (Just a few more design iterations until I can publish the first demo)

Dimension

PandaBlocs for iOS

Last Monday I presented my concept for PandaBlocs for the iPhone and iPad at SCAD, as part of my final project for the semester.The game itself is inspired by the original PandaBlocs by Ova Studio, an educational construction game for kids.

Introducing PandaBlocs for iOS at SCAD

A few weeks after our visit to Christophe and Slimane’s studio in Sheung Wan, I tried to figure out a way to translate their game’s inherent element of symbolic play into a videogame.

I took up one of their suggestions to make the panda on the original box-art a part of the game and experimented with the idea (besides, who doesn’t like pandas?!). After three weeks I ended up with a fully developed concept..

PandaBlocs

PandaBlocs concept art

PandaBlocs concept art - Gameplay on the iPhone

..and an awesome game!

Shlorp – iOS/Android game

In late July 2012 I started working on a concept for an iOS/Android game. The idea came up while I was waiting for the MTR (Hong Kong’s railway).

If you have ever visited Hong Kong and got to enjoy a crowded ride on the MTR during rush-hour, you will have noticed at least one thing: Everyone is on their smartphone. Couples sitting next to each other, staring down at their iPads, businessmen leaning against doors, watching movies on their iPhones, students huddling together, watching their friends playing some manga-stuffed hack’n'slash game.What most of the games people played seemed to have in common was the fact that they could be played casually, and were easy to pick up. I mused on that for a while and reflected on my own habits for a bit – “what games do I play on my smartphone?”. To tell the truth I don’t often play games on my smartphone. I just get dizzy after staring at things while my body is in motion. However, when I do play, I usually play something for two to four minutes – Angry Birds for instance.

One week later I came up with a draft for an action/platformer game with a main character named Shlorp. After hastily finishing a first rough, I showed it to a friend at SCAD, Mark Caluguy, hoping he might be interested in joining my project. He agreed, and I’m glad he did – his monster drawings are awesome! The game is in development now (stalled at this point however due to additional workload from other projects) and will most likely be finished early next year! (Perhaps a worthy contender for next year’s IGF!)

Shlorp - early rough

You might be thinking, “so what exactly is the gameplay??”. You’re right, I haven’t told you yet. At this stage however, I don’t want to reveal too much – we’re still tweaking some of the gameplay aspects. What I can tell you at this point: It involves morphing. Really awesome morphing. And fun puzzle games.

Guessing the rules: Minesweeper

Back to the classics! For this particular assignment we were asked to derive the rules for an existing game in three categories: developer, player, and implicit rules. I won’t even try and guess how long that would have taken for a game like Skyrim, instead I used minesweeper.

Minesweeper Rules(.pdf)

Calvin and Hobbes playing Calviniball

The rules of Calvinball

Guessing the game: BF3

Here’s a game summary for BF3 that I’ve created for an assignment. The intention was to pick any game and guess what the original document/thought process might have incorporated. Try guessing what Dice could have intended when they created gameplay for BF3 – it’s fun (seriously!).

Battlefield 3 – Practice GDD (.pdf)

“Get it out of your system” – writing the first pitch document

Grand titles such as Halo, World of Warcraft, Call of Duty, and many more have acclaimed much fame in this day and age. Even my 73 year old grandfather has heard of a few. Naturally, anyone who decides to turn their passion for games into a professional career certainly has a few games on an equally grand scale in mind. Why not?

When I started entering the magic realm that is professional game design, things turned out to be quite different. Who would have thought that you don’t start at the top of the mountain, eh? Two weeks ago our professor gave us an assignment: Write a pitch document for a game. Curiously, he knew of his passionate students’ tendency to think BIG (and I really mean BIG). But never mind the funding, the manpower, and the time our great games would have required to build. After all, it was an exercise, a chance to get it “out of our system”. As an avid reader of fantasy books, including Trudi Canavan’s The Black Magician and The Malazan Book, and a loyal consumer of decision packed games such as Mass Effect, I was quickly inspired to come up with my own 25 million dollar-budget game. Staying modest.

And that’s what led to my very first (brilliantly crafted) pitch document:

Isolda’s Tale (GDD) (.pdf)

Keep in mind this was my first structured, written out idea, so there may be a lot of weight on the storyline and less on the actual gameplay. But I guess we all have to start somewhere.