Multiplayer fighting video game featuring rollback networking
Go to file
Trevor Slocum 1aa0cc9912 Increase length of punch and kick animations 2023-01-31 21:18:47 -08:00
asset Add crouching 2023-01-31 17:29:47 -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 length of punch and kick animations 2023-01-31 21:18:47 -08:00
system Remove dependency etk 2023-01-31 20:56:55 -08:00
world Add support for running in headless mode 2023-01-30 10:04:12 -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 Remove dependency etk 2023-01-31 20:56:55 -08:00
flags.go Add support for running in headless mode 2023-01-30 10:04:12 -08:00
flags_web.go Add dependency GGPO-Go, which provides rollback networking 2023-01-05 11:57:30 -08:00
go.mod Remove dependency etk 2023-01-31 20:56:55 -08:00
go.sum Remove dependency etk 2023-01-31 20:56:55 -08:00
goreleaser.yml Update networking 2023-01-27 22:12:29 -08:00
main.go Add support for running in headless mode 2023-01-30 10:04:12 -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