Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics

In a few conversations in various places, the concept of card combinations as a threshold for the power or "permission" for the AI to do certain things has come up as part of the game design. 

My impression of the AI strategy and behavior, and what I've taken in from various conversations, leads me to suggest that it may be wise to thicken up the AI decks and introduce routines for sub-optimal play.

What I think may be happening is the enemy player is recycling anything too expensive to play, playing everything they can play as fast as they can play it, which is usually direct damage and reinforcement cards, and building up very effective combos as a certainty and deploying them as soon as it is a valid choice. 

The highly overlooked but very special game AI War is considered to contain an "Emergent AI." A 4x type space strategy game in which the enemy group is much more powerful than the player, but what makes it Emergent is that the way the AI chooses and develops strategies. Reportedly, even so many years after it came out it still produces stratagems the developers never intended or programmed into it. From what I understand, this is accomplished by having the Enemy use only observed information about the player and their activities, determine what a perfect strategy would be against the observed model, and then regress the perfect strategy to be less than perfect, ie, imperfect strategies, openings, etc. I think they also include a level of commitment to fighting the player based on how annoying the player is to the AI's goals, which determines what the fight model looks like. 

All that being mostly academic, relevance to Nowhere Prophet would be mixing up the optimal builds and play styles of the enemy decks, so that I don't know exactly what I'm up against. Beasts have been a focus of my attention for balance suggestions, for a few reasons. We talked about game balance at the beginning of the game, and making the beginning of the game accessible. The first milestone might therefore be the milestone at which the player feels they have a grasp of the game and are ready for tougher encounters. Beasts are also a target the player seeks out for their food rich payout. If I have no food, and I can choose between beats and *literally anything else* I choose beasts. 

Things beasts aren't doing at the moment, as far as I've seen, that they could be doing, are things like stealth, and one turn flight. A sneaky panther-esque animal, or a chameleon skin type thing. If winged creatures aren't appropriate for the beast deck or are planned for an insect swarm deck, then an "on incite gain flight for one turn" or "fury: gain flight for one turn" or a Leader card that gives flight for one turn would represent a savage bestial leap, allowing the horde to pounce over barriers. 

Tying in what I was saying about AI War and Emergent AI relies on how the AI determines what it does next. I've only caught a few glimpses behind what might be the curtain, so I really can't speak to what you guys are using. The AI seems to make some good decisions, and some bad decisions. Playing to the field much of the time is good at the moment, as it allows for more playtesting of the way cards work. 

I've seen the AI use a field full of chargers to move them around or smash up obstacles instead of attacking me or my followers. I've seen the AI provide a buff to a creature that just finished attacking me.  I've seen the AI place a creature in front of another creature that just refreshed. So some of this logic appears to be random. 

Giving the AI a clear understanding of grand strategy for a game like this is super challenging, particularly if you want it to be able to anticipate player moves or provide an interesting opponent. 

I'm certain you guys have a system already in place, and I haven't identified precisely what it is just yet. Giving the AI patterns of behavior based on what it has or what the player has done, such as "mitigate available attacker with if available attacker if then available direct damage card loop or place taunt defender exit." But the game is deeper than the current turn, which is why it is attractive. All the parts of its complexity that make it an enjoyable game to play, of course, make it challenging to develop AI for. 

This post is getting super long, so I'm gonna end here and pick up this concept elswhere.

Long post on AI, short answer:

AI is hard. Really, really hard. And Nowhere Prophet has a system in place I'm pretty happy with. It's not perfect and it needs some tweaks but there's not going to be a major AI rework - simply for lack of time. I'm not an AI expert and building a really really good system (see Eternal for example) is hard. So unless you find someone who's good at this exact problem and willing to put the time in to make a new AI (for free, cause there's not really much in the way of budget either) then I'm willing to look at it. 

But from where I currently stand my time - besides some much needed tweaks - is better invested in working on the content than redoing the AI system :)


Yes, I agree, on both points. AI is hard, and your time is most likely better spent on working on the content.

I can't imagine setting out to do a project and thinking "I'm aware of three ways to do AI. I'm going to use one that isn't as good as another, but is just as deployable."

AI is a huge, nebulous, confusing, omni-faceted space hydra can be as different a problem as the people trying to solve it.

My micro-studio, Applied Game Science Laboratories, is based partly on trying to address age old problems like AI and machine learning in new ways and applying concepts from other disciplines to them. My background is in molecular biology and medicine,  so the way I attack a problem like this is probably different than the way a classically trained programmer might. I don't know really, since I'm not a classically trained programmer.  

I could see it being possible to deploy some relatively small scale solutions to certain types of AI problems for a game like this using some of the principles I've been working on. It largely depends on what you've got under the hood and which tools you're already working with.

At the end of the day, it sounds like you're happy with the current performance of the AI overall, so I'll move my feedback on to more focused areas of content rather than broad issues.  

I'm happy to keep helping and I hope my long posts aren't a problem ;)

If you want we can chat about the topic sometime over on the Discord. 

And don't worry about the long posts - I'm always glad to get feedback.