35806576f9
Add a bunch of TODOs
2020-06-07 23:17:56 +01:00
65818ed0e1
Renamethe spawn world function
2020-06-07 23:05:55 +01:00
de0ccbaa6e
Fix the random rock spawns
2020-06-07 23:05:36 +01:00
e82fb3dbfe
Pepper the world with rocks
2020-06-07 22:36:11 +01:00
43648926ca
Large refactor to properly implement radar
...
/radar now returns a set of non-empty tile blips
2020-06-07 22:30:03 +01:00
fc54775df9
Stop movement into non-empty tiles
2020-06-07 19:03:16 +01:00
3781a4d10d
Spawn a border around the world atlas for now
...
Also spawn the rover within a single chunk in the middle
2020-06-07 18:57:44 +01:00
cb725c96d2
Rename Kind -> Tile
2020-06-07 18:38:46 +01:00
289bab2a7a
Refactor atlas creation and growth
...
Pass in the real size and grow itself rather than return a new one
2020-06-07 18:36:00 +01:00
aa4df38ead
Swap kind to bytes and reduce chunk size
2020-06-07 18:21:44 +01:00
ceca4eb7fa
Refactor the Tile to a full Atlas
...
This atlas is a set of chunks and supports resizing
2020-06-07 18:08:34 +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
141827fa57
Add a blank atlas to the world
2020-06-07 13:33:44 +01:00
77be28f913
Rename geom to math
2020-06-07 13:33:18 +01:00
ca17d89f6e
Fix logging of rover spawn
2020-06-07 13:32:37 +01:00
55cfa37ac5
Give the rover name a json representation in lowercase
2020-06-06 19:11:12 +01:00
5c549ad8c3
Add a TODO to the MoveRover command about blocking other rovers
2020-06-06 18:45:23 +01:00
91947f614c
Randomly position new rovers
2020-06-06 18:45:15 +01:00
2b87c2b4c0
Add version to ./rove
2020-06-06 18:44:40 +01:00
50cc8b5dbf
Minor cleanups
2020-06-06 18:44:24 +01:00
4645ef81e5
Add missing rover.go file
2020-06-06 16:53:42 +01:00
5e1f9b0d31
Refactor rover attributes to add a name
2020-06-06 16:52:30 +01:00
db38ad6091
Add tick information to server status
2020-06-06 16:37:57 +01:00
6ac5a559b5
Add missing newlines to prints
2020-06-06 16:33:56 +01:00
ea67fe1cbe
Fix executing a tick every second for a minute
2020-06-06 16:31:39 +01:00
b9df3833ed
Add log for command execute
2020-06-06 16:30:01 +01:00
3a36f8f84f
Add logging to all handlers
2020-06-06 16:26:44 +01:00
c6fbf1341a
Allow the server tick to be customised
2020-06-06 16:01:49 +01:00
573bfbf9c7
Add cron tick of command queue
2020-06-06 15:52:03 +01:00
0a0a32cf58
Implement a command queue on the world
...
Not currently executed
2020-06-06 14:44:59 +01:00
e3ce87e964
Simplify duplicate command types
2020-06-06 12:45:45 +01:00
1d2087e2b9
Fix test instabilities by refactoring to make address dynamic and readable
2020-06-06 11:52:12 +01:00
bc366583a4
Move server tests to the server command
2020-06-06 10:57:37 +01:00
3bfbe38837
De-integration the cmd/rove tests as well and massively simplify the tests output
2020-06-06 00:47:48 +01:00
79c07f359b
De-integration the api tests by launching their own server
2020-06-06 00:36:08 +01:00
e242fcc4f7
Fix issue with command returning true when no rover was spawned
2020-06-06 00:18:41 +01:00
9c0dde616b
Refactor to implement integration testing for rove
2020-06-06 00:04:30 +01:00
cade908ed2
Refactor APIs to take an /{accountid}/ prefix
2020-06-05 23:08:59 +01:00
9ae1f50f46
Rename /commands to /command
...
Make it a verb not a GET fetch
2020-06-05 22:34:32 +01:00
9d57f48f98
Add /rover command to get rover info
2020-06-05 22:23:01 +01:00
d3dd1130a2
Very minor cleanups and error addition
2020-06-05 21:29:55 +01:00
7297a6de9a
Clean out confusing assert messages
2020-06-05 18:09:22 +01:00
7be2a0f1b7
Add tests for each current API
...
These aren't extensive yet, and don't reset the server, but it's a good step forward
2020-06-05 18:06:16 +01:00
f82565bf22
Refactor and implement the api functions
2020-06-05 17:59:14 +01:00
3474e6ca8c
Pull out API definitions and testing into it's own package
2020-06-05 17:24:27 +01:00
aa2ecace89
Don't send the empty error value in responses
2020-06-05 17:03:08 +01:00
6ef69cec02
Even more cleanup and refactor to simplify handlers
2020-06-05 16:52:15 +01:00
bd83621add
Small command handling fixes
2020-06-05 16:43:25 +01:00
be0f4f1aff
Convert bearings to compass points and locations to int coords
2020-06-05 16:37:52 +01:00
ae369715ec
Implement rover radar and use and test it
2020-06-05 15:48:55 +01:00