This project aims to decipher the protocol diep.io uses to communicate, in hopes of creating our own server eventually or doing interesting things with the game.
All the protocol information discovered so far is contained in the Wiki.
First, read up on the game protocol in the wiki "Protocol" page in order to familiarize yourself with the basics of diep.io communication. Everything we have learned so far is stored in the wiki, and reading it will allow you a headstart in developing your own server, understanding the game protocol, or doing anything you wish with the game.
Then, you can start using the provided Chrome extension to start reading and modifying
the game packets yourself. The extension is stored in the
chrome_ext directory, and
README is included in that directory. There's even a wiki page if you want more
Installing the Extension
To set up the provided extension, first clone this project and save it on your computer. Next,
chrome://extensions and click "Load Unpacked Extension". Then, navigate to its
directory and enable the extension. If you modify any of the code, go to
and click "Reload".
Using the Extension
The file "modifier.js" contains a framework for handling communications to/from the server.
To intercept packets sent by the client, modify the function
handleSendData(data). If you
would like to modify the packet sent to the server, simply modify
data, which is then
returned by the function and sent to the server.
Similarly, to intercept/modify packets sent by the server, use the function
For altering the data, all you have to do is modify
If you would like to send the client custom packets or such in order to observe the client's response, etc., use
Remember to navigate to
chrome://extensions and click "Reload" after any changes to the code!
How To Contribute
If you discover anything interesting or have anything you can contribute, please consider submitting a pull request.
Forking this project and submitting a pull request will allow you to contribute changes to code.