Programming C, C++, Java, PHP, Ruby, Turing, VB
Computer Science Canada 
Programming C, C++, Java, PHP, Ruby, Turing, VB  

Username:   Password: 
 RegisterRegister   
 pac man weighted AI
Index -> Programming, Turing -> Turing Submissions
View previous topic Printable versionDownload TopicRate TopicSubscribe to this topicPrivate MessagesRefresh page View next topic
Author Message
viperfan7




PostPosted: Tue Mar 25, 2008 11:09 am   Post subject: pac man weighted AI

I have finaly made the AI for my pac man game, open for sugestions, the player base/ collision detection will be up shortly, but in the help section sence its so slow, open for comments/ crticizim, hope someone can use it, o also, the AI wont always move towards you, its set up so that it is more likely then not to move towards you.


Turing:

% setscreen ("graphics:max;max,offscreenonly,nocursor")
setscreen("text")
var directionx, directiony : int
%var leftdetecty1, leftdetecty2, leftdetecty3 : int
%var rightdetecty1, rightdetecty2, rightdetecty3 : int
%var updetectx1, updetectx2, updetectx3 : int
%var downdetectx1, downdetectx2, downdetectx3 : int
var ghostx, ghosty, ghostWH : int
%var moveghost : int := 2
var comp1dirx, comp1diry : string
var pacx, pacy : int
%const wall : int := 10
%const wallcolour : int := 1
%ghostWH := 14



proc AI1
    if pacx > ghostx then
        directionx := Rand.Int(1,4)
            if directionx > 3 then
                comp1dirx := "down"
            else
                comp1dirx := "up"
            end if
    elsif pacx < ghostx then
        directionx := Rand.Int(1,4)
            if directionx > 1 then
                comp1dirx := "down"
            else
                comp1dirx := "up"
            end if
    elsif pacx = ghostx then
        directionx := Rand.Int(1,4)
            if directionx > 2 then
                comp1dirx := "down"
            else
                comp1dirx := "up"
            end if
    end if       
           
    if pacy > ghosty then
        directiony := Rand.Int(1,4)
            if directiony > 3 then
                comp1diry := "left"
            else
                comp1diry := "right"
            end if
    elsif pacy < ghosty then
        directiony := Rand.Int(1,4)
            if directiony > 1 then
                comp1diry := "left"
            else
                comp1diry := "right"
            end if
    elsif pacy = ghosty then
        directionx := Rand.Int(1,4)
            if directiony > 2 then
                comp1diry := "left"
            else
                comp1diry := "right"
            end if
    end if
end AI1


for i : 0..5
ghostx := Rand.Int(0,maxx)
ghosty := Rand.Int(0,maxy)
pacx := Rand.Int(0,maxx)
pacy := Rand.Int(0,maxy)
 
put ghostx
put ghosty
put ""
put pacx
put pacy
put ""
AI1

put comp1dirx
put comp1diry
put ""
put "-----------"
put ""
end for
Sponsor
Sponsor
Sponsor
sponsor
A.J




PostPosted: Tue Mar 25, 2008 3:54 pm   Post subject: Re: pac man weighted AI

It's not bad....but if you want to make your pacman AI extremely good, I suggest you look up A* pathfinding Wink
Good Job though!
viperfan7




PostPosted: Wed Mar 26, 2008 9:53 am   Post subject: RE:pac man weighted AI

I already have a colision detection system for it, but am probaly going to go with pathfinding instead, just that whatdotcolour, being used as many times as it would be, would lag
Display posts from previous:   
   Index -> Programming, Turing -> Turing Submissions
View previous topic Tell A FriendPrintable versionDownload TopicRate TopicSubscribe to this topicPrivate MessagesRefresh page View next topic

Page 1 of 1  [ 3 Posts ]
Jump to:   


Style:  
Search: