Игра "найди пару"

syrpo
На сайте с 20.03.2009
Offline
104
3033

Добрый день.

Друзья, помогите с такой задачей:

Нужно реализовать игру "Найди пару" на javascript (вариант с flash не рассматриваем), что-то вроде neftek.legko.ufanet.ru/homesite/jsgames/2/index.php

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

Если еще и поможете с иходником- буду чрезмерно благодарен.

-O-O-
На сайте с 27.05.2006
Offline
140
#1

Когда-то делал промку с такой игрой http://malina.ru/msk/promo/utkonosgame/

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

syrpo
На сайте с 20.03.2009
Offline
104
#2
-O-O-:
Делать защиту от читерства в JS игре бесполезно имхо.

Почему Вы так считаете? Мол все равно взломают?

М
На сайте с 05.02.2014
Offline
30
#3

Если вы подгрузите Аяксом, то эту подгрузку тоже можно отследить (во всяких FireBug-ах) и посмотреть, что там пришло.

---------- Добавлено 27.03.2014 в 22:23 ----------

syrpo, а вам нужно использовать исключительно Ява-скрипт? Можно частично использовать серверную сторону?

---------- Добавлено 27.03.2014 в 22:30 ----------

Я считаю клиентскую сторону вражеской. Поэтому хранить спрятанные данные можно только на серверной стороне. Я бы делал так:

1) при "Новая игра" в сессию на сервере записывается карта (картинки);

2) при клике на сервер отправляется запрос: такой-то столбец, такая-то строка. Ответом возвращается число — номер картинки

3) на клиентской стороне храним библиотеку всех картинок. Она загружается 1 раз в самом-самом начале. Ещё даже до "Новая игра";

4) на серверной же стороне также запоминаем очерёдность кликов, т.е. помним, открыта ли сейчас какая-то ячейка. И если открыты обе ячейки и они совпали, то отсылаем вместе с номером картинки сообщение "совпали".

Или можно не слать это сообщение явно. Оставить это только на клиенте. Но помнить, что лишь сервер хранит у себя настоящую картину происходящего. И у сервера всегда можно запросить подтвердление "действительно ли игрок всё разгадал".

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий