Richard Harrington
d03d64bd6a
separated source programs out into regular and dev
2013-08-24 06:37:49 -04:00
Richard Harrington
29ba6d0700
changed names of programs (to be shorter and easier to type in requests)
2013-08-24 00:01:06 -04:00
Richard Harrington
ad24b7e850
added SHOT register and :shot-timer robot field.
...
:shot-timer does not count down yet, and SHOT register
does not release shells.
2013-08-20 17:01:42 -04:00
Richard Harrington
d7d27ca9f0
moved test-programs out of test into src, renamed it src-programs
...
also fixed some testing bugs that were using
the old parameters for init-world
2013-08-20 12:21:09 -04:00
Richard Harrington
9b46900f9b
changed width and height to robot-range-x and robot-range-y and made
...
them constants
because technically, the robot ranges are the maximum ranges for the
centers of the robots' bodies,
so the actual extent of the arena when
displayed must be slightly larger
2013-08-20 12:10:58 -04:00
Richard Harrington
b4b962096b
separated 'animate' into two namespaces: 'terminal' and 'browser'
2013-08-20 11:40:29 -04:00
Richard Harrington
689cb9d693
built 'worlds-for-browser', tied handler to it
2013-08-17 15:51:45 -04:00
Richard Harrington
e51ba68254
changed 'build-sim-worlds' to 'worlds-for-terminal', flattened data structure of results a bit
2013-08-17 15:51:10 -04:00
Richard Harrington
659898494e
uncommented and spruced up pprinting convenience functions in core
2013-08-16 23:49:03 -04:00
Richard Harrington
5892d6ad89
made some unnecessary thunks into resolved values in core
2013-08-16 23:47:46 -04:00
Richard Harrington
534872d0a8
changed 'make-it-so' function in core so it takes fast-forward and fps parameters
2013-08-16 23:34:30 -04:00
Richard Harrington
a1df709c4f
now only stores last world in each round when building simulation
...
also did significant refactoring, including changing
variable names from 'round' to 'combined-world' before
going through the simulation-pass, and 'sim-world' afterwards.
Soon, we'll make the worlds coming out of 'sim-world' a lot less
verbose.
2013-08-16 23:26:34 -04:00
Richard Harrington
9ab14a7653
commented out convenience functions in core
2013-08-16 23:25:33 -04:00
Richard Harrington
12ee2260c1
got compojure going, with a few sample routes
2013-08-16 18:09:44 -04:00
Richard Harrington
257b6a2495
reworked hacky sandbox stuff in core.clj, to help with animation
2013-08-15 16:22:00 -04:00
Richard Harrington
cd1a9fabbd
removed passing of tick-duration down into brain and robot
...
replaced with dynamic "constant" *GAME-SECONDS-PER-TICK*,
so we can alter it during tests
2013-08-14 23:12:50 -04:00
Richard Harrington
9e8285e86f
added pprint to core
2013-08-14 16:37:35 -04:00
Richard Harrington
20f71db62f
got :moving-to-spot test working, refactored test-programs a bit
2013-08-14 00:16:06 -04:00
Richard Harrington
a56d210fe4
changed tick-duration so it's a parameter passed into tick-world
2013-08-12 00:13:13 -04:00
Richard Harrington
50ddd8d2b7
changed all values & calculations outside the brain to floating point
...
(also added stuff to the register functions that pull and push
from the brain to the robot fields, casting to integer when
pulling, and float when pushing)
2013-08-11 23:32:58 -04:00
Richard Harrington
2846ed4151
added iterate-worlds convenience function to world
2013-08-10 17:03:58 -04:00
Richard Harrington
7e040dfcf5
expanded core.clj inspection functions to cover robot, world and worlds
2013-08-10 15:55:26 -04:00
Richard Harrington
528b18a45d
fixed bugs in core.clj ppt inspection function, also made it more pretty
2013-08-10 00:55:17 -04:00
Richard Harrington
1cf9f7e42e
put test programs into their own file; altered brain-test and core.clj accordingly
2013-08-09 22:01:56 -04:00
Richard Harrington
382a70bd34
created register namespace, moved game_lexicom stuff into it
2013-08-07 11:36:03 -04:00
Richard Harrington
94c069116f
changed parameter-pass-in format to ppt in core.clj, to registers flattened in the argument list
2013-08-06 18:35:27 -04:00
Richard Harrington
7fd4baa3c2
fixed bug in ppt in core.clj causing it to refer to old hard-coded info rather than passed-in parameters
2013-08-06 18:35:05 -04:00
Richard Harrington
9c4a576702
added to inspection functions in core.clj
2013-08-06 18:01:57 -04:00
Richard Harrington
40b1b4533d
fixed typo in namespace require section of robotwar.core
2013-08-06 18:00:51 -04:00
Richard Harrington
623bfea415
changed name of foundry namespace to assembler
2013-08-06 12:00:30 -04:00
Richard Harrington
54161691fa
made shorter aliases (without 'robotwar.' prefix) for all namespaces
2013-08-06 11:34:51 -04:00
Richard Harrington
041a639203
wrote special-purpose registers: X, Y, DAMAGE, INDEX, DATA, RANDOM. Brain tests now failing.
2013-08-05 21:40:23 -04:00
Richard Harrington
42dade809c
updated the hacky inspection code in core.clj to work with the new robot and world apis
2013-08-05 00:35:17 -04:00
Richard Harrington
67f30c959c
changed keyword 'program' to 'obj-code' (more specific)
2013-08-04 22:48:13 -04:00
Richard Harrington
5865a9f570
moved 'get-world' functionality (allows world-finding by world-tick-idx
...
and robot-idx) into helper function in brains-test
2013-08-03 14:14:32 -04:00
Richard Harrington
5eca3965cc
wrote informal inspection function for core.clj, that reports robot-states from a sequence of worlds, given world-tick-idx and robot-idx
2013-08-03 13:52:10 -04:00
Richard Harrington
0c988d61f4
commented out most of these high-level files till the refactoring is done
2013-08-03 03:38:28 -04:00
Richard Harrington
9112c82dc6
making progress on refactoring, especially in brain (formerly robot). made new file called robot to represent external robot state
2013-08-02 01:36:17 -04:00
Richard Harrington
6e04c076a6
grinding along with the refactoring
2013-08-01 20:01:08 -04:00
Richard Harrington
08dcf38214
refactored, changed module names, untangled dependencies between kernel language and register names. Also removed 'repl'
2013-07-31 20:55:15 -04:00
Richard Harrington
2dbd496442
revised informal testing junk in core.clj
2013-07-31 17:38:55 -04:00
Richard Harrington
b331a43f79
changed name 'compile' to 'assemble', now don't have to exclude loading of clojure.core/compile
2013-07-31 14:30:40 -04:00
Richard Harrington
64cb83cb3b
altered informal testing junk in core.clj
2013-07-30 18:32:52 -04:00
Richard Harrington
4276409d9c
wrote init-world function to create a world-state
2013-07-30 11:44:36 -04:00
Richard Harrington
52554ab4c5
added SPEEDX and SPEEDY to list of registers which have an effect on the world
2013-07-29 17:00:32 -04:00
Richard Harrington
9bfa7c213e
restored full 'robotwar' name everywhere, instead of 'rw'
2013-07-28 22:37:18 -04:00
Richard Harrington
dbd1007a84
shortened main namespace name from robotwar to rw
2013-07-28 01:31:03 -04:00
Richard Harrington
abae4d35b0
converted to proper ns macro format
2013-07-28 01:19:55 -04:00
Richard Harrington
b0fb5d6147
almost got robot-tick function working
2013-07-25 12:53:10 -04:00
Richard Harrington
4cfac7d461
wrote map-labels function to map the labels in a token-string. including tests.
2013-07-22 23:03:57 -04:00