When we started working on Cally’s Caves 3, it was clear that we needed to improve our tile system to give the game a better, more detailed look. In our previous two games, we used a really simple tile system consisting of 3 tile types; a “path” block, a “fill” block and a “boulder” block. We used the boulders as our “walls,” and flipped the path block for our ceilings.
It was a very simple system, and it worked for us at the time. A couple of months into Cally’s Caves 3 development, however, our artist 0HK0 suggested using a much more complex system to give our game some more visual flair. The suggested tile system would have two types of walls: environment walls and background walls. The environment walls tile set consists of 16 block types, and the background walls have 9. This dev diary will outline exactly how our tile system works, in the hopes that others may find it useful.
When we came to the decision to make Cally’s Caves 3, we knew that we would have to radically rethink many of the gameplay mechanics that were in Cally’s Caves 1 and 2. One of the biggest benefits of creating a direct sequel is that it gives us an opportunity to do things differently. We are proud of our first two games, but it’s always helpful to take a step back and try to evaluate what you’ve created from a different perspective. Then, we can use our experience making the first two games to make Cally’s Caves 3 bigger, and much better. This Dev Diary will outline many of the design decisions we made during the planning phase of Cally’s Caves 3 development.
Bigger, but not Always
Cally’s Caves 1 and 2 were made of art assets that were mostly 32×32 pixels. We managed to get away with it by zooming in a little bit on the assets, so they appear larger on an iOS screen that 32×32 pixels. While we are happy to keep going in that direction, we know that we want to have some enemies or bosses that are quite large on the screen. This presents a unique challenge, as some of the boss sprites are so big, they won’t fit on the in-game screen. To account for this (and maintain the large size), we decided to implement a better boss introduction mechanic. When the player first sees a boss, the game camera focuses solely on the boss object, to highlight the size of the sprite, and make sure players get a good look at the boss before the fight kicks in. Continue reading
Hello all, we have some dev diaries coming soon for Cally’s Caves 3, but in the meantime we wanted to share some exciting news from our friends across the pond. PixelSpill is a UK-based game developer that we’ve worked on a few game jams with (See Skylands and Blopathon). They’ve just released their first game, KatataK on the Appstore in collaboration with the popular Youtuber Tomska. It’s been so cool to see Twitter blowing up with people talking about KatataK, so join the discussion and go download KatataK today!
With the recent release of new iPhones and iOS 8, we found ourselves in the position where we had to update our iOS games. If we didn’t, our apps would crash on boot, and even if they did run, we wanted to make sure we custom laid everything out for the new iPhone screen sizes. We had wanted to release updates for Cally’s Caves and Cally’s Caves 2 for a long time, but held off because we weren’t 100% sure how to do it, and updating player save data was intimidating. Faced with the prospect of having our apps pulled, we buckled down and got our updates done. Our process was probably unconventional, but we thought we would share how we did our updates for iOS without losing players’ save games in the process. So, let’s begin.
The way we handled saving variables across play sessions in Cally’s Caves and Cally’s Caves 2 was the most basic way you can save things using Gamemaker: Studio. We created an .ini file and had the game save variables that we wanted to keep saved in the file. For example, say the player levels Cally up and increases her max hitpoints to four. We don’t want that player to come back for their next play session and have their max hitpoints be three, right? So after they level up, we open the .ini document in a line of code, save that variable (global.maxhp = 4), and then close the .ini document. The next time the player starts the game, the global.maxhp value is read from the .ini document, so they will start with 4 max HP. It’s a really simple system that you can find in the GM:S help.
We were just going through our archives, and we found the original design document we made back in October 2013. How much did we stick to the original design? The text of the document is as follows:
Cally’s Caves 2
General Plot Synopsis
Intro – told in a series of slide animations
After saving her parents, life returns to normal for young Cally. One day, as she is browsing Facebook on her phone, she gets a Snapchat from Dr. Herbert showing her parents have been kidnapped AGAIN. Knowing what she has to do, Cally sets out into her backyard, ready to journey into the caves once more.
Wow, we didn’t ever think this could happen to a couple dudes who make games in their bedroom offices. We got a 4/5 star review from Toucharcade.com, the biggest mobile gaming site in the world! We are feeling pretty lucky right now, you can read the review here: Toucharcade Review
So our game has been available for 9 days now, and things are going pretty well. We thought we’d post a bunch of links to the various videos and articles that have popped up since release (and hopefully we will do a blog post on how we approached marketing shortly).
We got talked about on the Toucharcade Podcast.
And mentioned in their weekly release article:
We got talked about on Neogaf 😀
And an awesome review from Appadvice!
Here is a sweet review from SentralGamer.
Sorry about the lack of posts lately. We have finally submitted Cally’s Caves 2 to Apple for review, so we are going to try and get back to posting regularly!
Testing a game on an iOS device seems like it should be a simple process, but we learned the hard way that minor details can complicate things at any time. In this dev diary, we will outline the steps of our testing process using Gamemaker: Studio, in the hopes that it may help some people overcome the same complications that we faced. This entry will be a bit technical and specific.
Note: We are using Gamemaker: Studio version 1.3.1344, and you will need access to a Mac.
1) Get your code ready for mobile.
We were developing a game that uses touch controls, but convenience necessitated being able to test on PC as well. This led to us having 2 control methods, and needing to switch between them. When we needed to export an .ipa file (the file type for iOS applications), we would need to disable the pc controls. We also based our resolution coding for iOS based off of the “display_get_size()” function, but when testing on windows we would use “window_get_size()” for everything to work properly. So, before you export your .ipa file, make sure you have everything ready for the mobile version. Continue reading