NukeShip is a cyberpunk twist on the classic game of Battleship. Engage in a high-stakes battle to destroy your opponent's ships by strategically targeting their weak points.
- Launch the game and connect with an opponent.
- Strategically target your opponent's ships and destroy them.
- First player 8000 to destroy the opponent's ships wins!
- Cross-Platform Support: Run the game seamlessly on multiple platforms.
To download the latest pre-built binary, visit the Releases page on GitHub and select the version compatible with your system.
Ensure you have the following installed on your system:
-
Clone the repository:
git clone https://github.com/Passeriform/NukeShip.git cd NukeShip
-
Install Wails:
go install github.com/wailsapp/wails/v2/cmd/wails@latest
-
Generate protobuf bindings:
cd ./internal/pb protoc --go_out=. --go_opt=paths=source_relative --go-grpc_out=. --go-grpc_opt=paths=source_relative --proto_path=. ./*.proto
-
Build the project:
wails build -clean
-
Run the game:
./build/bin/NukeShip
This project uses VSCode tooling. Supporting tasks, debugger configurations and editor settings are provided to ease the development:
[Protobuf] Refresh
[App] Build Client
[App] Run Client
[Server] [Local] Run Server
[Server] [Docker] Run Server
[Cli] [Local] Run Native Client - Create Room
[Cli] [Local] Run Native Client - Join Room
Run Server
Run App Client
Run Native Client
Contributions are welcome! To contribute:
- Fork the repository.
- Create a new branch for your feature or bug fix.
- Submit a pull request with a clear description of your changes.
This project is licensed under the MIT License.
Feel free to open issues or reach out if you encounter any problems or have suggestions for improvements.
Enjoy the game and good luck, Admiral!