Elite Games - Свобода среди звезд!
.
ВНИМАНИЕ!
Наша конференция посвящена космической тематике и компьютерным играм.
Политические вопросы и происходящие в мире события в данный момент на нашем сайте не обсуждаются!

  » Мозговая штормилка. | страница 11
Конференция предназначена для общения пилотов. Для удобства она разделена на каналы, каждый из которых посвящен определенной игре. Пожалуйста, открывайте темы только в соответствующих каналах и после того, как убедитесь, что данный вопрос не обсуждался ранее.

Поиск | Правила конференции | Фотоальбом | Регистрация | Список пилотов | Профиль | Войти и проверить личные сообщения | Вход

   Страница 11 из 33
На страницу: Пред.  1, 2, 3 ... 10, 11, 12 ... 31, 32, 33  След.    Перейти:   Все страницы
Поиск в этой теме:
Канал Игры Мечты: «Мозговая штормилка.»
Shirson
 1605 EGP


Модератор
Рейтинг канала: 7(626)
Репутация: 219
Сообщения: 16511
Откуда: 79°W 44°N
Зарегистрирован: 29.01.2002
VBKesha, да, да, ты гений. Ты знаешь много крутых и правильных слов. Только не нужно их больше писать в этой теме, ок? Я её не для фаллометрии открыл.
Спасибо.
_________________
У меня бисера не доxеpа.
    Добавлено: 20:40 01-05-2008   
VBKesha
 817 EGP


Рейтинг канала: 3(31)
Репутация: 132
Сообщения: 3330
Откуда: обл.Брянская г. Трубчевск
Зарегистрирован: 07.12.2005
Shirson :
Ты знаешь много крутых и правильных слов. Только не нужно их больше писать в этой теме, ок?

Всегда пожалуйста. Болше я в этой теме не появляюсь.
Shirson :
Я её не для фаллометрии открыл

Почемуто сложилось совсем обратное впечатление.....
    Добавлено: 21:14 01-05-2008   
Shirson
 1605 EGP


Модератор
Рейтинг канала: 7(626)
Репутация: 219
Сообщения: 16511
Откуда: 79°W 44°N
Зарегистрирован: 29.01.2002
Спасибо.

сложение обратных впечатлений личное дело каждого
_________________
У меня бисера не доxеpа.

Последний раз редактировалось: Shirson (22:36 01-05-2008), всего редактировалось 1 раз
    Добавлено: 22:35 01-05-2008   
Crimson
 560 EGP


Рейтинг канала: 4(83)
Репутация: 130
Сообщения: 3041

Зарегистрирован: 03.09.2003
Сервер единый и неделимый? Игрокам доверяется только клиент?

Shirson :
+ Теоретически можно использовать клиенты сторониих разработчиков.
...
- Теоретически можно использовать клиенты сторониих разработчиков.


В чем минус? Корректность входящих данных по хорошему нужно проверять и так и так. Гарантировать совместимость с чужими клиентами ты не обязан, а если кто-то думает, что может сделать клиент лучше - ну флаг ему в зубы.

Shirson :
- Состояние всей игры пересылается и хранится и на стороне клиента.


По хорошему, клиенту отсылается только то, к чему он в игре имеет доступ... Подозрение. Или вопрос в трафике на данные, которые могут и не пригодиться? Думаю он все равно меньше, чем каждый раз пересылать результаты обработки моих запросов (которые еще и грузят сервер). И окупается удобством оффлайновых ходов.

Запоздалые мысли по поводу:

Shirson :
1. Полностью Web-based. Все операции производятся через браузер.


Более-менее кроссплатформенность можно попытатья сделать только если ты профессиональный веб-дизайнер с серьезным опытом работы. Иначе это данс-макабр на граблях. Маленькие, но гордые различия между разными браузерами есть даже в интерпретации HTML, а про DOM и javascript я вообще молчу. А без них интерфейс будет ну очень убогий. Да и с ними... Трафик можно пытаться бороть при помощи AJAX. Теоретически. Практически - я бы поберег мозг писать веб-интерфейс...

Shirson :
2. Клиент с подключением. Клиент подключается к серверу и производит все операции в режиме соединения.


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

Shirson :
3. PBEM. Игровые ходы курсируют через мыло (как в Stars!)


