• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

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

    Запись на курс до 25 апреля. Получить промодоступ ...

Экономическая игра

  • Автор темы Armagedda
  • Дата начала
A

Armagedda

Искал в инете реализацию настольной игры Биржа, но так и не нашел нормальной. Решил сам запрограммировать. В дизайн особо не углублялся, главное для меня было максимально приблизить к настольному варианту в игровом плане . Хочу сделать сетевую версию, но толком не знаю как. Может, кто заинтересуется и поучаствует в совместном проекте?
 
A

Armagedda

Нихрена не понял? Как любят советовать "крутые" программеры, изучайте матчасть! (там же есть правила).
 
V

vital

Я не к тому, что правил не читал. А к тому, что очень не очевидный интерфейс. Далеко не сразу доходит куда кликать. Нужно иметь очень много желания, что бы разобраться и понять. например, кнопки для второго этапа хода - находятся под третьим этапом. Фиг найдешь.. Насчет функционала - нету там ничего специфического или адски сложного. Разве что АИ ботов.. А что бы игра могла стать популярной.. хм.. хз
 
A

Armagedda

Интерфейс буду дорабатывать, однозначно. А по поводу сетевой версии - можно ли ее сделать только средствами PHP?
 
V

vital

Только средствами пхп - Если делать ПРАВИЛЬНО, то нет, невозможно. Если через жопу - то могу рассказать метод..
 
V

vital

Хм.. ну время и нервы.. Если вкратце - обычно взаимодействие двух игроков реализовано либо по системе - клиент-сервер(т.е. один и зигроков клиент, и подключается ко второму - серверу) либо 2 клиента и сервер(т.е. есть какой-то отдельный сервер к которому подключаются 2 игрока-клиента, а всей передачей данными между ними занимается сервер) Штука в том, что написать сервер на PHP невозможно. На нем можно написать только клиент. Соответственно, если нужно обойтись только его средствами - то нужно придумать способ обойтись без сервера.. Тут и приходит на помощь всемогущий AJAX. Идея примерно в следующем. Человек заходит на сайт мол типа хочу поиграть. Скрипт проверяет в бд - есть ли созданные игры, и если есть, то подключается к ней, если нет => создает игр( в бд делается соответствующая запись, а человеку выдается что-то в духе ожидание соперника) Далее, когда игра создается - для нее можно создать временную табличку в бд, или еще че-нить в таком духе, и по таймеру JS будет вызываться проверка - подключился ли кто-нить к игре?(А при подключении клиента к игре тоже в бд делается какая-нить запись об этом). Когда клиент подключился - точно так же, ходы делаеются по очереди, ходы записываются в бд, а у каждого клиента по таймеру на JS происходит проверка - появились ли новые записи в бд, и, если появились, то они отображаются на экране и предлагается возможность сделать ход, и снова запускается ожидание изменений в бд.. Тоже самое у второго игрока.. Надеюсь хоть что-то понятно)
 
A

Armagedda

Спасибо, именно такой алгоритм я и предполагал. Пусть "через жопу", но сделать попробую.
 
A

Armagedda

Представляю на ваш суд сетевую версию игры Биржа. Расположена пока на временном адресе
Если удастся довести до ума, будет взят специальный домен.
Сделана в соответствии с рекомендациями vital
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!