Skip to content

Multiplayer Battleship game with some extra features like ship movement, special attacks.

Notifications You must be signed in to change notification settings

FloBoJa/Battleship-Plus

Repository files navigation

Battleship+

Battleship+ written in Rust🦀

Battleship+

Multiplayer Battleship game with some extra features like ship movement, special attacks.
Based on this RFC.
Using QUIC and Protocol Buffers for the networking.

Context

Developed as a student project at the Karlsruhe Institute of Technology (KIT). The RFC was created as a group effort of more than a dozen students. After creating the RFC, we split up into groups that all implemented servers and clients adhering to the specification. This is the implementation of one of those groups.

Usage

Client:

cargo run --package battleship_plus_client --bin battleship_plus_client (--feature wayland for Wayland support)

Server:

cargo run --package battleship_plus_server --bin battleship_plus_server

Used Libraries

  • bevy (game engine)
  • quinn (QUIC implementation)
  • prost (Protocol Buffers implementation)
  • tokio (async handling)

Issues found during the final InterOp test:

Client:

  • Sometimes crashes under unknown conditions.

Server:

  • Some certificate problems with msquic (TLS)
  • Send own and team Ships in VisionEvent (not exactly defined in RFC)
  • (Some) events are visible to hostiles out of range

About

Multiplayer Battleship game with some extra features like ship movement, special attacks.

Resources

Stars

Watchers

Forks

Contributors 3

  •  
  •  
  •  

Languages