2 Dreams is now complete (App Store) and ends with a grand finale.
I am glad my episodical iOS game is not a TV show. It would have already been canceled.
When I started work on my puzzle adventure “2 dreams” several weeks ago I kept risks small. This was just a little side project that I wanted to hit the app store as soon as possible. The goal was to make a small but atmospherical app that would be a good test run for deploying to the app store, a little bit of marketing and seeing how the idea of splitting app development into parts. The plan was to release part 1 first and expand the app every few weeks with a free update.
Today I want to share my experiences.
“2 dreams” hit the app store on monday the 14th of october after developing for about a month. I made a German and an English version to gain interest in my home country as well as internationally.
I knew that episode 1 was kind of short. An experienced puzzle gamer could play it in about five minutes. That was the reason why I decided not to contact gaming blogs because I was felt there was not enough content for a proper review. I wanted to keep that option for later.
Instead I relied heavily on the twitter community. My German account @zeitweise has about 11,000 followers, the English counterpart @sightwise about 375. I also mentioned the game twice on the well established Apple centered fanboys podcast which I am part of. The third puzzle piece in getting the word out was an article in the news section of a German board game website: Spielbox. This article came right out of nowhere but I am rather well known as a board game designer so this might have been of interest to the board gaming audience.
Sales figures on the first day were nice. The app spiked at position 89 in Germany followed by Austria and Switzerland. App store reviews were mostly favorable but as expected people noted the game was quite short. The volume of tweets mentioning the app was rather small. I saw some retweets but it was clear people were not really talking about “2 dreams”.
While I was quite content with the sales in the first days it is more important how your app does in the long run. And if you have a look at the graph you will see that sales figures were dwindling soon.
But hey: This app is an episodical. Things would recover with the first update. Do you see the orange line? This is when the first update hit the store. Almost no effect.
I have sold 525 apps until now (about 50 for a non German speaking audience). I know this calculation is barely legit but this would mean about 4% of my German Twitter followers bought the app and about 13% of my English followers. That are great figures.
But customers did not get the word out. Maybe it was a mistake to release the app so early. Maybe I should have produced more content beforehand.
Social media was nice for an initial spike but not enough. So should I have reached out to the press? Obviously. But I am still thinking that is possible in the future.
About updates. With iOS7 Apple has changed its update policy. Updates now are seamlessly loaded in the background so nobody is aware of it. This is a problem for an adventure game because people just don’t get back to the app. For future updates I will change the color of the icon so there is at least an indicator that something changed.
Do I regret my decisions and how does the future of “2 dreams“ look? If the game would be a TV series I would have to cancel it. Future updates may only cost money. But this is not how to think if you are an indie developer. There is still a story to tell with this app and I will release updates until this is done. Risks are low because even if I’ll lose money by putting extra work into “2 dreams” it is not very much. Some spare time. Not more.
All in all I have to say: “2 dreams” was an interesting experiment for me. And it still is. It is my first step into indie gaming and I think you have to keep trying. If I learned something with this app than it is the wisdom that being an indie developer is much more hard work than the fairy tales of super successful developers tell. I can live with that.
Get in touch: @sightwise
Update (Nov 14th): Episode 3 is now part of the App.
2 dreams (Universal iPhone/iPad on the iOS App Store).
”2 Dreams“ is an episodical, atmospheric puzzle adventure in the world of dreams.
It’s available on the App Store now (in English and German).
There is the saying the hardest thing in making games is to finish them. I think that is true. So if you are starting a side project it is especially important to limit yourself. It felt natural to follow a minimal concept.
2 Dreams lives by its restrictions. It focusses on quite abstract art and design and concentrates on the crazy ideas dreams are made of. It takes you on a journey with the narrator who is experiencing a recurring dream. Where will it go? What does it mean?
Although the overarching story already seems to be there there, the development of 2 Dreams is ongoing. 2 Dreams is an episodical adventure. At the end of each episode the player is presented with a puzzle that is not solvable within the current episode. Instead (s)he can make creative suggestions on Twitter how to proceed. The best ideas will influence the direction the game will take.
It’s an experiment and I don’t know if it will work. But I am looking forward to it and I will be glad about everyone who will support it.
I have taken a break from level design for the last two weeks in order to setup a more advanced sound system. I am using AudioToolkit from the asset store now. It was a little bit harder to setup than I thought but object pooling and managing audio groups like atmo, effects and music is great.
Atmo sounds are new to my project. I felt the scenery really profits from some atmospheric background.
Although AudioToolkit does some heavy lifting I had to write the music manager on my own. I don’t want to just stitch song after song but have the music react a little bit faster to the actions of the player. I am not really sure if this is too much detail so I don’t know if I’ll keep this idea.
Another thing to consider is putting in voice over for the titles between levels. My girlfriend heavily votes in favor of this so I will test this effect. But this would mean that I need a native speaker as a voice actor. Huh! Didn’t I plan to make a quite simple project?
On the release of the next beta: This will take a little bit longer than planned. I’ll have to get the audio system up and running and want the first two chapters of the game first.
The last two weeks I’ve been working very hard on a new alpha that I’ll expect to release somewhat later this month. So much has changed since the last one. But I am very content with the gameplay aspects now so I dove a little bit more into story. Yes, “Draft” will be a story driven platformer with some cliffhangers as well.
I am also doing stuff under the hood. I wrote some little helper scripts that I can trigger with shortcuts. Setting up a scene is quite a mess and it is very convenient to just blend the background images out so I can manipulate the platforms. See this little example:
@MenuItem ("Window/Toggle Background %&b")
static function MenuToggleBackground()
var obj:GameObject = GameObject.Find("Background");
if (obj.transform.position.x >= 6000) obj.transform.position.x -= 6000;
else obj.transform.position.x += 6000;
It searches an object called Background (where I put all my background objects into it) and moves it along the x axes out of the way and the next time back. One of the more interesting parts is how to define the shortcut:
@MenuItem ("Window/Toggle Background %&b")
Here you see the menu path where the menu item will appear and the shortcut definition. %&b means Command-Alt-B. You have keywords for other modifier keys, too. Just check this page of the Unity documentation.
Games I played last week:
This afternoon I took a short break and made a little game jam based on the code I wrote for Draft. Don’t say this is foreshadowing E3.
And it’s finished now.
You can play the game here: A job in the industry (Unity Webplayer)
This time I will tell you how I design levels. If you only want to hear aboutthe progress of the game in general you can skip to the last paragraph.
While reading the article you can play the progression of the level design here (drag to control platforms): How to create a level
Designing a level
There is the romantic idea that I take pen and paper and scribble new level ideas. That sounds nice but I have to admit that I usually start designing levels right within Unity. But not today.
Step 1: Getting an idea
First of all I decide which game mechanic I want to explore. Last week I introduced keys to open the door of a level. This time I thought: Why not require the player to get more than one? I’ve been doodling on paper. I’ve been randomly drawing boxes. Then I got my first idea. Why not put a key far right and a movable jumping platform far left so the player had to go all the way across the screen to get the key? And this is what it looks like:
Step 2: The first key
After bringing it on paper I switched to my computer and rebuilt it with Unity. This is a process where I move Game Objects around the screen, hit the play button, test and repeat. Until the level is playable:
Not many words today. This week I basically used “Draft” as a playground to experiment with different level designs.
I have to admit I am not really there yet. Most levels are solved through trial and error at the moment. Thinking about the solution helps but you can get the solution by just pushing those blocks randomly.
I am not sure if this is a real problem but some people seem to expect more of a brain teaser. As many of my boardgames my current iteration of “Draft” seems to fall a little bit in between genres.
In this version I introduced moving platforms, portals, darkness and keys and with these elements some more sophisticated puzzles should be possible.
I’m proud to tell you that you can now test a very early alpha build. Please let me know what you think. You need to install Unity Web Player.
Control the blocks with your mouse: Draft Alpha 2
Alternatively: Linux build
Please comment on everything that comes to your mind. Here on the blog or via Twitter.
Cool games in beta from other people I played this week: