OgarProject / Ogar

An open source Agar.io server implementation, written with Node.js.
Other
719 stars 820 forks source link

Welcome back private servers! #584

Open xa opened 8 years ago

xa commented 8 years ago

https://www.reddit.com/r/Agario/comments/4k876e/private_servers_work_again/

m-byte918 commented 8 years ago

Does this actually work?

Luka967 commented 8 years ago

@Megabyte918 Your profile pics keep scaring me

ptoki commented 8 years ago

It does not work now on my end. I have deleted repo and cloned it again. Browser just waits at dimmed stage, no info about connecting, no errors. There is network traffic to agario port on my server.

Anyone succesfully runs Ogar again?

baba0rum commented 8 years ago

Use this extension in chrome and you can connect again with the same url (use bagario edited from me, just removed bagar stuff on screen. If you want original, then go to chrome extension store and download bagar.io it's free) http://www.mediafire.com/download/dsmn2j9hi3lj1d6/Ogar+client.rar

Andrews54757 commented 8 years ago

Moneyclip lied. The packets are different

EnTerr commented 8 years ago

They did not lie - they just don't give a flying frack that private servers will have to adapt to their undocumented changes in protocols 6/7, even if compression/encryption layer is turned off.

What protocol version does MiniClit's client send to Ogar servers now? (from packet 254)

Barbosik commented 8 years ago

Megabyte918, ptoki, Andrews54757: they didn't lie, it works well, I'm using it.

There is just need a small fix in ogar server, because cell update packet structure were changed for a little, now it more clear. See details here: https://github.com/issy123/agario-protocol/issues/15

Barbosik commented 8 years ago

EnTerr: it sends version 7. But for private servers it's the same as version 6.

Here is the first messages which is sent by the client to private server at connection begin:

FE 07 00 00 00 
FF 00 00 00 00 
ptoki commented 8 years ago

Barbosik, so basically which file needs to be changed to apply this? Or maybe it is already implemented now?

EnTerr commented 8 years ago

@Barbosik - you mean Agar.io client now always sends 7 as protocol version - but if connecting to Agar.io servers applies encryption and does not encrypt if connecting via ?ip=... ?

There might be more things to change - albeit easy. I am referring to using UTF8 instead of UTF16 for strings in other packages.

Primeau2011 commented 8 years ago

Can someone help me understand this issue and what I need to do to fix it so that I can run a private server again. Thanks. ogar - error 1

firelightning13 commented 8 years ago

@Primeau2011 u cant. just wait for them to implement new packets

Barbosik commented 8 years ago

EnTerr: yes, the new client always sends protocol version 7. But if you connect with ?ip=xx, then encryption is not applied.

Barbosik commented 8 years ago

ptoki: you need to fix src\packet\UpdateNodes.js in order to support new cell update record structure.

Also there is need to fix src\packet\UpdateLeaderboard.js in order to support utf8 names in the leaderboard, but actually it should works without changes in this file, but leaderboard will show garbage.

Also there is need to fix function handleMessage in the file src\PacketHandler.js in order to support utf8 string for join command (look for "case 0" in the switch statement).

That's it

Barbosik commented 8 years ago

Here is a fix for ogar which works for both protocols 5 and 7 automatically: https://github.com/OgarProject/Ogar/issues/588

it also includes automatic switch between UTF8 and Unicode strings depends on client requested protocol.

I tested it with the new client - works good :)

Barbosik commented 8 years ago

Primeau2011: your error means that something is wrong in a cell update message.

Primeau2011 commented 8 years ago

I appreciate all who are constantly working hard to figure out how to make private servers working again. I am a developer in Microsoft products and can figure out node.js. However wireshark and decoding packets is not my area. If there is something I can do to contribute then please let me know otherwise I will be keeping up with the threads and awaiting an update to source code. Thank you all and keep up the hard work.