How much Internet data does Minecraft use to play "online"? (By "online", I mean not "Play Offline".) Is there a difference in usage between Single- and Multi-player? Is there anything that might affect this, such as launchers or custom skins?
Some Internet connections only allow X MB/GB per month, and I was wondering how much of that can/does get used by Minecraft, and what can affect it.
Best Answer
Note: This section can be speculated, but these are examples on Vanilla Minecraft.
Initial Connection
Logging in requires sending a credential query to a server, which checks it against Mojang's session servers, which require about 20kB along with loading the world:
Depending on the world, a fully generated world (ie. one you can just create by clicking 'New Game') with a range of 10 chunks can take about 300-800kB (or less for empty ie. Skyblock worlds or more for worlds with lots of tile entities and mobs) for the initial world download, while new chunks that are loaded take roughly 30-100kB each (depending on the contents).
After Connecting; maintaining it
It really depends on what server you're playing on. Usually, a typical Minecraft server (presuming you're not using mods or custom plugins (with Spigot/Bukkit/Sponge servers) will usually require about 30-50kB/s download and 20kB/s upload.
Servers that update everything in real-time however (ie. have custom mechanics that are managed server-side), such as the Mineplex multiplayer servers have a increased bandwidth requirements, which is around 80-200kB/s download (inefficient update code) and about 50kB/s upload (validation and stuffs).
In the lobbies, Mineplex has an Enderdragon that has its name constantly changing, health fluctuating, a scrolling scoreboad display made by changing player/objective names every so often and items that has its names/metadata constantly change, which takes up more bandwidth as more things needs to be updated, and more update data needs to be sent to the client.
By 'often', I meant at least twice a second, if the packets make it in time.
Not to be a troll.. But it's as simple as:
Presuming 'this' is the bandwidth needed, then yes.
If a million things has happened, then it sends all of that million things to the client, which requires lots of bandwidth (download speed) to process and recieve, which is the case for Mineplex.
As for skins and clients... That depends. Usually modded clients have no effect on the bandwidth required as they do not affect anything but the launching of the game, while skins are just simply 64x64 .png files, or larger with various mods that support HD skinning.
So theoretically, having a million players on a server would make a difference as to having only one or two instead as your game does not have to download all one million skins.
A note about single-player LAN servers:
When playing single player, no authentication is done (even through LAN).
The only thing that the Internet is needed for are the skins...
And this only applies if you're playing purely on LAN with a Internet connection. Of course, everything above applies (minus authentication) if you're connecting to a LAN server externally (having it port-forwarded or through VPNs like Hamachi), alongside any non-Minecraft protocols.