The “No Fire” Trick in Galaga

Arcade Galaga has an interesting bug that’s been known of for a long time, that can be taken advantage of to cause the enemies to stop firing. The inner workings of the bug are explained on its page on the website Computer Archeology, but here it is in brief: on the first level, if you leave the bugs at the far left or right sides of the formation alive and wait long enough, 10 to 15 minutes, just surviving their attacks, then eventually the enemies will stop firing all together, and will never fire again for the rest of the game.

Why does this happen? Galaga reserves eight hardware sprites for the shots of the enemy bugs. Galaga’s graphics hardware has no way to disable the displaying of a sprite, so if something isn’t supposed to be visible it’s kept off screen, at horizontal coordinate zero. A shot sprite at that coordinate is never updated, and never moves. This is in addition to the game’s internal records of which shots are in use. When a bug wants to fire a shot, the game looks at which shots are available, and if one isn’t in use, it puts it at the proper place, and sets its velocity (X and Y deltas). From then until it leaves the screen, it’ll be updated every frame. When it is detected as having gone off-screen, it’ll be marked as out of play, and its X coordinate will be set to 0. Shots at X=0 are never updated.

The problem is, it’s possible for bugs to fire shots while they are at X position 0. This happens most commonly when bugs at the far left and right extremes of the board attack. The shot is marked as in-use, but it’ll never be updated, and so it’ll never be cleaned up and set back to be available for firing. When all eight possible shots are in this limbo, the bugs can’t fire any more. The machine resets the shots at the end of a game, so the problem won’t affect subsequent plays.

Ben Golden Diamond performed the trick in a Youtube video, and he manages to get it to happen in around seven minutes. He doesn’t explain the precise criteria for doing the trick, but his description will still work, it just has unnecessary steps. It will work on any level, but it’s easiest to do on the first. In the video, sometimes the bugs fire wraparound shots from off-screen. That’s a good indication that the bugs are sometimes firing from the 0 coordinate.

Keep in mind, performing the trick on purpose will disqualify a score for world records. The scoreboard on a local Galaga machine probably won’t care, though.

Make Random Items Appear Where You Want In Animal Crossing New Horizons

It’s three years after the release of Animal Crossing: New Horizons, famously introduced to a human contact-starved world right when efforts to contain Pandemic 2020 were at their height, unlike now when the world has largely decided to let the immuno-compromised fend for themselves. This isn’t the place to say what I think about that, but it is the place to write something that, had it been known in 2020, might have helped people out a lot.

The following is paraphrased from my Mastodon thread on the matter.

Every day, the game hides up to 10 100-bell coins, 5 wasps nests, and 2 random furniture items in trees on your island.

If you care about finding any of these things, there is a way to make the game put them where you want them. Selling wasps and items made from nests can bring in about 10,000 bells a day. The furniture can be given to villagers to help increase friendship. The coins aren’t worth much, admittedly.

Doing this, you can easily get the items you want each day without searching among all your trees. I use it to get the two random furniture pieces each day.

To make this trick work, you must have _exactly 17 non-fruit trees on your island_, enough to generate all the randomly-placed tree items. They can be cedar or other, plain trees.

If you don’t discover one of these items on a day, it’ll be left there for following days. It only places new items if the old ones haven’t been discovered, up to the maximum of each type. The trick relies on this fact.

Decide which of the categories of items you want to lock down the location of. Starting from that location, shake each tree until you find one of the objects you care about. In the example images I use furniture (the leaf icons), since those are a type of item it’s useful to search for quickly. You’ll probably want to have a net on hand, and maybe some Medicine, in the likely event you find one or more wasps’ nests.

Once you found the kind of item you want, stop shaking trees for that day. On the next day, all of the items you discovered will be found among the trees you shook that day, just in different places. Now, shake only the tree you want the item to appear in. If it’s not the item, keep shaking the trees you had shaken before until you find it. With luck, you’ll find it before you shake them all. Now stop shaking trees again.

Doing this day after day, you can get the item narrowed down until it appears where you want it to be generated. Once it appears there, stop shaking for that day, and then don’t shake it again on following days. Start over with another of the type of item you want to narrow down.

By working like this, probably within a couple of weeks you can get all the items you want generating where you want them. So long as you don’t shake any other trees, those will always produce the ones you want. If you shake other random trees, you’ll introduce uncertainty into what’s generated.

In this way, I have produced two trees that always produce furniture every day, generally without fail. This trick has been tested for months on my island.

The only drawback that I can find is, a couple of seasonal events (Christmas and Easter) are known to disrupt it, since they can repurpose some of your trees as non-random types for a little while. When the event ends, you’ll probably have to set it up again.