Adventures with AI- Motes Devlog 01


Hello, I'm Figgity, and this is Motes.

For my first devlog, I wanted to talk both about where the game is, as well as the fun I had trying to code an AI of the needed complexity for the first time!

So, you might look at the screenshots and see... dogshit. I don't really have an artist on the project right now, but I assure you the game has a lot to it already. It has a whole two cards (Impressive,  I know). But on a more serious note, a lot of these early stages is just trying to make a good foundation to build the game off of. I've spent a lot of time refining the technologies and techniques I'm using to make the game do, and linking them together. But I do plan on finding an artist at some point? I have several sources, I'm just scared to ask & try to coordinate with any of my friends or with a rando. Maybe I'll get over myself someday :P

And really, this base AI has tested my knowledge of them to the max. For most games, you can just mostly pick random stuff, or just going to the player and spamming the "attack" action or whatever. Sadly, as the game is a tactics game... I have to do some things I've dreaded doing, like AI DECISION TREES (Scary) and EDUCATED PATHFINDING (Spooky). Anyways, it took like an afternoon of thinking about rings and circles. I'll include a more technical breakdown of all my decisions and logic I used for anyone interested at the bottom.

I suppose to sign off (Except for anyone that wants to join Figgity's technical corner) I'll just say to expect more soon. I'm going to be working on expanding the capabilities of cards, multiplayer shenanigans, and deck building tools, among other things, and I'm excited to bring more from the world of motes to you all soon!




--  Abandon all hope, ye who enter. For beyond this threshold is the insanity of Figgity's mind on Godot.... --

So, to start with AI I decided to break it down into 3 base actions. Drawing, Moving, and Using Cards, with sub-actions to be added later in there, like shuffling the deck, retreating, buffing and ect. But the big 3 are whats important for now.

I started with moving. To decide where to move, I figured that a summative approach would be best, where I get an average range of all the cards the AI currently has. It works well, cause it'll always be moving in range of at least one card it has. then it gets the closest target, generates a ring of tiles around it (I just made 2 circles with the midpoint circle algorithm, one smaller and removed the smaller circle) and figures what the shortest path on that ring is, and moves to that tile. Next was drawing, that was as easy as just telling it to draw cause the player can't see it. Finally, using cards. Also pretty easy, it just picks random true, false for each card, then if its true it picks a target in range and tells the services bus to do the thing.

Now, I'm gonna go make lunch before I explode thinking about this logic more :3

Thanks for reading this long, have a nice day! <3

Leave a comment

Log in with itch.io to leave a comment.