Friday, April 27, 2018

Working on Multiple Projects


One of the things I struggle with is working on multiple projects at the same time.

Fixating on one project and wanting to see it through until the end before moving on to the next one is something I tend to do. This may be a great approach for some, but for me, I need to share my time between multiple things.

As a long time developer I’ve managed to build up a back catalog of games and apps - and a number of these require maintenance to stay up to date.

As well as updating older games I’m always working on new stuff - be it prototypes or new games that I plan to ship.

And on top of that, I’ve been trying to blog more often than I have been. In fact, just writing this blog post was a challenge as I felt that I needed to focus my time on the programming tasks I have at hand.

So I did some research into techniques to help manage working on multiple projects at the same time and I thought I’d share these with you. As for the effectiveness of these techniques, well, we’ll have to wait and see. This might be the subject of a future blog post!

But first, here’s my current strategy for managing multiple projects, which admittedly, while not perfect is better than nothing.

What I Currently Do

Trello

I use Trello to keep track of all my projects. I have a board for each individual project with the following lists: Backlog, To Do, Doing and Done

When I have a new idea for a feature I place it in the Backlog list. I regularly evaluate this list and move what I should be working on next into the To do list. When I need a task to do I will move it from the To do list into the Doing list. When I complete a task I move it into the Done list. 

I find this really helpful when I have a half hour to spare and want to get something done. I  simply pull up my list and pick a task - I don’t have to think as I’ve already planned out the work.

Trello for Snappy Word

I use Trello on my computer and my iPhone.

Trello on mobile is invaluable for adding tasks to my backlog while I’m out and about.

Notes (on iOS)

I use Notes on iOS to quickly jot down ideas. These can be a single line to a few paragraphs. I sometimes do a quick sketch on a post it note and insert that into my note or use the drawing feature to add a quick sketch.

I have a Game Ideas and App Ideas folder that I throw stuff into. 

These aren’t related to any specific project I’m working on, but are reserved future distractions :-) If I have an idea for an existing project, I do this in Trello. Keeping the new ideas in notes helps separate (mentally and physically) the possibilities from the practicalities.

Every so often I review the ideas and sort them based on what I want to do next after my current project have been completed. 

It’s always a good sign if that "amazing game" you wanted to make is still an amazing idea six months later. More often then not I think to myself “That’s not such a great idea…” But still, I believe it’s really important to record these thoughts as there may be a germ of a great idea in there somewhere.

Example game idea note


Google Docs

As well as Trello I use Google Docs to track my day to day work. I have a Work Log document that I write down what task I’m working on, any notes about that task and other relevant information for the day. I prefix each task with the project name. These notes are useful as they record any extra information that the initial Trello To do item may not have had.


Here’s an example entry from when I updated Ultra Dash:

Sunday, 31st December 2017 
DASH: Update the background sizes for iPhoneX

I collate these notes and use them when I check in my project to source control (I use Sourcetree and BitBucket).

I’ll often go back over my notes to work out how much time I’ve spent on a particular project. The Trello tasks are what I planned to do and my Work Log is what I actually did with more details than the initial Trello task description. 

The Work Log also includes other notes such as when I submitted a build to the App Store or when I updated the latest version of Unity, etc. It’s essentially my timeline of all my projects.

It’s also great for those times when I feel like I’ve accomplished little, but on reading over my notes I can see reasons why (being sick, on holidays) or actually see that I did do a lot but it’s all behind the scenes and not reflective in the latest build (refactoring code, updating ad providers).

My Challenge

So I have a system that works for me in terms of organising and tracking my projects but my biggest issue is task switching. How can I effectively parcel out my time between projects and actually switch between them?

A solution

It seems obvious now as I write this, but the big takeaway from my research is that I need to create a meta to-do list with tasks from each project interweaved so that when I complete a task from Project A I can move on to the next task which could be from Project C.

One caveat is that task switching can take a toll when switching context - which often happens when switching between two very different projects. To minimise this it's suggested to try grouping similar tasks together.

From what I’ve read, it’s also beneficial to try and limit the tasks times to around 20-30 minutes each, which thankfully is something I already do. 

Obviously there are systems in games that can take weeks to complete, so the trick here is to be able to break these systems down into manageable small tasks. This fits well with what I do with my Trello board and the Backlog list.

Trying it out

