Island Golf Development Notes
Island Golf is my first new game in more than a year. That’s probably my longest drought since I started making games in 1995. I’ve been busy developing online courses and had been discouraged by the lackluster performance of my last few games and the App Store in general.
Back in December I actually went looking for an idea for a new game that was small enough so I could spent lots of time perfecting it. I developed some quick prototypes for a number of games and tossed them away. I noticed a golf-like game in the app store that was new and doing well, and very simple. That made me think about one of my very first successes as a game developer.
Back in 1996 I had started making Shockwave games for my own website and was getting a lot of attention. One of those games was called Pretty Good Golf. It was a very primitive 2D golf game. Shockwave didn’t even have hit detection at that point, so I had each fairway drawn with a series of horizontal and vertical ovals. You can calculate hits using simple math with those. The game looks so primitive today. Actually, it looked primitive then too. But in 1996 people were just amazed that you could interact with a web page at all.
Pretty Good Golf was actually the first game I licensed to another company. I continued to improve the game for a couple of years and then stopped working on golf games to move on to other things. So it has been at least 15 years, maybe more.
I started off creating this new golf game in Adobe AIR with one very important goal. I wanted the courses to be generated randomly from an algorithm. I remembered what a pain it was to make the courses for Pretty Good Golf. For this new game, I wanted a new fairway to just appear, and an infinite number of random fairways to come after that. I actually started with the idea that you would just keep playing holes in an infinite golf course.
So I embarked on weeks of development playing with algorithms that I devised to create a realistic-looking course hole. There had to be a fairway, surrounded by rough, then trees. And there had to be sand and water features too. And it had to be playable. And it had to fit on an iPhone screen and an iPad screen. And not too easy or too hard.
I started and tested and tossed dozens of models. I started over from scratch many times. I marked up my whiteboard with diagrams and equations. I loved it. What fun!
Eventually I got an algorithm that worked. After weeks of work on that, it took me about an hour to create a simple interface to “play” the holes. And I had a game where you could play hole after hole, never seeing the same hole twice.
One day I had the crazy idea of changing the background color to blue to see if the fairways would look like an island. It did! A few more adjustments and there were sandy beaches all around and even fairways that existed on multiple small islands where you had to hit the ball across the ocean. And it gave the game an artistic theme! I changed the trees to palm trees and worked on adding jumping dolphins and seabirds flying by.
And speaking of palm trees, I looked for some good vector palm trees and couldn’t find anything that looked just right. How hard could it be since you could make a palm tree with a few simple shapes. So that’s what I did. I spent a day creating an algorithm that created palm trees using math. That’s why all the trees in the game are slightly different. They are all generated randomly! Math FTW!
So the original game presented you with an infinite course. It was more of a toy than a game. So I changed it so you started with a set number of strokes and you saw how far you could get. With 50 strokes you could maybe make it to 7 or 8 holes before running out as a beginner. But someone good could go 18 or even 22 holes.
But after some testing, it turned out that this didn’t work so well. If you played an exceptionally good game, and so got to 21 holes, then it was unlikely that you would beat that any time soon. You would try a few times and then give up.
So I went back to the idea of a normal 18-hole round of golf. I wanted to do a high score board too. In order to make that fair, I switched from completely random holes to random holes starting with a random seed. So each day presents a new course, but the exact same course for everyone based on the date. Now you had a level playing field. And each day the high score board starts fresh. Hopefully this will keep players coming back. I know it does for me.
One difficulty I had to overcome with course generation was to make the holes look fine for such different screens. The iPhone X screen is 1125×2436, a 19.5×9 ratio, while the iPads are all a 4:3 ratio. So too wide and the fairway barely takes up any space on the iPhone X, leaving the top and the bottom of the screen blue water. Too tall, and the iPad screen has lots of water on the left and right. But the fairways had to be exactly the same to make the high score boards work. So there was a lot of compromise there.
How about monetization? Should I put ads in the game? In-app purchases? Or, just charge $2.99? I decided that any of these would hurt adoption of the game at the start, so I came up with the idea of doing it completely free. If the game is a hit, then I’ll pick one of those three in a future update. In the meantime, maybe I’ll get some more traffic to my other games.
Now that the game is out, what next? Well, I want to focus the next few weeks on just getting more people playing. It is unlikely that I will get featured in the App Store, or reviewed by a blog or site or anything like that. That takes luck, connections, or marketing bucks. But this time around I don’t want to be shy about spending money to buy ads from Apple, Facebook, Google and Reddit.
Of course I also have ideas for future updates if the game is a success. I want to improve the high score board with longer scrolling lists so you can see beyond 20. I want to improve the artwork in the game, especially the little pieces of flair that appear on each hole. I’d also like those to reflect holidays with little Valentines hearts, Shamrocks, Christmas trees, and so on. Maybe there should be two courses each day, to spread the high scores out. Maybe a north Pacific theme to the other course. Well, I don’t want to get too far ahead of myself.