Skip to content

Proxy of local network protocol for the Among Us game

License

Notifications You must be signed in to change notification settings

NickCis/among-us-proxy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Among Us Proxy

The idea of this is to create a proxy to play among us without the need of the multiplayer server. Among Us is a great game, but many times the multiplayer server are full which creates long queues while trying to play. This project tries to build a bridge, using Web Sockets, in order to use the local LAN protocol.

How does this work?

When a local match is created, the among us local Host broadcast a discovery message to the port 47777.

Guests are listening to this port on the local network. When a Guest connects to the Host, it sends udp packets to the port 22023 of the Host's ip.

Then, the Host uses the ip and port of the received message in order to communicate with each Guest. All the communication is done over udp.

This project aims to be fill the gap (using WebSockets) of this udp communication over internet.

On the Host side, it spins up a WebSocket server which Guests will connect to. When a Guest has connected, the Host opens an udp port which will be used to redirect all the WebSocket data to the local 22023 udp port (this is the port the Game Host is listening). Every message that is received on the opened udp port is forwarded to the Guest through the WebSocket.

On the Guest side, it connects through WebSocket to the Host server. In addition, it fakes the broadcast udp message discovery to make the game believe that there is a match on the local network. In order to fake an Among Us server, it listens to the local 22023 port. Everything that is read through this port is forwarded (through WebSocket) to the Host. Everything that is received from the WebSocket is forwarded to the game through the udp port.

This project contains a:

Both packages can be downloaded from the releases section

How to use it?

(This section will explain how to use the graphical user interface)

First of all, we have to download the proxy application. This can be done on the releases section. Download the latests among-us-proxy-gui Setup.exe or zip file. Both packages contain this app. The Setup.exe package offers an instalation menu while the zip one contains it on a compressed file.

When you open the proxy (if you've download the zip it'll be the file named among-us-proxy-gui.exe) you'll see the following window:

There are two types of users:

  • Host: the person who will create the game on Among Us
  • Guest: the people who will connect to an available game

Host

The Host should first click the Host option under the proxy. After a few seconds, the following screen should appear:

You should take note of the url on the green screen (on the example wss://f6062ab98438.ngrok.io) because it will be the url you will send to your friends. But, before doing that you should create the game on among us.

In order to create the game. First open Among Us. On the main screen:

Select the option Local. You'll see the following screen:

There you should click Create Game. By this point, the game should have started and you can now share the url with your friends!.

Guest

The Guest should first click the Guest option under the proxy. A popup will appear asking for the hosts url:

On that input, the url that the host has generated has to be written. After pasting the url, you should click on Connect. You'll see the following screen:

Now you can connect to the game. First open Among Us. On the main screen:

Select the option Local. You'll see the following screen:

There you should see a Proxy game on the Available Games list. Double click in order to connect.

Development

The project uses npm and lerna.

Install dependencies:

$ npm install
$ npm run bootstrap

Code formatting:

$ npm run format

Packaging:

$ npm run lerna -- run make

About

Proxy of local network protocol for the Among Us game

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages