In my current game project I have hit a bit of a roadblock and was hoping to get some help. When it comes to deciding on what action an NPC should take, I am having difficulty “normalising” the various actions so I can compare their utility. Let me explain.
Let's say I have an NPC who has some kind of shield, a knife and a gun. For the knife and the gun, I can estimate the expected damage they'd do at their levels to a given target, and that would give me a score that I could select either with. However for the shield, it's passive, so I don't really know how much damage it will save me. So it's really hard to compare against the attack values. Ideally, the shield should be raised pretty early on, so that seems a hard-coded behaviour. But this breaks the mechanic of “select the best action in the current state”.
I don't want to go the full Reinforcement Learning, get a Q function; and a neural network seems way overkill for what should be a simple decision. I could dice-roll attack / defence with some “aggression” weighting and then I only need to compare attack vs attack or defence vs defence which might be easier. But this seems like a bit meh.
Suggestions most welcome!