Lunar Ball / Lunar Pool. It is a minigolf-esque pocket billiards game.

Game objectives

  • Emulator used: FCEU version 0.98.ihavenoidea
  • Complete all 60 boards starting from 1
    • It is possible to begin from any board, including 60, but you have to complete all 60 to get the ending
  • Single player
  • Friction setting: 0 (NONE)
    • See below for notes on this
  • Fastest time
  • Uses death to save time
  • Does not utilize glitches (there exists one, but it was not invoked in this movie)

N/A game objectives

  • This game is completely deterministic. There is no "manipulates luck".
  • There are no dinosaurs in this game.

Comments

This movie was created mostly using a computer program, the development of which took several months and several iterations.
Lunar Ball has this interesting feature, that on the configuration screen, its friction setting can be arbitrarily selected from integer values 0 to 255. The default value is 32. The value 0 in particular is very interesting: It literally means "no friction whatsoever. This movie was created in the frictionless mode.
A pool game played in completely frictionless setup is a very different game from a normal pool game.
In a frictionless game, it is more than possible, that a careless shot makes the game completely unwinnable. Indeed, it is easy to demonstrate such a shot that will leave the game into an infinite loop, much resembling the effect that happens in the popular gadget, "Newton's cradle". In such a loop, there is no choice but to reset the console, terminating the game.
From a computer player's viewpoint, this means that the searching space for valid moves is drastically smaller than it is for a regular game: most shots produce either an infinite loop, or they result in the eventual demise of the cue ball. Due to the law of conservation of energy, so called "preparation shots" simply cannot be done, either. This also means that unless you "suicide" once in a while (intentionally pocket the cue ball), you get a "PERFECT" message in all boards, and that the scores skyrocket. Also, the timeout for shots should be set considerably longer than in a default-friction game, because the balls can be gliding for a long time before they eventually find a pocket.

Score and RATE


In Lunar Ball, each successful shot increases the "RATE" value of the player; each unsuccessful shot resets it. The higher the "RATE" value, the more points the player is awarded for the next successful shot. Points are awarded at a rate of 10 points per frame.
The RATE value maxes at 99, at which point completing a single 6-ball board gives 20790 points ((6+5+4+3+2+1)*99*10), plus the PERFECT bonus. Tallying that amount takes more than half a minute. Because nobody wants to watch 15 minutes of score tallying, it is a good idea to reset the RATE value every once in a while.
However, because this game mode is frictionless, the only possible method that a finite shot can be unsuccessful, is when it shoots the cue ball into a pocket. This I call "suicide", and this movie features that action every once in a while, and it is completely intentional for the aforementioned reason.

Board by board comments

Board 1

Board 1 is completed by depositing each ball on the board in any of the pockets on the board.

Board 2

Board 2 is completed by depositing each ball on the board in any of the pockets on the board.

Board 3

Board 3 is completed by depositing each ball on the board in any of the pockets on the board.

Board 4

Board 4 is completed by depositing each ball on the board in any of the pockets on the board.

Board 5

Board 5 is completed by depositing each ball on the board in any of the pockets on the board.

Board 6

Board 6 is completed by depositing each ball on the board in any of the pockets on the board.

Board 7

Board 7 is completed by depositing each ball on the board in any of the pockets on the board.

Board 8

Board 8 is completed by depositing each ball on the board in any of the pockets on the board.

Board 9

Board 9 is completed by depositing each ball on the board in any of the pockets on the board.

Board 10

Board 10 is completed by depositing each ball on the board in any of the pockets on the board.

Board 11

Board 11 is completed by depositing each ball on the board in any of the pockets on the board.

Board 12

Board 12 is completed by depositing each ball on the board in any of the pockets on the board.

Board 13

Board 13 is completed by depositing each ball on the board in any of the pockets on the board.

Board 14

Board 14 is completed by depositing each ball on the board in any of the pockets on the board.

Board 15

Board 15 is completed by depositing each ball on the board in any of the pockets on the board.

Board 16

Board 16 is completed by depositing each ball on the board in any of the pockets on the board.

Board 17

Board 17 is completed by depositing each ball on the board in any of the pockets on the board.

Board 18

Board 18 is completed by depositing each ball on the board in any of the pockets on the board.
At this point, 43.6 % of viewers have started fastforwarding the movie.

