Commit graph

292 commits

Author SHA1 Message Date
55c85d2a22 Add logs to the rover status output 2020-07-09 19:01:09 +01:00
b2f169d99f Remove Warped log, unneeded 2020-07-09 18:31:51 +01:00
8866f28bf5 Add test coverage checks for logging additions 2020-07-09 18:26:24 +01:00
0dc3cab9c0 Store log entries for actions in the rover 2020-07-09 18:19:49 +01:00
9682cfa7ea Spawn objects using OpenSimplex noise as well 2020-07-09 00:04:46 +01:00
4b715bdff3 Move to OpenSimplex noise
Apart from other benefits, this produces much nicer direction agnostic noise
2020-07-08 23:58:11 +01:00
7b4541716a Add gravel tiles 2020-07-08 23:45:52 +01:00
ed9ecef80a Add perlin based generation for the terrain tiles 2020-07-08 23:38:08 +01:00
10959ef726 Refactor populate to be an Atlas function
This simplifies usage greatly
2020-07-08 19:40:15 +01:00
0386617c51 Add error checks in TestWorld_RadarFromRover 2020-07-07 23:01:28 +01:00
089f5e5337 Fix chunk empty chunk population in QueryPosition 2020-07-07 22:57:55 +01:00
3e1e3a5456 Amend to TestWorld_RadarFromRover to show the issue 2020-07-07 22:49:34 +01:00
d9e97ea468 Add some additional logging to requests and world resizes 2020-07-07 22:47:34 +01:00
92222127a6 Add basic account security
This adds a secret token associated with each account

	The token must then be sent with follow-up requests to ensure they get accepted

	This is _very_ basic security, and without TLS is completely vulnerable to MITM attacks, as well as brute force guessing (though it'd take a while to guess the a correct UUID)
2020-07-07 22:20:23 +01:00
5980de5ba7 Fix lint check 2020-07-07 21:33:32 +01:00
254957cde5 Add a test to check daytime and rover recharge 2020-07-07 21:30:51 +01:00
3ba7652c74 Add current tick information to the server-status 2020-07-07 18:40:38 +01:00
1412579c6c Only charge during the day 2020-07-07 18:37:59 +01:00
526e9c69eb Ensure world tick properties are properly named in json 2020-07-07 18:37:45 +01:00
20385c5ae7 Add tick tracking to the world 2020-07-07 18:36:20 +01:00
5b4b9c30eb Update rove.pb.go 2020-07-07 13:13:02 +01:00
75910efbe5 Apply all golangci-lint fixes 2020-07-06 18:04:10 +01:00
a112c3ed47 Override incoming commands rather than appending 2020-07-05 13:16:19 +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
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
87af905bc8 Rename charge command to recharge 2020-07-04 22:56:58 +01:00
e875f82b13 Add command "charge" to charge up the rover's energy store 2020-07-04 22:42:20 +01:00
15c337c067 Make moving and stashing cost rover charge 2020-07-04 22:35:25 +01:00
8b83672dcc Fix Atlas gen with simplification
Only track lower and upper bounds in world space, and speak in terms of world space and chunks
2020-07-04 22:34:28 +01:00
dbe944bb4e Add charge and apply it to rover actions 2020-07-04 12:30:40 +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
9cd5324465 Fix small and large rock spawning 2020-07-03 17:13:52 +01:00
c4b0762ebe Fix up the tile print now that the radar returns objects 2020-07-03 17:05:31 +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
e5ee0eaece Rename a couple of Atlas variables
Sometimes names can be too long
2020-06-28 11:01:01 +01:00
9bb91920c9 Make Atlas grow in X and Y dimensions independently
Fixes exponential growth
2020-06-28 00:18:39 +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
5b5f80be7d Clean up logging a little 2020-06-27 02:02:18 +01:00
693b8a54f1 Add repair command to repair using inventory item 2020-06-27 01:39:10 +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
e1bff92a56 Remove Item type in favor of just byte 2020-06-26 23:41:36 +01:00
d08a15e201 De-scope - Remove unused rover capacity 2020-06-26 23:39:07 +01:00