The next challenge to meet is that of messages that require responses from several teammates. However, not all messages are of this type. For example, a message meaning ``where are you?'' requires a response, while ``look out behind you'' does not. Therefore it is first necessary for agents to classify messages in terms of whether or not they require responses as a function of the <message-type> field. Since the low-bandwidth channel prevents multiple simultaneous responses, the agents must also reason about the number of intended recipients as indicated by the <target> field. Taking these two factors into account, there are six types of messages:
When hearing any message, the agent should update its internal beliefs of the other agent's status as indicated by the <time-stamped-team-strategy> field. However, only when the message is intended for it should it consider the content of the message. Then it should use the following algorithm in response to the message:
Then, if an internal behavior keeps decrementing communicate-delay as time passes, an external behavior can use the communication condition-action pair presented in Section 2: if (response-flag set and communicate-delay==0) then SAY(response). Players can also set the communicate-delay variable in the event that they need to send multiple messages to the same agent in a short time. This communication paradigm allows agents to continue real-time acting while reasoning about the appropriate time to communicate.