Slither-Server icon indicating copy to clipboard operation
Slither-Server copied to clipboard

Project continuation?

Open gary00k opened this issue 3 years ago • 3 comments

What's going on with project? I cannot use it, maybe something changed for last 5 years?

gary00k avatar Dec 02 '21 09:12 gary00k

What's going on with project? I cannot use it, maybe something changed for last 5 years?

I honestly think this project either died, the creator just forgot or got busy. I don't think its gonna be updated anytime soon

Baggette avatar Jan 21 '22 16:01 Baggette

i mean all the servers pretty much work you just gotta add in the code for the protocol 11 pre init packet handling. and possibly update some of the packet message structures to also match the protocol 11.

Edit: atm i'm kinda rebuilding iiegor/slither server so in the end i can hopefully train my neural bots on my on local host (would be a lot better then what i'm currently doing which is blasting 10 bots at a time on the official servers), so far i got the pre init msg going just fine, and now i have food spawning in, much better snake movement then when i started and i'm currently working on trying to get the eat packet to remove food properly and grow the snake.

P.S: the biggest thing that changed in 5 yrs is that pre init packet. This is the first packet sent from the server after the client starts off with the c(99) msg.

  • ClitherProject/Slither.io-Protocol -

This is the first packet sent. The server will then respond with the Pre-init response.

Byte Data type Description
0 int8 99 (= 'c')

Packet "6" (Pre-init response)

This is the first packet received. It is an encoded JavaScript-file that the client executes. It generates a string, that is further manipulated by the client and sent back to the server. This is done for verification / bot-protection (if the clients answer is wrong, the connection is closed). After that, the client continues with the SetUsernameAndSkin-Packet.

Byte DataType Description
3-? encoded string JavaScript-expressions

My example of what i'm using for the preint message code, once you have this and it's linked in properly to your message builder then just send it before the code that send the initial message packet.

message = require '../utils/message'

stringtowrite = 'EUlXugxMjVOpVRGUPGwqGXlETocxjLRlbRicRPxUfbnIwOEznItpEYKDSfZBKCNjwvhYppYKbqjgWMDPMypeBVgHOcwVhBmmUkcUKJVpzzHHPNcxJDRgzmhTolXREDKlVHzCLzTmBnKwPfZZhwPFVjgujgVPZXIhUR'

arr = new Uint8Array(3 + stringtowrite.length)

message.writeInt8 2, arr, '6'.charCodeAt(0)

message.writeString 3, arr, stringtowrite

exports.buffer = arr

t3knical avatar Mar 26 '22 02:03 t3knical

i mean all the servers pretty much work you just gotta add in the code for the protocol 11 pre init packet handling. and possibly update some of the packet message structures to also match the protocol 11.

Edit: atm i'm kinda rebuilding iiegor/slither server so in the end i can hopefully train my neural bots on my on local host (would be a lot better then what i'm currently doing which is blasting 10 bots at a time on the official servers), so far i got the pre init msg going just fine, and now i have food spawning in, much better snake movement then when i started and i'm currently working on trying to get the eat packet to remove food properly and grow the snake.

P.S: the biggest thing that changed in 5 yrs is that pre init packet. This is the first packet sent from the server after the client starts off with the c(99) msg.

  • ClitherProject/Slither.io-Protocol -

This is the first packet sent. The server will then respond with the Pre-init response.

Byte Data type Description 0 int8 99 (= 'c')

Packet "6" (Pre-init response)

This is the first packet received. It is an encoded JavaScript-file that the client executes. It generates a string, that is further manipulated by the client and sent back to the server. This is done for verification / bot-protection (if the clients answer is wrong, the connection is closed). After that, the client continues with the SetUsernameAndSkin-Packet. Byte DataType Description 3-? encoded string JavaScript-expressions My example of what i'm using for the preint message code, once you have this and it's linked in properly to your message builder then just send it before the code that send the initial message packet.

message = require '../utils/message'

stringtowrite = 'EUlXugxMjVOpVRGUPGwqGXlETocxjLRlbRicRPxUfbnIwOEznItpEYKDSfZBKCNjwvhYppYKbqjgWMDPMypeBVgHOcwVhBmmUkcUKJVpzzHHPNcxJDRgzmhTolXREDKlVHzCLzTmBnKwPfZZhwPFVjgujgVPZXIhUR'

arr = new Uint8Array(3 + stringtowrite.length)

message.writeInt8 2, arr, '6'.charCodeAt(0)

message.writeString 3, arr, stringtowrite

exports.buffer = arr

nice, good luck man

Baggette avatar Apr 03 '22 07:04 Baggette