How do you make a single player game into a multiplayer one? For example: SA-MP San Andreas Multiplayer and the new Just Cause 2 Multiplayer. Before making the mod, did they need permission? How did they even know what to code without having the games source code? I have some ideas but I have no idea where to really start.
Lets look at a high level, simple example. Say two people have a single player game called Box Game on their computer. Box Game is just a screen with a number of colored boxes. Fun game. Now someone figured out how to mod the game, the mod allows you to add new boxes to the screen with any color you want. Sweet.
Now someone writes a little application called Mod Controller that runs separate from the game. Mod Controller ties into Box Game's modding capabilities, and allows them to use Mod Controller to add and change the colors of whatever box they want.
Next they network Mod Controller. Now, when two people are using Mod Controller the two instances will talk to each other and share what boxes they're adding to their local system, and the other system will add the same color box to its own system.
Now, you can connect to other people, and see what color boxes they're adding, and they can see what color boxes you're adding.
Now we've gone from a single player game, to modding that game, to networking our modding controllers to a multiplayer game.
Obviously in a real example, it's a bit more complex than that. And it changes depending on the game, and what's supported in the game already. But as far as I know, a number of these types of mods use an external application for controlling the connections.
As for if they needed permission or not, that also depends on the game, and it's something you'd have to look into for the game you want to do this with.