Comments (2)
I would definitely look at the server rather than say how the food is drawn. I think everything on the server is done without any knowledge of data structures or algorithmic complexity. For example there's an update loop which iterates through each player, and then calls movePlayer which is yet another O(n^2) nested loops, resulting in 3 nested loops per update. I don't even know what it's doing but that's not going to work. That's supposed to be the easy part, collision detection is supposed to be the bottleneck. I think it's reasonable to start over from scratch (that's what I did), there's nothing in this project that really strikes me as valuable for re-use. It's a good learning example of how to do canvas and websockets, but the game logic itself would need to be redone. If you want to use this I would profile the speed of each different component, such as moving players, populating cells, and doing collision detection, see which one scales the worst.
from agar.io-clone.
I should clarify that in my case my ultimate goal was to make a completely different game. If your goal is to make Agar.io I think starting with this project and fixing piece-by-piece by benchmarking each piece, is a good strategy rather than starting over. I am in-progress making a shooting-based multiplayer game. I'm not that far in but I have multiplayer movement and shooting. This project was useful for me to see what other people did, especially on the client side. However my game's performance requirements are even higher and the logic is all different. I am using golang on the backend.
from agar.io-clone.
Related Issues (20)
- -
- Scroll bar flash HOT 1
- When Split Not Able to Eat HOT 2
- Server breaks if someone incorrectly guesses password HOT 5
- Resolution problem. HOT 1
- Unnamed Green Cells look exactly like viruses... HOT 1
- Tons of deprecation! HOT 2
- I want to use this in my school project, could i fork this? HOT 1
- Allowing trough port 80 with other websites HOT 2
- How many connections can handle on free hosted server at same time? HOT 1
- We need more stuff
- Crash possibility due to not validating information on server side
- SQL Injection Vulnerability HOT 1
- Docker build fails ENOTDIR: not a directory, HOT 2
- Hacks
- Refactors from my fork HOT 2
- Problem with virus HOT 1
- Problem with viruses
- i need to be on his website to play. YET THERE IS AN MIT LICENSE HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from agar.io-clone.