Take on the NES Library

An 8-bit Extravaganza!

lunar

OCT
17
2025
0

#180 – Lunar Pool

Simplistic yet stellar!

The title is all rainbow colored, very nice

To Beat: Finish all levels 1-60 without continuing
Played: 6/3/21 – 6/29/21
Difficulty: 8/10
My Difficulty: 8/10
My Video: Lunar Pool Longplay

My instinct as a programmer is that a game like Lunar Pool would be challenging to program. It’s not super-fast action with parallax scrolling, screen-filling bosses, and DPCM sound effects, far from it, but there are just so many considerations with a game like this. The developers must allow dynamic speeds, angles, and collisions with friction on all of those objects at once with each other and the table. I’ve seen plenty of NES games lag up with only a few relatively simple sprites on the screen. I can’t imagine how one could smoothly handle all those interactions. Still, there were several developers that figured it out successfully. Lunar Pool was the first billiards game on the NES, and even though it is a simple game on the surface, I found this to be quite an impressive piece of software, and a fun game to boot.

Lunar Pool was developed by Compile, who are best known for both their scrolling shooter games and Puyo Puyo. The company was originally known as Programmers-3 Inc. until 1985. Lunar Pool was one of the first, if not the first, developed games under the Compile name. It was released in 1985, first on the PC-88 in June 1985, then on the Famicom in Japan in December 1985. There it was published by Pony Canyon. In October 1987, Lunar Pool came to the NES in North America, published by FCI. The PAL version was released way later in 1991. The game was also part of the Wii Virtual Console, released in North America in October 2007.

After starting at the title screen, press Start to get to the options menu. First choose the game type, either a one-player game, a two-player game, or a game against the computer, where you take turns to compete for score. Press Up or Down to select the round number. Lunar Pool has 60 tables to choose from. You can also adjust the level of friction with Left and Right. The default value is 32 but you can select any value within the range 0-255. With zero friction, balls will slide around forever, and with max friction they barely move at all. Once all is decided, press Start to begin the game.

It looks standard, but goes beyond that very quickly

The game kicks off with a standard looking pool table. Six numbered balls are arranged in the classic triangular layout. To start, use the D-pad to aim. The cursor moves in a circle centered around the cue ball. Press Right to rotate the cursor clockwise, and use Left to rotate counter-clockwise. Up moves the cursor away from the ball while Down brings the cursor back toward the cue ball, i.e., increasing and decreasing the radius, respectively. The angle is all that matters here; the position of the cursor is simply a visual aid to help line up faraway shots. The cursor movement is very granular and even changes its shape on every tiny adjustment so you can dial in the exact shot that you want. The power of the shot is determined by the power meter at the top-right that grows and shrinks on its own. Here you will have to time your shot and press the A button to get the desired power.

The goal here is to pocket all the balls to move on to the next stage. You can pocket them in any order you like. The Ball counter is for how many cue balls, or lives, you have. If the cue ball goes into the pocket, you lose a ball and the table resets to the state prior to the shot. You get up to three chances to pocket any ball, as shown by the Shot counter. If you fail to pocket a ball in three consecutive attempts, you also lose a ball. You earn an extra ball after clearing each table. If you can clear the whole table without missing a shot, you get a Perfect bonus of an extra ball on top of the extra ball you get for clearing the table.

Lunar Pool also has a Rate mechanic. You are rewarded for pocketing many balls in a row without missing. The Rate counter starts off at 1 and resets back to 1 on any missed shot. Pocketing a ball increases Rate by 1. If you can pocket two balls in one shot, your rate goes up by 1 for the first ball and by 2 for the second ball, 3 total. This scales up accordingly if you can pocket three or more at once. Keeping a high Rate counter has two benefits. Your score for pocketing each ball goes up as your Rate counter increases, acting as a sort multiplier. More importantly, if you can get up to a Rate of 20 or more, you earn an extra ball. Beyond that, you earn an extra ball for every multiple of 5 you reach beyond 20. A big streak across multiple tables can give you many extra balls to better manage the challenging tables ahead.

I had a streak going until here.

This is my first time beating Lunar Pool. This is a game that is fun to tinker with, and so I’ve played the first few levels several times over the years. I can’t recall if I had this game at all when I was younger or if this is something I got more interested in later. This is the kind of game that appears on multicarts so I know I’ve seen it that way quite a bit. This common game exists as both a 3-screw and a 5-screw cart where the 5-screw cart seems more common in my experience. It’s the form factor I have. This is an inexpensive cart selling for around $8 and you are pretty likely to find it in a lot for less money.

