Skip to content

Instantly share code, notes, and snippets.

@zihadmahiuddin
Last active February 27, 2018 11:24
Show Gist options
  • Save zihadmahiuddin/9e9390cb84d3dbcc1a527112dce3fec6 to your computer and use it in GitHub Desktop.
Save zihadmahiuddin/9e9390cb84d3dbcc1a527112dce3fec6 to your computer and use it in GitHub Desktop.
const net = require('net')
const Processor = require('./Packets/processor')
const Session = require('./session')
const ByteBuffer = require('bytebuffer')
const server = new net.Server()
const PacketReceiver = require('./Utils/packetreceiver')
server.listen(9339)
let sessions = []
let crypto = new (require('./Packets/crypto'))
let packetreceiver = new PacketReceiver()
server.once('listening',function(){
console.log('Server started on port', server.address().port)
})
server.on('connection',function(client){
console.log('Client connected from', client.remoteAddress)
let processor = new Processor(client)
let proxySocket = net.createConnection(9339, 'game.brawlstarsgame.com')
let session = new Session(processor, proxySocket)
sessions.push(session)
proxySocket.on('connect',function(){
console.log('Linked client to game servers!')
})
proxySocket.on('data', function(data){
packetreceiver.packetize(data, function(packet){
client.write(packet)
let id = packet.readUInt16BE()
//let decrypted = session.processor.crypto.decrypt(id,packet)
console.log('[SERVER -> CLIENT]' + id)
})
})
client.on('data',function(data){
packetreceiver.packetize(data, function(packet){
proxySocket.write(packet)
let id = packet.readUInt16BE()
//let decrypted = session.processor.crypto.encrypt(id,packet)
console.log('[CLIENT -> SERVER]' + id)
})
})
})
server.on('error',function(error){
console.error('Error:',error.message)
})
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment