Understanding the relationship between client and server
MMOs and certain other games (Everquest, World of Warcraft, Diablo III etc.) are always-online client-server games, in which part of the game lives in the client, and part lives on the server.
If you've ever had World of Warcraft disconnect from the server, you know what I mean. You can walk for miles inside the game, roaming the landscape. All the terrain is there, fixed structures, water flow. But no townspeople. No monsters (MOBs). No treasure chests in the usual places.
Well, if the game was up, you'd see kobolds and a treasure chest. Your local client PC draws the pictures and makes the sounds of the kobolds and the treasure chest, but the server is telling your local client PC that the kobolds/chest are there, and what they are doing (attacking you; dying; etc.) When you open the chest, a bunch of stuff happens:
- The client tells the server you are interacting with the chest
- The server tells the client to play the "chest opening" animation and sound
- The server decides which effect occurs (trapped chest, additional monsters summoned, or just gives loot)
- The server determines which virtual items are inside the chest, and tells the client to display a "loot window" allowing the player to review and pick the items of interest
The point is, it's a very tightly coupled dance, where effectively half the game is in the client, and half the game is in the server.
Setting out to duplicate it
In particular, the server contains all the command-and-control gameplay logic, i.e. where monsters are, where chests are, combat mechanics, resolving "dice rolls", computing loot tables, inventory management, etc. Whereas the client does all the graphics-and-sound.
Both are hard to build. But the client-side includes staggering, cubic amounts of graphic design and artistry - having dozens of faces on hundreds of creature types look the right shade of cartoony vs realistic so you look good but don't fall into uncanny valley, having all the other game art match, foley (all those sounds), voice acting -- just huge amounts of creative work. It would be impossible for amateurs to duplicate this large corpus of well-coordinated graphic arts work.
The server is also tough because of the numerous actions and mechanics which need to work properly, and fairly, and be complex enough to keep the game interesting*. But most of them are optional once a basic interaction and combat system is built. While it is large in scope, amateurs could build a simplified combat and inventory system, get the game "on its feet", and refine as they go.
Legal barriers on the server side (making a private server)
You know there is a legal path to cloning an algorithm. When they cloned the IBM PC BIOS, they used a "Chinese Wall": One development team decoded IBM's BIOS and wrote a specification. The other development team read the specification and wrote brand new code to follow that spec. Since no copying was done, no copyright claim is possible.
Our cloners get this "Chinese Wall" for free, since the game company controls the servers and will NOT grant access to the code. However, they can surveil communication between client and server and reverse engineer the data packets. Public information (such as WoWhead) can help with that.
Here is the #1 legal problem with that. If you have the dedication to write a private server, you probably played the game legit at some point. If you played the game legit at some point, you signed an EULA/TOS. And if you signed the EULA/TOS, you agreed never to do this.
Second, the question of surveilling the communication traffic. There's a pitched battle between smart-device manufacturers and "Right To Repair/Remix/Reinvent" types. The people who want to fix their own iPhones, put Tesla powertrains in F150 pickups, directly control their smart switch instead of via a hub, make Clippy help with Klingon grammar, etc. Manufacturers keep lobbying to get anti-reverse-engineering and anti-circumvention laws installed, and Makers and EFF keep lobbying to get them repealed or fund appeals that overturn them. So I expect that to be legally in flux for the foreseeable future.
Legal issues on the client side
The client-side is 99% custom graphic art and foley, which is unquestionably, undoubtedly copyrighted. The sheer vastness of the copyrighted work makes replacing it out of the question.
Ah, you say, the heroes who wrote Black Mesa did exactly that. But they did it on a much smaller game, with giddy approval of the IP owner, whose business model favored this remixing. (Valve gets paid when you buy the game; MMO operators get paid when you play it). But suppose you have that kind of capacity.
Even then, you cannot simply copy art with a "Chinese Wall" technique like you can with code. The copyright principles work differently. *Consider as a mental exercise, using Chinese Wall on a late Mondrian painting. Have one group of artists examine Mondrian paintings for line width, spacing, color choices etc. Then have another group of artists who has never seen a Mondrian, make art to that specification. Would the Mondrian estate would still come after you? You bet they would.
So if you scratch-build an MMO client, but the elves look like slightly differently-styled elves, and the kobolds look like differently styled kobolds, etc. etc. etc. -- that's no defense. The MMO owner can still come after you. But more to the point, having done a staggering amount of work, why not differentiate a bit more and have an entirely original work? At that point copyright is no longer an issue, and your game is viewed as a "love letter" to the origin game, like Blizzard views The Guild and Torchlight, or the Trek gang view The Orville.
But of course, nobody wants to play Planet of BattleArt.
So the upshot is that replacing the client is absolutely infeasible. Either you have the punch to build your own original game, or you are unable to replace the client. So you must use the original game client, and trick it to talking to the private server.
Here is where the game's players are now in trouble. They could not have installed the client by clicking through an EULA/TOS. Again, that EULA/TOS forbids them from doing this thing. Of course actioning 1000 players of a private server is impracticable.
But let's say the private server operator has never played the origin game and has never signed the EULA/TOS. Are they insulated? NO. Because they are facilitating (causing the players to) violate EULA/TOS. At the least, this becomes interference of tort, aka tortious interference. This generally has 6 elements:
- There's a contract/business relationship between User and Maker (the EULA/TOS).
- A third party knows that: The Private server (P) knows this U-M contract exists.
- The third party wants to get a party to breach the contract (P wants U to violate M's TOS).
- There's no legal exception that gives the third party a right to do this.
- The contract is in fact breached (U violates TOS by playing P's server).
- One of the original parties takes financial damage (U stops paying M $15/month)
This is complicated to prove and win, but Blizzard has a good track record of doing exactly that with private servers.
* Here's an example of optional complexity: A common quest is "get 6 wolf pelts", except only 1/3 of the wolves have pelts :) The designer's intent is kill 18 wolves. But sometimes, after you got 5 pelts, you'd get bad "dice" rolls for 9 wolves in a row and get no pelts. This is more maddening than you'd think... and you remember it bitterly! So Blizzard rigged the dice to improve the odds as you approach the target number (18). By the 20th wolf, chances are 100%. That kind of "play tuning" is what makes a game good. But it's not required.