Commit Graph

36 Commits

Author SHA1 Message Date
Tim Van Baak 53e208ec31 Remove Location reference from Unit 2024-08-14 08:20:04 -07:00
Tim Van Baak ce25329d27 Refactor away Unit.Province 2024-08-14 08:15:10 -07:00
Tim Van Baak 4df5ef84dc Shift usage of Unit.Location to Unit.LocationId
This is in preparation for removing province and location references from Unit
2024-08-14 07:39:49 -07:00
Tim Van Baak 5989970c42 Refactor timelines and season creation logic into World 2024-08-13 18:56:21 -07:00
Tim Van Baak fd8c725286 Store order history by timeline designation instead of reference 2024-08-12 21:58:24 -07:00
Tim Van Baak b17ce9485a Refactor season futures into World 2024-08-12 15:25:23 -07:00
Tim Van Baak 11dfa403e4 Rename PastId back to Past 2024-08-12 14:52:50 -07:00
Tim Van Baak ae77c3c708 Remove Season.Past so all lookups go through World 2024-08-12 14:51:07 -07:00
Tim Van Baak f5afb4105b Move more timeline logic from Season to World 2024-08-12 14:50:15 -07:00
Tim Van Baak 7d4f7760be Move GetAdjacentSeasons to PathFinder 2024-08-12 14:12:49 -07: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 18c11c7ffd Add an AdvanceTimeline decision type 2022-11-06 14:39:01 -08: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 6948db29df Save previous orders so time travel can re-adjudicate them 2022-03-29 20:40:19 -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
Jaculabilis 697614e34f Add DATC 6.A.* test cases
For now, just the parts that can be decided with validation are run. The tests and parts of tests requiring movement adjudication will be implemented fully when movement adjudication is implemented.
2022-03-22 23:21:09 -07:00
Jaculabilis 8c828661e2 Add validation constraint 2022-03-22 22:11:14 -07:00
Jaculabilis c50dbf6b46 Add movement order validation tests 2022-03-22 21:30:20 -07:00
Jaculabilis 8a7e90b949 Add movement phase order validation logic 2022-03-15 12:24:29 -07:00
Jaculabilis c4f5145320 Add order model and adjudicator framework 2022-02-18 17:17:17 -08:00