impact-crater / impact-crater-core

NodeJS authoritative server for the Impact.js game engine.
MIT License
42 stars 4 forks source link

Impact.js++ compatible? #9

Closed danielmahon closed 10 years ago

danielmahon commented 10 years ago

Just wanted to see if you've gotten this to work with impact.js++? It's being a pain to adapt.

dylan commented 10 years ago

No we haven't, I'd like to eventually make this such that people can create different starting points, impact.js++ being one of them.

danielmahon commented 10 years ago

Thanks for the quick response! Im jacked about this project. Hopefully I can help out.

Question: From what I can tell in the demo, right now it's completely server authoritative with NO client prediction correct? I noticed the "flood" of socket traffic for pos updates. Obviously client prediction is more complicated. Just wanted to get your thoughts on it as I can see the current iteration limiting for say spawning 100+ entities between 4 players.

Thanks for what you've got already!

PS - Ive already merged this with a node.js weltmeister server that can server from S3. It might worthwhile once I clean it up a bit.

dylan commented 10 years ago

I haven't worked on this in about a month or so but hopefully I'll have some more time soon. The last thing I was working on was area of interest filtering (split the world up into a quad tree, pub/sub then based on who's neighbors) which will help with traffic immensely. After that client side prediction was probably next on the list. Feel free to fork/PR any awesome work you do and we can try it out etc.

cha55son commented 10 years ago

Hi! I hope to be picking this project back up soon as work is starting to calm down. I took a look at ImpactJS++ and it looks pretty cool.

Right now the server is completely authoritative. Any entities that extend the Server and Client classes will be network-oriented. You can have entities on the client that are not network based but thats about it at the moment. There may be a way to add prediction but I have not attempted it yet.

I have plans to reduce the network footprint of entities but not sure when i'll be available to start on that.