Commit graph

224 commits

Author SHA1 Message Date
da91d31649 MOve glyph code into client 2020-07-19 12:36:48 +01:00
4a89cb9d6e Move glyph functions out to the glyph file 2020-07-19 12:34:54 +01:00
7bdfa44fb6 Fix up the concept of "None" tiles and objects
Replace with "Unknown" which is effectively an invalid value
2020-07-19 12:33:11 +01:00
305f64ec38 Large refactor, move object and tile types out into the proto 2020-07-19 12:26:57 +01:00
24d4fe9273 Convert tiles and object types to typed consts 2020-07-19 11:59:14 +01:00
7e41ac0028 Rename the glyphs 2020-07-19 11:57:41 +01:00
f665436007 Convert objects and tiles to base ints 2020-07-19 11:54:11 +01:00
acdd019093 Add Glyph methods to convert to a glyph 2020-07-19 11:50:19 +01:00
53d6ad08d9 Rename Type to ObjectType 2020-07-19 11:47:19 +01:00
a0b811a659 Move glyph definitions into a central type 2020-07-19 11:46:37 +01:00
105d69bd7c Fix SW direction to go south rather than north 2020-07-11 17:25:38 +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
f0ab2abf6e Move object into atlas 2020-07-10 18:39:33 +01:00
f40f7123d4 Move bearing into maths 2020-07-10 18:24:54 +01:00
5b1fe61097 Move vector into maths package 2020-07-10 18:22:59 +01:00
97d3be000b Re-order some World members 2020-07-10 18:14:32 +01:00
065f79cbb3 Fix warping to non-empty space 2020-07-10 18:11:38 +01:00
b534ac0516 Rename generated rove package to roveapi and the game package to rove 2020-07-10 18:09:51 +01:00
dc2800fa54 Move Accountant behind an interface 2020-07-10 17:09:47 +01:00
d6349d081e Clear the tile before warping to it 2020-07-10 16:59:55 +01:00
9a7c48ae78 Make chunkBasedAtlas private 2020-07-10 16:56:17 +01:00
a0be8a463c Pull out chunk based atlas into new file 2020-07-10 16:54:43 +01:00
655e00b41f Don't expose Chunk externally 2020-07-10 16:52:31 +01:00
fb2ffc5252 Convert Atlas to an interface 2020-07-10 16:52:00 +01:00
6c1ee311cd Delete unused files 2020-07-10 00:29:06 +01:00
fe6dae4c52 Update the generated file for rove.pb.go 2020-07-10 00:27:14 +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
e21023ec25 Update generated files 2020-07-09 22:12:13 +01:00
d4d82c38e0 Add "broadcast" command
This will send a readable ascii triplet to all rovers in range
2020-07-09 22:05:12 +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
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