Multiplayer fighting video game featuring rollback networking
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Trevor Slocum be89bd5e9c Increase AI opponent difficulty 4 months ago
asset Add hit sound 4 months ago
component Increase length of punch and kick animations 4 months ago
entity Initial commit 5 months ago
game Increase AI opponent difficulty 4 months ago
system Support local multiplayer 4 months ago
world Add music 4 months ago
.gitignore Update networking 4 months ago
LICENSE Initial commit 5 months ago
README.md Increase AI opponent difficulty 4 months ago
flags.go Add music 4 months ago
flags_web.go Add dependency GGPO-Go, which provides rollback networking 5 months ago
go.mod Increase AI opponent difficulty 4 months ago
go.sum Increase AI opponent difficulty 4 months ago
goreleaser.yml Update networking 4 months ago
main.go Increase AI opponent difficulty 4 months ago

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