Hey Guys,
Finally got the update submitted last night. Sorry it took so long this last month has been kind of demoralizing with all the stuff that has been going on, 2 Delays from Apple, the Pacific Islander Controversy, 2 rejections on our Jackie Button and the need to recode our animation engine for this last update because it was going to slow. Its no wonder we lost some steam and are ranked 11th in the US at the time of this post (oops I take that back, just checked and we are back to 9th). Given all this, we are so grateful about how well Pocket God has done; it really feels like we hit the lottery.
We still have many more updates that we want to do (this thread will be the first to know if we ever decide to hold off on our updates) but we will not be killing ourselves to do an update a week anymore. First of all, the approval time for updates has risen from 3 days in January to 8 days as of last week. Plus, we want to hold off on submitting a new update until at least a day after the old update has been released. This will allow us to see if anyone is having issues that our beta testers didnt catch, so we can fix it in the new build. The last thing, we want to start focusing on cleaning up our engine so we can start a new game in a few weeks. We will still try to do pocket god updates during the development of our new game but if sales or interest in Pocket God takes a nose dive, then we need to scramble and try and release something as soon as possible. There will be plenty of forewarning when we will make this shift and I think if we can keep with the updates of pocket god, there is no reason why it cant hang in the top 20 for a long time to come.
About this update, The Pygmies finally defend themselves! We gave them a spear to fend off the TRex! We also added new options for the outhouse, egg cracking and spear, so you dont have to worry about them accidently wandering into the outhouse when you dont want to, and can play with the egg without it calling the TRex. The combat method is pretty simple and in line with the rest of the game, a spear drops from the sky and you can hand it to a pygmy and they throw it and hit the TRex, enough hits and the TRex dies and falls into the water. There is even a little power bar for the TRex. The whole purpose behind this trilogy of updates was to get to this point. Its allowed us to add a new island, to create a way to animate really big sprites like the TRex, and to give the Pygmies an ability to fight other creatures. If we have time, we will expand on this in the future and give the pygmies RPG stats where they can throw the spear harder the more creatures they kill. There is also a secret unlockable which uses a new leaderboard, "Loving Pocket God", some of you have already found it and wondered what its about, it ties in to the easter egg and is a new sacrifice.
About the new game, there were some interviews that where we mentioned we were thinking about Pocket God II and a new game that has nothing to do with the Pocket God Universe (Island?). For the most part, we have been going back and forth. Do we try and capitalize on the success of Pocket God by doing something along the same lines with the same characters or do we try a new idea that might be fresh and allow us to have fun with a more traditional style of game. I think we are leaning toward doing something completely new and then possibly coming back to Pocket God later on, once we have had a vacation from it. I can't really say much about the ideas yet because its soo early but Pocket God II will probably not be the same kind of experience, there will be elements that we borrow from the original but there will be more game play involved. The only thing I can say about the new idea is that it will have Tremendous Excite!
Speaking about the technical stuff. Obviously, we did a lot of optimization this last week. Pocket God originally started off as the code base that I used to learn Objective C and we added so much so fast that it is just getting a little messy. Normally, when creating games like this, you spend some upfront time figuring out what kind of functionality you need and you create an optimized engine and toolset to accomplish the task before starting to make the actual game. In this case, we did it in reverse, we just started throwing new features at it without any kind of preplanning or toolset and created all the code on an as-needed basis. Not knowing objective C that well and being rusty at C++ meant we didn't choose the best practices when building the engine, I chose to make something that was super generic and could be customized really easily (flash as3 mindset), but in the end, it was too slow to handle everything. In hind sight, I would have coded most of the engine in C and C++ and just used objective C for some really high level stuff. I also made extensive use of dictionaries and smart arrays for easy handling of assets but it's just too much CPU. I was able to recode half of our display engine last week to get rid of some of these high level features and its running way better now. We still have to convert some functions to the new engine (storm clouds, ocean, and stars) but we have a good basis for doing so. The way the engine is setup now, its really tool heavy, we have a lot of preprocessing going on and for something like an animation, the vertex arrays are pre transformed whenever possible. Before, when we animated the TRex, we just send position, rotation, and scale for each piece and used matrix math to find the final screen position for each piece. But now, we just send in an array of pretransformed verts and textures and there is only a single matrix operation for the entire TRex. The new data format is a binary file as opposed to XML (we are really XML heavy) which has also sped up our startup time. Im going to create binary representations for the rest of our XML and startup time should get even better.
About the future of Pocket God I. We have so many directions we can go in right now, we can explore what's behind the rock pile on the second island, we can add mini games (how many bounces, farthest throw, etc), we can add more natural disasters, and we can add features like fire and cooking. This patchwork of features that we created is getting a little complex and its hard to settle on a single direction. However, I think we are going to go the natural disaster route with the next update. We have an awesome idea for a tsunami, it will probably take some work to pull off but since we dont have the pressure to do an update a week, we are going to take our time and really do an awesome job with it. I'm not saying we will purposely take longer than a week, just saying we rather do a cool update than find something we can easily pull off in less than a week. Also, the tsunami will open up a new location. I don't think anyone will be able to guess what that location will be.
Finally got the update submitted last night. Sorry it took so long this last month has been kind of demoralizing with all the stuff that has been going on, 2 Delays from Apple, the Pacific Islander Controversy, 2 rejections on our Jackie Button and the need to recode our animation engine for this last update because it was going to slow. Its no wonder we lost some steam and are ranked 11th in the US at the time of this post (oops I take that back, just checked and we are back to 9th). Given all this, we are so grateful about how well Pocket God has done; it really feels like we hit the lottery.
We still have many more updates that we want to do (this thread will be the first to know if we ever decide to hold off on our updates) but we will not be killing ourselves to do an update a week anymore. First of all, the approval time for updates has risen from 3 days in January to 8 days as of last week. Plus, we want to hold off on submitting a new update until at least a day after the old update has been released. This will allow us to see if anyone is having issues that our beta testers didnt catch, so we can fix it in the new build. The last thing, we want to start focusing on cleaning up our engine so we can start a new game in a few weeks. We will still try to do pocket god updates during the development of our new game but if sales or interest in Pocket God takes a nose dive, then we need to scramble and try and release something as soon as possible. There will be plenty of forewarning when we will make this shift and I think if we can keep with the updates of pocket god, there is no reason why it cant hang in the top 20 for a long time to come.
About this update, The Pygmies finally defend themselves! We gave them a spear to fend off the TRex! We also added new options for the outhouse, egg cracking and spear, so you dont have to worry about them accidently wandering into the outhouse when you dont want to, and can play with the egg without it calling the TRex. The combat method is pretty simple and in line with the rest of the game, a spear drops from the sky and you can hand it to a pygmy and they throw it and hit the TRex, enough hits and the TRex dies and falls into the water. There is even a little power bar for the TRex. The whole purpose behind this trilogy of updates was to get to this point. Its allowed us to add a new island, to create a way to animate really big sprites like the TRex, and to give the Pygmies an ability to fight other creatures. If we have time, we will expand on this in the future and give the pygmies RPG stats where they can throw the spear harder the more creatures they kill. There is also a secret unlockable which uses a new leaderboard, "Loving Pocket God", some of you have already found it and wondered what its about, it ties in to the easter egg and is a new sacrifice.
About the new game, there were some interviews that where we mentioned we were thinking about Pocket God II and a new game that has nothing to do with the Pocket God Universe (Island?). For the most part, we have been going back and forth. Do we try and capitalize on the success of Pocket God by doing something along the same lines with the same characters or do we try a new idea that might be fresh and allow us to have fun with a more traditional style of game. I think we are leaning toward doing something completely new and then possibly coming back to Pocket God later on, once we have had a vacation from it. I can't really say much about the ideas yet because its soo early but Pocket God II will probably not be the same kind of experience, there will be elements that we borrow from the original but there will be more game play involved. The only thing I can say about the new idea is that it will have Tremendous Excite!
Speaking about the technical stuff. Obviously, we did a lot of optimization this last week. Pocket God originally started off as the code base that I used to learn Objective C and we added so much so fast that it is just getting a little messy. Normally, when creating games like this, you spend some upfront time figuring out what kind of functionality you need and you create an optimized engine and toolset to accomplish the task before starting to make the actual game. In this case, we did it in reverse, we just started throwing new features at it without any kind of preplanning or toolset and created all the code on an as-needed basis. Not knowing objective C that well and being rusty at C++ meant we didn't choose the best practices when building the engine, I chose to make something that was super generic and could be customized really easily (flash as3 mindset), but in the end, it was too slow to handle everything. In hind sight, I would have coded most of the engine in C and C++ and just used objective C for some really high level stuff. I also made extensive use of dictionaries and smart arrays for easy handling of assets but it's just too much CPU. I was able to recode half of our display engine last week to get rid of some of these high level features and its running way better now. We still have to convert some functions to the new engine (storm clouds, ocean, and stars) but we have a good basis for doing so. The way the engine is setup now, its really tool heavy, we have a lot of preprocessing going on and for something like an animation, the vertex arrays are pre transformed whenever possible. Before, when we animated the TRex, we just send position, rotation, and scale for each piece and used matrix math to find the final screen position for each piece. But now, we just send in an array of pretransformed verts and textures and there is only a single matrix operation for the entire TRex. The new data format is a binary file as opposed to XML (we are really XML heavy) which has also sped up our startup time. Im going to create binary representations for the rest of our XML and startup time should get even better.
About the future of Pocket God I. We have so many directions we can go in right now, we can explore what's behind the rock pile on the second island, we can add mini games (how many bounces, farthest throw, etc), we can add more natural disasters, and we can add features like fire and cooking. This patchwork of features that we created is getting a little complex and its hard to settle on a single direction. However, I think we are going to go the natural disaster route with the next update. We have an awesome idea for a tsunami, it will probably take some work to pull off but since we dont have the pressure to do an update a week, we are going to take our time and really do an awesome job with it. I'm not saying we will purposely take longer than a week, just saying we rather do a cool update than find something we can easily pull off in less than a week. Also, the tsunami will open up a new location. I don't think anyone will be able to guess what that location will be.