Сохраните игру после того, как ваш игрок что-то сделал.
Улучшил ли игрок свою башню до уровня 2? Сохранить данные.
Игрок напал на лодку? Сохранить данные.
Если вы сделаете это, вам не о чем беспокоиться, когда пользователь покинет страницу.
Ваш SWF должен быть просто клиентом, который отображает это и позволяет игрокам выбирать варианты - не помещайте в него какую-либо логику игрового процесса *, если вы не хотите, чтобы его взломали с помощью чит-движка в течение 3 секунд.
К этому, я имею в виду, не ходи
if(playerResources > 500){
build();
}
Скорее
if(server.build() == 1){
server.getUpdatedBuildings();
} else {
notifyUser("Not enough resources!");
}
Никогда не доверяй клиенту.