С Новым годом! Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.84/25: Рейтинг темы: голосов - 25, средняя оценка - 4.84
1 / 1 / 1
Регистрация: 28.09.2012
Сообщений: 91

Простая игра на php и js

11.11.2012, 21:49. Показов 4656. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Хочу написать простую игру на php и javascript, тоесть "шашки"

Общая идея такая: Есть форма, где есть кнопка, "Создать" или "Подключиться" в зависимости от того создан ли сервер. Если кто то нажал создать, то другой любой пользователь может подключиться, и игра наченается. Обычная игра в шашки еще будет чат, в которов смогут переписываться все пользователи. Остально пользователи кто не участвуют в игре могу смотреть за игрой и писать в чате.

Я собераюсь сделать PUSH-канал, по которому будет обновляться чат и ходы играка в шишки и на сервере все обрабатываться и возвращаться ответ.

Дело в том что пользователей которые будут играть в шашки, может быть только 2, больше нельзу будет создовать новаю игру. НО клиентов которые будут в данный момент наблюдать за игрой и писать в чате может быть несколько десятков или даже сотни.

Как все это делать что бы сервер не падал? Ведь нагрузка на сервер будет высокой.
Можно ли такой проект разместить на обычный хостинг?
Там будет все нормально работать без лагов,
или какие то специальные сервера есть?

За помощь буду благодарен.

Не по теме:


PS: Извеняюсь если темами перепутал.

0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
11.11.2012, 21:49
Ответы с готовыми решениями:

Простая авторизация на php и mysql, очень простая!
В базе данных таблица с двумя строками: id, user, password. На странице есть два поля для ввода (имени и пароля) и кнопка входа. По...

Простая игра
Скиньте мне в файле ворда какую то простую игру в С++. Пожалуйста:'(

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

10
Начинающий Линуксоид
18 / 18 / 0
Регистрация: 24.05.2011
Сообщений: 221
Записей в блоге: 1
11.11.2012, 23:14
Не спешите говорить что нагрузка на сервер будет высокой. Пока раскрутитесь все может изменится. Да вообще забейте на хостинг, если есть комп с хотя бы 512 метров оперативки 1.3 гигагерц процессора, лучше сделайте сервер на нем, а в инете купите домен.
1
 Аватар для c4boomb
198 / 166 / 23
Регистрация: 20.04.2011
Сообщений: 750
Записей в блоге: 1
12.11.2012, 00:12
Егор Грушко, я думаю, что ТС будет проводить мини-чемпионаты по шашкам... Например в своём городе или учебном заведении, поэтому нагрузка будет....
1
1 / 1 / 1
Регистрация: 28.09.2012
Сообщений: 91
12.11.2012, 10:08  [ТС]
Цитата Сообщение от Егор Грушко Посмотреть сообщение
Не спешите говорить что нагрузка на сервер будет высокой. Пока раскрутитесь все может изменится. Да вообще забейте на хостинг, если есть комп с хотя бы 512 метров оперативки 1.3 гигагерц процессора, лучше сделайте сервер на нем, а в инете купите домен.
То что одновременно будет 30-70 челове я уверен.

Если я сделаю на своем компе сервер, то он должен круглосуточно работать наверное.
0
Начинающий Линуксоид
18 / 18 / 0
Регистрация: 24.05.2011
Сообщений: 221
Записей в блоге: 1
12.11.2012, 10:25
Да он должен будет работать 24\7. Но если вы рассчитываете на каждую игру будут смотреть по 70 человек, то хостинг не справится по определению...
0
1178 / 1128 / 94
Регистрация: 31.05.2012
Сообщений: 3,060
12.11.2012, 12:33
Тут сильно зависит от того как будет всё организованно.
Напрмиер при использовании WebSocket можно не разрывать соединение, или при написании клиента на флеше, тоже можно не разрывать.
Но в первом случае не все браузеры поддерживают WebSocket а во втором нужно клиента на флеше делать.
Вместо WebSocket на IE8 можно юзать XDomainRequest а в FF XMLHttpRequest не требует разрыва соединений.

Больше всего задержка и нагрузка будет как раз из за переподключений. И их нужно свести к минимуму.

