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