2 weeks ago we have officially closed the development of our first commercial project Futurust. My company has fulfilled all the contractual obligations we had with the Publisher. They paid us the final installment, hence – the first episode of kickstarting my Indie Development Software House (We help Indiedevs to deliver their games) is over. There are talks with the Publisher to add some features and content that did not make it to final build due to budgeting and time limits. Nothing is on paper so in the end it might not be Cobble Games to add features that were not specified in the contract but were suggested to be added later on.
This postmortem will focus mainly on technical aspects of this game. I have signed a Non Disclusure Agreement with the Publisher so I cannot publicly write anything about their marketing strategy, the budget involved and such.
However, at the end, I will write down some of the general lessons that you, as an indie dev, need to know when dealing with publishers in general, based on what we have learnt from cooperation with this and other publishers.
- We set sail to discover new lands: how I got into this project?
- Saving a burning ship during a storm with pirates attacking -deadlines.
- Stop! Hammer time! – Cost of technial debt and why we had to do refactors.
- We’re running out of food! – Why I had to grow my company in order to survive.
- Land Ahead! – Pushing the half-dead crew to deliver last milestones.
- Mutiny! – The art of saying no.
- Pirates Ahead! – Do’s and dont’s with a publisher.
We set sail to discover new lands
In August 2017 friend of mine (Hi Radek!) called me if I’m interested in helping him out to save a project his current at the time employer was about to kill. The game was called Futurust and 2 former gameplay programmers failed to deliver the working build. Publisher was growing impatient and was about to break the contract with Daniel (concept & story author and a graphic artist) and Bartek (Music & SFX artist).
I was working for another company at that time, but the cooperation did not go well. I was thinking about leaving. I quickly made a working prototype to see if I will be able to deliver the game. I took the job and quickly left the former employer.
As I’ve learnt afterwards Daniel found a support of a publisher and secured the funding for a project. Unfortunately his previous coders either did not deliver on time or were creating tons of problems qualitywise. I was the first one who managed to close the first milestone within 3 weeks.
Saving a burning ship during a storm with pirates attacking
First 3 milestones were made in a permanent crunch mode. Since the project was way behind the planned schedule I had to work 14h a day in order to deliver the milestones. Soon we came to an impression that we will fail with only one coder on board. The scope of this project was way too big compared to it’s budget and time deadlines. I’ve contacted Adrian whom I met on one of the Game Jams several years ago. I asked him if he could help us to implement the minigames so I could focus on adding content and new systems.
Stop! Hammer time!
At around 4th milestones the amount of bugs was so great that literally it was impossible to debug the game properly. I had to patchwork all the code in order to meet the impossible deadlines but the cost of technical debt was getting higher and higher. I’ve decided to make a “exective decision” – STOP! We must refactor this sh*#@ or it’s gonna blow! So I’ve started to rewrite the code from scratch.
I remember that we crunched with Adrian to 4 AM couple of last days just to deliver the build. I got sick afterwards. Adrian probably too. That day I told myself NEVER do this stupid mistake again. Seriously. If you want to refactor then do it step by step. What is more important: design the code first then implement. This sh$t will hit you hard sooner or later.
We’re running out of food!
I’m not going to pretend our cooperation with Publisher was all blooms and roses. One of the issues was that they were always late with payments. ALWAYS! They might not like me saying this but this is not a lie and I can prove it in a court of law by showing dates of payments and milestone approval dates. It doesn’t hit you that hard if you are a small indiedev without a registered company, but it’s painful if you have to pay the tax for a declared income from an invoice which you haven’t got paid for.
They don’t own us any money anymore and we even got a small bonus as a way of saying sorry … but man… this was a horror not knowing if I have enough money to pay for the rent or to pay the VAT and income tax.
Fortunately fate was benevolent to us. I have been contacted by Michał Mielcarek from IFun4All Game Studio.
They are super cool guys from Cracow who made a game called Serial Cleaner. I’ve signed a deal to help them out to deliver some tools for their internal project. We’re still working with them and our cooperation is flourishing. I can say they literally saved us from sinking. They couldn’t have arrived at a better time.
They paid us well and were always on time. That made me enough money to sustain myself and Adrian on full time.
When we closed the 7th milestone we felt refreshing air of hope. We believed the game is going to happen. After all the problems and all the struggle the game was almost complete. I’ve decided to take Patryk, a student from Koszalin, on board. Patryk was looking for an apprenticeships. I welcomed him to our team so Me and Adrian could focus more on our other assignments. Hopefully I will afford to keep Patryk fulltime as he is a super cool dude and a brilliant coder.
Here comes the tricky part of this article. I write this with my one eye looking at the NDA contract I have signed with the Publisher so not to give them an opportunity to sue me. Basically our cooperation with the Publisher was really rough. I have mentioned the delays in payments. I won’t mention other things but you must be aware that at some point we have consulted a lawyer to check if our contract allows us to break it and what would be it’s consequences. Best money investement ever.
I cannot talk about the details, but we haven’t decided to break the contract. We delivered the game. We could do this but we’ve decided the fight isn’t worth the prize. However, we managed to get their attention to force them to speak with us. We’re not planning to continue to work on our future projects with that publisher. Ever. I’m not suggesting anything but it’s up to you to decide.
Just a word of advice for you out there:
- Read the contract before you sign it. Make sure the other party also signs it.
- Pay your lawyer well. They can save you a lot of sleepless nights.
- Remember that game industry is also a business. Don’t accept weak terms.
- Set your boundries. If it’s not on paper it does not exist. Doesn’t matter how nice the other person seems to be.
- Learn the rules of the game. Learn to negotiate.
- There are plenty of publishers on the market. Choose wisely.