The suggestion for my AI movement woes is to refactor and create a player script and an ai script that both inherit from piece. This kind of depresses me a little but Iโ€™ll try it.

my original conception of this was that each piece could eventually have a little player surfaced control panel where you could stack simple rules, and player control was simply a rule- basically all pieces are the same, player control was just a rule that could be added. If this doesnโ€™t make sense, imaginge emoji simulator: https://ncase.me/sim/ but with one possible rule that you can add that stops the simulation and listens for a player movement command. Thereโ€™s not really โ€˜typesโ€™ of emoji in emoji simulator, theyโ€™re just empty objects with a bunch of rules, and a sprite image and its all interchangable.

All of this is totally academic though if I canโ€™t get a piece to execute a move on its own though. Iโ€™ve started trying to separate the player and ai logic into two different scripts and Iโ€™m already making a big mess and creating a bunch of duplicated code, which I hateโ€ฆ I hope that one day I will have enough mastery of Unity to be able to make good design decisions on the fly instead of just flailing until it works. I just have to remind myself that at one point long ago I was like this with CSS and now I think fluidly with it and can design well and refactor on the fly.