70d92c2d5e
Add TLS to gRPC
2020-07-26 23:10:39 +01:00
a321e5d72f
Add gRPC reflection to the server
2020-07-26 22:48:48 +01:00
fdfcc88540
Move the account registration into the world
2020-07-24 22:50:35 +01:00
6f2d67bd7c
Tag rovers by the controlling account
2020-07-24 22:22:32 +01:00
e840b3e47b
Move accountant into world
2020-07-24 20:06:06 +01:00
f7192b3997
Organise the status response into sub-sections
2020-07-23 00:32:19 +01:00
2bc2477128
Remove the incoming command streams, de-scopes and simplifies
2020-07-23 00:13:28 +01:00
c89c5f6e74
Implement current wind direction and rover wind movement
2020-07-22 23:36:13 +01:00
c94ac68f44
Remove all json tags, simply not needed
2020-07-22 19:55:38 +01:00
6b5d5abea1
Rename the world tick function and set the tick rate back to default
2020-07-22 19:24:36 +01:00
8667f55143
Simplify by making command streams pointer lists like in proto
2020-07-21 23:52:14 +01:00
f78efd1223
Add SailPosition to the rover and implement toggle command
...
This also converts the commands to use the proto type for simplicity
2020-07-21 23:44:06 +01:00
6c75f07aff
Remove move and recharge commands in favor of toggle command for the sails
2020-07-21 22:57:43 +01:00
737534f739
Move roveapi into the proto dir
2020-07-10 19:01:41 +01:00
46f81abbd7
Move accounts into rove-server.internal
2020-07-10 18:57:57 +01:00
b534ac0516
Rename generated rove package to roveapi and the game package to rove
2020-07-10 18:09:51 +01:00
b451ea519d
Make sure the accounts are saved as well
2020-07-10 17:21:59 +01:00
dc2800fa54
Move Accountant behind an interface
2020-07-10 17:09:47 +01:00
5ac44d85cb
Add a warning to missing DATA_PATH env
2020-07-10 16:38:49 +01:00
96a137ad2f
Simplify - remove duplicate command types in favor of a better defined Command type in proto
2020-07-10 00:12:54 +01:00
b032fdbfe2
Fix missing broadcast message in status reply
2020-07-09 22:52:58 +01:00
30ca488890
Use string for the timestamp, proto uses this under the hood anyway
...
https://github.com/grpc-ecosystem/grpc-gateway/issues/438
2020-07-09 19:38:23 +01:00
b748846c55
Use a unix timestamp rather than a timestamppb
2020-07-09 19:29:04 +01:00
55c85d2a22
Add logs to the rover status output
2020-07-09 19:01:09 +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
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