«треуг.скобкавлево» — это особенности коммуникации вашей игры или вашего хабра-редактора?
Еще в SL есть возможность создавать «дуплексные» подключения, которые позволяют клиенту реагировать сразу же при поступлении новых данных на сервере.
Т.е. как только первый выстрелил, второй сразу же видит это в своем клиенте.
Я, наверно, минут 40 выкладывал тут статью =( множество тегов вырезается редактором, и еще картинки нельзя тут загружать. треуг.скобкавлево — это <. У меня от нее вообще текст далее не отображался… Про дуплексный режим в сильверлайт я знаю. Ожидается это сделать в следующих версиях.
Да, workflow — это мощная тема. Особенно здесь хорошо бы подошел Workflow с Flowchart, где были бы обозначены состояния игры, и происходила бы смена состояний. А если игрок отключался, то все бы сохранялось с помощью Persistence, а потом бы возвращалось на то место, где он вышел. Но, к сожалению, все на хостинге, а там так сделать нельзя, да и еще постоянно все перезагружается.
странно зачем вы выбрали использование БД для игры. Зачем она, по-моему, лишнее. Хватило бы сервера, который передавал бы информацию с приложения на приложение.
P.S. Для синхронизации с пользователем ранее использовались таймеры, но теперь этот механизм переделан на дуплексный WCF сервис, использующий PollingDuplexHttpBinding.
Как сделать морской бой онлайн на Silverlight 4 (подробная статья)