Commit graph

68 commits

Author SHA1 Message Date
3ba7652c74 Add current tick information to the server-status 2020-07-07 18:40:38 +01:00
5928dfdb20 Rename the tick variable 2020-07-07 18:24:16 +01:00
75910efbe5 Apply all golangci-lint fixes 2020-07-06 18:04:10 +01:00
233a6b3281 Add incoming and queued commands to status output 2020-07-05 13:16:08 +01:00
ea4b7de4ac Rename "commands" to "command" 2020-07-05 12:55:01 +01:00
28639b4cac Fix up a comment and the help text 2020-07-04 23:11:22 +01:00
894359142b Rename "rover" to "status" 2020-07-04 23:11:12 +01:00
f8e594cb39 Rename "status" command to "server-status" 2020-07-04 23:05:08 +01:00
143fba505e Add Charge and Max Charge attributes to the rover 2020-07-04 12:26:42 +01:00
b066277ddf Add MaximumIntegrity to the rover 2020-07-04 12:26:42 +01:00
2eaed1447d Add rover inventory capacity and test 2020-07-04 12:26:42 +01:00
062f9cfec8 Split Atlas chunks into tiles and objects 2020-07-03 17:00:04 +01:00
b5707ab71c Fix all go vet issues 2020-07-01 00:01:20 +01:00
abcebcebb6 Simplify - remove rove-accountant
This was a fun little gRPC experiment but it's simply not needed
2020-06-30 23:34:49 +01:00
06cf44f129 Increase the chunk size to 1kb per chunk 2020-06-28 11:02:56 +01:00
b116cdf291 Convert Atlas to infinite lazy growth
The atlas will now expand as needed for any query, but only initialise the chunk tile memory when requested

	While this may still be a pre-mature optimisation, it does simplify some code and ensures that our memory footprint stays small, for the most part
2020-06-27 14:48:21 +01:00
2556c0d049 Call rand.Seed to end current determinism 2020-06-27 02:08:52 +01:00
6ba6584ae1 Default to a much faster tick rate for now 2020-06-27 02:03:12 +01:00
7957454ec1 Add rover integrity
Rovers are damaged by bumping into solid objects
2020-06-27 01:18:18 +01:00
1ed1c60de0 Simplify - remove RoverAttributes and rover UUIDs 2020-06-27 00:32:27 +01:00
e6a25a5310 Add the rover inventory to the "rover" response 2020-06-26 23:44:52 +01:00
d08a15e201 De-scope - Remove unused rover capacity 2020-06-26 23:39:07 +01:00
2f6465987d More de-scope - remove duration on move command
This isn't even needed, as commands can just be queued up
2020-06-26 22:26:27 +01:00
db3c2c2c2e De-scope, remove rover speed 2020-06-26 18:48:07 +01:00
7ee340e976 Move Rover position into main class 2020-06-26 18:22:37 +01:00
dd76e61e44 Make the ports have default values 2020-06-23 00:05:26 +01:00
187a0a6165 Finish HTTP tests and adjust APIs to allow them to pass 2020-06-13 13:18:22 +01:00
a4a04a15fb Remove empty proto i/o structs in favor of placeholders 2020-06-13 11:57:27 +01:00
914eef05c0 Use standard PORT for host port 2020-06-13 11:41:24 +01:00
98249948a1 Fix up host ports and env variables 2020-06-13 11:17:52 +01:00
84163ce9e1 Fix logging for rove-server 2020-06-13 10:44:03 +01:00
856771dac7 Rename the RoveServer proto to Rove 2020-06-13 10:43:35 +01:00
ccb34d4452 Make env variables required 2020-06-13 10:42:59 +01:00
8c6230ca20 Implement a reverse proxy using grpc-gateway 2020-06-13 00:23:21 +01:00
7ababb79f6 Migrate to gRPC rather than REST with swagger
Will also be adding in a RESTful endpoint to the server as well so it can consume both types
2020-06-12 22:51:18 +01:00
6cfc9444f3 Simplify the APIs to return http status codes 2020-06-12 19:05:26 +01:00
47921e6c41 Move game server to port 8080 and host docs on 80 2020-06-12 17:54:47 +01:00
faaa556ad0 Move the Atlas code into it's own package 2020-06-11 20:42:59 +01:00
2f5863b17a Use log instead of fmt for logging
Also fix up a few errors to lower case
2020-06-11 19:04:53 +01:00
14424c16ca Refactor testing into docker file
This means a decent scale refactor but ends with our testing being much simpler

	Key changes:
		* single Dockerfile for all services
		* tests moved into docker up so don't need to be run locally
		* configurations moved to environment
2020-06-11 18:16:11 +01:00
99da6c5d67 Move accountant to it's own deployment using gRCP 2020-06-11 13:24:42 +01:00
8f25f55658 Refactor accounts to store a data map rather than just a rover ID 2020-06-10 22:48:45 +01:00
7749854eb7 Remove account IDs in favor of just account names
These were a "security" feature but pre-emptive and just add complications when we can implement secrets later
2020-06-10 18:57:43 +01:00
b3b369f608 Remove /spawn POST endpoint
This was increasing complexity for no added benefit

	/register now performs the spawn in 4 lines of code
2020-06-10 18:48:56 +01:00
6fb7ee598d Move server package out into rove-server 2020-06-10 18:20:05 +01:00
aae668fb57 Fix instabilities caused by random rocks 2020-06-09 00:16:49 +01:00
8586bdabd7 Fix duplicate saving on quit
Slight refactor to split server stop and close functions
	Quit function explicitly sends SIGTERM
	SIGTERM doesn't trigger an os.Exit

	Bonus: Properly save the world on spawning the rover
2020-06-07 18:06:34 +01:00
50cc8b5dbf Minor cleanups 2020-06-06 18:44:24 +01:00
dc957f7fc1 Up the server rick to every 5 minutes 2020-06-06 18:23:27 +01:00
e804cdf12b Install wamerican for /usr/share/dict/words 2020-06-06 17:16:33 +01:00