Skip to content

Push-Down Stack

At the start of the year I began working on Postal Worker, a game for the iPhone based on an idea that I came up with at GCAP in Melbourne at the end of 2009, while talking with a couple of mates over coffees in the hotel bar. I was totally psyched, and gave myself a 100-hour deadline to get the game done and dusted. I started by building a game engine on top of AirPlay SDK. It was fun, and I was making good progress.

Then Global Game Jam suddenly loomed, and I decided to put the Postal Worker project in pause mode so I could hack out a game in 48 hours. I took the opportunity to learn ActionScript, and made a dinky little flip-screen arcade adventure called Bogus Quest. I spent the week following GGJ adding new features to the game and fixing some bugs. I still have a list of things that I want to do, including adding a proper loading screen and adding sound effects.

Then Mike Turner came and raided the Interzone offices, and I became involved with spreading the word about what happened in an attempt to get the Australian government to actually do something about it.  A lot of people have been seriously disadvantaged by all of this, but, at the same time, there was a great sense of camaraderie, and it was quite a lot of fun analysing documents, editing video and basically getting the word out to journalists.

Tonight I realised that I’ve got three hobby projects on the go. I’m a self-proclaimed procrastinating perfectionist, by which I mean that I have a bunch of crazy ideas but never actually get around to completing any of them, out of fear of failure. Ask me about Magnate, my web scraper cum news aggregator, or my procedurally generated text adventure, or MegaHAL10 (the next version of the chatterbot I wrote 15 years ago), or Thrust Harder, or dBoard, or SpeedReader, or Fanglr. All projects that I’ve been incredibly excited about, and all terribly incomplete.

Well, no more. I’m going to manage my push-down stack, and make sure that I always go back to and complete projects that were interrupted. I won’t stop the interruptions. They’re fun. But I will make my default activity finishing the current project, whatever that might be.

So look out for a blog post about Bogus Quest soon. And, after that, keep your eyes peeled for Postal Worker 13. I promise!

Interzone: The Downward Spiral

Mike Turner Questioned by Interzone Employees

This “page of links” is an attempt to document the last days of Interzone, Perth. It’s a crazy story, and it’d be great if you could help us out by spreading the word.

If you have any links that I don’t know about, send them to kranzky@rockethands.com.

The People

Greg Chadwell (left), Marty Brickey (right)

I am Marty Brickey, the founder and CEO of Interzone Entertainment. Two years ago I took an idea and today Interzone Entertainment is a multinational company with over 100 employees in Brazil, U.S., Australia, and Asia, and we have a game in Alpha testing. It’s been an exciting ride indeed.

Having so many talented people relocate their families to our Perth, Western Australia studio shows their dedication to this project, and their level of commitment to creating a futebol franchise with global appeal,” said Interzone Entertainment executive vice president Greg Chadwell.

Mike Turner (right)

Interzone Futebol has been in development for almost two years, and we are in closed alpha testing now. We are funded by Interzone Entertainment, our publishing arm, which is a privately held company created by a group of investors with a history of investing in the game space.

The New Company

Big Collision games has assembled a diverse team of experienced individuals … we are a Big World Technology licensee … our first product, Interzone Futebol, is in a closed testing phase now and it will be commercially available in multiple markets before the World Cup.

The Middleware

BigWorld provides a mature middleware platform for developers of Massively Multiplayer Online Games (MMOG) and Virtual Worlds that is fast becoming the industry standard.

Right of Reply

Let me be clear that to this day we are very close to closing a major round of funding and have always had the intention of making Perth whole through proper channels if in fact we make a full exit from Australia, and in fact we have suspended operations there until a resolution can be met.

The Downward Spiral

Article from the WA Business News

The Australian Tax Office is investigating an international gaming company after it was hit with a million-dollar tax bill and closed its Perth office without warning. Interzone was set up with the help of a half-a-million dollar State Government grant.

A former Interzone employee Tim Colwell says staff were allowed into the office yesterday to retrieve their personal belongings and found that all the computers had been removed. “Everything is gone so whatever remained of the company in terms of value obtained from liquidating it is now gone,” he said. “Instead of having basically nothing we now have absolutely nothing.

THE DIGITAL Hub has requested a meeting with the management of a tenant company over its alleged involvement with a computer games firm in Australia that wound up last month owing more than AUS$1.5 million (€993,000). The company, Big Collision Games, has agreed to a meeting when it formally occupies its Irish office some time later this month or in April. It signed an agreement in December to take space at the Digital Hub, a State-funded incubation facility for digital media and games companies.

The news we had at hand was that Interzone Games, the Perth game development studio, will be closing down sometime around the 15th of February, and a Chicago executive from the parent company was due to arrive this week to bring the assets and servers from the Perth studio back to the U.S. The locally developed BigWorld tech based MMO social soccer game, Interzone Futebol, and all its assets and code is set to be handed over to a new studio in Ireland called Big Collision Games where they’re expected to continue development with new funding received.

This announcement caused complete and total outrage in the Perth studio. These are people who have been consistently lied to, deceived, and let down by Marty, Greg and Mike. These are people who have stayed true to the company through over a year of inconsistent funding, non-existent technical support, and long unpaid working hours.

Mr Turner, who flew into Australia this week, plans to remove all the intellectual property (IP) from the site, including the latest games development data and computer servers, and return to the US on Saturday. Upon his return, it’s understood that Mr Brickey and Mr Turner will complete the existing games development project with a small contracted team of developers, essentially taking with them the Western Australian employees’ last 18 months worth of work, leaving them with little to show for it except for a long list of questions and even longer list of demands for unpaid wages and superannuation.

Police were called to the Interzone office on Wednesday when a former company official tried to remove computer equipment. “It contains all the intellectual property we have been working on for the last 18 months, IP which they haven’t paid for yet,” Mr Wai said.

The executive warned against possible “sabotage,” telling former employees to carefully consider “how far [they] are willing to go” to get their unpaid wages. “Eight of our major investors are already independently retaining council (sic) in Perth and are reading (sic) to strike hard and fast at anyone committing tortuous (sic) interference, slander, or liable against the company,” he wrote.

Mike Turner flew to Perth this week with the intention of obtaining all the content and server hardware that the studio worked on and will be returning to the U.S today. Former staff have found this unacceptable, arguing that the work produced for the last 18 months has not been compensated or paid for yet. Police were called in to the studio on Wednesday night as locks were changed for the server room and offices.

According to an ex-employee of the company, staff have not been paid for months, and a planned move of intellectual property and server hardware could result in vastly reducing the value of the Perth-based studio in the face of an assets sale.

One former employee claims that the developer owes $1 million to the Australian Tax Office (ATO) and another $500,000 to past and present staff. It is further claimed that the company’s US parent is trying to pack up server hardware and game code to keep current projects such as MMO Interzone Futebol alive as its Perth location goes under.

Last week a former world designer for Interzone Entertainment, the company behind the social and soccer-themed virtual world Interzone Futbol, wrote to Kotaku to tell them of the company’s cash flow and tax problems. In brief, the company is short on cash and closing offices. The CEO, however, says that Interzone is close to raising more money and will finish Interzone Futbol.

IT could have come from the pages of a Hollywood thriller – protesters in the streets, claims of corporate sabotage and the stealing of lucrative intellectual property. Now it seems only liquidation and lawsuits will result from the tens of millions of dollars invested in what one company co-founder has acknowledged as a “risky’’ venture, leaving employees searching for answers.

In the continuing saga of the Interzone debacle, Interzone employees have just released footage of a former Interzone manager attempting to unlawfully retrieve hardware from the Perth game studio containing the Interzone Futebol content and assets that the employees had worked on, the previous 18 months of which were completed without payment.

The 15 staff who are left without their back pay and entitlements were picketing the office for several days and managed to nab the vice-president of business operations, Mike Turner, one night as he was allegedly removing intellectual property from the company’s office.

Interzone Vice President of Business Operations Mike Turner did appear at the offices on the 10th of February where he is alleged to have been collecting work on Interzone Futebol from the Company servers to return to their US Offices . Outraged staff consider Interzone’s ownership of the Intellectual Property of the game to be in question. The project now being undertaken by Big Collision Games, based in Ireland.

Blogs

In a bizzarre story, the American CEO of Perth-based game developer Interzone has shut down shop in the Australian Government Grant-funded offices to flee the debt-ridden company and establish a new company here in Ireland, based in the Digital Hub. The company owes the Australian tax payers $1million (Aus) and the employees $500,000 (Aus).

never, EVER EVER work for these snakes. They are not at all interested in the business of making a good game, pure and simple. Investigations have shown that they have upwards of seven companies that move money and shares around in order to get away with this bullshit – basically what you see here is a “pump and dump” scandal that went horribly wrong

Over the past week, issues between local developers employed at the Western Australian office of Interzone and the US-based head office came to a head when Interzone’s VP of Business Development, Mike Turner, was confronted by employees.

Australian studio Interzone is in some hot water down under, suffering from the 2008 credit crunch and several forced studio closures, it now owes over a million USD in taxes, employee payments and pensions.

