Author Topic: Difference between L2jMobius and L2jServer  (Read 336 times)

Online Mobius

  • Administrator
  • Distinguished King
  • *****
  • Posts: 7479
Difference between L2jMobius and L2jServer
« on: July 16, 2020, 01:38:21 PM »
This is my personal view of what is the difference between L2jMobius and L2jServer.

After multiple problems using L2jServer (some even not solved at the time I write this post)
and the continuous refusal of L2jServer inner team to apply fixes and features that where shared freely or existed on other open source projects,
L2jMobius was separated from the main L2jServer branch back on 2013.

At the begining I focused on just making things work.
And I did not stop there, I enriched the project's content with noumerus features that many people asked for.
Even custom features that where sold or other sites for a hefty amount of money, you could get, just by using L2jMobius.

I created support for literaly anything needed and adjusted things so feature chronicle updates would be easy to adapt.
If you tried to update to another chronicle and make a mistake, the server knows and it will warn you about it.
At this point I manage to maintain over 20 projects quite easily.

As the years passed by, most core classes that L2jServer used since ever, where totaly droppped and made from scratch.
Main reason was that I did not want to use old code because it just worked, those classes had a heavy impact on the server on their own.
The code has been cleaned and improved using professional tools, benchmarks and a lot of work reviewing code by hand (line by line),
also kept it consistent since the day the project started. Unlike other projects I only did, only unavoidable major refactorings.
I never abandoned the Allman coding style as it is the most readable and easy to understand style that exists (whomever doupts this has a brain issue).
L2jMobius not only has more things working, but is cleaner than L2jServer.

Even if I wanted to go back on L2jServer it would not be possible.
The amount of fixes made over 8 years, report after report, is unimaginable.
With L2jServer having doupfully 100 real commits since the separation and L2jMobius having over 7000.

L2jMobius forks can rename things, remove copyrights or whatever,
when you see an L2jMobius fork you will know it is L2jMobius and not L2jServer.