JLevin.io
2B2Proxy
2B2Proxy logs in as your minecraft account and joins a specified Minecraft server. It provides a discord bot that allows you to control
the bot and also provides a minecraft server you can join to control the in-game account as if you had logged into the server as that player.
It also provides functionality to warn you if another player enters the visual range distance of the bot and can even automatically disconnect
if it detects the bot is in danger. All aspects of the bot are configurable through Discord.
This is a server that 2B2Proxy creates and allows the user to connect to and control the bot.
2B2Proxy was a difficult project because it is a lot more than forwarding Minecraft packets from the server to the proxied player and vice versa.
I had to cache many different things like the player's Inventory, Health, Hunger, Position, Chunk Data, Entities, and much more. This is because
the server doesn't send these to the proxied player so the proxy itself must send the data or else the player won't see anything around them
and won't be able to play.
A visual range warning
I plan on selling 2B2Proxy as a service and thus have designed 2B2Proxy to be deployed through Docker. The proxy is very efficient and I can host
3 2B2Proxy instances on a 1 core 1gb ram vps from Vultr. I can deploy a new server and instances in minutes using scripts that automatically download & install
2B2Proxy and its dependencies.I learned alot about docker and with this project and plan on using what I learned for future projects.