Remote Game Jams

A New World It's been an interesting few years thanks to the COVID-19 pandemic. I've been working from home since the pandemic began in March 2020 for a company (Encircle) who was generally opposed to having employees regularly work from home. Now they have embraced it and significantly downsized their office space even though the employee count has grown. They have hired people who work from different countries, even in different timezones. Some of my...

Read More

Optimizing Games by Using Font Icons

For a couple of years now I've been using custom font packages to render generic icons in my Unity games. My most obvious example is Orbert, which has a minimalist design and allowed me to get away with quite a few font icons. It's very simple to do and has many benefits: Optimizes game file size (less textures) Optimizes memory consumption (less textures) TrueType Fonts can scale to any size you need There are tons...

Read More

Avoiding Unity Update Loops

The Update loop is the most commonly used function to implement any kind of game behaviour, according to Unity's documentation. As such it's important to address the performance impact it has on your game since logic in the Update function runs every frame. Update is convenient and time-saving because it requires little planning to use and provides immediate results, but this allure can be an issue as your codebase grows. It's especially problematic if you...

Read More

Sine Shooter (Global Game Jam)

Intro This past weekend I once again collaborated with the talented Brent Mitchell for the 48 hour Global Game Jam. The theme this year was Waves. This jam was quite different than our past collaborations because we worked remotely from each other. We then decided to make it more difficult for ourselves by making a virtual reality game, which only Brent has the hardware (HTC Vive) for currently. And to top it off we also...

Read More

Switchit (Global Game Jam)

I recently participated in the Toronto Global Game Jam. On my team was the talented Brent Mitchell (level design, programming) and Mark Tome (artist). The theme this year was What do we do now?. Brent and I spent Friday evening having a few pints at a nearby pub and brainstorming many game ideas. Most ideas focussed on Oculus Rift, since we thought it would be fun to develop for. All our ideas were multiplayer since...

Read More

Bursting With Colour (Global Game Jam)

This past weekend I participated in the 2014 Global Game Jam at the University of Waterloo. Lumos cofounder Matthew Miner joined my team, along with Ubisoft level designer Brent Mitchell. Together we created the game Bursting With Colour. Friday The theme was "We don't see things as they are, we see them as we are." We spent Friday brainstorming ideas. We kept ideas 2D because we wanted to experience Unity's new 2D system. The three...

Read More

Farewell Ganz

The time and opportunity has come for me to stop working for game studios and begin working full-time with my own company, Rebel Hippo Inc. along with my swanky co-founder Matthew Miner, our company is best known for creating Lumos Game Analytics for the Unity game engine. We've been brewing up big plans for how we'd like to transform online services in the game industry and soon we'll reveal our latest and greatest product which...

Read More

Play Fight 2013

This year I'll be competing against some friends in a new yearlong game competition called Play Fight 2013. The goal of the competition is to see who can make as much money as possible off indie games, while being open about the entire process. So I'll be sharing progress updates regularly on the Play Fight site, as well as my earnings, marketing strategies, and of course development decisions. The competition started January 1st so there's...

Read More

Introducing Frocket

Last month I released my first mobile game Frocket. It's an arcade style action/puzzle game where the player launches through levels using barrels to find delicious cupcakes. The full version was launched as a $0.99 game on iOS for iPhone and iPad. A couple weeks later we released a lite version for free with less content, no Game Center, and no Score Attack mode. Immediately following the release of the lite version, we released the...

Read More

Using Game Center with Unity iOS

Today I experimented with Apple's Game Center for the first time and thought I'd share some pointers. I'll assume you are a registered Apple Developer and already understand how to create certificates and provisioning profiles. The first thing to know is that to use Game Center you will need to create 2 App IDs for your game on developer.apple.com. One is a wildcard App ID and the other is an explicit App ID. On iTunes...

Read More

Loading a Unity SWF in Flex

With the release of Unity 3.5's Flash export option there are many new opportunities for Unity and Flash developers. Since my career has mainly involved working with both technologies, I wanted to try loading a Unity-exported SWF file into a Flex application to prove the possibility of a Flash game incorporating Unity content. It's straightforward to do, but the requirements aren't documented in one spot. This article should help solve that. It does not cover...

Read More

Why I Don't Use Unity's JavaScript

When I started using Unity in 2005 I was very attracted to programming with JavaScript. It had easier syntax and less rules for me to bother with. And Unity's documentation at the time was completely done (I think) with JavaScript examples. It just made sense to use it. I continued using JavaScript for 4 years. During that time I ran into many confusing frustrations and started to gradually strictly type my JavaScript to avoid problems....

Read More

See You at Unite 2011

Hello again folks! Today I'm happy to share with you that I'll be heading off to Unite 11 in a few days to represent Lumos Game Analytics with my good pal Matthew Miner. So if you'd like to meet up at some point, whether it be to discuss Lumos or just to grab a drink or two, just give one of us a shout. We had a lot of awesome developments over the summer while...

Read More

Lumos Wins Velocity Venture Fund Competition

