Skip to content

sam46/Agar.io-Clone

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

64 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Agar.io Clone

A replica of the real-time multiplayer browser game agar.io, featuring client-side prediction and lag compensation based on Valve's Source Engine

STILL A WORK IN PROGRESS!

Image

Gameplay

Move with mouse, shoot mass with left-click.

No-server demo

There is a simple browser-only demo in the NoServerDemo folder. Check it out to quickly see if you dig it. Use Google Chrome!

Build

With docker:

To build and run the server in docker:

$ make start

this builds and runs a docker image tagged agario on port 8080, and also uses the Server directory as a shared volume.

With gradle

build and run the server:

$ cd Server
$ gradle build run 

TODO

  • Fixing time-stepping on server and clients
  • Handling blob generation and synchronization across clients
  • Collision Detection (with Quad trees?)
  • Porting physics to Java on the server
  • Implementing Source strategy for client-server communication. Better explained here (in progress)
  • Replacing string data communication between server and clients with other formats/encoding. (JSON or raw binary?)
  • Better effects (added blobbiness/elasticity effects)
  • Tweaking input processing and buffering across threads
  • Optimization for CPU-heavy code
  • Creating a pre-game panel for preliminary settings and player name input
  • Splitting upon colliding into viruses (in progress)