Archive for the ‘iDevBlogADay’ Category

Prototyping with Codea

UPDATE: Since writing this, the developers of Codea have released an impressive number of huge updates to Codea. They have implemented many of the features I was hoping for, as well as many others. Go check it out if you’re at all interested.

It’s not very often that I talk about other games or apps on my blog, but I want to make an exception today to talk about a cool iPad app called Codea by developers TwoLivesLeft. This is a new iPad app that lets you write Lua code on your iPad and run it in-app. This means that you can use Codea to write and play game prototypes on your iPad. Say whaaaat?! Yes, on your iPad.

I first started hearing about the app on twitter a little before release, as some friends of mine were beta testing it. When it launched, I decided to check it out, long having wished for some way to write and run code on my iPad. I’ve spent several hours with it, and I’m quite impressed so far.

The first thing you need to know is that this will not let you create incredibly complex stuff. It’s 2D only, and it has a limited set of API calls available. However, what it is, is a fantastic prototyping tool, as long as you don’t mind typing on your iPad. They provide APIs that allow you to handle touches, and even accelerometer input. They also provide some basic vector graphic drawing tools (draw lines, rectangles, and ellipses). They even include Daniel Cook’s open source sprite collections, so that you can do some basic sprite work.

When I started playing around with it, two things annoyed me almost immediately:

  1. There was no font support
  2. There was no way to add my own sprites to the app

However, in reading through the (very active) forums, I discovered a bunch of people sharing code to solve problems. One person wrote a vector-based font rendering class and shared it. I’m now using that and it’s great. Others pointed out that by using tools like iExplorer to access the iPad’s file system, you can dump folders of sprites into the app and have them show up. However, I quickly discovered was that I find myself using vector graphics for eveything instead of sprites. This keeps me focused on working on gameplay prototyping instead of getting bogged down in Photoshop doing pixel pushing to procrastinate. TwoLivesLeft say they’re also working on getting a bunch of this stuff working in future updates, so I can only see it getting better.

However, there are still some things you should be aware of:

  1. Right now there’s no way to get code to/from the app, except via copying/pasting, or using iExplorer
  2. Support for Undo/Redo is pretty limited right now
  3. You can’t (nor will you ever be able to) export a game right from Codea to the App Store
  4. There’s no way to share code/projects with anyone else from within the app

But these are limitations I’m OK with. Having some way to retrieve files and drop new files in from my computer would be pretty great, though. I’m missing not having any kind of source control on my files. 😉

Finally, I thought I’d share a screenshot of the game prototype I’ve been working on in Codea. This is for a word game concept I’ve been playing around with. What you see is about 4 hours of work. I have built a working button class, I can build words out of letter tiles, and the words detect touches.

Codea Prototype

Screenshot of my word game prototype running in Codea

The other cool thing is this is only 4 files of code, each no more than 100 lines of lua. The vector graphics make it very fast to get stuff quickly drawing, and with prototyping, that’s extremely important. And let’s not forget that I can now write code while I’m not at my computer!

So yes, colour me impressed. The app is still a little rough in places, but the developers seem to be actively working on improving it. Even still, at under $10 it’s an amazing prototyping tool to have on my iPad.


* I chose to write this review on my own. I did not receive a review copy from the developer, nor did they request that I write anything. I just think their app is cool. 🙂

Design Trek III: The Search for Inspiration

(No, this isn’t the 3rd in a series, that was a bad reference to Star Trek)

At the end of last week I wrapped up my work on a contract I’d been working on since last fall. My part of the project has been passed on to the next team of developers who will wrap up the final features. It feels great to be able to get back to work on my own projects, and I look forward to seeing the game launch when it’s done.

As I am returning to working on my own games, I thought a post about the time between projects would be in order. I often get asked by players where I find the inspiration for my games. I’m sure we all have different answers for this, but I thought I’d try to explain mine.

Where an idea comes from is difficult to answer. Inspiration comes in many forms for me, and I’m never quite sure where I’m going to find it. Sometimes it comes from playing another video game, sometimes a movie, sometimes discussing politics with friends.

One of the things that I think is most misunderstood about inspiration is the idea that you don’t need to work at it, that it will just come to you in a flash. I don’t believe this ever to be the case. Inspiration takes work, it takes dedication, and it takes patience. You need to work at being inspired. You need to work at your ideas. An artist might do dozens of sketches, then several small paintings working on an idea before finding the direction they want to take the final work. We too must actively look for ideas, experiment and refine them. That flash of inspiration only comes after you’ve done the research, the work, and given it all time to let your brain process the ideas.

Well that’s great, you say, but where do I begin? If it takes all this work, where does the work start? These are some of the activities I’ll do when I’m actively looking for inspiration:

  • read a book about a new subject
  • watch a film
  • go for a walk in nature
  • go for a walk in the city
  • play a video game
  • play a board game
  • go to a museum
  • go to an art gallery
  • write something
  • draw
  • build something with my hands
  • go out for a good meal
  • cook something new
  • go out with friends and/or family
  • walk to the river and listen the sounds of the water
  • start writing ideas down

You might have your own list that’s totally different. However, I believe that one of the most important items on that list is the last one: write down your ideas. The act of forcing yourself to think about a problem will lead to inspiration. It is not easy, it may even be actively difficult, but working through it will lead you in new directions and to new solutions. The more ideas you write down, the more ideas you will have. The less you work at actively thinking of new ideas, the fewer ideas you will have. This is why inspiration takes work.

But perhaps most importantly, you need to be constantly open to new ideas. You need to be aware of when an good idea is speaking to you, and know to follow it. That means resisting the urge to make assumptions and snap judgements about an idea. It means talking with people who disagree with you. It means debating without shutting out. It means empathy. Because finding a new idea often means looking at a problem from another point of view; understanding someone else’s feelings; putting yourself in someone else’s shoes.

As game designers, we need to be engaged in the world around us. Games are about interactivity, emotion, and narrative. The world is full of all these things, we just have look for it, and work at it seeing it.


Why I Attend GDC

Hello, my long neglected readers! I have been a terrible blogger as of late. I have been extremely busy with my current contract work, so I haven’t had a lot that I can talk about here on the ‘ol blog. The game I’m working on is nearing completion, at which point I’ll be returning to my own projects and I should have more to talk about.

The good news is that my turn rolled around for #iDevBlogADay and it has pushed me into writing this post. Hooray! This is precisely the purpose of iDBaD, but I digress…

I’m long overdue for a post-GDC blog entry. Last year was my first time attending the Game Developers Conference and I wrote up a post about how much I enjoyed it. This year was even more exiting for me, and I had intended to come home and write up a post about how great it was, and then life and work got in the way. However, it is time. Let’s talk GDC!

I will say this right now: GDC is expensive. It’s not a cheap conference. Most people attending are there because their large company is paying for them to be there, so cost isn’t really an issue. For us indies, plunking down $1400 for a full-access pass is like taking a swift blow to the stomach. Add the cost of a flight from Toronto, and 5 nights of staying in a hotel, and you’ve got quite a bill. So the question everyone wants to know is: is it worth it? I’ve heard some devs say “why should I go to GDC when I can get a new computer instead for the same price?” Is it worth it? My answer: an emphatic YES.

GDC has three parts to the show: the 2-day summits and tutorials, the 3-day main conference, and the 3-day expo that runs at the same time as the main conference. You can buy a pass for the summits, the main conference, or both. I like to do both. The reason is this: the summits have a big indie emphasis, so you get to meet a lot of amazing people and get inspired by the top indies in the world; the main conference has some amazingly inspirational talks from some of the top minds in the industry. I wouldn’t miss either. Together they form a near-perfect conference for me.

