@GennadyPHP

Как можно сделать web online игру?

Здравствуйте. Стало интересно, как можно реализовать онлайн игру на подобии шарарама или аватарии в ВК. Клиент - это браузер игрока, но как быть с сервером? Ведь тот же самый apache создает для каждого клиента отдельную страницу. Пробовал сделать передвижение игроков в режиме онлайн, используя БД, где хранил координаты, но это совсем не то. Был еще вариант обращаться к отдельному файлу-обработчику на php, но думаю, что удобнее будет держать сервер на C# или Java, но тогда как обратиться клиенту из JS, или тем более Flash, подскажите, как реализовать серверную часть (принцип работы) и технологии, которые мне понадобятся. Сейчас просто хочу реализовать передвижение игроков по полю в реальном времени с авторитарным сервером по принципу "Клиент -> сервер, сервер -> клиент", т.е. запрос от клиента (JS или Flash) к серверу, а сервер производит некую обработку и отвечает клиенту. Спасибо, если можно, то расскажите как работает тот же шарарама или аватарии
  • Вопрос задан
  • 190 просмотров
Решения вопроса 1
@awesomer
серверную часть нужно делать на том языке, что лучше всего знаете.
разные языки идентичный результат позволят получить.
в конечном итоге - у всех на выходе http

Пробовал сделать передвижение игроков в режиме онлайн, используя БД, где хранил координаты, но это совсем не то.

Это как раз то.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@SimasikS
Я есть
Ключевое слово ajax, просто погуглите и всё станет ясно, найдете для js fetch или axios.
Ответ написан
Комментировать
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Делайте сразу нормально: смотрите Swoole.
Swoolle следует тем же принципам, что и Node.js и Netty, но для PHP.


Features
  • Rapid development of high performance protocol servers & clients with PHP language
  • Event-driven, asynchronous programming for PHP
  • Event loop API
  • Processes management API
  • Memory management API
  • Async TCP/UDP/HTTP/WebSocket/HTTP2 client/server side API
  • Async TCP/UDP client side API
  • Async MySQL client side API and connection pool
  • Async Redis client/server side API
  • Async DNS client side API
  • Message Queue API
  • Async Task API
  • Milliseconds scheduler
  • Async File I/O API
  • Golang style channels for inter-processes communication
  • System locks API: Filelock, Readwrite lock, semaphore, Mutex, spinlock
  • IPv4/IPv6/UnixSocket/TCP/UDP and SSL/TLS support
  • Fast serializer/unserializer

Use cases
  • Web applications and systems
  • Mobile communication systems
  • Online game systems
  • Internet of things
  • Car networking
  • Smart home systems

Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы