I'm currently coding a AI for a risk-like game, but I'm not sure how I put even the base classes together. I've read a lot about game design patterns, entity component designs and such, but I've trouble translating it to an actual architecture of my own.
My original layout feels weird, I have too many reference cycles and store most objects in multiple places. I know how to remove those, but that would make it (in my mind) a lot more complicated to get simply lists, for example the amount of Units a player possesses, or which units are in Zones next to the current one.
I had a bit more classes and something that kinda worked, but it was a mess and worse than this design. I wanted to start over and design it right. I feel really dumb having problems that should be much more easier to solve. And I wouldn't even know how to begin plugging in the AI.