Last week the game analytics service I have been helping with, Lumos, won an entrepreneurial competition held by the University of Waterloo (UW). We received a whopping $25 000 from UW's startup incubator called Velocity. Thanks to this funding there will be a lot more development time put towards Lumos in the coming months, and that is very exciting indeed. You can read all about it here. While we're on the topic of exciting things,...

Read More

Lumos - Your Game Analytics Service

For the last half year I've been working with a team on a new service that's launching today called Lumos (www.uselumos.com). Lumos provides game developers with an extremely useful analytics system that is very simple to use. In fact, it's almost entirely automated. At the moment we completely support the Unity game engine, with support for other engines currently in the works. Oddly enough there really doesn't seem to be any decent analytics services available...

Read More

Farewell dimeRocker

This is a bit overdue. I left OverInteractive Media Inc. (OMI), the creators of dimeRocker, at the end of February this year. A decision made because I was ready for something new and wanted to return to my home province of Ontario. My experience with dimeRocker was incredibly valuable. I came on as the 3rd employee (they are now much bigger) and was expected to be able to do everything, even though I was hired...

Read More

More on Hip Ship

I created a complete play-through video of Hip Ship for those interested in seeing all of the content in its current state. You can view it below. As far as future development goes, after looking at statistics and getting feedback I think it would be best if I changed the main focus of the game. I want to allow the player to play each level individually and rank them based on how well they do...

Read More

Creating Links in Unity

This is extremely simple to do but may not be obvious at first. For my purposes I wanted a clickable label that opened my website. To do this you need to create a button and change it's GUIStyle to use your label's GUIStyle. Then use Unity's Application.OpenURL function to actually open a web page. if (GUILayout.Button("\nCreated by\nwww.bradkeys.com", GUI.skin.label)) { Application.OpenURL("http://bradkeys.com/"); } This works great in most cases but my Facebook app used an iFrame to...

Read More

Hip Ship

Today I launched Hip Ship, a game I've been developing over the past few weekends. It's a short but challenging arcade style game where you navigate a spaceship through several mazes. You have to avoid walls and objects while beating each maze in the shortest time possible. You can optionally collect coins to slightly improve your score. I chose to use the dimeRocker Arcade app on Facebook [disclaimer: I work on dimeRocker] as my deployment...

Read More

Securing Your Web Game - Byte Editing

One of the easiest and most effective ways for people to hack a game is byte editing. Basically there are tools available that can pin-point variables used in your game and change their values. For example if you have a game that gives the player a score, the player can use a tool to search for that value in their system's memory and modify it to be whatever they want. This can be particularly bad...

Read More

An In-Depth Look at dimeRocker

I've been inspired to write this article with the recent announcement of the dimeRocker Arcade. It's a very exciting announcement and I'll explain why by comparing it to the current dimeRocker platform that was released this past March. About the dimeRocker (dR) Platform The main purpose of dR is to simplify the social game development process and help developers make money. It's currently targeted at Unity developers. It takes care of most server-related features a...

Read More

MondoCloud

For the past little while I've been helping to build the just announced service called MondoCloud. In a nutshell, it allows developers to do easy server-side game logic as well as real-time messaging services. This is a great solution for features such as in-game chat, lobby systems, and most multiplayer needs. The only multiplayer requirements it really wouldn't be suitable for are tracking positions in real-time. For example a multiplayer FPS game would not work...

Read More

New Development Blog

For the past few months I've been slowly transforming this site into a development blog. Articles can be linked to individually, the main feed is now paginated, and most recently I added an RSS Feed. From now on I'll be posting about my game design and programming experiences and opinions. My current job has put me through a lot of challenges with Unity3D, Flash, and other technologies like PHP, JavaScript, databases, and Unix based operations....

Read More

dimeRocker @ GDC San Francisco

Last week I was in San Francisco with OMI to help man the dimeRocker booth at GDC. I met hundreds of developers and gave hands-on lessons about the dimeRocker platform, as well as two presentations in the Unity booth. If you'd like to check out the two games we demoed, here are links for BATTLE BEARS and Air Traffic Commander. Both utilize features such as leaderboards, profile info, friend info, storing data, wall posts, and...

Read More

Global Game Jam 2010

Two weekends ago I participated in Global Game Jam Vancouver, a 48 hour game contest held at UBC. After being teamed up with some friends, we desiged a game with the intention of using the dimeRocker platform I've been helping create a work. This meant we'd use the Unity game engine and deploy it on Facebook. It was an intense 48 hours for me, being the only programmer in the group. But by the end...

Read More

A Month of Many Projects

I've been busy at work continuing the development of the dimeRocker platform. The projects I mentioned in my previous post are progressing well. I've decided however that this month I'll focus less on larger projects and instead create small games that may only take about a weekend to do. So far I have three games in mind: Mad Lab which I mentioned last blog post Untitled Train Puzzle Game designed by a couple friends of...

Read More

Fall Projects

I started working at OverInteractive Media working on dimeRocker, a service for putting your Unity games on social networking websites, along with some other useful tools. This has sparked an interest for me to start developing small games for Facebook in my free time. Here's what I've currently got in the works: Metropolis - Live amongst your friends in a 3D MMO city where you build up your social status. Mad Lab - Single player...

Read More