How the flight simulator basic model is designed?

 

The FS basic model is in charge of updating the attacker and defender aircraft positions and characteristics. As it can be guessed, the way the model updates the game world characteristics and the way it is designed are very simple.

It is known that the AI takes ‘Events’ as input and computes ‘Maneuvers’ as output (see InputOutputFormats and Terminology). Since they are high-level data, it cannot be the output and input of the model, which can only deals with simple data. Thus the model design can be divided into two parts

  1. The FS basic model
  2. A link between the model and the AI. It computes ‘Maneuvers’ into ‘Basic Actions’, so that the model can easily update the game world characteristics. It also transforms the ‘Basic Data’ updated by the model to provide the AI with ‘Events’.

 

 

Basic Data:

They are the data that characterize the two aircrafts. These data are updated by the FS basic model and represent position and speed considerations.

 

BasicData

{

    float myX, myY, myZ;

    float mySpeed, myTurnRate;

    float myHeading;

 

    float enemyX, enemyY, enemyZ;

    float enemySpeed, enemyTurnRate;

    float enemyHeading;

}

Basic Action:

It gives all the requested information about the aircraft route so that the model can update the aircraft parameters.

 

BasicAction

{

    float acceleration;

    float turnRate;

}

 

Basic Action Factory:

It is a black box that computes a ‘maneuver’ providing by the AI into a ‘basic action’ the FS basic model can use to update its ‘basic data’.

 

Event Factory:

It is a black box that computes a ‘basic data’ into an ‘event’ the AI can use to take decision and produce a ‘maneuver’.

 

The following diagram shows how all these components work together.