This commit is contained in:
		
							
								
								
									
										13
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										13
									
								
								README.md
									
									
									
									
									
								
							@@ -1,5 +1,16 @@
 | 
				
			|||||||
# SeaBattle
 | 
					# SeaBattle
 | 
				
			||||||
 | 
					[](https://drone.communiquons.org/pierre/SeaBattle)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Full stack sea battle game.
 | 
					Full stack sea battle game.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Current status: working on backend, and then building web ui...
 | 
					
 | 
				
			||||||
 | 
					## Implementations
 | 
				
			||||||
 | 
					Current implementations:
 | 
				
			||||||
 | 
					- [x] Rust shell implementations ([server](rust/sea_battle_backend) and [client](rust/sea_battle_cli_player))
 | 
				
			||||||
 | 
					- [ ] web implementation
 | 
				
			||||||
 | 
					- [ ] mobile implementation
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Screenshots
 | 
				
			||||||
 | 
					Shell implementation:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,5 +1,30 @@
 | 
				
			|||||||
# Sea battle backend
 | 
					# Sea battle backend
 | 
				
			||||||
 | 
					[](https://drone.communiquons.org/pierre/SeaBattle)
 | 
				
			||||||
 | 
					[](https://crates.io/crates/sea_battle_backend)
 | 
				
			||||||
 | 
					[](https://docs.rs/sea_battle_backend/)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
A backend server for the Sea Battle game.
 | 
					A backend HTTP server for the Sea Battle game. The binary included in
 | 
				
			||||||
 | 
					this crate can be used to deploy a server that will allow players to
 | 
				
			||||||
 | 
					connect to play together.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
A command-line client is available in the `sea_battle_cli_player` crate.
 | 
					The `actix-web` library is used to spawn HTTP server. The games are encapsulated
 | 
				
			||||||
 | 
					inside websockets.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					An official server is running at https://seabattleapi.communiquons.org/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Installation
 | 
				
			||||||
 | 
					You can install the backend using the following command:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					```bash
 | 
				
			||||||
 | 
					cargo install sea_battle_backend
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Usage
 | 
				
			||||||
 | 
					```bash
 | 
				
			||||||
 | 
					sea_battle_backend -l 0.0.0.0:7000
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					> Note: a reverse-proxy must be used to protect
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Client
 | 
				
			||||||
 | 
					A command-line client is available in the [sea_battle_cli_player](https://crates.io/crates/sea_battle_cli_player) crate.
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,3 +1,41 @@
 | 
				
			|||||||
# Sea battle player
 | 
					# Sea battle cli player
 | 
				
			||||||
 | 
					[](https://drone.communiquons.org/pierre/SeaBattle)
 | 
				
			||||||
 | 
					[](https://crates.io/crates/sea_battle_cli_player)
 | 
				
			||||||
 | 
					[](https://docs.rs/sea_battle_cli_player/)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
A sea battle shell client player for the `sea_battle_backend` crate.
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					A sea battle shell client player for the [sea_battle_backend](https://crates.io/crates/sea_battle_backend) crate.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Available play modes
 | 
				
			||||||
 | 
					* 🤖 Play against bot (this mode does not require any Internet connection, a local server is automatically spawn)
 | 
				
			||||||
 | 
					* 🎲 Play against a random player
 | 
				
			||||||
 | 
					* ➕ Create play invite (online). In this mode, the server returns an invitation code to give to the opponent
 | 
				
			||||||
 | 
					* 🎫 Accept play invite (online)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					For the 🤖 bot mode and the ➕ bot mode, game rules can be customized.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Installation
 | 
				
			||||||
 | 
					You can install the backend using the following command:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					```bash
 | 
				
			||||||
 | 
					cargo install sea_battle_cli_player
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Usage
 | 
				
			||||||
 | 
					Simply launch using:
 | 
				
			||||||
 | 
					```bash
 | 
				
			||||||
 | 
					sea_battle_cli_player
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Offline LAN
 | 
				
			||||||
 | 
					If you want to run a local server to play offline LAN games, the cli player can also act as the server:
 | 
				
			||||||
 | 
					```bash
 | 
				
			||||||
 | 
					RUST_LOG=info sea_battle_cli_player -s -l 0.0.0.0:7000
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Then all the players must specify the address of this server to use it instead of the default official one:
 | 
				
			||||||
 | 
					```bash
 | 
				
			||||||
 | 
					sea_battle_cli_player -r http://IP_OF_TARGET:7000
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
							
								
								
									
										
											BIN
										
									
								
								rust/sea_battle_cli_player/img/SeaBattleCli.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								rust/sea_battle_cli_player/img/SeaBattleCli.png
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| 
		 After Width: | Height: | Size: 27 KiB  | 
		Reference in New Issue
	
	Block a user