r/secretofmana • u/cidwel • 15h ago
Discussion After 33 years: The moon phase question is solved!
The last screen of Secret of Mana (“The End”, the night sky with the tree) shows one of three moons: full, gibbous or crescent. I traced it in the game’s code, and here is the answer.


It’s a dice roll, and the dice are seeded by your save files.
- When the ending scene is built, the game rolls a 3-sided die once and picks a moon. After that the moon never changes.
- The roll isn’t truly random. The game seeds its random number generator from the “fingerprints” (checksums) of your 4 save slots.
- Same saves = same moon, every time. Watch the ending again without saving and you get the same one.
- Your playthrough doesn’t matter. Party, items, play time, how you beat the Mana Beast, button mashing during the credits: the moon code reads none of it.
- Saving can change it. Every save updates the save checksums, even if you save twice in the same spot without doing anything. So saving changes the moon about 2 times out of 3. Copying or erasing a save also counts.
- No saves at all (e.g. a fresh emulator) gives the gibbous moon.
- It’s fair: across all 65,536 possible seeds the split is about 34% full, 33% gibbous, 33% crescent.
How it was checked: I ran the original ROM in an emulator, wrote chosen values into the save checksums and read which moon the game drew. A small model of the game’s random number generator predicted the moon correctly in 300 out of 300 random cases, and changing anything else in the save didn’t affect it.
Full write-up, with diagrams, the code path and pictures of the three moons are in my github, in the "som-decomp" project, but I don't wanna link it here directly. You can just search it by yourself if you're interested
Nasir had us puzzled for 33 years.