f02e71d4f9
Implement repl adjudication
2024-08-28 14:41:23 +00:00
f77cc60185
Factor out common subject parsing logic
2024-08-28 14:39:21 +00:00
44f2c25a2c
Add unit test for submitting orders in the repl
2024-08-28 00:46:32 +00:00
43a2517a95
Fix unit declaration commands
2024-08-28 00:45:38 +00:00
416f2aa919
Rename to OrderParser
2024-08-27 03:23:28 +00:00
4f276df6c1
Basic order parsing and a unit test
2024-08-27 02:43:12 +00:00
24e80af7ef
Add test cases for support-move
2024-08-26 17:47:52 +00:00
e25191548e
Set version to 0.0.2
...
Some internal milestones may qualify as 0.x, 1.0 will be reserved for when a minimum viable game can be played
2024-08-26 16:47:00 +00:00
33aecf876a
Add test cases for support-hold
2024-08-26 16:32:33 +00:00
b4f8f621ca
Add test cases for move order
2024-08-26 15:39:42 +00:00
ffe164975b
Remove power from UnitSpec and add hold regex tests
2024-08-26 04:57:30 +00:00
ebeb178984
Move some parsing code into OrderRegex
2024-08-25 04:26:10 +00:00
93b106da1e
Move province and power regexes to Map
2024-08-25 03:55:14 +00:00
973f8ea0d7
Add Timelines.All shortcut
2024-08-25 03:36:31 +00:00
55dfe0ca99
Early-out on comments
2024-08-21 09:47:13 -07:00
e9c4d3d2d3
Re-spec validation handler for all adjudication steps
2024-08-21 09:11:39 -07:00
5167978f8c
Update some log statements
2024-08-21 14:27:48 +00:00
aaf3320cf8
Add a handler for asserting against orders
2024-08-21 14:25:25 +00:00
2745d12d29
Implement regex order parsing in game script handler
2024-08-21 13:46:02 +00:00
8e976433c8
Replace ad-hoc setup parsing with regex
2024-08-21 13:35:28 +00:00
1689d2e9b1
Add order parsing regex
2024-08-20 14:39:49 +00:00
f9f8ea2b5a
Add script-based test framework
2024-08-17 21:24:59 -07:00
b2461b3736
Add strict mode to setup handler
2024-08-17 21:18:35 -07:00
92506ac6ed
Typo in default units
2024-08-16 16:03:37 -07:00
114379de59
Add basic game setup
2024-08-16 16:00:02 -07:00
7ad6f3a3d3
Add a repl script handling framework
2024-08-16 14:39:13 -07:00
6bb6c0695f
Add CLI verbs
2024-08-16 13:33:13 -07:00
eaafdeb5a9
Eliminate sources of Unit reference equality
2024-08-16 20:13:15 +00:00
9a64609605
Update adjudication logging
2024-08-15 22:20:03 -07:00
889e9d173b
Reduce MoveOrder.Location to string
2024-08-15 22:01:38 -07:00
f21b1e500c
Eliminate MoveOrder.Province
2024-08-15 21:48:41 -07:00
3d664208b5
Add Season.First, replacing FIRST_TURN
2024-08-15 16:36:50 -07:00
25d903d91a
Refactor Season into a value struct
...
This keeps the rich features of a Season type without requiring constant string parsing (as much) or going through World to do lookups to get the objects. Since seasons now have value equality instead of reference equality, it's easier to get access to whem when needed. They're still, fundamentally, sugar over a tuple.
2024-08-15 13:51:41 -07:00
566d29e539
Add function to extract information from season keys
2024-08-15 08:51:17 -07:00
4b2712e4bc
Reduce Power to string
2024-08-15 07:54:53 -07:00
bfdf2d5636
Reduce Unit.Power to string
2024-08-15 07:37:05 -07:00
2e6e6c55b8
Reduce Order.Power to string
2024-08-15 07:30:43 -07:00
abbe929122
Designation -> Key
2024-08-15 06:52:08 -07:00
601ce2d297
HoldStrength uses season string
2024-08-14 22:40:40 -07:00
64f48064fc
AdvanceTimeline key to string
2024-08-14 22:32:48 -07:00
9185534f70
Reduce MoveOrder.Season to string
2024-08-14 22:28:56 -07:00
f2d3d5a583
Remove GetSeason(string)
2024-08-14 22:03:56 -07:00
868022d34f
Convert World.Seasons to a dictionary
2024-08-14 22:00:22 -07:00
2484d4f0fd
Get world serialization round trip kinda working
2024-08-14 21:12:58 -07:00
a4002a1081
Serialize unit type as string
2024-08-14 18:53:36 -07:00
8f5dc63833
Use unit designations for order history instead of references
2024-08-14 18:49:27 -07:00
73d849e117
Working World roundtrip serialization
...
There are probably still reference equality issues here since Unit still has Season and Power objects. The test case builder also still works on reference equality in some places so the second part of adjudication is broken.
2024-08-14 09:51:18 -07:00
31bd6a45cb
Define JSON serialization options on World
2024-08-14 09:16:53 -07:00
5ad57465d8
Remove reference from Unit.Past
2024-08-14 09:06:05 -07:00
885628900b
Remove Location reference from Unit
2024-08-14 09:06:05 -07:00