Все таки как в старсах или конкретно через мыло? Потому что старсам в принципе по барабану как ход попадает на машину. И имхо это правильно. Курсированием ходов может заниматься отдельная утилита. Не факт что одна и та же на каждом компе.
    Добавлено: 06:38 30-06-2008   
Sh.Tac.
 151 EGP


Рейтинг канала: 5(108)
Репутация: 14
Сообщения: 1426

Зарегистрирован: 27.07.2005
Crimson :
В чем минус?

эксплойты, боты и прочие радости автоматизации

По поводу 1. и 2.
их можно вполне объединить Улыбка

технология называется флешь Гы-гы
_________________
This is what you get ...
(c) Radiohead
    Добавлено: 12:08 30-06-2008   
Shirson
 1605 EGP


Модератор
Рейтинг канала: 7(626)
Репутация: 219
Сообщения: 16511
Откуда: 79°W 44°N
Зарегистрирован: 29.01.2002
Crimson :
Сервер единый и неделимый?

В каком смысле? Если централизации, то да.

Цитата:
В чем минус?


Sh.Ta уже сказал

Цитата:
По хорошему, клиенту отсылается только то, к чему он в игре имеет доступ

Для понимания возьми Звёздный Ветер. Сервер пересылает клиенту всё состояние игры клиента. Картики, названия, тексты, эмблемы, иконки, параметры, координаты - всё.

Цитата:
Но, опять же, я хочу делать ходы в оффлайне.

А я хочу миллион долларов Да.

Цитата:
Сильно хочу Улыбка

Я еще больше хочу Улыбка

Цитата:
Все таки как в старсах или конкретно через мыло?

PBEM - это термин такой. "Как в Stars!" - пример где такое есть Подмигиваю
_________________
У меня бисера не доxеpа.
    Добавлено: 16:30 14-07-2008   
Crush
 285 EGP


Рейтинг канала: 2(10)
Репутация: 48
Сообщения: 1190
Откуда: Владивосток
Зарегистрирован: 23.07.2003
Shirson :
Crimson :
По хорошему, клиенту отсылается только то, к чему он в игре имеет доступ

Для понимания возьми Звёздный Ветер. Сервер пересылает клиенту всё состояние игры клиента. Картики, названия, тексты, эмблемы, иконки, параметры, координаты - всё.

А в чем собственно проблема, если генерация хода произойдет все равно на сервере? Ну картинки, эмблемы итд (при существующем клиенте) сервер разок перешлет и все, если игрок сам залезет в эти файлы и разукрасит игру как ему вздумается это его дело. Ну нравится красные иконки на желтом фоне.. ради бога Улыбка А вот координаты и статусы игровых обьектов это уже сервер может выслать клиенту, а может и не выслать, если игрок не разведал эту область или обьект находится вне зоны действия "радаров" игрока. Опять же при генерации офлайновых ходов сервер может проверить "корректность" хода сделанного игроком, так что момент чита на стороне клиента убирается.
    Добавлено: 17:18 14-07-2008   
Shirson
 1605 EGP


Модератор
Рейтинг канала: 7(626)
Репутация: 219
Сообщения: 16511
Откуда: 79°W 44°N
Зарегистрирован: 29.01.2002
Crush :
А в чем собственно проблема, если генерация хода произойдет все равно на сервере?

Я уже написал в чём. Мне казалось, это более чем понятно и прозрачно, если это не так, попробую объяснить наглядно.

Есть два человека. У одного есть видео. Второй хочет его посмотреть / первый хочет его показать.
В случае браузерного варианта, каждый раз второму будет пересылаться гигабайты видео.
В случае клиента с предскачаным контентом, второй может смотреть его сколько угодно. А если первому нужно обратить внимание второго на отдельные моменты, ему достаточно переслать два числа для каждого - смещение и длину.

Или представь себе морской бой (или шахматы), в котором один сообщает свой ход другому, каждый раз целиком рисуя игровое поле (с тектсурами и тенями), а не сообщая координаты Улыбка

Цитата:
Ну картинки, эмблемы итд (при существующем клиенте) сервер разок перешлет и все

Обычно, это скачивается вместе с клиентом, хотя не суть. А суть твоего вопроса/утверждения я не понял, если честно Улыбка Объясни, плз.
_________________
У меня бисера не доxеpа.
    Добавлено: 17:46 14-07-2008   
Anthrax
 145 EGP


