Agar.io Wiki
m (→‎Server: Fixed another typo)
Tag: Visual edit
m (→‎Client: Added info about packets)
Tag: Visual edit
Line 18: Line 18:
 
* The code cannot be read, because it has been obfuscated
 
* The code cannot be read, because it has been obfuscated
 
* It did not always used to be obfuscated, so the code of earlier Agar.io versions has been used to create alternative clients
 
* It did not always used to be obfuscated, so the code of earlier Agar.io versions has been used to create alternative clients
  +
* Data is sent to the server in packets that are following the mutual net protocol and are encoded binary.

Revision as of 14:29, 5 December 2020

Agar.io is a browser game, with the browser being the client that connects to a server.

Server

=> Learn more about servers

  • The server is the owner of the "game world". The server has all relevant about the game world and calculates all of its changes
  • The client does not directly manipulate anything in the game world. The client only sends requests / intents. For example, if the player pressed the split key, the client send a request to do a split to the server and then the server handles it.
  • Therefore client and server have to follow a certain protocol when communicating with each other, so that they are able to send message the other one can understand.
  • Client and server use sockets to communicate

Client

  • The client is somewhat independent from the server. Therefore, in the past, it was possible to connect different clients and servers. For example people setup private servers and connected to them with the regular Agar.io client. However, nowadays this is no longer possible.
  • The client is written in JavaScript
  • The code cannot be read, because it has been obfuscated
  • It did not always used to be obfuscated, so the code of earlier Agar.io versions has been used to create alternative clients
  • Data is sent to the server in packets that are following the mutual net protocol and are encoded binary.