How L2jMobius Is Legal
Clean-room engineering, statutory protections, and the line between writing emulator code and operating a public server.
This page summarises the project's legal foundation. It is not legal advice. Consult a qualified attorney in your jurisdiction before operating any public server.
The two questions, kept separate:
1. Is the L2jMobius CODE legal? ─► Yes. Clean-room
reverse engineering of a
network protocol is a well-
established lawful activity.
2. Is RUNNING a public server legal? ─► That is a different
question, with a different
answer per jurisdiction, and
it is the operator's problem,
not the project's.
Mixing those two questions is the single most common error in this space.
The five pillars
1. 100% original code ─► every line written by Mobius
contributors. We own our copyright.
Nothing copied, nothing decompiled.
2. Clean-room engineering ─► observe packets and behaviour,
document the observation, implement
fresh code from the documentation.
Never read the original server.
3. Statutory protection ─► reverse engineering for inter-
operability is explicitly permitted
by 17 U.S.C. § 1201(f) (US) and
Software Directive Art. 6 (EU), plus
equivalents in CA / JP / AU / KR.
4. Functional elements ─► 17 U.S.C. § 102(b) excludes
are not copyrightable "idea, procedure, process, system,
method of operation". A network
protocol is a process.
5. We do not distribute the ─► no client, no models, no
copyrighted assets textures, no sounds, no maps. The
operator must obtain a legitimate
client themselves.
The court cases that backstop this
Sega v. Accolade (1992)
Accolade reverse-engineered Sega's console to make compatible games. The Ninth Circuit held that reverse engineering to understand how to make compatible software is fair use, and specifically that when reverse engineering is the only way to access functional information required for interoperability, it is lawful. That ruling established the legal pattern every emulator project since has relied on.
Sony v. Connectix (2000)
Connectix built a PlayStation emulator by reverse-engineering the BIOS. The Ninth Circuit held that creating an emulator through reverse engineering is legal, even when intermediate copies are made during development, as long as the final shipped product contains none of the manufacturer's code. This is the most direct precedent for what L2jMobius does.
Google v. Oracle (2021)
Google copied Java API declarations into Android. The U.S. Supreme Court held this was fair use, emphasising that functional elements used for interoperability, and reuse that lets developers carry their existing knowledge to a new platform, receive strong fair-use protection. Most recent Supreme Court affirmation that functional compatibility is protected.
What about EULAs and Terms of Service?
EULA violations are not copyright infringement
An End-User License Agreement is a contract between the publisher and the person who clicked "I agree". Breaking a contract is not breaking copyright law. Breaking a contract is also not a criminal matter, the worst the publisher can do is ban your accounts.
Not every contributor is bound by the EULA
- People who never installed the game never agreed to its EULA.
- Observing network traffic is not an act that requires agreeing to terms.
- Information lawfully obtained by non-parties is not "tainted" for everyone downstream.
Some jurisdictions explicitly override EULAs
The EU Software Directive states that contract terms cannot strip the statutory right to reverse-engineer for interoperability. Those terms are "null and void". The U.S. position is messier, but courts have repeatedly held that statutory rights cannot be eliminated by private contract.
Why we never distribute game assets
The emulator The game client
──────────── ───────────────
• Original Java source code • Copyrighted by NCSoft
• Distributed by Mobius • NEVER distributed by Mobius
• MIT-licensed • User obtains it themselves
• Legal • User accepts the license terms
when they install
This separation is the same one used by:
• Dolphin / PCSX2 / RPCS3 - emulator, no ROMs
• Wine - runtime, no Windows binaries
• OpenMW - engine, no Morrowind data
What we do NOT do
- No leaked retail server files. Not for "reference", not for "comparison", not for cross-checking behaviour. The clean room is only clean if it stays sealed.
- No decompilation of the original server. Same reason.
- No copying from other emulators that did use leaked files. Provenance matters; a fix derived from a tainted source is itself tainted.
- No client binaries. Not in the repo, not in the releases, not in the documentation links.
- No assets. Models, textures, sounds, maps, animations, music; none of it ships with the emulator. If you build the project and run it without a legitimate client, the client side is your responsibility.
What this means for you, depending on what you are doing
If you are reading the code to learn
You are doing exactly what the law explicitly protects: studying functional software for education and research. No additional concern.
If you are contributing code
Contribute only original work. Never paste from a decompiler. Never paste from a leaked server source. If you adapted an algorithm from another emulator, check that that emulator's source was clean-room too; if you do not know, do not paste.
If you are running a server for friends
The emulator code is legal. Connecting to it with the official client may violate the client's Terms of Service. That is a contract issue between you and the publisher, not a copyright issue with the project.
If you are operating a public or commercial server
This is the most legally complex case and the one the project explicitly does not encourage. Commercial operation invites scrutiny that private play does not. Talk to a lawyer in your jurisdiction before doing this. Do not treat anything on this page as a substitute for that conversation.
The disclaimer
This page is not legal advice. It is a summary of the legal reasoning the project operates under, written for engineers who want to understand why the codebase looks the way it looks. Laws vary by country and by state. Court decisions evolve. When in doubt, consult a qualified attorney in your jurisdiction.
The L2jMobius developers make no guarantees about legality in every jurisdiction, are not responsible for how third parties deploy this software, and disclaim all liability for the legal consequences of server operation.
For the full project legal statement, including the international perspective, fair-use analysis, contributor guidelines, and disclaimer in full - see Gitlab README.md in the project root. For how the project moved from GPLv3 to MIT, see the MIT Transition page.