Рейтинг канала: 3(27)
Репутация: 12
Сообщения: 682
Откуда: Москва
Зарегистрирован: 19.04.2003
Вопрос по множеству игроков в онлайншутере.
Как-то тут уже обсуждалось, почему очень сложно в шутере, в т.ч. и космо, аля Фрил, чтобы одновременно сидело больше 32(64) игроков. В частности, клиент не передает на сервер "попал/не попал", эта вещь расчитывается на сервере с использованием всяких алгоритмов предсказания и прочим извратом. Плюс постоянный поток udp траффика при медленном канале у одного клиента начинает тормозить онлайнигру у всех клиентов, т.к. сервер, не получая данных для своих алгоритмов предсказания, начинает тоже тормозить, включать delay и вообще функционировать не в нормальном режиме, успевая обработать и расчитать все и вся. Если расчет попадания доверить клиенту, пересылая на сервер только уже готовый результат, то скорость (и возможность числа игроков) увеличится, но это путь к тотальному читерству, поскольку у себя на машине ушлые юзеры будут подправлять данные попаданий в свою сторону до посинения.

Вопрос: а если алгоритм расчета текущих координат и попаданий будет сам зашифрован (криптография), плюс зашифрованы и сами данные, передающиеся на сервер. Как доп. мера, ключ шифровки постоянно будет меняться во времени по сигналу с сервера, скажем, на каждом клиенте раз в 1 минуту.

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

Возможен ли в принципе такой алгоритм шифрования в реальном времени, который юзеры сами не смогут расколоть, или во всяком случае расколоть его в течении той же 1 минуты до очередной плановой смены ключа?
_________________
Я не злопамятный. Я просто злой. И память у меня хорошая.

Последний раз редактировалось: Anthrax (21:48 14-07-2008), всего редактировалось 2 раз(а)
    Добавлено: 21:46 14-07-2008   
Guest
 2075 EGP


Модератор
Рейтинг канала: 5(167)
Репутация: 376
Сообщения: 27975
Откуда: Моск.
Зарегистрирован: 12.10.2004
минутный - в принципе, RSA тебе в помощь...
Хотя нет, за минуту не расковыривается, шифрует вроде как довольно быстро, но в реальном времени наверное не потянет, да и минутные интервалы смены ключа - это как-то слишком...

Да и вообще перманентное шифрование всех данных... Паранойей попахивает Улыбка Сессионного ключа должно хватить.
К тому же - от кого ты проводишь защиту? От перехвата данных?
Это всё равно ничего не даст, если у тебя есть нечто, меняющееся от сессии к сессии связи. Тот же ключ и алгоритм передачи, зависящий от него, совершенно примитивная шифровалка.
Сессионный ключ передавать через алгоритм с открытым ключом. Т.е. там ты и так защищён, по сути, тебе реал-тайм алгоритм не требуется. Да.

А если клиент от читерства - тогда тем более не поможет, т.к. взломать твой клиент проще, чем ломать твой шифр связи Улыбка
_________________
Трещит земля как пустой орех
Как щепка трещит броня
    Добавлено: 22:49 14-07-2008   
Crush
 285 EGP


Рейтинг канала: 2(10)
Репутация: 48
Сообщения: 1190
Откуда: Владивосток
Зарегистрирован: 23.07.2003
Shirson :
Crush :

Ну картинки, эмблемы итд (при существующем клиенте) сервер разок перешлет и все

Обычно, это скачивается вместе с клиентом, хотя не суть. А суть твоего вопроса/утверждения я не понял, если честно Улыбка Объясни, плз.

Ну мы наверное друг друга не поняли. Улыбка Я имел в виду, что имея ресурсы на клиенте и генерируя ходы на серваке, можно вполне защитится от "эксплойты, боты и прочие радости автоматизации".
    Добавлено: 02:17 15-07-2008   
Crimson
 560 EGP


Рейтинг канала: 4(83)
Репутация: 130
Сообщения: 3041

Зарегистрирован: 03.09.2003
Shirson :
Crimson :
Сервер единый и неделимый?

В каком смысле? Если централизации, то да.


В смысле сервер один на игру или вообще на всех? Скажем, в Старсах сервером может стать любой. Но в том же Real4X, например, серверов считанное число, выдаются они строго доверенным и проверенным лицам, рядовым обывателям доступны только клиенты и играть они могут только тогда, когда на сервере решат запустить партию.

Shirson :
Цитата:
В чем минус?


