<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to Ghost behaviour</title><link>https://sourceforge.net/p/ms-pacman/wiki/Ghost%2520behaviour/</link><description>Recent changes to Ghost behaviour</description><atom:link href="https://sourceforge.net/p/ms-pacman/wiki/Ghost%20behaviour/feed" rel="self"/><language>en</language><lastBuildDate>Thu, 20 Sep 2012 17:13:41 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/ms-pacman/wiki/Ghost%20behaviour/feed" rel="self" type="application/rss+xml"/><item><title>WikiPage Ghost behaviour modified by Luuk Bom</title><link>https://sourceforge.net/p/ms-pacman/wiki/Ghost%2520behaviour/</link><description>&lt;pre&gt;--- v1
+++ v2
@@ -1,6 +1,8 @@
 Ghost behaviour
 -------------
 
-The framework will let ghosts cycle through the states RANDOM, CHASE and SCATTER. If Ms. Pac-Man eats a pill, ghosts will be set to the state AFRAID. Using the variable alwaysState in Globals.java, you can force ghosts into a specific state. [Configuration] explains how to do this. The function determineGhostBehaviour() in Pacman.java contains the code that switches between the states. It will change a global variable called CURRENT_GHOST_STATE. The function moveGhost() in Environment.java contains the actual behaviour associated with the different ghost states. 
+The framework will let ghosts cycle through the states RANDOM, CHASE and SCATTER. If Ms. Pac-Man eats a pill, ghosts will be set to the state AFRAID. The function determineGhostBehaviour() in Pacman.java contains the code that automatically switches between the states. It will change a global variable called CURRENT_GHOST_STATE. The function moveGhost() in Environment.java contains the actual behaviour associated with the different ghost states. 
 
 It is important to note that all ghosts hold their own state. If this state is set to -1, the ghost will assume the global ghost state during the next time step. You can call the function propagateGhostBehaviour() which will set the states of all ghosts to -1. The framework was set up this way to allow different ghosts to have different states at the same time. For example, the default starting ghost state is SCATTER, which will send each ghost to a corner of the maze. Immediately after the ghosts have begun scattering, the global ghost state will change to either RANDOM or CHASE. The individual ghosts however will continue scattering, until they have reached their target corner. Then their individual state will be set to -1, so at the next time step they will assume the global ghost state and continue to either RANDOM or CHASE.
+
+Alternatively, you can override the automatic switching of states by choosing to have one ghost state active at all times. This can come in handy in relation with [Training regimens]. [Configuration] explains how to change the variable alwaysEnabled to accomplish this. 
&lt;/pre&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Luuk Bom</dc:creator><pubDate>Thu, 20 Sep 2012 17:13:41 -0000</pubDate><guid>https://sourceforge.net98cb3664a2135c076db70700c8978a995483e9fc</guid></item><item><title>WikiPage Ghost behaviour modified by Luuk Bom</title><link>https://sourceforge.net/p/ms-pacman/wiki/Ghost%2520behaviour/</link><description>Ghost behaviour
-------------

The framework will let ghosts cycle through the states RANDOM, CHASE and SCATTER. If Ms. Pac-Man eats a pill, ghosts will be set to the state AFRAID. Using the variable alwaysState in Globals.java, you can force ghosts into a specific state. [Configuration] explains how to do this. The function determineGhostBehaviour() in Pacman.java contains the code that switches between the states. It will change a global variable called CURRENT_GHOST_STATE. The function moveGhost() in Environment.java contains the actual behaviour associated with the different ghost states. 

It is important to note that all ghosts hold their own state. If this state is set to -1, the ghost will assume the global ghost state during the next time step. You can call the function propagateGhostBehaviour() which will set the states of all ghosts to -1. The framework was set up this way to allow different ghosts to have different states at the same time. For example, the default starting ghost state is SCATTER, which will send each ghost to a corner of the maze. Immediately after the ghosts have begun scattering, the global ghost state will change to either RANDOM or CHASE. The individual ghosts however will continue scattering, until they have reached their target corner. Then their individual state will be set to -1, so at the next time step they will assume the global ghost state and continue to either RANDOM or CHASE.</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Luuk Bom</dc:creator><pubDate>Thu, 20 Sep 2012 17:11:11 -0000</pubDate><guid>https://sourceforge.nete89baf40941d9ba853e3190a0e24d9b4726b4164</guid></item></channel></rss>