Board 19

Board 19 is completed by depositing each ball on the board in any of the pockets on the board.

Board 20

Board 20 is completed by depositing each ball on the board in any of the pockets on the board.

Board 21

Board 21 is completed by depositing each ball on the board in any of the pockets on the board.

Board 22

Board 22 is completed by depositing each ball on the board in any of the pockets on the board.

Board 23

Board 23 is completed by depositing each ball on the board in any of the pockets on the board.

Board 24

Board 24 is completed by depositing each ball on the board in any of the pockets on the board.

Board 25

Board 25 is completed by depositing each ball on the board in any of the pockets on the board.

Board 26

Board 26 is completed by depositing each ball on the board in any of the pockets on the board.

Board 27

Board 27 is completed by depositing each ball on the board in any of the pockets on the board.

Board 28

Board 28 is completed by depositing each ball on the board in any of the pockets on the board.

Board 29

Board 29 is completed by depositing each ball on the board in any of the pockets on the board.

Board 30

Board 30 is completed by depositing each ball on the board in any of the pockets on the board.

Board 31

Board 31 is completed by depositing each ball on the board in any of the pockets on the board.

Board 32

Board 32 is completed by depositing each ball on the board in any of the pockets on the board.

Board 33

Board 33 is completed by depositing each ball on the board in any of the pockets on the board.

Board 34

Board 34 is completed by depositing each ball on the board in any of the pockets on the board.

Board 35

Board 35 is completed by depositing each ball on the board in any of the pockets on the board.

Board 36

Board 36 is completed by depositing each ball on the board in any of the pockets on the board.

Board 37

Board 37 is completed by depositing each ball on the board in any of the pockets on the board.

Board 38

Board 38 is completed by depositing each ball on the board in any of the pockets on the board.

Board 39

Board 39 is completed by depositing each ball on the board in any of the pockets on the board.

Board 40

Board 40 is completed by depositing each ball on the board in any of the pockets on the board.

Board 41

Board 41 is completed by depositing each ball on the board in any of the pockets on the board.

Board 42

Board 42 is completed by depositing each ball on the board in any of the pockets on the board.

Board 43

Board 43 is completed by depositing each ball on the board in any of the pockets on the board.

Board 44

Board 44 is completed by depositing each ball on the board in any of the pockets on the board.

Board 45

Board 45 is completed by depositing each ball on the board in any of the pockets on the board.

Board 46

Board 46 is completed by depositing each ball on the board in any of the pockets on the board.

Board 47

Board 47 is completed by depositing each ball on the board in any of the pockets on the board.

Board 48

Board 48 is completed by depositing each ball on the board in any of the pockets on the board.

Board 49

Board 49 is completed by depositing each ball on the board in any of the pockets on the board.

Board 50

Board 50 is completed by depositing each ball on the board in any of the pockets on the board.

Board 51

Board 51 is completed by depositing each ball on the board in any of the pockets on the board.

Board 52

Board 52 is completed by depositing each ball on the board in any of the pockets on the board.

Board 53

Board 53 is completed by depositing each ball on the board in any of the pockets on the board.

Board 54

Board 54 is completed by depositing each ball on the board in any of the pockets on the board.

Board 55

Board 55 is completed by depositing each ball on the board in any of the pockets on the board.

Board 56

Board 56 is completed by depositing each ball on the board in any of the pockets on the board.

Board 57

Board 57 is completed by depositing each ball on the board in any of the pockets on the board.

Board 58

Board 58 is completed by depositing each ball on the board in any of the pockets on the board.

Board 59

Board 59 is completed by depositing each ball on the board in any of the pockets on the board.

Board 60

Board 60 is completed by depositing each ball on the board in any of the pockets on the board.
After shooting the last shot, the input is terminated. The triumphal ending is seen after the board is completed.

Other comments

Thanks to:
  • qFox
  • Derakon
  • Xkeeper
  • Adelikat
  • Nach
  • Bisqwit
  • Jemini, Teramoto, Miyamoto, Yunoki and Niitani -- the Compile crew credited in the game

Baxter: A very novel concept. Not only impossible for a regular player, but also for a regular TASer. Very different to any other TAS on the site, accepting for publication.
Aktan: processing...


