Dieser Beitrag is auf Deutsch verfügbar auf xiphosiade.wordpress.com
I’m not an expert on this topic, but I feel there is the need for some explanation regarding the story of LUNI. I’ve not been around the LU community for very long, but i’ve read a fair bit about it, and talked to some relevant people. If I say anything wrong here, please correct me.
I want to publish this here, because I’m the only person responsable for this blog. This is my personal point of view, and I don’t want it distorted by others on any public site that is not fully controlled by me.
Let’s start at the beginning
What is LUNI? LUNI is a project aiming at recreating a server for the game LEGO Universe. It originated even before LU was shut down, but continued it’s work afterwards. LUNI is an acronym for “Leggendary Universe Nations Iperspace” or “LEGO Universe, Newly Imagined”.
Way back then, a user called pwjones captured packets of the Client-Server traffic of LU, while it was still live. These findings have been posted on the original LUNI forums over at SourceForge. It was found out, that the packets use AES encoding and humanoid was able to decode some of these captures into the actual packets.
A group of developers found their way into one team, with raffa505 as the official project leader, who had developed some basic systems, he imagined the server would need to have, including a MySQL connection and some multithreading systems.
At the same time, humanoid had created the first server loop, which was actually capable of communicating with the client. The latest version he released publicly was called “LUNITest v3”, supposed to mean “LEGO Universe Test Version 3”. This version may be better known as LUNI 0.3.
Setting the project on fire
At some point, Timtech uploaded the Lego Universe Client to his site, and later uploaded a compiled LUNI to his site. A Timtech site claims this was what he called LUNI 0.4. This caused raffa to file a DMCA takedown notice against Timtech, and closing down the original source repo, while Timtech responded with GPLv3 licensing discussions. Timtech finally uploaded the source code somewhere else.
At this point, raffa raged and is said to have introduced a virus into the source, at some point a LUNI wiki had been created on wikia and people threw polls around, opposing “Team Timtech” and “Team Raffa”. Some developers agreed with Timtech that raffa was overreacting, some agreed with raffa, that Timtech shouldn’t have uploaded the server and source code.
Keep in mind, that neither Timtech nor Raffa had really contributed to the LU source. While raffa did develop much, his SUtil tool and threading or ref<> system are awful, apparently unaware of RakNets limitations. The real interfacing with the client was done by other people. Timtech was never a developer and just hosted files, becoming a community manager incapable of even getting a server to run, which he recieved donations for.
Sane people
humanoid who was at some point joined by lcdr, had the most amazing reaction, by just silently continuing to work, but at the same time providing a very detailed and professional documentation of what they’ve found out about the server.
Jon002 was one of those agreeing with Timtech, and he took the repo, made some progress and documented a whole lot of code, though not always accurate.
DarwinAnim8or, who has been part of the remaining LU community since the very beginning got so frustrated with the original LUNI source, that he decided to work on his own server, branded “Darkflame Lego Universe”, or DLU, often called “Darwin’s Lego Universe”. He assembled a group of testers around him, and made some amazing progress.
Summer of 2015
After a short period of time, where Knightoffaith took over the task to reorganize LUNI, but being forced to stop for personal reasons, luniserver.com had been created and people started using it.
Darwin was making good progress, introducing multiplayer, and publishing nearly an hour of video from a testing session to YouTube. He also recently got TheMachine into his team.
At the same time, my brother found timtechsoftware.net, got all excited, and told me, since we both used to play LU long ago. I, being interested in programming, downloaded LUNI, and the LUNI source, searched around, and found humanoids/lcdrs documentation, and joined their IRC chat.
There I met Darwin, an learned a lot about the server, leading me to use my vacation to improve the source I had gotten to work. I’ve ripped some parts apart completely and made massive changes to the source, introducing playing with the character you created, multiplayer, chat, mail & some work on friends. I pushed this code to github, and got into the LUNI community encountering CuzItsJonny, mater06, CDFalcon and at some point Knightoffaith and XYQuadrat.
My holidays were over, I could not work that much on the source, so I allowed CDFalcon to set up the first public server after having tested with some of them on my machine.
I got sidetracked with the CMS, the community, stopped making progress and at some point Jon002 returned. CDFalcon stopped his server at some point, after the support requests became massive. Timtech failed to comply with the rules I wrote down and published my pre-release on his site, so I notified him to take it down.
Approaching New Year
At some point, I resumed development, and did some work on loading files, again just implementing humanoid/lcdrs documentation. I asked people about what LUR is exactly and was invited into the “LEGO Universe Refugees” Skype Group. There, Darwin jokingly asked me if I would want to join DLU, and I said yes. Although it was a joke initially, I really did join DLU, joining Matt/Extra and Jon002 who joined before me.
DLU is a closed source project, with only a small group of testers, meaning I can’t explain what we work on at the moment. But we don make progress and will try to get a playable, but not finished game in January 2016.
For LUNI, this means that “Team Timtech” has no developers, and “Team Raffa” doesn’t care about LUNI and only occasionally presents us his master in computer science or whatever he got.
Darwin said, DLU will need a website when we are live, but until then, there is no public community for it.
Update 2017-08-24
As this page occasionally recieves some attention, I should point out, that the forums on luniserver.com are now closed to new comments, Darkflame Universe (DLU) has launched a Twitter (@darkflameuniv) and Website (darkflameuniverse.org), lcdr has come forth with his own project through YouTube videos and a website (lcdruniverse.org). Additionally, there are other Projects like LUReborn (@lureborn), and Project Imaginite (@projimaginite). Finally there is a Lego Universe Community Hub Discord (LUCH) now.
Update 2019-08-12
For a reliably up-to-date overview of the active projects in the LU restoration community visit https://lusprojects.github.io. You’ll also find a valid invite link to LUCH there.
Appendix
A. On Licensing
Originally, humanoid posted his code without any license, meaning it belongs to him. Raffa took this code and integrated it into his, using a CC Attribution, No Derivates combined with GPL on SUtil. This is already silly, but he still shouted “Italian Copyright law” all over the place. Then he changed to CC without No Derivates, which is not permitted, since no CC license can ever be removed. Timtech intepreted LUNI as all GPL, Knightoffaith convinced raffa to go AGPL. Then there have been DMCA claims and viruses, so the legal situation of LUNI is unclear at best.
So I hope we all agree that any license discussion is just silly, and that humanoid has given us his code to work with it, but not to put any license on it.
B. On giving credit
Timtech is great at telling people, go advertise LUNIServer. This attracts noobs, leads to frustration, and most people who follow his advice are misguided enough to e.g. start discussions with me about who made public servers work. The problem is that Timtech is also really bad at giving credit. People don’t know about this backstory, and are confident, that Timtech is the hero of LUNI by making public servers available. This is just sad.
C. On opened and closed source
I am a fan of open source. I would not have made any progress if the LUNI source wouldn’t have been there. That’s why the LUNIServer GitHub is still there. It’s amazing to be able to learn to work with it, and if a mature developer asks me privately on Skype if they don’t get it to run, I may help them. But LUNI backstory shows that many people only care about getting the features they want. They support Timtech for uploading the source, not humanoid for making the server loop. They praise CDFalcon or even Timtech for a public server, when I introduced multiplayer. They want the objects.xml list to cheat items, while lcdr has tools to read the original database. They want mutliplayer when they can visit worlds, Combat when they have multiplayer, enemies when they have skills.
Open source keeps us from making progress and people with barely any experience are stubborn enough to host a server and give out their IP even if you tell them they shouldn’t do that.
I bid you all farewell
I’m starting to rant again, so I should stop right here. I hope this post can enlighten some minds and can teach people about what LUNI truly is. If you want, leave a comment, i’ll try to answer the sane ones.
Have a nice day
Hmm. Well explained. Thank you for writing this. I’ll be watching DLU with great interest.
~Pirateronin/Lind Whisperer
LikeLike
Interesting. A few things – most of us joined LUNI because it was the first (and probably only) LEGO Universe private server project we found at the time. The packets are encoded using an AES public/private key pair which is not huffman AFAIK. Even with humanoid’s decryption program, and lcdr’s python script, it still took a long time to decode them all 🙂
I do hope that once DLU is finished the source will be released. I am sure there is some worry about others taking it and trying to profit. Personally, I just want to “tweek” the code to my needs 🙂 Although having a single server for everyone will be awesome. If not, I am looking at the replica manager additions on the github repository in my spare time, which isn’t much, and may work on my own implementation.
LikeLike
Hey pwjones, I read your comment a long time ago, but it just occured to me, maybe I should write an answer. Thanks for commenting anyways, people reading this should be told that he is the one who captured packets originally.
I’ve looked around on the old sourceforge forums at some point and someone had posted something about huffman encoding on the packets there, so that’s what I said in the blob post. And the RakNet docs say at some point that network traffic can be optimized using a sort of statistic, which seems to fit the idea of it being huffman encoded. I think you are correct with AES being something else, and it’s definately there (and has been for a long time, since humanoid wrote that init_security function).
I really like tweaking or improving the code too, that’s how I got here. Finally it’s Darwins decision, i’m almost certain, he will never release binaries, but he might make the source available in some form.
The replica (in LUNI at least) is really nothing else than humanoid, lcdr & your docs implemented.
LikeLike
Is there any chance of some form of contact with Darwin, Xiphosia. While I am aware that he does not tend to contact people outside of the development team – I am not only a programmer, but I have some useful designs for DLU, which I was planning to implement into LUNI, before I realised they weren’t really doing much. At all.
While I am aware the the answer to contact details for Darwin are unlikely, would it be possible to pass on a message – please reply if so.
Thank you,
NinjaOf LU
LikeLike
Ok, it might confuse people that I call myself Xiphoseer but my blog Xiphosia. Now to your question: If you have something relevant to tell him, I can pass it on to him. You can add me on Skype (just include NinjaOfLU in your request) with this username. I’d be interested to know what you mean by “designs”. Also, there is no real “they” in regards to LUNI, I’m the owner of the last public repo, Jon002 of the repo before that is in DLU too, Raffa quit and humanoid works in private.
LikeLike
Where do I find the hour-long video from testing? Also, is there a way to contact Darwin?
LikeLike
It should be on YouTube on the gie005 channel. You can probably contact him on twitter with that same name or @DarkflameUniv or the like. Be aware that the information here may be quite outdated
LikeLike
an Interesting & Sad history. LU is always going to a ‘part of me’ as the expression goes… And I certainly have my hopes for the future.
I would like if you would give an Update on the situation, at least as much as you know about it…
LikeLike
I recommend following @darkflameuniv on twitter as it is going into early testing at the end of this month and it is the most feature-rich server emulator out there. Plus, apart from humanoid and lcdr, every competent developer that was in contact with LUNI works on DLU now.
LikeLiked by 1 person
I’m very glad you explained this whole story, as reading some of the LUNI forum posts left questions in the air. I felt really excited to help develop for the LUNI project, but of course after the digging and reading of this post, the feeling is almost gone. I’ve been recently investigating into the status and history of LUNI, and it did lead me to DLU, it’s quite successful successor.
I think making it a closed development environment was a wise choice, making development more straightforward and controlled. I remember playing this game back when I was 12, loving every aspect of it. I would relish the opportunity to use my professional and academic software engineering skills to aid in the re-sculpting of what I considered a beautiful game. Is there any chance that DLU could use another developer that you know of? I’ve reached out to their Twitter channel.
Thanks again for the backstory, @Xiphoseer 🙂
LikeLike
Hey @Proryanator, glad that this post still helps people get a clean view on what happened. It’s been quite a while since I read this and I’m glad as well, that this drama seems to finally die out as servers have gotten to a state where it is actually possible to work on features and not just to pretend by setting up a prototype. If you don’t know it already I’d recommend you check out the Lego Universe Community Hub (LUCH) Discord at https://discord.gg/7xZzH8p.
LikeLike
0 Pingbacks