This year for the 2-day summits & tutorials I decided to gamble on taking part in the 2-day game design workshop. I was nervous about doing this because it meant I couldn’t attend any of the indie sessions. However, I think I made the right choice for me. The workshop was an intense 2-day crash course in game design, and it was absolutely invaluable. I learned an incredible amount about game design process, which is one of the areas of game development where I feel I have the most to learn. This workshop gave me a language to use to talk about game design; it let me interact with other designs and solve design problems together; and I came away with some invaluable tools for solving game design problems. If you’re attending GDC and considering the game design workshop, I can’t recommend it highly enough. After those first two days, I felt I had already gotten my money’s worth for the conference, but there were still 3 days of awesomeness remaining!

Last year at GDC, I didn’t really know what to expect from the main conference, so I went to a lot of different sessions in a lot of different fields: programming, art, game design, business, etc. This year I focused on design sessions and this really worked for me. I saw some mind-blowing talks on game design and design process from some of the game designers I most look up to. (Check out the GDC Vault and you can watch some of the classic game post-mortems for free.) By the end of the conference my mind was bursting with ideas, and my heart was filled with hope for games as a medium and inspiration for my own games.

That feeling right there, that’s why I go to GDC. Nowhere else have I ever felt so excited to be a game designer and developer. Nowhere else have I become so inspired to create new and innovative games. Nowhere else have I met so many amazing game developers who are all striving to make the best games the world has ever experienced. Nowhere else have I had so many amazing conversations with other developers and designers about games and their importance.

By the end of February, I was feeling pretty burnt out about making games. I hadn’t worked on my own projects in quite some time. I was starting to wonder why I do what I do. By the time I left GDC, I was alight with creativity, a renewal of excitement about having the best job in the world, and a hunger to create something new and important. GDC was a reminder that there are amazing people making incredible games all around the world; a reminder that there are people trying to make games that matter to themselves and to others; a reminder that making games is extremely difficult, but also profoundly rewarding. This is why I will choose GDC over a new computer, any day.


Who’s Next?

My second run with #iDevBlogADay has been great. It has forced me to blog once a week, even with a newborn baby in the house. I can say with absolute certainty that I would not have been blogging without the push from iDBaD. However, I think it’s time to pass my slot on to someone else in time for the new year.

Between the baby, my contract work, and trying to find an hour here or there to work on my own projects, I feel like writing these posts is just taking too much of my time right now, and something’s got to give. Québarium’s excellent iDBaD post yesterday reminded me that I need to buckle down and do some work (not that I’m blaming my withdrawal on him!) So, maestro (aka @mysterycoconut), if you please, add me to the end of the (extremely long) waiting list and hand my slot off to the next worthy iDev blogger.


Coming Soon: Dirty Diapers

I’ve been writing a lot of lifetstyle and technical posts for my #idevblogaday posts lately and, quite frankly, they take a really long time. 🙂 This week I’m short on time so I’m being a little more selfish.

As I mentioned last week, for the 360iDev Game Jam in November I prototyped a game I called “Dirty Diapers”. I’m excited to announce that I worked the prototype into a finished game and submitted it to Apple for approval on Wednesday of this week!

This game has a couple of firsts for me:

1) It’s a universal app and will run on iPhone, iPod touch, iPad and retinas displays, all for one low price!

2) This was an experiment in whether I could produce a shippable game in under a week of work. In fact, it was completed in about three days of work! Bear in mind that the game is very simple, but does do things like handle multitasking, tracks your best score for each difficulty, and saves your game in progress if you quit. Plus, it’s really fun!

As I mentioned, the game has been submitted, and with any luck we’ll see it for sale before Christmas!

So, without further ado, here’s a sneak peek at the game:

In a nursery full of babies, can you keep them all happy? They’ll need to be fed, changed, and rocked to stop them from crying.

Drag actions from the bottom of the screen to unhappy babies in order to soothe them. But as time ticks on, they’ll get fussy more quickly. Can you keep up? Keep a cool head to master this frantically fun game.

How many Dirty Diapers can you change?