Tuesday, January 22, 2019

Designing a mobile game in PowerPoint

Alright, let's start.

During the past few weeks I've been focusing on Game Development (GD), something I've long considered to be "one of the more difficult things to do".

Let me clarify why I've always thought that.

A lack of knowledge comes with certain assumptions and boundaries. My lack of knowledge in GD became the basis of my assumption that a game is extremely difficult to make and so I drew a boundary for myself.

There is some truth to GD being difficult but I've just recently discovered that it's relatively easy to make a fun and beautiful game... without using complicated tools or programming.

For example, I made my first game Forty Nine Twos (49 2s) using PowerPoint and GameMaker (a tool that takes care of majority of the game programming for you). 49 2s was the perfect project to begin learning GD because of its simple design and mechanics.

49 2s is a coloured puzzle game where the goal is to solve the puzzle by bringing all circles down to 0 points. It's not easy, it makes you think and most importantly... it's available on Android! If you get it, tell me if you can solve the 7x7 board :)

Alright, let's refocus.

GD, just like Finance or Technology is complicated in its own ways. To make a good game you need to have a decent bit of knowledge of what I think are 4 crucial pillars; 1) math/physics, 2) music, 3) design and 4) programming. The first 2 can be overcome with the help of the internet. For math/physics, you can Google something as vague as "formula for an orbit in my game" and you will get an article explaining how to model orbital motion. Easy!

For music, you can visit open-source platforms that have music ranging from "emotional piano instrumental" to "hardcore boss fight". There's something available for every type of game.

For design however, it's like being stranded in a desert with nothing but a bottle of water and thousands of kilometers of sand and cacti. In other words, it's just you, yourself and thy (imagination). This will be the focus of the article.

As for programming, there are now game development tools that make it easier to get the job done. As a matter of fact, I think it's probably considered bad practice to make a game in an operating system's native language (e.g. Java for Android). Why? Because we've developed game engines that are capable beyond imagination. I mean, have you played The Witcher 3 or Red Dead 2? It's no easy feat making either of those and near impossible making them in JUST [insert programming language here]. You've got to use some form of a game engine!

So, for programming, let's just say familiarity with coding goes a long way but I'm willing to bet that a beginner can pick up GD using tools like GameMaker much faster than they thought possible.

Now, let's take a peaceful stroll through this desert that is Design

I consider myself an artist or designer before anything else.

To me, making something beautiful is the primary focus in every thing I do - whether it's a presentation, app, website or game. I run into problems when I can't create something because of my limited experience with design tools. For example, I don't even know how to use Photoshop (I've decided to learn but have yet to start).

In general GD requires an even more in-depth knowledge of design tools. I decided to completely ignore this obstacle and just begin developing 49 2s.

I'd say a good majority of people are exactly like me - they are creative to some extent but don't know how to use fancy tools. Well, here's some good news. PowerPoint is easy to use and can be extremely powerful when you have an idea of what you want to do.

Starting with simple shapes:

Exhibit A, below is a screenshot from my PowerPoint file that contains every button, dialog box and icon I used in the game. There is a very simple pattern in everything you see below; every object is a combination of circles and squares. Not only does PowerPoint give you the ability to use all these shapes but it also lets you modify some very important attributes (e.g. shadows, reflections, contrast, etc.). You wouldn't think much of these when preparing a presentation, but in a game, shadows are the difference between dull and fun. So, when it comes to designing something, don't be afraid. All you need to do is break the object down into its basic shapes and get started from there.



"Okay, that's easy to say for something like a button but how do you make a tree?"

Fair question. Some objects are a lot more complicated than others. Making a coniferous tree (Christmas tree) is doable using squares and triangles, but its shape will look unnatural. So, to make objects which are complicated, you need to become familiar with the Curve Shape under the lines category.

Moving to complex shapes:

This curve lets you set points to make a shape of your choice. I used this in 90% of all objects that you'll see in the game.

You can also see my 3 second attempt at making a tree. It looks a bit unnatural, but that's nature for you. Things don't have to be perfect - weird angles and lines sometime compliment the shape of objects.

When you've made one tree, it's a matter of copy pasting it, adjusting size, adjusting colour and you will get yourself a forest like below. This same image is used in the game, with only a bit of refinement using Microsoft Paint.




Finalizing with animations:

"I guess that's not hard because it's not an animated object. How do you deal with those?"

Another valid question. Animated objects are a HUGE part of GD. Everything you see from a bird flying by to a sword attack in a game is the result of animation. It sounds complicated when thought about... but when broken down, animation is just a sequence of images coming together.

Imagine a flame of fire in real life - it has ups and downs, some flames are red, some are yellow, some rush towards the sky and suddenly disappear, others stay near the core and burn hotter and hotter. That is animation at the finest quality possible. Achieving this is kind of simple; the more sequences you have, the smoother the animation will be. In 49 2s, some flames of fire only have 3 sequences and (I hope) they will almost never draw negative attention from the player beause they still look natural.

Screenshot below shows some of the animated objects and their sequences:


Bringing all these sequences together, loading them at the right speed and time results in an animated object. Again, this is easier said than done but it will only take a good month of dedication and learning to become decent at knowing the basics of animation, be it for a game or for a presentation. A month is really not that long.

Some are going to question all of this and say that good design is dependent on artistic ability (this can be anything from a creative imagination to being able to interpret colours and shapes). I'm going to be honest - I'm at best an abstract artist. I can't draw faces, I can't draw fruits or vegetables, I can't draw... period. I'm the guy who takes paint only to throw it on a canvas and call it a day. It's no coincidence that my favourite artist of all time is Jackson Pollock.

However, what I lack in my ability to draw, I make up for in my ability to Google. For the flames you see above, I Googled the term "flaming fire", found an image that fit my needs, copied it, pasted it into PowerPoint, and used the curves shape to redraw it as accurately as possible. It's not easy but it's also not rocket science. If I can do it, so can you.

Finally,

The result isn't supposed to be of the utmost quality, because let's be honest... it's Microsoft PowerPoint and the worst part of those two words isn't PowerPoint (I love taking jabs at MS). The goal really is to show you that good design can still be achieved with simple tools - tools that are often not used to their fullest potential. Once you've mastered the basics, you can then move on to Step 2: Photoshop. The learning process never ends.

Oh, and perhaps there's an even deeper meaning to all of this. Had I not decided to take up learning GD I would still be living with unconfirmed assumptions and self-imposed boundaries. We do this in our lives far too often. This is why I think anyone can take up a new challenge and come out of it with a new skill. A few weeks ago, I couldn't imagine developing a game and somehow here I am with exactly that, designed using a tool that is already installed on your computer.


Thanks for reading. And here are some general screenshots from the game.