Sh.Ta уже сказал


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

Shirson :
Для понимания возьми Звёздный Ветер. Сервер пересылает клиенту всё состояние игры клиента. Картики, названия, тексты, эмблемы, иконки, параметры, координаты - всё.


Звездный Ветер тут при чем? Вопрос был о том, как сильно пошаговой стратегии мешает сохранение "всей игры" на стороне клиента (при наличии этого самого клиента). Звездный Ветер, по крайней мере пока я в него играл, был "реал-тайм" и в браузере Подозрение.

Что подразумевается под "состоянием всей игры"? Пример с морским боем не совсем удачный, там оффлайновые ходы никоим боком не присобачить. Поэтому возьмем, к примеру, пошаговые гонки. Вариант с клиентом и оффлайновыми ходами - клиенту посылается контур всей трассы, и игрок может сидеть и перебирать варианты - у клиента есть все данные чтобы решить, грубо говоря, вылетишь ты с трассы или нет.

Ты же (как я понял) предлагаешь клиенту каждый раз спрашивать сервер - а если я поставлю такую скорость и поверну на столько-то градусов, я вылечу или нет? До какого-то момента трафика на энное количество попыток действительно может быть меньше, чем трафика на передачу трассы. Но стоит ли оно того?

Shirson :
Цитата:
Сильно хочу Улыбка

Я еще больше хочу Улыбка


Ну ты девелопер, твое хочу по определению толще. Но, на мой нескромный взгляд, оффлайновые ходы все-таки очень желательны. А так я вообще много чего хочу... Улыбка
    Добавлено: 08:25 15-07-2008   
Crush
 285 EGP


Рейтинг канала: 2(10)
Репутация: 48
Сообщения: 1190
Откуда: Владивосток
Зарегистрирован: 23.07.2003
Crimson :
Что подразумевается под "состоянием всей игры"? Пример с морским боем не совсем удачный, там оффлайновые ходы никоим боком не присобачить. Поэтому возьмем, к примеру, пошаговые гонки. Вариант с клиентом и оффлайновыми ходами - клиенту посылается контур всей трассы, и игрок может сидеть и перебирать варианты - у клиента есть все данные чтобы решить, грубо говоря, вылетишь ты с трассы или нет.

Ты же (как я понял) предлагаешь клиенту каждый раз спрашивать сервер - а если я поставлю такую скорость и поверну на столько-то градусов, я вылечу или нет? До какого-то момента трафика на энное количество попыток действительно может быть меньше, чем трафика на передачу трассы. Но стоит ли оно того?

Не, вот то что ты описал, что "у клиента есть все данные чтобы произвести расчет вылечу/нет" это уже зло. Однозначно будет чит позволяющий расчитывать идеальную траекторию. Сервер должен передать в твоем примере только контур трасы и положение других машин, а от клиента получить данные: скорость и вектор перемещения машины. А вот вылетит она с трасы или нет, эта формула должна быть только у сервера и клиент узнает о результате только когда будет сгенерирован новый ход и прийдет новое положение машины.
    Добавлено: 09:06 15-07-2008   
Sh.Tac.
 151 EGP


Рейтинг канала: 5(108)
Репутация: 14
Сообщения: 1426

Зарегистрирован: 27.07.2005
скажу больше

сервер сам должен считать всё с задержками (это помимо сетевого лага) Ой, не могу!..

т.е. серверу гораздо проще считать всё моментально не заморачиваясь с таймерами...

но представьте
игрок нажал на гашетку и не отпускает, - сервак единомоментно обсчитает все пришедшие пакеты и будет мега-бум
_________________
This is what you get ...
(c) Radiohead
    Добавлено: 12:10 15-07-2008   
Zachesa
 151 EGP


Рейтинг канала: 4(95)
Репутация: 13
Сообщения: 1415
Откуда: Хабаровск
Зарегистрирован: 12.11.2007
Crimson :
До какого-то момента трафика на энное количество попыток действительно может быть меньше, чем трафика на передачу трассы. Но стоит ли оно того?
Максимум что положено клиенту знать это элементы из которых состоит путь: прямая, поворот, подъём, спуск, колдобина, тупик... Хотя информацию о каждой колдобине можно получать чуть раньше, чтоб клиент адекватно реагировал на потерю пакетов, в помощь клиентской системе предсказания.
Использовать UDP с некоторой избыточностью кода зависящей от качества связи (трафик общий увеличится, но незначительно ведь часть пакетов теряется же).
    Добавлено: 15:07 15-07-2008   