So let me get this straight, Marty operates a company illegaly for 18 months, doesn’t pay his debts, exploits and abuses employees then “appropriates” the unpaid-for intellectual property from Perth… and has the insolence to claim the state government owes him $120,000?

One of the Interzone executives recently flew into Australia, and was caught by staff (on video!) entering the office late at night, allegedly for the purpose of copying all the intellectual property of the studio (Interzone Futebal, a game still in development) with the (alleged) intent of taking it back to the USA to continue working on it – just days before the ATO closed in to liquidate their assets.

The West Australian and other sources are reporting that Mr Turner intended to retrieve all hardware and intellectual property from the site, including the latest game data and servers, and return with them to the US before the ATO closes in on the 15th of Febuary to seize all company assets.

Interzone in WA is days away from liquidation owing $1.5M to the ATO and staff. I sounds like the whole mess has been dragging on for months with staff hanging in there to finish the project so the company could be saved. Sadly, as many others have found, loyalty isn’t a highly valued commodity these days.

[The police] refuse to check Mike Turner’s passport (we strongly suspect that he is not here on a proper business visa and is therefore unable to legally do “business” like this in Perth), refuse to verify the actual validity of the document, refuse to check him for any ID or proof of employment at all. In fact, Mike Turner could have called himself Marty Brickey and the cops would probably believe him.

We’ve contacted ASIC over and over again asking for help, but they either don’t care or are just naive enough to get sucked into Marty Brickey’s lies. Isn’t the government meant to take care of its residents as opposed to protecting what basically (in my opinion) amounts to scam artists?

When Mike [Turner] was met with questions as to how these debts will be resolved, he left the premises. He then came back that night after dark and changed the locks of the building. He barred employees from their workplace (personal belongings still inside) … Most notable was the climax yesterday where employees were ordered off their own workplace by a spokesperson of the Department of Commerce?!

It is alleged that the company has been operating illegally, with no regard for Australian corporate or tax laws for quite some time…

I just received a link to this rather incriminating writeup about IZ Corporate management tactics. It reeks of dishonesty, fraud and greed. For more information, see the story on Kotaku. It is a very interesting read, trust me.

Working at Big Collision Games in Ireland or signing a publishing deal with these shonks Interzone Entertainment? DON’T

Seems that things are hitting the fan with regards to Interzone Games back in Perth … My heart goes out to all the great guys (and girls) in Perth who are stilled owed money and are still having to deal with all this a year after I resigned.

What are you doing Mike? Seriously, what the hell are you doing? Please come to your senses and stop playing any role in this insanity. Anyone asking you to perpetrate illegal or questionable actions probably hasn’t got your best interests in mind.

Forums

A US owned gaming company has fled Australia, leaving unpaid employees and a massive tax bill. Apparently many staff have been working unpaid for months to allow their game to ship and hopefully the company to recover. Interzone’s Perth (Western Australia) office was created with the assistance of a state government grant.

From the various news snippets, it *looks* like these guys are chasing government hand-outs to fund their game in countries / areas who currently don’t have a games industry, and where the government is probably chomping at the bit to hand out money to companies coming in with IP.

[Mike Turner] came back after dark, when we’d all gone home and changed all the locks, telling us we were all suspended and that we were trespassing (both of these are false. You can’t be suspended when there is outstanding pay, and we were on public property). With the help of a contracted Bigworld Technology server engineer, over the next two days they downloaded an unknown quantity of data from the servers, quite possibly including property that was not their own … As an employee, I’m horrified at the idea of the parent company swooping in and flying off with all our hard work that they haven’t paid for, and dodging all responsibility for the massive debt they’re leaving behind.

Marty Brickey, Mike Turner, and Greg Chadwell cannot be trusted or counted on. Anybody applying for work at Big Collision Games in Ireland needs to know this. Anybody that is contracted by them needs to know this. Anybody entering into any future publishing deals with them needs to know this!

The stuff you havn’t heard is about the week long stakeout at the office involving current employees (I say current, because Interzone corporate hasn’t technically fired or shutdown the company yet, just stopped paying staff and locked the doors) and a former director of the company who has flown from the states to copy all the IP and piss off back to the US before the authorities catch up with them.

You may all be interested to know that Mike Turner was at the Interzone offices last night, up until midnight. He went in under cover of darkness and changed the locks on the server room and offices. Staff are now unable to get into their own workplace. Police were called. Footage was taken. It’s all very dramatic.

Postal Worker Pause!

I plan to take a bit of time off to (a) recover from the fantastic Global Game Jam that was held over the weekend and (b) check out some of the other Global Game Jam games. Big props to Simon Wittber for organising such a great event, and well done to all who took part!