JXQ
Experienced player (761)
Joined: 5/6/2005
Posts: 3132
I enjoyed this quite a bit. One shot on board 38 seemed questionable to my untrained eye, though.
<Swordless> Go hug a tree, you vegetarian (I bet you really are one)
Experienced player (702)
Joined: 2/19/2006
Posts: 742
Location: Quincy, MA
So wait, was the point of this speed or fewest shots? EDIT: I guess speed, however at points it seems slow. It's surprising to me, however I can kind of understand the reasoning behind this being much due to the "no-friction" thing.
Super Mario Bros. console speedrunner - Andrew Gardikis
Editor, Reviewer, Experienced player (978)
Joined: 4/17/2004
Posts: 3109
Location: Sweden
I agree with Xkeeper. Pocketing the white ball just to minimize score tallies somehow goes against the awesomeness of playing perfectly. This is one of the cases where a hack would be preferable to the original to me. It was pretty cool, but long.
Active player (437)
Joined: 4/21/2004
Posts: 3517
Location: Stockholm, Sweden
This game is perfectly suited for Bisqwit; a man, a myth and a genius (he is part of mensa for heavens sake). So the game choice is spot on for your taste and intelligence :) Like Truncated said, it is good but a bit too long. Despite that, I give this a yes vote. Although I recommend you to reexamine your run and find further improvements.
Nitrogenesis wrote:
Guys I come from the DidyKnogRacist communite, and you are all wrong, tihs is the run of the mileniun and everyone who says otherwise dosnt know any bater! I found this run vary ease to masturbate too!!!! Don't fuck with me, I know this game so that mean I'm always right!StupedfackincommunityTASVideoz!!!!!!
Arc wrote:
I enjoyed this movie in which hands firmly gripping a shaft lead to balls deep in multiple holes.
natt wrote:
I don't want to get involved in this discussion, but as a point of fact C# is literally the first goddamn thing on that fucking page you linked did you even fucking read it
Cooljay wrote:
Mayor Haggar and Cody are such nice people for the community. Metro City's hospitals reached an all time new record of incoming patients due to their great efforts :P
Editor, Active player (297)
Joined: 3/8/2004
Posts: 7469
Location: Arzareth
JXQ wrote:
I enjoyed this quite a bit. One shot on board 38 seemed questionable to my untrained eye, though.
The last shot in board 38 was done in such a convoluted way because there was no direct angle that would have resulted in the complete halt of the cue ball, due to numerical inaccuracies in the game. Only 256 possible aiming directions after all. andrewg: The point was a bit of both, but with emphasis on speed. At each round, the shot or pair-of-shots was chosen that resulted in the greatest value for the expression "num_pocketed / (nframes+6)", where "num_pocketed" is the number of balls pocketed in the end, excluding the cue ball, and "nframes" is the number of frames before the next shot is available, including the time spent tallying scores and any waits for the board to reset. Usually the number of frames saved by a death, compared by a deathless shot (which would have otherwise accomplished the same result, but with more score), was around 200. This does not mean that the deaths accounted to only ~2000 frames of saving though. Skipping the death means exponential accumulation of score, not linear. AngerFist: Improving the run is a matter of devising new algorithms or new rules to play by. There is one drawback to the algorithm used by my bot: It always optimizes the *current* shot for the best speed as shown above. It is theoretically possible for a number of reasons, that shooting a less optimal shot *now* allows you to shoot an even more optimal shot *next*. In fact, I corrected two or three such situations in this movie manually (and a dozen of those in the upcoming standard friction run), but it is mathematically impractical to optimize them consistently, due to the exponential increase of the search space. That said, I sort of agree with Xkeeper. The score tallying delay is evil.
arflech
He/Him
Joined: 5/3/2008
Posts: 1120
It looks like you sometimes just shoot the cue ball straight into a pocket without touching the other balls...why?
i imgur com/QiCaaH8 png
Editor, Active player (297)
Joined: 3/8/2004
Posts: 7469
Location: Arzareth
arflech wrote:
It looks like you sometimes just shoot the cue ball straight into a pocket without touching the other balls...why?
For the aforementioned reason.
Joined: 6/4/2009
Posts: 570
Location: 33°07'41"S, 160°42'04"W
For what it's worth, I watched this all without fast forward, and I like it. Bisqwit is always great.
Joined: 11/4/2007
Posts: 1772
Location: Australia, Victoria
To everyone that watched it at normal speed, I think you're all insane.
Editor, Active player (297)
Joined: 3/8/2004
Posts: 7469
Location: Arzareth
Out of nonparticular interest, I created a hacked ROM that makes the score tallying very quick. To those who wonder whether it is possible and better to pocket all six balls in the first board, here's the running log of this new attempt:
$ tail lunar2.log -f |egrep --line-buffered 'eneration|Beginning|Pocketed|limit|eath|angle|skip|SKIP'|grep --line-buffered -v skipped.because|while read l;do echo "`date` $l";done
Sat Apr  3 15:27:41 EEST 2010 Beginning new shot. Table=1, remaining balls=6; 0 on 16-bit donelist, 0 on 32-bit, 0 deaths
Sat Apr  3 15:27:41 EEST 2010 Generation 1: 20480 candidates based on 20480; 0 on 16-bit donelist, 20480 on 32-bit, 0 deaths, frame limit 3503
Sat Apr  3 15:28:46 EEST 2010 Record: Pocketed 6 (time 2189, angle 2, velo 255, preangle 2, prevelo 237) (ball at 80,8C)
Sat Apr  3 15:28:46 EEST 2010 [1108]Setting max frame limit to 2192
k[0238]ang[  2]vel[255]preang[  2]prevel[252]: p=6, f=2193(ef=0), 0.0000, timeout           [1096]Setting max frame limit to 2192
Sat Apr  3 16:02:09 EEST 2010 Ignoring: Pocketed 3 (time 1742, angle 107, velo 255, preangle 107, prevelo 51) (ball at AF,A3)
Sat Apr  3 16:02:10 EEST 2010 Ignoring: Pocketed 3 (time 1742, angle 107, velo 255, preangle 107, prevelo 48) (ball at AF,A3)
Sat Apr  3 16:08:41 EEST 2010 Record: Pocketed 5 (time 1727, angle 128, velo 255, preangle 128, prevelo 156) (ball at 96,8C)
Sat Apr  3 16:38:31 EEST 2010 Ignoring: Pocketed 3 (time 1625, angle 234, velo 255, preangle 234, prevelo 42) (ball at C1,77)
Sat Apr  3 16:38:31 EEST 2010 Ignoring: Pocketed 3 (time 1625, angle 234, velo 255, preangle 234, prevelo 45) (ball at C1,77)
Sat Apr  3 16:38:51 EEST 2010 Ignoring: Pocketed 3 (time 1339, angle 234, velo 255, preangle 234, prevelo 111) (ball at C1,77)
Sat Apr  3 16:38:52 EEST 2010 Ignoring: Pocketed 3 (time 1339, angle 234, velo 255, preangle 234, prevelo 114) (ball at C1,77)
Sat Apr  3 16:39:07 EEST 2010 Ignoring: Pocketed 2 (time 1633, angle 234, velo 255, preangle 234, prevelo 171) (ball at BF,83)
It shows how it found a way to pocket 6 balls, but then it found a way to pocket 5 balls that is faster per-ball than the 6-ball way.
Banned User
Joined: 12/23/2004
Posts: 1850
Well, here's hoping we'll see a hacked all-perfect lowest-shots run sooner or later. Even if not meant for publishing.
Perma-banned
Joined: 11/9/2008
Posts: 108
Location: New Orleans, LA U.S.A.
i love it and going by the insta poll i'd say the mob has spoken..
__--N0ISE
Joined: 11/4/2007
Posts: 1772
Location: Australia, Victoria
There, optimized Bisqwit's screenshot (Which used a slightly odd resolution... the AVI I dumped is 256*224, Bisqwits screenshot was 256*232, I just added a transparent 8 pixel border below). Now someone set this to accepted already, pleaaaaaaaaaaaaaase.
Former player
Joined: 11/13/2005
Posts: 1587
I watched about 20 boards and enjoyed it more than the normal friction WIP, because it doesn't have those setup shots. I still disliked pocketing the cue ball, but it wasn't that bad. I guess I'll watch a couple of boards more and then decide what I vote. EDIT: I watched some more boards and I found this run entertaining. Voting yes.
Editor, Active player (475)
Joined: 5/23/2006
Posts: 361
Location: Washington, United States
I enjoyed this movie because it was a lot like watching somebody solve a bunch of puzzles. Knowing that a bot created most of the input added some entertainment as well. Certain stages (e.g. 52) had some unexpectedly clever shots that pocketed all the balls at once. This gets a yes vote from me. I only have a couple of questions: 1. On stage 43, why did you suicide twice? I couldn't see any obvious reason for it. 2. What exactly is going on when a (very) slowly-moving ball hits another and they both stop? Shouldn't one or both of them keep moving because of the frictionless setting?
Post subject: Movie published
TASVideoAgent
They/Them
Moderator
Joined: 8/3/2004
Posts: 15543
Location: 127.0.0.1
This movie has been published. The posts before this message apply to the submission, and posts after this message apply to the published movie. ---- [1500] NES Lunar Pool "no friction" by Bisqwit in 36:48.36
Editor, Active player (297)
Joined: 3/8/2004
Posts: 7469
Location: Arzareth
Chef Stef wrote:
I enjoyed this movie because it was a lot like watching somebody solve a bunch of puzzles. Knowing that a bot created most of the input added some entertainment as well. Certain stages (e.g. 52) had some unexpectedly clever shots that pocketed all the balls at once. This gets a yes vote from me. I only have a couple of questions: 1. On stage 43, why did you suicide twice? I couldn't see any obvious reason for it. 2. What exactly is going on when a (very) slowly-moving ball hits another and they both stop? Shouldn't one or both of them keep moving because of the frictionless setting?
Thanks for the feedback. Here are answers to your questions: 1a) Upon stage 43 begin, the RATE value was 30. Shooting the first shot as-is would have given a bonus of 30*32+20*31+10*30 points, that is 1880. The first suicide changed it to 30*3+20*2+10*1, that is 140. The difference is 1740 points, e.g. 174 frames, or 2.9 seconds. Which was a larger a saving than the delay of the suicide. 1b) At the beginning of the second shot, the RATE value was 8. Shooting the second shot as-is would have given a bonus of 60*10+50*9+40*8 points, that is 1370. The second suicide changed it to 60*3+50*2+40*1 points, that is 320. The difference is 1050 points, e.g. 105 frames, or 1.75 seconds. Which was a again apparently larger a saving than the delay of the suicide. 2) On impact, the kinetic power is divided between the two colliding balls in a manner that depends on the angle of collision. If the kinetic power is low enough, it may be that after dividing it, it is below the minimum value positive expressible with the fixed point mathematics used in the game. E.g. When you divide 0.01 (hex) by 2, you get 0.008 (hex), which gets saved as 0.00, that is interpreted as halt. The threshold for halt may actually be even higher in this game.
Joined: 4/1/2010
Posts: 6
On a side note, are you still doing that Genesis Ghostbusters run? It is currently my most anticipated run.
Editor, Active player (297)
Joined: 3/8/2004
Posts: 7469
Location: Arzareth
Inertia wrote:
On a side note, are you still doing that Genesis Ghostbusters run? It is currently my most anticipated run.
Who? You must be confusing some people.
CrazyTerabyte
He/Him
Joined: 5/7/2005
Posts: 74
Question: Why did you use the Japanese version instead of the (U) version? Shouldn't you have used the U version? This run desyncs on both (E) and (U) versions. Also, the (E) version appears to be sped up a lot (due to NTSC/PAL differences). Another suggestion: at the submission text, point out how many shots it was required to complete each table (and how many balls went to a pocket, and which ones were just suicide shots), as well as the time for each table. I bet this type of info will be useful on future runs.
Editor, Active player (297)
Joined: 3/8/2004
Posts: 7469
Location: Arzareth
Thanks for the feedback, CrazyTerabyte. I used the Japanese version because I am familiar with it (due to it being the only version included on any multigame carts I have had access to). Apologies for any and all inconvenience caused by this fact. The submission message could indeed be more informative. I wrote it kind of in a hurry and without planning. Such information as the number of balls / frames / suicides per level could easily be collected by anyone; it's just some labor that I do not bother to do. Apologies.
CrazyTerabyte
He/Him
Joined: 5/7/2005
Posts: 74
Bisqwit wrote:
The submission message could indeed be more informative. I wrote it kind of in a hurry and without planning.
It was in a hurry, but at least it was kinda funny. :)