How do you script turn-based combat AI?

Our game is a traditional turn-based combat system. We are trying to implement the AI and we are exploring what are some ways to implement this and their pros and cons. I don’t need specific code implementations, just high level guiding points would be fine.

For example, one option we are trying to explore is using the decision trees as this seems to be the most common. Would love to hear from more experienced people who has done similar AIs. Any tips would be appreciated!

Decision Tree is somewhat limited since it ends up at one action/state after answering a serie of yes-no questions. Though you can use it for AI, it is more used to implement classifiers.

You can also consider Behaviour Tree, which is an AI technique used to implement scalable/complex AIs. Have a look at pandabehaviour.com, a scripting framework based on Behaviour Tree.