Средства создания онлайн игры

Olrand

Новичок
Здравствуйте, сообщество PHPclub.

Где-то на форуме может это уже обсуждалось, но мне хотелось бы узнать последнюю актуальную информацию.
Мне нужно сложить в голове схему создания и работы браузерной онлайн-игры. Пока-что даже нагуглить толком это не могу, потому что нету общего представления как это все вместе должно работать.
Я освоил фреймворк Phaser.js, по сути это чистый JavaScript, на нем можно сделать клиент игры, который потом встраивается в html страницу. С этим вроде все понятно. Сейчас я изучаю PHP, с помощью него и MySQL(если я все правильно понимаю) можно эффективно хранить и обрабатывать данные на стороне сервера.

Остается непонятным, как настроить эффективный обмен данными между JavaScript и PHP (по сути между клиентом и сервером) и при этом не положить базу данных, потому что придется получать данные от большого количества клиентов и слать ответы каждому по несколько раз в секунду, взаимодействуя при этом с базой данных.

Прошу подсказать, как можно это реализовать.
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
@Olrand, вам пока рано задумываться делать такой проект. Идите к цели постепенно.
 

Breeze

goshogun
Команда форума
Партнер клуба
@Olrand, а что, уже и ролевая система выбрана, и все статы развития персонажей разработаны, предметы/технологии просчитаны? :)
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
@c0dex, @AnrDaemon, @c0dex, вы мудаки неправы.
Человек хочет учиться сетевой разработке, придумал себе идею куда копать, спрашивает достаточно конкретный совет.
А вам только обосрать новичка, который (пока что) никому ничего плохого не сказал, и не надо раньше времени провоцировать.

@Olrand, это очень сложная и объемная тема. Это профессия - как юристы, врачи, и учиться надо серьезно, постепенно, много лет. К счастью, обычно это оплачивается.
Одни люди идут в ВУЗы чтобы получить образование, другие, как я, сидят учат самостоятельно. Например, можно начать с http://phpfaq.ru/
Конкретно для игр на сервере сейчас лучше другие языки - Golang, Node.js , но документация по ним хуже, начинать с них плохо.
 
Последнее редактирование:
  • Like
Реакции: WMix

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
@Olrand, не слушай Гришу, он тебе насоветует...
 

hell0w0rd

Продвинутый новичок
Остается непонятным, как настроить эффективный обмен данными между JavaScript и PHP (по сути между клиентом и сервером) и при этом не положить базу данных, потому что придется получать данные от большого количества клиентов и слать ответы каждому по несколько раз в секунду, взаимодействуя при этом с базой данных.
Да как угодно реализуй. Тебе главное идею проверить, если хоть 100 человек этим будут пользоваться, надо будет думать про оптимизации, если они хоть какую-то нагрузку создадут.
На вопросы "как сделать" тут не отвечают. Покажи варианты, куски кода, еще что-то, вот по ним скажут где хорошо, а где плохо.
 

Breeze

goshogun
Команда форума
Партнер клуба
не слушай Гришу, он тебе насоветует...
Да ладно, Гриша плохого не посоветует.
В желании написать игру ничего плохого нет, игры делались и будут делаться, это один из не самых плохих вариантов набить руку в программировании и разобраться как что работает ;)
Другое дело пытаться сразу сделать коммерческий проект не имея знаний.
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
@Breeze, я всего лишь просил человека не торопиться, начнем с того, что Гриша повел себя non-adequate
 

Breeze

goshogun
Команда форума
Партнер клуба
Ну ЧСВ тут всем почесать охота :)
 

fixxxer

К.О.
Партнер клуба
Конкретно для игр на сервере сейчас лучше другие языки - Golang, Node.js , но документация по ним хуже, начинать с них плохо.
Да не то чтобы прям сильно хуже, сильно хуже было 5 лет назад, щас вполне нормально. Другое дело, что при попытке найти учебник с большой вероятностью нарвешься на хипстерское дерьмо - особенно если пытаться искать на русском языке.
А начинать с них плохо, но просто потому, что асинхронка - это особый случай для i/o bound приложений, надо к этому прийти и понять, в каких частных случаях оно полезно.
 

fixxxer

К.О.
Партнер клуба
описано... в литературе о серверных архитектурах :)
 

Olrand

Новичок
@grigori, спасибо за ссылку и поддержку)
@Breeze, @c0dex, это совсем не коммерческий проект, скорее учебный, хочу научиться онлайновые игры в браузере делать. Игровые детали я начну продумывать уже когда пойму что смогу это все запустить.
Да не то чтобы прям сильно хуже, сильно хуже было 5 лет назад, щас вполне нормально. Другое дело, что при попытке найти учебник с большой вероятностью нарвешься на хипстерское дерьмо - особенно если пытаться искать на русском языке.
А начинать с них плохо, но просто потому, что асинхронка - это особый случай для i/o bound приложений, надо к этому прийти и понять, в каких частных случаях оно полезно.
понятно
@hell0w0rd, понятно, спасибо. Но мне интересно узнать для начала как вообще PHP передает свои значения JavaScript-у и обратно, только через ajax или еще какой-то есть вариант?
 

Olrand

Новичок
в смысле, я знаю что ajax отличный инструмент, может просто есть какой-то фреймворк на PHP, который комплексно занимается интернет соединениями и работой с базой данных, в общем организует работу сервера?
 

AnrDaemon

Продвинутый новичок
Начните с того, что сделайте рабочий вариант. Как угодно, но чтобы работало.
 

Olrand

Новичок
Начните с того, что сделайте рабочий вариант. Как угодно, но чтобы работало.
для этого собственно я и затеял эту тему) Но я пока в полной растерянности. Видно рановато еще, буду изучать основы может позже все станет понятнее.
 
Сверху