Shirson
 1605 EGP


Модератор
Рейтинг канала: 7(626)
Репутация: 219
Сообщения: 16511
Откуда: 79°W 44°N
Зарегистрирован: 29.01.2002
Crush :
Ну мы наверное друг друга не поняли. Улыбка Я имел в виду, что имея ресурсы на клиенте и генерируя ходы на серваке, можно вполне защитится от "эксплойты, боты и прочие радости автоматизации".

Вообще, речь шла про PBEM, хы (я подтормозил после отпуска, думал речь про WB). Там, всё состояние игры (доступное игроку) присылается клиенту - чтобы он мог работать с ним в оффлайне.

добавлено спустя 20 минут:
Crimson :
В смысле сервер один на игру или вообще на всех? Скажем, в Старсах сервером может стать любой. Но в том же Real4X, например, серверов считанное число, выдаются они строго доверенным и проверенным лицам, рядовым обывателям доступны только клиенты и играть они могут только тогда, когда на сервере решат запустить партию.

Я себе представлял один сервер, на котором можно создавать партии и играть.

Цитата:
Ну вообще-то в случае пошаговой стратегии я с ним аж совсем не согласен. Но из уважения к тебе спорить не буду Улыбка

Да нет, спорить надо, потому что ты можешь оказаться прав Улыбка
Я против клиентов сторонних разработчиков по нескольким причинам, ожна из которых - зачем создавать своими руками конкурентов? Улыбка


Цитата:

Звездный Ветер тут при чем?

Не причём, это я протормозил.

Цитата:
Вопрос был о том, как сильно пошаговой стратегии мешает сохранение "всей игры" на стороне клиента (при наличии этого самого клиента).

Очень много избыточной инфы, как передаётся по сети, так и хранится на клиенте. Плюс возможная рассинхронизация и путаница у игрока (в тм числе и в голове).

Цитата:
Что подразумевается под "состоянием всей игры"? Пример с морским боем не совсем удачный, там оффлайновые ходы никоим боком не присобачить. Поэтому возьмем, к примеру, пошаговые гонки. Вариант с клиентом и оффлайновыми ходами - клиенту посылается контур всей трассы, и игрок может сидеть и перебирать варианты - у клиента есть все данные чтобы решить, грубо говоря, вылетишь ты с трассы или нет.

Есть вариант морского боя, в котором игрок делает три хода подряд. Вот, сидит в оффлайне и думает Улыбка

Берём пример с гонками. Контуры трассы присылаются - потому что трасса каждый раз новая. Контуры трассы известны, но оперативная информация о трассе доступна только для того места, которое видит игрок. Да еще и трасса может меняться, во времени. В итоге получается, что контур трассы уже, вобщем-то, "устарел". Да и сам по себе даёт представление о трассе весьма схематичное. И каждый ход игрок получет состояние участка трассы, который он видит. Ему просто пересылается массив данных об окружении, независимо от того, что в нём изменилось. Это наиболеепростой путь организовать достоверную инфу на клиенте. На примере кучи взёзд это понятно лучше (см. ниже)

Цитата:

Ты же (как я понял) предлагаешь клиенту каждый раз спрашивать сервер - а если я поставлю такую скорость и поверну на столько-то градусов, я вылечу или нет? До какого-то момента трафика на энное количество попыток действительно может быть меньше, чем трафика на передачу трассы. Но стоит ли оно того?

Возьмум кучу звёзд. Сервак сгенерил галактику из 10000 звёзд. Каждая из которых (доступных игроку) обладает серией параметров, которые игрок может посмотреть, и которые всегда и для всех доступныз звёзд передаются на клиент с каждым ходом. Потому что неизвестно, что будет делать игрок и какая инфа ему понадобится - поэтому ему передаётся вся доступная игфа (всё состояние игры для него).
В случае, же, клиента с подключением, игрок получает только ту информацию, которую непосредственно запросит. Это меньше на порядки.

Цитата:

Ну ты девелопер, твое хочу по определению толще.

Но миллиона мне это не даёт Расстроен

Цитата:
Но, на мой нескромный взгляд, оффлайновые ходы все-таки очень желательны. А так я вообще много чего хочу... Улыбка