I went into GGJ with the intention of developing a Flash game, even though I’d never done that before, and didn’t know my ActionScript from my Objective C. It was a long haul; I worked around 40 hours in a single weekend (the equivalent of a normal working week), and I did all of the design and implementation myself (although Pazu and Sizzle helped with graphics, and I used some other freely available assets).

So, without further ado, I humbly request that you check out and vote for Bogus Quest.

Postal Worker 12

Tomorrow marks the beginning of Global Game Jam 2010, which means I’ll take a brief respite from Postal Worker development. Expect the 13th installation to be late in the week next week.

Tonight I started by implementing a pause mode in KranzkyEngine. You can now pause, resume and stop it. Pause is pretty straightforward to implement; the engine sets or clears a boolean flag, and passes a time delta of 0 to all update methods if it is paused. It worked without issues in the HelloKranzky sample game.

Of course, once the pause mode was in, I wanted to tap to pause and tap again to unpause. Sure, this could be hacked in quickly, but the whole point of this exercise is to build a neat, re-usable game engine, so I took the lengthier route. I realised that I want at least four “managers” in the game engine:

  • The ContextManager, which you’ve met before
  • An InputManager, to take player input (keyboard, multitouch), appropriately transformed
  • An EntityManager, to handle all of the game objects, and
  • A SystemsManager, to handle various systems (like Physics), where each System is responsible for all of the Components that may be attached to Entities

So I began by refactoring the ContextManager to derive from a KranzkyManager ABC, and then I added addManager and getManager calls to the Engine. Internally, the Engine iterates over the list of managers, calling update() and render() on each one.

The cool thing about this is that a game could, conceivably, add a new manager to the engine without touching any engine code. Which is awesome.

Anyway, by the end of the night I had the sample game running, identically to before, using the new system. And I didn’t have any time to implement the InputManager that started this whole thing off. That’ll be for next week :)

Postal Worker 11b

No update tonight – we had family dual-birthday celebrations at “The Burswood”, where we ate awesome food and watched fireworks from a distance. But, since I was asked, I thought I’d capture a screenie from the Kranzky Engine running on the iPhone. Note that there are three contexts running. They are called “Menu”, “Game” and “Pause”. Unfortunately, the names of the contexts only print in the debug build, as the strings get stripped out of the release build (an aside; contexts are created by a class factory that takes a string name, and refer to each other via a string name – these strings are hashed to int32’s by Airplay). Note that the Menu context is transitioning to the Game context (one is stopping and one is starting), and that the game context, in its init() method, overlaid the Pause context (which is also starting). Finally, note that the Game context draws the Captain Onion sprite.

Postal Worker Screenie 01

Postal Worker 11

Pretty happy tonight that the game context manager has come together so nicely. I’ve created a bunch of different contexts (splash, menu, game, pause), and can easily transition them in and out, and overlay them on one another. It’s all pretty cool. The only wrinkle is that there was a perceivable pause when the “Captain Onion” sprite is loaded, which happens when the game context initialises. This lead me down the path of figuring out how AirPlay’s resource manager does its thing; something I’m still in the thick of even though my two hours for tonight are up. So, that’ll be the plan for tomorrow: finish figuring it out!

After that, I expect I’ll start looking at handling user input, and making the various game contexts able to process input, steal focus and so forth.

Postal Worker 10

Wow – 20% of the way through the project. Scary stuff.

Tonight I got the first version of the ContextManager up and running. Right now the KranzkyEngine has the following structure:

  • KranzkySingleton
  • KranzkyEngine < KranzkySingleton
    • Initialise the AirPlay framework
    • Hook into iPhone events
    • Run the main loop
      • Call KranzkyContextManager to update and render
  • KranzkyContextManager < KranzkySingleton
    • Manage the list of known KranzkyContext objects
    • Manage the list of currently running KranzkyContext objects
    • Handle overlaying one KranzkyContext on another
    • Handle transitioning from one KranzkyContext to another
  • KranzkyContext
    • Handle state transitions (ready -> waiting -> starting -> running -> stopping -> stopped

The “HelloKranzky” sample game looks like this:

  • GameContext < KranzkyContext
    • Implement update and render
  • HelloKranzky
    • Add the GameContext to the KranzkyEngine
    • Then tell the KranzkyEngine to start at the GameContext
    • Then call Kranzky::Engine::instance()->main()

This is all very cool. The next step will be to implement a bunch of different contexts to represent all of the different states of PostalWorker, and to hook them up to implement the click-through storyboard that I mentioned previously (and which I was hoping to have done by this update). I’ll likely find a few bugs in the implementation so far, as the storyboard will make use of stacked contexts with transitions as they start and stop. But that’s all good!

Postal Worker 09

Tonight I got a big chunk of work done on the Context and ContextManager, and I spent some time pulling apart the generic KranzkyEngine from the toy game that uses it (which is called HelloKranzky). Still a bit more to do until I can implement the click-through storyboard I mentioned, so looks like I’ll miss my deadline by a day or two (especially since a fortnight of birthday celebrations begins tomorrow).

Apart from that, we RocketHands folks have been debating the best way to involve a third-party in the development of one of our games. This was motivated because Postal Worker was conceived by me and two outsiders at GCAP in Melbourne last December, and one of those people (Pazu) will likely be doing the art for the game. RocketHands will publish the game, and I’m working in my role as a RocketHands team member, so what happens if the game does ballistic and pulls in a cool one million dollars?

Well, in that case, Pazu (who would happily work on a project such as this just for the fun of it) would be rightly annoyed. So how much of that $1m would he deserve to get? And what about the mysterious “third man” who helped us conceive this baby? Should he get anything? How much value can be placed on that brief conversation over coffees during a conference compared to actually designing and implementing a game? Really, my main motivation would be to funnel a substantial amount of that $1m into RocketHands, to allow us to set up the company as our primary concern, and to do what we love for a living.

We’re toying with a three-tiered model, which goes something like this:

  • The first $X of revenue goes straight to RocketHands (to recoup costs associated with marketing and publishing).
  • The next $Y of revenue is used to pay for work done, at a reasonable rate.
  • After that, Z% goes to RocketHands, and (100 – Z%) goes to the development team. The development team decides how to split things up.

So, in our hypothetical “Postal Worker Makes One Million Dollars” thought experiment, we might do something like this:

  • $1000 goes to RocketHands, to pay for mailing out all that fancy Postal Worker schwag to the games journalists, helping us get awesome revues.
  • $9000 goes to Pazu and me. I get $6000 (100 hours at $60/hr) and he gets $3000 (50 hours at $60/hr).
  • 70% of what’s left goes to RocketHands (that’s $693000 – we quit our jobs, lease an office and start working on our XBLA game).
  • 30% of what’s left goes to Pazu and me (that’s $297000).  We give $25k to the mysterious “third man” to keep him quiet, and $2k to charity. I then get 2/3 of it (because I worked 100 hours and Pazu worked 50), which comes out to $180k. Pazu gets a measly $90k.

My question to you is this: who is getting ripped off here? Does it seem fair that RocketHands, which didn’t really do all that much, made a whopping amount of money? Especially when Pazu only ends up getting a bit less than 10% of the total earnings? Or, does $93k for a coffee in a hotel and a weeks worth of work seem like a good deal?

Pazu, your thoughts please…

Postal Worker 08

I mentioned to Beetlefeet at lunch today that I really need to go through the AirPlay documentation to make sure I’m aware of everything that’s there, because up until now I’ve only referenced it on a need-to-know basis. Well, that pretty much sums up how I’ve spent my two hours tonight. I started by putting the final spit-and-polish on the main game loop, before skimming through the documentation, top-to-bottom, and quickly hacking out little test scenarios when things didn’t make sense, or sounded interesting. All that should come in useful over the next few weeks.

I finished off the night by stubbing out the rest of the Context Manager (which I’m now calling the Game State Manager). I should be able to finish off the bulk of that tomorrow. I expect the trickiest part will be investigating how to maintain a stack of Contexts, and how to retrieve them by name. AirPlay SDK has an Array type and a fast string hashing implementation to enable that kind of thing, and recommends not to use the STL. So a simple hash map may be a bit more work, and more of a lower level, than normal. Got to make sure I get it right!

Postal Worker 07

Tonight was pretty mundane. In no particular order, I

  • set Pazu up with an ad-hoc build;
  • made sure my iMac has a static IP, as I need to run a server on it for packaging the game for iPhone deployment;
  • figured out how to view crash logs on the iPhone;
  • got more excited about GDB on Windows for debugging the ARM build (yep, found and fixed a crash bug);
  • continued work on the game state manager; and
  • improved the main game loop.

Things are progressing nicely, and I’m quite comfortable with the tools I’m using to build stuff. I need to sweat the small stuff at this stage of the project, as getting things right now will provide me with firm foundations for building the rest of the game. One example of this is the main game loop. I need to make sure that the time deltas I pass to the update are either fixed or within some reasonable range, I need to yield to the OS correctly and frequently enough, and I need to make sure I can handle being interrupted (by a phone call, for example).