Jan-Mar 1997
Oct-Dec 1997
Jan-Mar 1998
Apr-Jun 1998
Jul-Sep 1998
Oct-Dec 1998
Jan-Mar 1999
Apr-Jun 1999
Jul-Sep 1999
Oct-Dec 1999
Jan-Mar 2000
Apr-Jun 2000
Jul-Sep 2000
Oct-Dec 2000
Jan-Mar 2001
Apr-Jun 2001
Jul-Sep 2001
Oct-Dec 2001
Jan-Mar 2002
Apr-Jun 2002
Jul-Sep 2002
Oct-Dec 2002
Jan-Mar 2003
Apr-Jun 2003
Jul-Sep 2003
Oct-Dec 2003
Jan-Mar 2004
Apr-Jun 2004
Jul-Sep 2004
Oct-Dec 2004
Jan-Mar 2005
Apr-Jun 2005
Jul-Sep 2005
Oct-Dec 2005
Jan-Mar 2006
Apr-Jun 2006
Jul-Sep 2006
Oct-Dec 2006
Jan-Mar 2007
Apr-Jun 2007
Jul-Sep 2007
Oct-Dec 2007
Jan-Mar 2008
Apr-Jun 2008
Jul-Sep 2008
Oct-Dec 2008
Jan-Mar 2009
Oct-Dec 2009
Jan-Mar 2010
Apr-Jun 2010
Jan-Mar 2011
Oct-Dec 2011

April-June 2010 (oldest-to-newest)

6 Apr 2010 - A confession

My addiction to Peggle has severely impacted my programming productivity. I got it for the PC years back, but it wasn't until I started playing it on the iPhone that I got hooked.

Finishing the adventure mode is easy enough. Then came the challenges, which were difficult, but didn't take that long. Now I'm in the long slog through clearing all pegs in all levels. I have eight more levels to complete (and they are the hardest ones of course). I'll be glad to have that behind me and hope I don't relapse into Peggle Nights after I'm done. At least that's not on the iPhone yet.

I got my iPad with much trepidation. Yes, I'm using it mostly for app development, but I am also curious about this whole Tablet Revolution that is supposedly coming. I wasn't expecting much, but must admit that I can see this thing doing very very well.

Right now I'm using it as a super-sized iPod Touch. It feels great playing games on them. The display is beautiful. It's great to have the extra screen real-estate for those games where your finger covers the action. And scaling the games up by 2X works rather well. Yes, there are some jaggies, but nothing too bad.

I am not convinced about the increased pricing of iPad apps relative to their iPhone counterparts. Flight Control HD is more of the same - definitely not worth the $5 asking price. And some other big-name apps going for $10 or more? That's absurd. At that price point they are competing against titles from XBLA and PSN, which are played on a full screen with a proper controller and higher production values. I hope app price point settles down to the $2-4 range. Otherwise I won't be impulse buying many titles.

9 Apr 2010 - Resolution independency
Game Progress

I finally have the program back to the state it was before I started making changes for XML level files. Balls fall down into the buckets and the engine converts the ones at the bottom to be static as before.

I had a bug where balls were falling through the walls and floor unexpectedly. Turns out I had added an offset to most objects in the physics simulation except the walls and floor. As a result the walls and floor were in the entirely wrong spot with relation to the pegs, balls and buckets. This wasn't apparent visibly because it didn't affect the positions of the sprites on the screen - just their positions within the Chipmunk simulator.

My next task will be to make the app resolution-agnostic. I will be targeting both iPhone and iPad and want to do it cleanly so that a single bundle will support both devices. The iPad version will use higher-resolution assets, but will otherwise be identical. This involves storing most sprite and physics attributes as percentages rather than fixed pixel sizes. For instance, rather than stating that a ball is 8 pixels wide I need to specify it as 2.5% of the screen width. That way things will scale up nicely and I won't need to do anything special for it to work on iPhone, iPad or any other device Apple releases.

Once that is done I will test it out on the actual hardware. I have yet to do so, but I don't think I can put off joining the developer program any longer.

15 Apr 2010 - Peggle breakthrough

I'm down to three levels remaining in Peggle to achieve Extreme Grand Master. I was struggling with the level "End of Time" for the longest time. I finally hit up Google for some tips and stumbled on a brilliant strategy that I'm ashamed I didn't think of myself.

