Essentially, anything can be associated with a PredictionKey, for example activating an Ability. The client can generate a fresh PredictionKey and sends it to the server in its ServerTryActivateAbility call. The server can confirm or reject this call (ClientActivateAbilitySucceed/Failed).