Commit Graph

73 Commits

Author SHA1 Message Date
Jaculabilis 5c2fce0fa7 Temp commit of working state 2024-04-02 08:30:18 -07:00
Jaculabilis 171a675595 Update README with order parsing grammar 2023-04-07 21:27:41 -07:00
Jaculabilis 3cde558d33 Add adjudicate command and implement AdjudicateOrders 2023-04-06 19:17:35 -07:00
Jaculabilis 26329e9186 Add a basic status command 2023-04-04 20:54:53 -07:00
Jaculabilis 66a85f2360 Add game setup script handler
This will allow setting up arbitrary test cases when writing test scripts
2023-03-18 21:44:51 -07:00
Jaculabilis f61982d91e Add subcommands to new 2022-12-31 13:53:07 -08:00
Jaculabilis 8ec727498a Check for valid power names 2022-12-31 13:52:30 -08:00
Jaculabilis 77347734c4 Remove file name prompt when reading from file 2022-12-31 13:02:42 -08:00
Jaculabilis cdef096477 Add repl alias to nix shell 2022-12-31 12:41:37 -08:00
Jaculabilis 4b8cf48567 Add repl cli and script handling framework 2022-12-31 12:36:42 -08:00
Jaculabilis 0bf59387a2 Fix incorrect province name in standard unit list 2022-12-31 12:00:47 -08:00
Jaculabilis 73fc94e5c7 Add OrderSet model 2022-12-31 12:00:20 -08:00
Jaculabilis 0f201610d2 Fix path separator in sln 2022-11-08 22:18:52 -08:00
Jaculabilis a63ff3992b Remove broken validation assert
Validation only happens for orders in the current batch, so the test can't validate an order from the previous batch
2022-11-08 19:59:27 -08:00
Jaculabilis b241d206f4 Only fork on new moves into a season 2022-11-08 19:12:03 -08:00
Jaculabilis 069cb4c548 Prevent orders from being double counted if they affect multiple seasons 2022-11-08 18:55:27 -08:00
Jaculabilis 95ed8c7682 Fix error caused by decisions with no history 2022-11-08 18:41:46 -08:00
Jaculabilis 39c3aabe45 Implement AdvanceTimeline resolution 2022-11-08 16:25:47 -08:00
Jaculabilis 7471a035f0 Log decision updates 2022-11-06 22:01:36 -08:00
Jaculabilis a565ee1b05 Add better ToString overrides to decision classes 2022-11-06 21:58:21 -08:00
Jaculabilis 25d707b3b8 Log recursive decision traversal 2022-11-06 21:55:46 -08:00
Jaculabilis c0a9330d2e Add depth tracking to decision resolution 2022-11-06 21:51:45 -08:00
Jaculabilis 23a826c815 Add adjudicator logger 2022-11-06 21:09:22 -08:00
Jaculabilis 46c28a087c Shorten string representations
The new format for representing timeline, province, and season is T-PRO@S. Hopefully this is easier to read than the PRO T:S format.
2022-11-06 20:27:28 -08:00
Jaculabilis 6347b52d4a Make the dev shell a bit prettier 2022-11-06 20:26:29 -08:00
Jaculabilis 63289bce54 Update flake 2022-11-06 20:26:29 -08:00
Jaculabilis 2e1d72d0f4 Add more VS Code profile settings 2022-11-06 20:26:29 -08:00
Jaculabilis 94037959e1 Replace README with rules document that better explains what is going on 2022-11-06 15:07:48 -08:00
Jaculabilis 15fde7340c Fix incorrect unit in 3.A.5 2022-11-06 14:43:45 -08:00
Jaculabilis 18c11c7ffd Add an AdvanceTimeline decision type 2022-11-06 14:39:01 -08:00
Jaculabilis f5acb8325c Add solution file 2022-11-06 14:32:06 -08:00
Jaculabilis 12c307d835 Create a DATC-inspired document for illustrating time travel test cases 2022-04-22 13:33:17 -07:00
Jaculabilis 076f1f7f29 Add more tests around time travel 2022-04-09 21:10:44 -07:00
Jaculabilis 105c372779 Add ToString overrides for orders 2022-04-07 15:58:17 -07:00
Jaculabilis 5e74ffc19f Apply null-forgiving operator where relevant 2022-04-07 15:48:46 -07:00
Jaculabilis d491ea9f64 Fix missing temporal dimension to dislodge checks 2022-03-30 13:00:51 -07:00
Jaculabilis 9f5ecaa16a Add province shortcuts to decrease verbosity 2022-03-30 12:52:57 -07:00
Jaculabilis b679558d9c Make adjudicator reusable to decrease verbosity 2022-03-30 08:04:44 -07:00
Jaculabilis 604dda95e8 Enable fluent definitions of multiple turns 2022-03-29 21:01:58 -07:00
Jaculabilis b347cc88aa Make TestCaseBuilder reusable 2022-03-29 20:59:30 -07:00
Jaculabilis 6948db29df Save previous orders so time travel can re-adjudicate them 2022-03-29 20:40:19 -07:00
Jaculabilis 6a6810ef07 Add basic movement phase update tests 2022-03-29 17:16:00 -07:00
Jaculabilis d4e68844c6 Simplify world updates and expose root season 2022-03-28 22:34:57 -07:00
Jaculabilis aa9c9c548b Enable hold strength across parallel worlds 2022-03-28 17:41:38 -07:00
Jaculabilis ff64b459ca Reduce verbosity of test case assertions 2022-03-28 15:05:04 -07:00
Jaculabilis 609e8cc60c Add dislodge checks to DATC A tests 2022-03-28 09:39:03 -07:00
Jaculabilis b026adbfbc Add some basic unit tests for the movement adjudicator 2022-03-27 15:10:34 -07:00
Jaculabilis 6b1b9dce10 Refactor adjudication into separate adjudication and update steps
This makes it easier to unit test adjudication decisions directly.
2022-03-27 14:39:00 -07:00
Jaculabilis 36ea621782 Move decision classes out of the movement adjudicator 2022-03-24 09:22:13 -07:00
Jaculabilis d2ec79647a Add movement phase order adjudication
This implementation does not handle convoys nor account for circular movement and convoy paradoxes.
2022-03-24 08:18:33 -07:00