I’m going to give this a go and see if it helps fix my problem of staying on one project for too long at the expense of others. I'll add a future task to write an blog post on the results :-)

So, what techniques do you use? 

Let me know as I would love to try them out and see if I can improve my productivity!

- Johnno

References






Monday, March 26, 2018

14+ Years of Blogging

I was listening to the latest episode of The Talk Show podcast today and was fascinated to hear John Gruber and Jason Kottke talk about their history writing blogs which dated back into the late nineties.

It got me thinking about my experiences and history of blogging.

I went back to check out my first Blogger entry from 14 years ago and ironically it was me reminiscing about the good old days.

It seems fitting that I post that original entry again as I was very enthusiastic about how easy it was in 2004 to make games compared to 1984 :-)

So here is my first Blogger entry from Wednesday, 6th of October 2004.

I wonder how many readers are thinking back to 2004 (or even 2014) and remembering the first game they made?

-Johno

Twenty Years Ago - Oct 6th, 2004

I got a call from the Game Developers Association of Australia (http://www.gdaa.asn.au/) asking me about some of Krome’s major milestones. This was for a display on Australian games they are putting together and they wanted to know stuff like what year Krome was founded (1999 by myself, Steve Stamatiadis and Robert Walsh) and when TY the Tasmanian Tiger was released (2002). 
I asked them how far the Aussie games industry went back and was told the earliest entry they had was for Beam Software, which was founded in 1980.Suddenly, it dawned on me that I’ve been in the Aussie industry since pretty much the beginning. My first published game was called Chilly Willy and was released in 1984 on the Microbee system (http://www.thepcmuseum.com/appliedtechnology/) by a company called Honeysoft. Halloween Harry followed that up a year later. Then I took time out to study at University, where I wrote some more games. I didn’t release these commercially, but made a text adventure freely available on the university computer system. That was followed by a short stint as a programmer at a telecommunications company after graduation, and then I was straight back into it in 1991. 
Back then, the four years between when Beam began and when I was first published seemed like a lifetime, as most things do when you’re a kid. But looking back, I realize that I was there during the heady days of the Aussie industry. It’s weird, even though I’ve been making games for twenty years now it’s still as fresh and exciting as it was back then. 
But the great thing about making games today is that it’s a lot easier than it’s ever been! All you need is a PC (which most kids have access to) some development tools (like Blitz Basic and Pro Motion) and the burning desire to make a game. And the costs are so cheap that there’s no excuse. Blitz Basic costs USD $100, the same price as two Playstation2 games - get it online from http://www.blitzbasic.com/. 
I hope that in 2024 a whole bunch of kids will look back at 2004 and fondly remember their first game they wrote and distributed over the net. Wouldn’t that be cool? 
Well, that’s enough nostalgia for one day. Time to go make games!

Tuesday, March 20, 2018

Fitbit versus Apple Watch

I'll admit it. I'm a bit of an Apple Watch fan. I've had an Apple Watch since launch and have made a number of Apple Watch apps.

Snappy Word for Apple Watch

Before I had an Apple Watch I was a Fitbit user. I wore theFitbit  Flex everyday and members of my family had Fitbit Zips. The Flex was a great tracking device even though the cheap rubber band kept breaking (Fitbit always sent me replacement ones). I wore my Flex with my analog watch and wished the Flex could tell the time, do heart rate tracking and was waterproof.

When Apple finally announced the Watch and I was ready to jump ship. While the first Watch wasn't waterproof it did offer the ability to make apps for it. So I passed my Flex on to my kids and proudly sported my shiny new Apple Watch.

Since then I've upgraded to the Apple Watch Series 3 LTE. Now the Watch does pretty much everything I need it to do. It's waterproof, has a great battery life, sports improved heart rate tracking and can even make phone calls!

But the Apple Watch isn't without it's failings. To be fair these are failings more on the publishing side than on the hardware side. As a developer, making apps is easy enough, but getting your app out to actual Watch users is incredibly hard. The Apple Watch Store is hidden away in the Apple Watch app and rarely updates (the same apps have been featured in Australia for the last few months). There is no best selling list or new release list to peruse and the curation is pretty much non-existent. The main App Store app occasionally features Watch apps, but this is a rare occurrence.

As an example, my last app, Skip and Save which I released earlier this year for free has had a paltry 141 downloads. The app was designed for Watch and takes advantages of complications and Watch connectivity. I reached out to Apple Watch press sites and sent out press releases - all to no avail. I would have thought that even if the app was appalling (it's not) that surely some small percentage of Watch owners would download it out of curiosity. There just isn't any real way to find Watch apps.

Skip and Save was made for Apple Watch
Despite these failings I still love my Watch.

Now it looks like the first real challenger to Apple Watch is about to arrive.

The Fitbit Versa.
Fitbit Versa
While it lacks LTE and the ability to reply to messages on Apple devices, the Versa is waterproof, sports a 4 day battery life, has GPS (on the Special Edition) and all day heart rate monitoring. And it also has the ability to run 3rd party apps. Oh, and it's cheaper. It's AUD $299.95 compared to Apple Watch AUD $459.

3rd party apps is the thing I'm most interested in.

Fitbit Versa uses Fitbit OS. Fitbit bought Pebble a while back and I'm not sure how much of the Pebble tool chain and OS is in Fitbit OS, but what they do offer is pretty cool. The development IDE is completely web based allowing you to write an App or a Watch Face in the browser and deploy to a simulator for testing.

Oh yeah, the Versa lets you make watch faces, something Apple does not. It may be that watch faces could be the killer app for the Versa. Checking out the success of watch faces on Garmin devices (the download numbers are public) it seems that even in a small ecosystem relative to Apple Watch, Garmin users are downloading watch faces by the tens of thousands.

Sadly it looks like there is no easy way for Fitbit developers to charge users for their apps - so any work done on this system will be a labor of love. Hopefully this is something they address when the Versa launches.

You can check out the Fitbit development site here.

The development language is JavaScript which is a very accessible language.

Now, the one thing I am not sure about is how Fitbit will solve the app discovery problem. I've looked at their site and can't work out where they keep the storefront for the current batch of Ionic apps (their first Fitbit OS device). Maybe it's only available from the Fitbit App when you connect an Ionic device? Either way, it doesn't look promising at the moment. But then it couldn't be any worse than Apple. I guess for both platforms they can only improve their discovery.

I'll be watching the launch closely and will be very keen to see how Fitbit deals with developers and how they promote their apps.

I hope Fitbit does well and is enough of an annoyance to Apple that Apple open up Watch faces to developers and pull their finger out to fix app discoverability.

Good luck with launch Fitbit. Here's to your success and growing a viable platform for developers to make apps for!

- Johnno

Monday, February 26, 2018

Adventure Games in 3D with Stereo Jack

While cleaning up my hard drive I came across all the files for Stereo Jack, a graphic adventure follow up to Flight of the Amazon Queen that Steve Stamatiadis and I were developing.

Black Hole (the villain) and Stereo Jack (the hero)

We had designed the entire game down to every single location, character, item and puzzle (I have 2 full ring binders of design docs) - including entire room layouts that Steve had made for every location.

I had even adapted the JOKER game editor we used for Amazon Queen to work in 3D.
JOKER3D - our graphic adventure editor

Ans we had the game playable with some early test locations.

We were very close to having it signed but things didn't work out in the end.

What I found interesting was that we wanted to make the game in 3D and we had to actively pitch the publisher as to why 3D was better than 2D. I thought I'd include the pitch we made in May 1997 to GT Interactive in this blog - as well as the outline of what the game was all about.

Enjoy!

Our 3D adventure that never was.

STEREO JACK - THE GRAPHIC ADVENTURE

Copyright Steve Stamatiadis and John Passfield © 1996

Stereo Jack is the world’s greatest cyber-hacker. He specializes in data retrieval and no computer is safe from his digital prowess. His home is Silicon City, a sprawling futuristic metropolis where high-technology and computers are a way of life. Free of pollution and covered in lush green parkland it’s the perfect place to live. 

So perfect in fact, that it’s a magnet for the world’s nastiest cyber-villains.

In his latest adventure Jack is pitted against his evil arch nemesis Black Hole. Dedicated to destroying all computer information, Black Hole has hatched a plan so cunning that it could result in the downfall of Silicon City.

Black has discovered a super secret backbone network that links all of Silicon City’s major computer systems. The network was created during the Core Wars to allow Silicon City officials access to their computers in the event of a foreign body taking over the city. After the Core Wars the backbone was left in place but forgotten about. 

The only thing stopping Black Hole becoming the most powerful force in the city is that he is missing the master access key - and only one person stands in his way of obtaining it. Stereo Jack.

Playing Jack, it’s up to you to put a stop to Black Hole’s evil plans!

The adventure spans a number of exciting locations, including:
    • the core zones of Silicon City, information capital of the world
    • marine.com, tomorrow’s marine community today
    • derelict tunnels below the illustrious Hawkins University
    • and finally Black Hole’s secret trap ridden base high in the Rocky mountains 
The game also features dozens of highly detailed, futuristic vehicles, all rendered in real time 3D. These include sports cars, police pursuit vehicles, limos, hover trucks and even a gigantic smog sucker.

Full-screen graphics make Stereo Jack leap off the monitor. The cinematic adventure uses a variety of camera angles to create dramatic effects, and seamlessly blends 3D animation to impose a sense of realism in an animated, futuristic setting.

Players are immersed in an incredibly rich and detailed 3D world - they can explore exotic locations looking for clues and interact with the many exciting characters.  Some of these characters however are on Black Hole’s payroll and will do anything to stop you. 

If Jack encounters an adversary he can try and use his brain to find a way around them or use his brawn and confront them. If the player chooses to fight then a combat mode is initiated and the player gets control of Jack's fighting moves.

And here is what we wrote for GTI back in May 1997 to convince them 3D was the way to go.

=== START PITCH DOC ===

3D Adventures versus 2D Adventures
Although the new demo is in real time 3D - the game is still an adventure game - not a simple 3D shooter (although we do have action as part of the game play). You still solve puzzles, interact with other characters, carry out conversations with our enhanced dialog system and explore exciting new locations. The story driven aspects of a traditional graphic adventure still exist. The main difference is that the game is now in 3D.

Some Things To Remember
- The demo that you saw used an unoptimised 3D engine with no 3D card support and ran between 10 and 15 frames per second with every thing turned on (multiple characters, transparencies, multiple rooms being drawn simultaneously for the cameras, etc).
- The 3D engine will only get faster and more impressive

The 3D Advantage

Players LOVE 3D games
And more importantly PC Magazines love 3D games.
Take a look at the most successful games (that aren’t Real Time Strategy Games) and you’ll find they’re mostly 3D. In fact, the next generation of strategy games are shaping up to use 3D as well. Tomb Raider, Mario 64, Quake, Duke Nukem 3D, etc, are all 3D games. 

As Dave Perry of Shiny Entertainment said “You can do good 2D games in 3D, but you can’t do 3D games in 2D”. As a testament to the future of games - all of Shiny Entertainment’s new titles are full 3D - including the much anticipated Earth Worm Jim 3.

Game worlds are much, much larger
For the same amount of work required to create a single static 2D screen we can create large and completely immersive 3D locations. We can view these locations from a number of different views, we can walk around these locations in real time, and when necessary we can zoom in to show off new parts of these locations. To do this in 2D would require the same location to be re-drawn from a number of different angles - requiring a lot of extra work and time. 

Scaleable Graphics Resolution
Unlike 2D, the graphics resolution of 3D games is scaleable. Imagine nearing the completion of a hires 2D adventure when all of a sudden everyone wants 800x600 in high color. Uh oh - that means the developers have to either bite the bullet and release a graphically outdated game and face the wrath of the PC Game press or discard a whole lot of work and money and begin redoing the graphics. 

3D graphics card support
Using 3D we can take advantage of Direct3D and support 3D graphic cards. This not only ensures that the game has a longer shelf life - but gives the games a level graphical detail that would be hard to achieve in 2D.

Easy to port to next generation consoles
A 3D game is easier to port due to the scaleable attributes of 3D as well as the fact that many of the next generation consoles are designed with real time 3D development in mind.

Models are less complex then pre-rendered graphics
Real time models may be less complex - but they look far more impressive than their 2D counterparts when they are being moved about in 3D space. However, their are two big advantage to using less complex real time 3D models: Building 3D real time models take less time and do not require ultra powerful SG workstations. The result is a saving of time, money and manpower.

Ability to create new and innovative puzzles
Please refer to the New Paradigm section.

Allows us to create cinematic sequences
With a real time 3D game engine we can control the placement of “cameras” to view the action with. This means we can zoom, dolly, pan and push in on characters as the action unfolds. We can cut to a closeup for dramatic effect or move to a long shot to give sense of epic scope to a scene.

All the cool developers are doing 3D only
Sierra are currently doing 3D adventures. It won’t be long before LucasArts jumps on to the bandwagon. To have a competitive edge we need to set the standard now. And 3D is an integral part of that standard.

Shorter development time
Complex 2D images take quite a while to draw. If they’re being pre-rendered then quite a bit of time is taken to build complex models and render. There’s also the problem of animation. Walk cycles and object animations need to be created from a number of different viewing angles - all of which eats up valuable time. With 3D we can create a single walk cycle for a character and view it in real time from any angle. We can also attach other character models to the skeleton of a predefined walk cycle - thus saving ourselves a lot of time re-animating a new character.

Disadvantages of 2D
- Lots of graphics need to be created to build the game world
- 3D models need to be more complex: as a result need faster, powerful rendering machines, more people and of course, more money and time
- Puzzles tend to be restricted to old hackneyed themes
- Just doesn’t look as impressive
- The cost to deliver graphics and animation to rival Monkey Island 3 and Blizzard’s upcoming 2D adventure would be astronomical. Both games are using animation studios.
- Difficult and time consuming to convert to other platforms


In Summary
We feel that a 3D adventure game can still have all the elements that players love about 2D graphic adventures - except now we can layer even more cool game play elements into the game. The game story is enhanced by the fact that we can direct action in a cinematic way. Players are drawn into the game world even more so because of the 3D immersive nature.

=== END PITCH DOC ===

Congratulations if you made it this far! 

It would be hard for you to be nostalgic about something that didn't exist - but for me and Steve we poured a lot of time and energy into the game and comic so it was nice to rediscover these old documents.

If anything, it's interesting to see that world of game development that was on the precipice of mainstream 3D games. It was rather exciting to imagine the potential of what it would offer back then.

I'm sad we didn't get to make the game. We produced a smaller follow up 3D adventure called Gruesome Castle afterwards, but it also failed to hit the market. But that's a story for another day.

- Johnno

Friday, February 23, 2018

Games Manifesto

I previously blogged about Australian made games that feature Aussie themes, characters and locations. Florence, TY the Tasmanian Tiger, Golf Story and Miss Fisher and the Deathly Maze are juts a few examples.  However the majority of games made in Australia are location agnostic or set in other places. Very few include Australian themes or characters.

I made two Aussie themed games back int he early mid 2000's - TY the Tasmanian Tiger and it's sequel Bush Rescue. I did the initial design on the 3rd instalment before leaving Krome in 2005. I've also tried to set up new projects that have a strong Aussie bent.

Steve Stamatiadis and I created a concept called Kat Burglar, staring Aussie Kat Kelly as a free spirited adventurer who specialised in re-acquiring cultural items that had been taken from the original native owners. Her catch phrase was "It doesn't belong in a museum!" and was an anti-Indiana Jones.
Kat Burglar took relics from museums and returned them to the countries of origin


We designed the game and built a prototype but sadly we couldn't find publisher interest.

Like many Aussies, I also wanted to make a Mad Max game, and over time produced many pitches for games inspired by the movie. We even got to pitch EA on doing the official Mad Max game back in 2003 before Fury Road was put on hiatus.
Desert Riggers - a Mad Max inspired game design from 2003


Right now Pete Mullins and I are slowly building out Billy Carts, an Australian themed racing game featuring Aussie animals - it kind of follows in the footsteps of TY with a humorous take on the genre with a larrikin sense of humour.
Billy Carts

So, with a renewed interest in making games that celebrate Australia I thought it could be useful to create a manifesto as a set of guidelines to help myself and others make these games. Then it occurred to me that this just isn't about Australian games - it's about making personal games - and that could apply to anyone, anywhere.

Some of my favourite creators, no matter how otherworldly their content is, have always infused their art with their DNA. George Lucas drew upon his experiences growing up in Modesto, his love of cars and the serials he watched as a kid and put those in Star Wars. The Empire and the Rebellion were also inspired by the Vietnam war which affected him and his generation.

Likewise JK Rowling took her very real life experiences of poverty and depression as inspiration for themes in Harry Potter as well as drawing upon people she knew for characters and places she lived as settings.

Of course these are just two famous examples - so many great writers draw upon their own lives for inspiration.

So, here is my first pass at a manifesto. It's no longer about making Australian games but about making personal games.

Games that can only be made by you.
Games Manifesto 1st Draft


So, what do you think?
Is this a manifesto that you could use?
What would you change?

- Johnno