Strange Connections
As mentioned in the previous post, I regularly look for new LUNA servers, and archive their installers and any patches available, to preserve any unique assets they might contain. If you want more details on that process, read the previous post. That post started out as an introduction for this one, and spiraled out of control into its own article length thing, as these posts sometimes do.
This one started out a bit differently then most, in that the server I was looking into, wasn’t new per say, but a relaunch of a previous server, that had, to my knowledge, been closed for about a year at this point. While not unheard of, this doesn’t happen very often in the private server world, or atleast not with LUNA. While servers do come and go, they tend to get new names each time, and frequently different GM teams / front end staff, even if the developers behind the scenes stay the same. So this server, being named after a now dead server with V2
thrown on the end, was interesting already.
Upon investigating the contents of the client, I discovered it using the AES versions that conflicted with existing servers, and AES keys that were in the same format as several other past servers. None of that is particularly interesting on its own, LUNA private servers all seem to inherit things from each other, whether that’s authorized by people selling their sources, or by other servers just stealing assets out of clients, isn’t really known for certain.
I was about to lump this server in with most others in the “not interesting” pile, when I discovered something interesting while figuring out the URL used by the patcher. Rather than being some poorly configured FTP server, or a subdomain on their website like every other server I have ever come across, it was a GitHub URL. More specifically, a raw.githubusercontent.com
URL. This is a first, to my knowledge. I had never come across anyone hosting their patches on GitHub before. How would that work? To be accessible to the patcher without any sort of authentication, wouldn’t that mean this was a public repository?
This warranted further investigation and revealed that the files were indeed being hosted publicly. Each time a new version was added, they would add the new versions zip file, and update the LunaVerInfo.ver
file to tell the patcher what the new current version was. Now, storing large binary blobs in Git is generally discouraged, and I’m fairly sure using GitHub as a CDN for your MMO’s patcher is most likely a violation of GitHub’s terms of use in some way or another.
One bonus to being public Git repositories is that browsing through their history is made fairly easy, as despite the patches being reset to version 0 and all the existing patches being deleted several times in the past, all of these previously deleted versions were retrievable from the Git history. While digging through this history, it became clear that this wasn’t only the patches for this new V2
edition of the server, but in fact included all the patch history going back several years, all the way from the original iteration of the server, along with more patches after that first iteration closed, when the server was not publicly available, likely from a private beta testing period before relaunch under this V2
moniker.
Now, being a public GitHub repository also means we can see who owns the repository in question, and examining their account reveals 3 other repositories containing essentially the same thing, current and historical patches for several other servers. While I have long suspected certain servers were being developed by the same person or team behind the scenes, this pretty definitively proves that as fact, the same person is and has been involved in at least 4 fairly popular LUNA servers over the last few years.
I’m not going to directly link to the GitHub repositories in question, because the servers are still live at the time of writing this, and the technique is novel enough to warrant some restraint in disclosure. If you wish to investigate them more closely, download one of the clients in question and get the URL out of the patcher yourself, or if you’re really curious, shoot me an email at the address in the site footer and I’ll throw you the link.
The server that started this little adventure was RIN LUNA V2
, and through the other patch repositories, we now know that the same team is behind ODIN LUNA V2
, UNIVERSE LUNA
, as well as the new version of iPlay LUNA
, and based on the fact that the original version of iPLay LUNA
from years past contains this GitHub accounts name in its AES key, indicates they were likely behind the original version of it as well.
Building on those fairly concrete relationships, we previously drew conclusions based on BIN formats and AES keys that the original iPlay LUNA
may be related to Arcane LUNA
, and both of those related to / descended from Decade LUNA
. We also found that UNIVERSE LUNA
contains strings referencing LEGEND LUNA
, suggesting it may have descended from it as well. These conclusions are less solid then the ones we have from these first four servers sharing a GitHub account for their patches, but are still quite reasonable and can be assumed true unless evidence to the contrary comes to light.
Given that the original iPlay LUNA
dates back to 2023, and we have strong reason to believe it descended from Decade LUNA
’s codebase, from all the way back in 2016, would suggest that there has been one person involved in a good chunk of the LUNA private server scene. There is likely missing links in this chain, jumping from 2016 all the way to 2023, but I know of multiple servers that had closed before I came across them, it is likely there were other clear links in this chain that got lost to the void over time.
If the person behind all these servers ever reads this and wants to clarify any of the history, give me an email, I’d love to hear your side of this decades-long story.