AI Take 3

Today I spent the entire day working on AI. It's been interesting changing everything that I've done. This is the second time I've done a complete overhaul on the AI. The second version was semi-working and was only intended to have something for Otronicon. Orlando iX taught me that having a player be able to play by themselves is a good thing.

So I've started jotting things down; new states, sub-states, and sub-sub-states. It's definitely more cohesive than the previous version of the AI. 

I pretty much have the basic mechanics in place that tell the AI player to try to win. That's the easy part; the basic AI. I have yet to start the list of the reactive AI; the part that makes it more difficult and feel more like you're playing against something with a brain. Some of the basic mechanics in place can still prove competitive, but nothing is in the code to respond to the other player.

I've currently set up the state systems as follows:
ai_state = move left or move right
ai_sub_state = grab the object, jump, or slide (punch to be added)
ai_sub_state_2 = (block to be added)

It is broken up into 3 different states due to the possibilities of control inputs and what they can do simultaneously.

For instance, when you're blocking you can turn your character to face a different direction and then punch directly from the block without letting go of the block button (to be able to guard again as soon as the animation finishes).

ai_sub_state has all actions that cannot be used at the same time. Pressing the inputs will not provide the player with any different feedback than just pressing one.

In other news, I did some quality of life fixes on the game between my last blog post and this one. I fixed some audio bugs and interface scaling issues (the camera causes problems when it zooms in). I also added some extra inputs to accommodate for players pressing different buttons than what they should be. You can now press A or X for menu inputs and clashing. The AI no longer uses the keyboard to control the character. That's a big deal. I'm pretty happy that I have that straightened out.

I have made a schedule for myself and hope to have the game finished by late November. This would require I work 10-12 hours per week. It's a bit more than I have been working lately, but I feel like I really need to get it done so I can release it and see if it was worth all of the time. I have this feeling that when it's all said and done, I'll have made about $1 per hour working on this game. XD

I'm off to chillax for a bit. It's been a long day of programming.

Until next time.