The difficulty with Peggle is the non-deterministic nature of the shots. It is virtually impossible to line up a shot exactly the same way twice. However, there are three angles that you are able to get the same every time. The first is at the start of the level. The game always starts you out pointing straight down. If you don't move then you are guaranteed that the ball will bounce identically every time. The other two are pointing the launcher at the extreme left and right.

So the strategy for "End of Time" is to pinpoint where the bucket needs to be when you launch the ball such that you get a free ball every time. First, do this with the launcher pointing down. Keep firing this way until you have cleared every possible peg and the ball just falls straight down.

Next, point to the far left and do the same thing. For every ball you will need to keep track of the optimal bucket position to ensure a free ball. Once there are no more pegs to hit then switch to the far right and do the same thing.

This is not a perfect solution, of course, because it doesn't clear all the pegs. However, most of them will be gone and, with luck, you will still have ten balls with which to clear the rest. Still difficult, but far easier than starting from scratch.

One question remaining is what character to choose when starting the level. There really are only two viable options: Bjorn (Super Guide) or Kat Tut (Pyramid). All the others will mess up the sequence and cause you to clear pegs that might influence subsequent shots.

Bjorn is the safest as you can just ignore the Super Guide. With Kat Tut you will need to compute two sets of positions to launch each ball - one for the normal case and one when you have the pyramid active. The advantage of Kat Tut is that after you are done clearing all the deterministic pegs you might have a green peg or two left over to help you clear the rest.

This method falls apart if there are any moving objects in the level (other than the bucket). So unfortunately it won't be of help for Billions & Billions nor Beyond Reason. However, it will help with Yang Yin, which is another of the thorns in my side. Hopefully I'll get that one cleared this weekend.

20 Apr 2010 - *Finally*

Jeez Louise, it's great to have that game firmly in the finished column. I completed the last two levels and achieved my Extreme Grand Master trophy. I will eventually put up some vids of especially good shots I made in the game.

So how did I tackle those last two levels? First up was Billions & Billions (the one with the flying saucer). I reasoned that since the saucer was the only moving object other than the bucket I might be able to use the same strategy as the previous two levels. This turned out rather well. First, I cleared all the pegs possible by firing straight down. Then I went to the far right.

The problem with firing to the sides arises when the ball enters one of the two holes and comes out the flying saucer. Luckily I found a pattern that allowed me to catch a free ball. I timed it so that the ball entered the hole, fell out of the flying saucer and straight into the bucket without touching any pegs. That ensures that it is repeatable and deterministic.

Then, as I was trying to figure out the next shot I had a good streak of lucky bounces. I decided to try clearing the level and was able to do it. Whew!

The last level, Beyond Reason, is the one with the double helix. For this one I followed the advice on the Pop Cap site. I used Splork and kept restarting until the two green pegs were in the center helix. Hitting both in one shot along with the purple peg gave me three extra balls. I got lucky and bucketed the ball as well so I ended up with 13 balls and just the bottom third or so of the helix remaining. I got a bunch of lucky bounces and ended up clearing the board. The stationary pegs are pretty easy. You definitely need to get good at anticipating the bounces off non-moving pegs to have a chance.

And after all this I'm still seeing new sayings during the load screen (Just now: "Polishing claws").

23 Apr 2010 - Objects abound
Game Progress

I was hoping that this post would contain a video of my work in progress running on both my iPod and iPad. To do that, though, I need to (finally) sign up for the Apple developers program. And to do that I need to sign their epically long developer agreement. Since I am taking this very seriously I want to read the whole thing before spending the $99. Also it may turn out that some clause prevents me from posting updates. For now I will carry on posting as usual.

As for programming progress, I have started the framework for adding arbitrary objects to the play field. My base object is basically the same thing as a peg - static and does not react when a ball hits it. Classes derived from this will add more capability. In fact I just realized that the Launcher and Bucket objects I created can, should, and will be converted to subclasses of the general object. It makes tons of sense and is just cleaner that way.

Before this realization I had started adding a "Bumper" subclass that behaves like you see on pinball tables. Balls striking it will be propelled away. I haven't tested it yet, but it allows me to test some of the features in a more complex object: collision callbacks and time delays for resetting.

I'd also like to put out a call for an artist to help me put decent graphics in this thing. I'm sure not many people read this blog so I'll be posting elsewhere later, but thought I'd give it a shot here first. Drop me a line if you are interested.

This web page and all other pages on this site are © 1999-2007 Scott Cartier