Это будет засисить от самой игры. Которой, пока, в цельном виде нет даже в голове Улыбка
_________________
У меня бисера не доxеpа.

Последний раз редактировалось: Shirson (16:40 15-07-2008), всего редактировалось 1 раз
    Добавлено: 16:40 15-07-2008   
Crimson
 560 EGP


Рейтинг канала: 4(83)
Репутация: 130
Сообщения: 3041

Зарегистрирован: 03.09.2003
Crush :
Не, вот то что ты описал, что "у клиента есть все данные чтобы произвести расчет вылечу/нет" это уже зло. Однозначно будет чит позволяющий расчитывать идеальную траекторию.


Во-первых под "рассчитать" имелось в виду "юзер ввел параметры, клиент отобразил результат". Рассчитывать идеальную траекторию клиент естественно не будет. Да, клиент можно взломать. Теоретически. Если кому-то очень нефиг делать. Но тогда уж можно взломать и тонкий клиент, который своими запросами будет грузить сервер.

Во-вторых идеально ты все равно ничего не просчитаешь, т.к. ходы других игроков неизвестны по определению.

В-третьих я не утверждаю что схема оффлайновых ходов оптимальна для гонок. Я говорю о стратегии типа Старс. Пример с гонками приводился для иллюстрации схем передачи игровой инфы.

Sh.Tac. :
но представьте
игрок нажал на гашетку и не отпускает, - сервак единомоментно обсчитает все пришедшие пакеты и будет мега-бум


Ага, а так будет мега-бум с задержкой Улыбка Каждый посылаемый event должен иметь timestamp, по которому понятно, когда и сколько времени клиент держал кнопку. Иначе хоть с задержками, хоть без задержек...

Но это оффтоп.

Shirson :
Да нет, спорить надо, потому что ты можешь оказаться прав Улыбка
Я против клиентов сторонних разработчиков по нескольким причинам, ожна из которых - зачем создавать своими руками конкурентов? Улыбка


Ну тогда будем спорить Улыбка

Меня как-то совершенно не пугает автоматизация рутинных действий в пошаговой стратегии. Ибо их как раз всеми силами нужно стараться автоматизировать. Их там дохрена. Из-за чрезмерного количества рутинных действий люди бросают игру в середине партии, когда начинается самое интересное. Ничего хорошего в этом не вижу. Другое дело - грайнд в МОРГах - там это часть игрового процесса (в нем я тоже ничего хорошего не вижу, но я в них и не играю).

Боты... если речь, опять-таки, о пошаговой стратегии, то посмотрел я на того бота...

Насчет конкурентов я тоже не очень понял. Ты "продаешь" игровую механику и игровой баланс. Даже если кто-то напишет более удобный клиент (что без содействия с твоей стороны будет очень сложно сделать) - это будет все равно клиент для твоей игры. В чем проблема-то?

Shirson :
Очень много избыточной инфы, как передаётся по сети, так и хранится на клиенте. Плюс возможная рассинхронизация и путаница у игрока (в тм числе и в голове).


"Очень много" это сколько в килобайтах? В игре не не должно быть "избыточной инфы", вся инфа должна быть по делу. Ибо игроку с ней работать. Поэтому есть мнение, что много ее не будет.

Рассинхронизировать - опять-таки, пошаговку - довольно сложно. Собственно, вариант только один - игрок не получил ход и вовремя об этом не сообщил. Чем это для него черевато - надо смотреть на конкретном примере. Но катастрофы не будет.

Shirson :
Есть вариант морского боя, в котором игрок делает три хода подряд. Вот, сидит в оффлайне и думает Улыбка


При чем здесь морской бой? Ты еще в камень-ножницы-бумагу предложи по переписке поиграть Улыбка

Хорошо, берем морской бой. Я предлагаю после каждого хода посылать игроку список клеток, по которым уже били, и список клеток, где что-то подбито (на обоих полях). Ну и координаты своих кораблей естественно. Что предлагаешь ты? Игрок по каждой клетке посылает серверу запрос, стрелял он туда или не стрелял? Или как?

Shirson :
Возьмум кучу звёзд. Сервак сгенерил галактику из 10000 звёзд. Каждая из которых (доступных игроку) обладает серией параметров


Серия параметров - это сколько в байтах? При том что учти, все 10000 планет игрок скорее всего не увидит до конца игры.

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

