I've been lurking in various comment sections trying to straighten things out for people who are sceptical. Mostly I get these two objections, even when it is answered in the comment above (some people really don’t want to read yet have no problem forming an opinion):
You can’t expect developers to rework a multiplayer game to be single player.
You can’t expect developers to run the servers indefinitely.
To these I politely explain how they misunderstood the goal of ECI.
A quick note on this: I see a lot of people doing the same as me, but in a condescending or rude way. Please be polite and patient. Antagonizing them doesn’t help us.
I’ve seen at least one legitimate objection, and I also have my own. I came here to open a discussion on these in hopes of coming up with a way to reply to these.
Malicious misuse
This came from a commenter:
“great, now imagine you invest effort and money into a live service game, which actually utilizes servers for multi-player. This proposed "law" is in effect. Your game gets popular, but suddenly your servers get bots/DDoS, whatever, making it unplayable and eventually forcing you to close shop. At this moment government steps in and says you must release the code. Some Chinese company takes your code, deploys it and starts making profit on it as if it was their own. How happy are you now?”
I can see this happening. The only thing protecting some companies from this is not making the server available.
They should just not release the source code, only the compiled server.
This, doesn’t work. They can still do it. If we are able to play the game, they are able to steal it.
They still own the rights; you can just sue them.
Good luck suing a Chinese company.
If the server is available to everyone, how can they profit from it.
They would be willing to host it. I can see them profiting from it.
Just protect against DDoS
That is a question of funds. As a small or even a medium company you might just be overwhelmed.
Complex games
Correct me if I’m wrong, but MMORPGs like Guild Wars don’t have a subscription fee like World of Warcraft, in fact, most MMOs don’t have that. This means those also fall under the ECI. I bring this up because I wanted a complex example. I’m no game developer, so I can only theorize how those games function on the backend side.
There are a bunch of components on the back end side other than the core server application. This would include stuff like load balancing, monitoring and security components for example.
We can do without these.
There is an entire database layer as well. Including the database initialization codebase.
We can’t do without these
My point is that it’s messy.
Shared components
Let’s say I’m a game developer for competitive multiplayer games of the same genre. It’s more than likely that I’m using the same anti-cheat code in all my games. Again, it’s not my field, but I’m guessing that part of how anti-cheats work is through obscurity. If you force me to release the code for a game I no longer want to support, that might compromise the game I’m still supporting.
Entanglement
I know World of Warcraft is not part of this, but I’m going to use it as an example here. By now the server code is probably deeply entangled with Battle.net. We can’t reasonably expect them to patch that out. You can leave this to the users, but the ECI specifically requires the game to be functional, and in this case it wouldn’t be.
This problem is probably present for all console games as well.
I’d love to hear your opinion on these topics.