While this is a straightforward, simple game, there is a catch if you want to beat it. You must clear all 60 stages in a row without a Game Over. Any Game Over sends you back to the title screen, and from there you can continue the game from the level you lost. You could go through 1-60 that way, but it’s not quite good enough. There is a special ending screen that is shown after Stage 60 if you clear it all in one go. This special screen is what sets this game apart from an easy clear to a quite challenging one. This is where building up a good rate and a large stash of extra balls goes a long way toward managing this long experience.

A large part of the challenge is that the difficulty curve is all over the place. Some tables have a lot of angles, weird shapes, or tough ball placement. The pockets can have portions blocked off, and the worst is when only a quarter of a pocket is showing, blocked by the walls. It is very difficult to wedge a shot into that tiny area, and shot finesse is very important. Sometimes those challenging tables are tough to even get started and things can spiral out of control quickly. On the other hand, some stages were laughably easy. Some levels are retreads of previous levels, and one particular stage in the middle of the game has only one ball to sink, which can be routed easily. With 60 tables to clear, I had to take notes to keep track of outlier stages on both ends of the curve.

Shoutout to this level, easy clear!

My primary approach was to get off to as strong a start as possible. There were a few tables I tried my best to route out a perfect clear. The most important of these to me was Stage 3. The first stage isn’t all that bad to finish perfect even without a plan, and Stage 2 lined itself up to a natural order I didn’t have to plan for. Stage 3, however, is an X-shaped level with pockets tucked away where it seems impossible to handle in one go. Through lots of trial and error, I managed to come up with a plan that gave me a pretty good chance of getting a perfect clear. Stage 3 was the level that revealed to me that the power levels on the shots are more nuanced than the visual meter would appear. There are several in-game frames between when the icons light up on the power meter, and the actual power of a given shot seems to be frame dependent. That means you have to have precise timing within 1/60th of a second to dial in an exact shot power. This is different than the angles which you can take your time to set them and make them consistent every time. I could tell in Stage 3 particularly when I got the shot I wanted and when I was off just a touch. Carrying a perfect run into Stage 4 gave me a huge jumpstart and it was worth the effort.

I’ll admit this came a lot later in the process than it should have, but the most important factor for me beating this game was utilizing the built-in stage select. I know speedrunners use save states and other tools to practice levels and sections over and over. I don’t do that to beat NES games, even if it costs me extra time replaying learned levels over and over. But since stage select is built-in, I took full advantage of it with no reservations. I practiced difficult levels, I planned out opening shots, I routed out levels, and I identified easy tables to full clear. Finding the stretches in the game where I could build up a high Rate and get extra balls was so helpful. I credit the stage select for helping me finish this game.

These barely exposed pockets are very hard to use.

My winning run wasn’t anything special. I started off well with perfect clears in the first two stages, and I was only one ball off from the perfect Stage 3. I also got back-to-back perfect clears in Stages 5 and 6. Not my ideal start, but definitely good enough to keep it going. My rate maxed out at 30, and then I got it back up to 25 in the early game, just good enough for a couple additional extra balls. It turns out I didn’t really need them. The most important stretch of the run was through the 20’s, this is what made the run viable. I got 3 perfect tables and managed to raise my ball count from 19 to 25 during this stretch. The back half of the game went good enough. It became important to ignore consecutive shots and rate and just set up as many easy shots as possible. It was also important not to panic and take my time. I finished the final stage with 9 balls remaining for a comfortable first time clear. This game took me 2 hours to beat, almost exactly.

The current best speedrun of Lunar Pool any% was by Rabadoom with a time of 1:05:26, far and away the best time on the board. You can tell that they practiced a lot to get the time down. There’s plenty of mistakes in the run but it’s really the only way to play Lunar Pool, since there is only so much you can strategize for. My completion of the game is fast enough for second place on the leaderboard, so I will be submitting that. I haven’t submitted any speedruns in quite a long time so this is a nice bonus. The primary speedrun category for Lunar Pool only covers the first 5 stages with the top times coming in just under 3 minutes.

I really enjoyed my time with Lunar Pool. There’s something so appealing to me about a simple game that functions well, plays well, and is challenging enough to keep my interest. The graphics are clear, colorful, and concise. All tables have moon theming aligned with the name of the game, which also fits thematically with the adjustable friction. The music might be repetitive, but it fits the game and doesn’t become annoying to me. It might not be a fully featured billiards game on the NES, but I think it could be the most fun to play.

#180 – Lunar Pool

by :
comment : 0