Shirson :
В случае, же, клиента с подключением, игрок получает только ту информацию, которую непосредственно запросит. Это меньше на порядки.


Игрок не будет заниматься оптимизацией запросов. Он запросит, скажем, концентрацию минералов на всех видимых планетах, в порядке убывания пригодности климата. И серверу точно так же придется посылать все планеты. Возможно по нескольку раз за ход, если не предусмотрен механизм кэширования. Экономии вряд ли будет больше, чем мозгоимения на ее реализацию (и потенциальных багов).
    Добавлено: 10:14 16-07-2008   
kaero
 





Shirson :
Допустим, есть Stars!like игра, сильно пошаговая и сессионная.
В каком виде её лучше реализовывать?


Если процесс игры выглядит как формирование пакета приказов/указаний для сервера, который выполняет их в строго определённое время с какой-то периодичностью (схема PBEM-игр), то наиболее разумный вариант - это собственный клиент (третий вариант).

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

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

Клиент подключается по TCP/IP к серверу, делает запрос, получает ответ и разрывает соединение. Сервер сам с клиентом связаться не может.

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

Трафик по такой схеме будет совсем небольшой, сетевое программирование несложное. Каждый клиент скачивает в сутки до несколькитх мегабайт информации, отправляет полмегабайта. Сервер держится на VDS-хостинге за небольшие деньги. Клиент можно написать на языке типа Python/Ruby/Java/C# (как и сервер), в первых случаях получается нормальная многоплатформенность.
    Добавлено: 14:59 16-07-2008   
Shirson
 1605 EGP


Модератор
Рейтинг канала: 7(626)
Репутация: 219
Сообщения: 16511
Откуда: 79°W 44°N
Зарегистрирован: 29.01.2002
Crimson :
Меня как-то совершенно не пугает автоматизация рутинных действий в пошаговой стратегии.

А меня пугает. Просто превентивно, как возможный вариант непонятных, пока, мне читов Улыбка

Цитата:
Насчет конкурентов я тоже не очень понял. Ты "продаешь" игровую механику и игровой баланс. Даже если кто-то напишет более удобный клиент (что без содействия с твоей стороны будет очень сложно сделать) - это будет все равно клиент для твоей игры. В чем проблема-то?

см. выше.

Цитата:

"Очень много" это сколько в килобайтах?

Не имеет значения. Если это число можно уменьшить на порядки, то это нужно сделать.

Цитата:

В игре не не должно быть "избыточной инфы", вся инфа должна быть по делу. Ибо игроку с ней работать. Поэтому есть мнение, что много ее не будет.

Еще раз.
Есть 10000 звёзд. Всю доступную информацию по ним нужно переслать игроку, потому что неизвестно, что ьудет делать игрок. На практике, он посмотрит данные по паре-тройке, даже десятку и всё. Избыточность в районе сотен раз.

Цитата:
Хорошо, берем морской бой. Я предлагаю после каждого хода посылать игроку список клеток, по которым уже били, и список клеток, где что-то подбито (на обоих полях). Ну и координаты своих кораблей естественно. Что предлагаешь ты? Игрок по каждой клетке посылает серверу запрос, стрелял он туда или не стрелял? Или как?

Или как.
Игрок у себя хранит состояние игры и обменивается с сервером только действиями/изменениями. Время от времени можно делать общуюю синхронизацию, для надёжности (но не каждый ход)

Цитата:

Серия параметров - это сколько в байтах?

Не имеет значения. Но если хочется, берём кило. 10000 кило на ход Да.

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

В старсах россыпи звёзд те еще. И все видно со старта Улыбка


Цитата:
Игрок не будет заниматься оптимизацией запросов. Он запросит, скажем, концентрацию минералов на всех видимых планетах, в порядке убывания пригодности климата. И серверу точно так же придется посылать все планеты.

Да. А может и не запросит - вот в чём дело. Запросил - получи. Не запросил - молодец.

Цитата:
Возможно по нескольку раз за ход, если не предусмотрен механизм кэширования.

Ну, это было бы непростительно Улыбка
Цитата:
Экономии вряд ли будет больше, чем мозгоимения на ее реализацию (и потенциальных багов).

Позырь как работает маркет в EVE Подмигиваю

добавлено спустя 2 минуты:
---
kaero :
Можно сделать сервер, по способу работы аналогичный веб-серверу.

Хорошая мысль. Спасибо за идею.
_________________
У меня бисера не доxеpа.

