Когда вы программируете настольную игру, игра находится на компьютере игрока.Когда вы программируете игру на основе веб-браузера, игра НЕ на компьютере игрока, а на ВАШЕМ сервере.Все, что игрок может видеть в своем браузере, это пользовательский интерфейс.Итак, вы должны запрограммировать всю логику своей игры на стороне сервера и только интерфейс на стороне клиента.
Это помогает, если вы думаете о браузере как о мониторе на стероидах.А насчет UDP / сокетов ... в веб-приложениях такого нет, но вы все равно можете использовать асинхронные запросы через AJAX или FLASH (я не совсем уверен, что flash может выполнять Async, но я уверен, что он может).
Итак, вместо потока keyboard -> program -> monitor
у вас есть поток keyboard -> browser-scripts -> AJAX request -> server-scripts -> monitor
.