The Pacman Project
The PDA
The PDA development is growing more and more, some languages are more engaged than others in PDA development. Microsoft provides a .NET compact framework for the mobiles and it is possible to use the main classes of the .NET framework. The client part of this application is very important because it interacts directly with the user. The interface needs to be simple and easy to use. With the years, PDAs are becoming more and more powerful but not enough to build every application functionalities directly on the PDA. This is why webservices are used to provide theses functionalities.
9.1 Tools
- Visual Studio 2005 is the development environment for the .NET platform; this software is very powerful for PDA development. There is a possibility to simulate the PDA and to easily test it.
- Geo Framework is used for the GPS connection. It is very important to get the GPS-position of Pacman and the ghosts. GIS.NET is a unique mapping product which provides the ability to render maps of anywhere on Earth, without requiring a connection to the Internet. Spatial information can be loaded from ESRI shapefiles, generated from GPS data using GPS.NET, or created 'on the fly' with customized position information in code, from SQL Server, or XML. GIS.NET is designed for desktop applications which require fast rendering, and for mobile applications which cannot rely on a high-bandwidth connection to the Internet, allowing for the greatest portability on mobile devices. GIS.NET is in use by several GIS companies around the globe.
9.2 The Game
The first screen (Figure 9.1) of the pacman is the selection of the character type (pacman or ghost). This screen also asks the player for a nick-name. When the player presses on the validate button, the PDA calls the webservice and either registers as a pacman or as a ghost. In the client a common class is used to store the id of the player and also the character type, this class can be accessed from every forms of the game. It contains all the needed information for the pacman game.

Figure 9.1
There are a lot of GPS receivers for PDAs, this implies that an interface is needed that presents the opportunity to the user to select the GPS receiver it wishes to use. On PDAs, there are internal GPS receivers but also external using a bluetooth connection for example. Selecting the 'use any available GPS device'-option is the easy way because it selects the fastest GPS receiver automatically. For simulation purposes, it is also possible to select a GPS receiver emulator. This simulator was built to simulate pacman movement in Maastricht. The idea of this simulator was to move pacman from one node to another.

Figure 9.2
The main form of the client shows a map, it provides the position of the players and the position of the pills and the powerpills. This map is a component of the geoframework, it enables the user to zoom, dezoom, etc. The 'exit' button is used to quit the application. The cross button in PDA applications does not close the program, this is why this button was a real need. Clicking on the 'advices' or the 'hiding places' button shows a panel to the user with information. For the advices, it shows all the advices given by the AI and for the hiding places, it shows the hiding places on the map with little dots and numbers and in the panel each number is linked with complementary information.

Figure 9.3