Multiplayer fighting video game featuring rollback networking
Go to file
Trevor Slocum be89bd5e9c Increase AI opponent difficulty 2023-02-01 10:56:55 -08:00
asset Add hit sound 2023-02-01 10:45:53 -08:00
component Increase length of punch and kick animations 2023-01-31 21:18:47 -08:00
entity Initial commit 2023-01-03 12:14:27 -08:00
game Increase AI opponent difficulty 2023-02-01 10:56:55 -08:00
system Support local multiplayer 2023-02-01 09:13:31 -08:00
world Add music 2023-02-01 10:04:41 -08:00
.gitignore Update networking 2023-01-27 22:12:29 -08:00
LICENSE Initial commit 2023-01-03 12:14:27 -08:00
README.md Increase AI opponent difficulty 2023-02-01 10:56:55 -08:00
flags.go Add music 2023-02-01 10:04:41 -08:00
flags_web.go Add dependency GGPO-Go, which provides rollback networking 2023-01-05 11:57:30 -08:00
go.mod Increase AI opponent difficulty 2023-02-01 10:56:55 -08:00
go.sum Increase AI opponent difficulty 2023-02-01 10:56:55 -08:00
goreleaser.yml Update networking 2023-01-27 22:12:29 -08:00
main.go Increase AI opponent difficulty 2023-02-01 10:56:55 -08:00

README.md

Box Brawl

Donate via LiberaPay Donate via Patreon

Multiplayer fighting video game featuring rollback networking

This game was created for the Fighting Jam #001 game jam.

Play

Browser

Play in your browser

Networking is not available in the browser version.

Download

Download for Windows and Linux

To play against remote opponents, you will need to ensure UDP traffic is allowed between both of your computers.

This usually involves port forwarding and ensuring firewalls are disabled on both computers.

You can also use programs like ZeroTier and Hamachi to create virtual networks between you and an opponent. The network will appear to the system as a local network. Because of this, most security restrictions are bypassed, and port forwarding is usually not required.

Only multiplayer over a local network (whether truly local or virtual) has been tested successfully.

Multiplayer guide

You and your opponent will need to choose a port on which you will accept UDP traffic from the other person. This is referred to as your local port, which can specified when playing Box Brawl using the --local argument.

In the following examples, user A has the IP address 1.1.1.1 and user B has the IP address 2.2.2.2. User A will listen for a connection on port 17000. User B will listen for a connection on port 19000.

Simply replace the example IP addresses and ports with actual IP addresses and ports, and run the command specified (depending on whether you are the host or the guest).

User A (who has IP 1.1.1.1) should run the following command:

boxbrawl --local 17000 --host 2.2.2.2:19000

User B (who has IP 2.2.2.2) should run the following command:

boxbrawl --local 19000 --connect 1.1.1.1:17000

In the above commands, each user first specifies which port to listen for connections from the opponent, then specifies the IP address and port where their opponent is listening for connections.

Compile

Install the dependencies listed for your platform, then run the following command:

go install code.rocketnine.space/tslocum/boxbrawl@latest

Run ~/go/bin/boxbrawl to play.

Support

Please share issues and suggestions here.

Credits

Dependencies