| 
				
					
						 | 
			||
|---|---|---|
| client | ||
| core | ||
| design | ||
| launcher | ||
| server | ||
| worlds | ||
| .gitignore | ||
| LICENSE | ||
| README.md | ||
| build-clients.d | ||
| pom.xml | ||
| setversion.d | ||
		
			
				
				README.md
			
		
		
			
			
		
	
	Ace of Shades 2
A simple 3D voxel-based shooter inspired by Ace of Spades. With some basic weapons and tools, fight against players in other teams!
Quick-Start Guide
Read this guide to get started and join a server in just a minute or two!
- Make sure you've got at least Java 17 installed. You can get it here.
 - Download the 
aos2-clientJAR file from the releases page that's compatible with your system. - Create a file named 
config.yamlin the same directory as the JAR file, and place the following text in it: 
serverHost: localhost
serverPort: 25565
username: myUsername
input:
  mouseSensitivity: 0.005
display:
  fullscreen: true
  captureCursor: true
  fov: 80
- Set the 
serverHost,serverPort, andusernameproperties accordingly for the server you want to join. - Run the game by double-clicking the 
aos2-clientJAR file, or enterjava -jar aos2-client-{version}.jarin a terminal. 
Setting up a Server
Setting up a server is quite easy. Just go to the releases page and download the latest aos2-server JAR file. Similar to the client, it's best if you provide a config.yaml file to the server, in the same directory. The following snippet shows the structure and default values of a server's configuration.
port: 25565
connectionBacklog: 5
ticksPerSecond: 20.0
physics:
  gravity: 29.43
  walkingSpeed: 4
  crouchingSpeed: 1.5
  sprintingSpeed: 9
  movementAcceleration: 2
  movementDeceleration: 1
  jumpVerticalSpeed: 8
actions:
  blockBreakCooldown: 0.25
  blockPlaceCooldown: 0.1
  blockBreakReach: 5
  blockPlaceReach: 5
  blockBulletDamageResistance: 3
  blockBulletDamageCooldown: 10
  resupplyCooldown: 30
  resupplyRadius: 3
  teamSpawnProtection: 10
  movementAccuracyDecreaseFactor: 0.01
  friendlyFire: false
Configuration
Both the client and server use a similar style of YAML-based configuration, where upon booting up, the program will look for a configuration file in the current working directory with one of the following names: configuration, config, cfg, ending in either .yaml or .yml. Alternatively, you can provide the path to a configuration file at a different location via a single command-line argument. For example:
java -jar server.jar /path/to/my/custom/config.yaml
If no configuration file is found, and none is explicitly provided, then a set of default configuration options is loaded.
