Learning A.I for Grid-Based Snake game, where to start?

Started by
1 comment, last by frob 10 years, 10 months ago

Hey guys,

[Disclaimer: This is not a code request, more of a "Where to start resources" request]

New to this forum, I have a project to complete involving making a basic Snake game in Java with artificial intelligence, initially just being able to play the game *well* by itself and if I so choose branch out to Player vs A.I. Standard snake rules.

My current experience with Java is limited to the basics and some swing material. so I can easily set up the interface.

However I was wondering where on earth do I start with Artificial Intelligence? Bare in mind I am pretty-poor on the programming front so easy to digest-information would be highly appreciated. Ive noticed the "beginners java" thread on this site so I will be going through that for basic game logic. and I have seen many examples of making a player based snake game.

However I am required to research in detail a variety of A.I methods for my game, problem is I don't know where to start, I came here instead of the A.I section because well... as stated above I am a 3-4 month Java learner, not someone who is going to jump straight into technical A.I detail and pick it up quickly.

Or any material on creating games with grids.2D arrays in the first place, as its all completely new to me, not something the course I did covers really.

Thank You!

Advertisement

From my experience getting AI to work(ie: getting something to move at its basic level) is mostly making sure you have a firm grasp of understanding what state of the object you need to keep track of which from my experience use if statements or switch statements whichever you prefer.

Suppose the apple spawned at a particular location (could be randomized of x and y coordinates) shows up on screen. The snake can calculate how far in the x direction is it from the apple and move to that point and then calculate the y direction from the apple.

My advice: draw this idea on paper and the idea should be more clear.

There are a few items of increasing complexity:

* Avoid obstacle. If the way is blocked ahead, turn.

* Follow a pattern. This can be zig-zag or back/forth pattern, you also need to avoid obstacles while doing it.

* Seek a point. For example, seek the food, or seek the opponent. This can become an A* style search. You need to avoid obstacles and follow patterns so you don't die in the process.

* Trap the player. This is a case of "seek a point" repeated for carefully selected points.

This topic is closed to new replies.

Advertisement