Последний раз редактировалось: Shirson (21:39 16-07-2008), всего редактировалось 1 раз
    Добавлено: 21:39 16-07-2008   
Crimson
 560 EGP


Рейтинг канала: 4(83)
Репутация: 130
Сообщения: 3041

Зарегистрирован: 03.09.2003
Shirson :
А меня пугает. Просто превентивно, как возможный вариант непонятных, пока, мне читов Улыбка


Так нельзя Улыбка Если тебя пугают читы, которые ты пока даже внятно не представляешь, то ты так ничего никогда не напишешь...

В случае браузерной игры клиентом выступает браузер. Точнее HTML и JavaScript, на которых написан интерфейс. Реверсить жаваскрипт намного легче ассемблера Улыбка

Shirson :
Не имеет значения. Если это число можно уменьшить на порядки, то это нужно сделать.


Очень много бед происходит от преждевременной оптимизации (© по-моему Кнут).

Какой объем трафика на один ход игрока ты считаешь позволительным?

Shirson :
Еще раз.
Есть 10000 звёзд. Всю доступную информацию по ним нужно переслать игроку, потому что неизвестно, что ьудет делать игрок. На практике, он посмотрит данные по паре-тройке, даже десятку и всё. Избыточность в районе сотен раз.


Я не могу себе представить, чтобы я в Старсах смотрел пару-тройку планет за ход. Планета меня не интересует только в том случае, если на ней ничего не произошло. И то не факт.

Shirson :
Игрок у себя хранит состояние игры и обменивается с сервером только действиями/изменениями. Время от времени можно делать общуюю синхронизацию, для надёжности (но не каждый ход)


Так, во-первых о чем мы спорим? Чтобы хранить состояние игры, нужен клиент. То есть мы уже договорились о том, что клиент будет? Улыбка Осталось выяснить, можно ли будет делать ходы в оффлайне.

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

Shirson :
Не имеет значения. Но если хочется, берём кило. 10000 кило на ход Да.


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

Shirson :
В старсах россыпи звёзд те еще. И все видно со старта Улыбка


Фиг вам! Ты в Старсы вообще играл? Улыбка С самого начала доступны только координаты и название. Причем они не меняются все игру. Остальных параметров там байт на сорок наберется. Ну по 400кб на ход для каждого юзера. Причем это при условии, что он все эти планеты каждый ход светит сканерами. И сколько килобайт ты рассчитываешь сэкономить выдачей инфы по чайной ложке?

Shirson :
А может и не запросит - вот в чём дело. Запросил - получи. Не запросил - молодец.


Запросит. Я тебе гарантирую что запросит. Даже если интерфейс будет позволять сравнительно просто запрашивать только нужную инфу по нужным объектам (что сильно вряд ли). Потому что на практике нужен максимум инфы по всем объектам. Это стратегия. Я просто советую из этого исходить и не тратить время на то, что использоваться не будет.

Если ты делаешь игру для игроков, а не для экономии трафика - большая часть нужной инфы должна лежать на поверхности, на расстоянии взгляда. Лишние клики и запросы это трата времени и нервов. Оптимизация на порядки получится за счет того, что в игру никто не будет играть.

А серьезные партии будут жрать трафик сотнями мегабайт, как бы ты не оптимизировал. Это просто факт.
    Добавлено: 08:14 17-07-2008   
Канал Игры Мечты: «Мозговая штормилка.»
На страницу: Пред.  1, 2, 3 ... 10, 11, 12 ... 31, 32, 33  След.    Перейти:   Все страницы
  
Показать: 
Предыдущая тема | Следующая тема |
К списку каналов | Наверх страницы
Цитата не в тему: Я не пассажир! Я SNB!!! (кричал SNB)

  » Мозговая штормилка. | страница 11
Каналы: Новости | Elite | Elite: Dangerous | Freelancer | Star Citizen | X-Tension/X-BTF | X2: The Threat | X3: Reunion | X3: Terran Conflict | X Rebirth | X4: Foundations | EVE Online | Orbiter | Kerbal Space Program | Evochron | VoidExpanse | Космические Миры | Онлайновые игры | Другие игры | Цифровая дистрибуция | play.elite-games.ru | ЗВ 2: Гражданская война | Творчество | Железо | Игра Мечты | Сайт
   Дизайн Elite Games V5 beta.18