Long time ago when I started crafting an A.I., I had the following approach.
1) First the Player is doing something (e.g. hitting a NPC)
. . . and THEN . . .
2) The NPC (None Playable Character) should response / do something
Now I realize this is completely wrong. The Key of a good and amazing A.I. is the fact that the A.I. is actually doing something interesting just by themselves.
If we look at the very famous Games Roller Coaster Tycoon (PC) or Theme Park World (PS2).
In both games the Player is actually DOING NOTHING. All the Player does is to change the environment. And I am telling you, it is so fascinating just to observe how the small little minions react.
Furthermore if we review most of the games that have ever been released, in most cases the A.I. is really stupid or de facto non-existence.
A game that I really enjoyed playing about 5 years ago was The Elder Scrolls V: Skyrim. I loved the gigantic open world style. I loved killing the dragons. I loved hunting, collecting and upgrading my gear. But what always bugged me was the LACK of A.I. Most or even almost all of the NPCs were doing nothing, -just- standing there and waiting . . . ok . . . at night some of them were sleeping.
Another Game that I absolutely loved was Tenchu 3 – Wrath of Heaven and the sequel Tenchu Kurenai. Incredible games. But the A.I. was so stupid, it really took the fun out of it.
e.g. if the guards found a dead body they were looking around for a few seconds like crazy and then they just let the dead-body there. Afterwards they would go back to the original patrolling path like nothing has ever happened. The NPCs would never drink, eat, sleep, going to the toilet etc.
So the key to craft an outstanding game is to include an A.I. that is fun to watch although the Player is NOT interacting with any NPC directly.
This post has literally opened my eyes what has to be done!