Я думаю на 70 человек игры в шашки и чата должно хватить хостинга. Браузеров FF, Chrome, IE8+ и Opera 11+ много. Так что если написать под все браузеры что бы работало без переподключений, то и сотню потянет. В конце концов шашки не такая игра где нужно уравнивать пинг на клиентах для синхронизации, она пошаговая
1
Начинающий Линуксоид
18 / 18 / 0
Регистрация: 24.05.2011
Сообщений: 221
Записей в блоге: 1
12.11.2012, 13:52
Цитата Сообщение от DrobyshevAlex Посмотреть сообщение
Я думаю на 70 человек игры в шашки и чата должно хватить хостинга.
Если будет только одна игра то хватит, но если игр гораздо больше?
0
1 / 1 / 1
Регистрация: 28.09.2012
Сообщений: 91
12.11.2012, 13:59  [ТС]
Спасибо, я пишу для IE8+ FF Opera Chrome.

Цитата Сообщение от DrobyshevAlex Посмотреть сообщение
Вместо WebSocket на IE8 можно юзать XDomainRequest а в FF XMLHttpRequest не требует разрыва соединений.
Тоесть XMLHttpRequest В выше приведенных браузерах не может установить неразрывное соединение?


Я с WebSocket некогда не работал, а на каких он браузерах может установить неразрывное седениение?

Добавлено через 3 минуты
Извеняюсь за такой глупый вопрос: а JavaScript имеет какие то классы для работы с сокетами?

PS: Я просто только начал изучать всю эту систему js
0
1178 / 1128 / 94
Регистрация: 31.05.2012
Сообщений: 3,060
12.11.2012, 14:43
Цитата Сообщение от Егор Грушко Посмотреть сообщение
Если будет только одна игра то хватит, но если игр гораздо больше?
Да хоть 35 игр. Разговор про 70 человек, которые держат по одному конекту к сайту

Цитата Сообщение от Harutyunyan Посмотреть сообщение
Тоесть XMLHttpRequest В выше приведенных браузерах не может установить неразрывное соединение?
NНу установить то он как бы и может. Но он не обработает ответ пока не будет разрыв соединения. Так что оно висеть может долго но при обработке будет разорвано. Это подходит для Long poll.

Цитата Сообщение от Harutyunyan Посмотреть сообщение
Я с WebSocket некогда не работал, а на каких он браузерах может установить неразрывное седениение?
На Chrome

Цитата Сообщение от Harutyunyan Посмотреть сообщение
Извеняюсь за такой глупый вопрос: а JavaScript имеет какие то классы для работы с сокетами?
Есть наборы библиотек которые облегчают работу, они будут сами в зависимости от браузера выбирать способ подключения.
Например https://github.com/sockjs/sockjs-client

Но я думаю что игра в шашки и чат для 100 человек, даже с лонг поллингном будет нормально работать, как я уже писал, шашки не такая быстрая игра что кликать нужно по 20 раз в секунду)

Добавлено через 3 минуты
Просто заюзайте например в php shared mem.
Что бы не делать постоянные запросы к БД во время игры, храните там положение шашек.
Ну если вы конечно будите делать серверную проверку возможность ходов во избежании читерства.

А лучше всё таки брать VPS/VDS и написать хотя бы на том же пхп сервер, который будет крутиться на каком то порту к которому через nginx направлять запросы от игроков, вот тогда уже все проверки возможности хотдов перенести в пхп.
1
1 / 1 / 1
Регистрация: 28.09.2012
Сообщений: 91
12.11.2012, 17:26  [ТС]
Спасибо большое, много хорошой инфы, но все как то геворойно, просто напрягает для разных браузеров по разному.
0
1178 / 1128 / 94
Регистрация: 31.05.2012
Сообщений: 3,060
12.11.2012, 17:31
А я и написал, сделайте просто Long poll через jquery ajax.
В вашем случае должно хватить скорости.

Добавлено через 52 секунды
Ну или же вон библиотеке, используйте её.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
12.11.2012, 17:31
Помогаю со студенческими работами здесь

Простая игра
Мне надо написать игру лабиринт, но мои способности что в C#, что в C++ очень малы. вот все на что додумался мой мозг на C# : ...

Простая игра 3D на C++
Здравствуйте! Я бы хотел попробовать написать простенькую 3D игру на C++. Физический движок мне не нужен, так как физики там сложной не...

Простая игра
Исходя из предыдущей темы, решил писать сам без примера и придумал вот такую штуку. Через определенное время в окне появляется на...

Простая игра на OpenGL
Пишу простенькую игру на OpenGL. Раньше писал на Blitz3D, но его нельзя использовать, VS 2005, OpenGL и MFC не особо понимаю. Поэтому все...

Задача Простая игра
ПРОСТАЯ ИГРА. Дед Мазай и заяц играют в очень простую игру. Перед ними огромная куча одинаковых морковок. Каждый из них во время своего...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru