|
updated 20.02.10 15:57 20.02.10 13:29 |
Модификатор | Про лаги игры |
ru |
Думается мне, что во многом "проклятие" тормознутости этой игры заключается в том, что любые размены, любые приёмы - мгновенны. Как пример. Юзает игрок Призрачную защиту - отправляется запрос на сервер, потом он обрабатывается, потом возвращаются данные о состоянии боя на текущий момент. Юзает игрок Усиленные удары - отправляется запрос, обрабатывается, возвращаются данные (в полном объёме). Предположим, я за размен юзаю 1-3 приёма + сам размен. Это 2-4 запроса плюс обработка каждого.
Если взять пример из реальной жизни, то это сравнимо с тем, если бы я подзывал официанта каждый раз на каждый свой заказ. Разумеется, гораздо удобнее было бы сначала составить список того, что я заказываю, и за один раз отдать весь заказ официанту. Как это выглядело бы в БКшных реалиях?
Сначала составляется список приемов, который я хочу использовать в данном размене. Когда я нажимаю кнопку "вперед" - я выражаю свою готовность отправить запрос на сервер (читай: официанту). Сервер проверяет, возможно ли осуществить такой размен (хватает ли тактик, маны, стрел, жив ли персонаж и так далее). Если возможно - то сервер обрабатывает размен и возвращает его. Минус (он же огромный плюс) данной системы в том, что уже невозможно будет наносить мгновенные заклятия (как обычные касты, так и приемы вроде прорыва).
Система, описанная выше, подразумевает, что официант после подхода к каждому столику будет возвращаться на кухню и обратно. Можно ли сделать ещё лучше? Можно!
Официант собирает единовременно все заказы только когда все участники боя их приготовили. Тогда не будет необходимости возвращаться каждый раз с новым заказом, достаточно пройтись один раз. Этим подразумевается, что размены будут единовременные не только для двух противоположных участников боя, а для обеих команд. Тогда бой можно делить на ходы не отдельных персонажей, а на некие "стадии боя" - одновременные ходы всех персов. Это во многом упрощает обновление окна: если в памяти браузера уже хранится информация о стадии боя номер N, то при обновлении окна будет использована локальная информация, а не новая с сервера. К тому же, уверен, это интереснее и с точки зрения самого боя. Проблема будет только в боях 2 на 100, например, когда 50 персонажей бьют в единственный размен одного... Но разве это не логичнее?
Update: Нельзя забывать и о такой мощной библиотеке JS, как jQuery, которая значительно может упростить многие функции на клиентской стороне. Есть еще одна интересная библиотека - Raphaël - но пока что практического применения в рунете я не видел, хотя смотрится очень эффективно.
|
Comments: 43 | |
|
|
|
15.02.10 22:53 |
LoneWolf_E | Итить, пустите меня в ту каналку =)) |
ru |
22:50 [***] private [ LoneWolf_E ] мне палад по имени псай вамп сказал что в каналке арты падают это правда???
|
Comments: 2 | |
|
|
|
updated 15.02.10 17:58 15.02.10 17:09 |
Emet | ДДТ - Родина, Live In Kiev, Крещатик, 26.07.08) |
ru |
|
|
|
|
|
updated 08.02.10 16:35 08.02.10 16:30 |
LoneWolf_E | Про сервер. |
ru |
Навеяло вот этим:
Rand [12] (07.02.10 12:43): Все работает нормально. Если локальный компьютер из за своих настроек не успевает обрабатывать бой, это явно не проблема сервера.
В то время как во всем мире стремительно развивается идея т.н. "облачных вычислений", в БК происходит все наоборот и почему-то все вычисления, которые должны быть на стороне сервера перекладываются на машины клиента. Возникает закономерный вопрос - а зачем тогда вообще нужен сервер?
Возьмем любую ММОРПГ - мощности серверов того же WoW'a позволяют поддерживать одновременно сотни и тысячи пользователей не просто он-лайн, а в пределах одной игровой локации. И это нормально. Про графику я молчу - графическая часть все же у клиента на машине хранится и обсчитывается. В БК-же, где кроме формул и текста ничего нет бой на несколько десяткой человек с обеих сторон превращается в феерию лагов и торжество Service Unavailable.
В общем, расскажите мне, недалекому - почему мощностей их серверов хватает на мегаивенты, а в БК при включении Общего Врага или при прохождении больших поединков всюду лаги и справедливое, замечу, негодование на форуме?
|
Comments: 6 | |
|
|
|
updated 02.02.10 16:43 02.02.10 16:42 |
LoneWolf_E | Он говорящий! =)) |
ru |
02.02.10 16:41 Паладин "LoneWolf_E" наложил заклятие молчания на "***", сроком 12 часов
16:41 [Комментатор] Ну, наконец-то!
16:42 [LoneWolf_E] to [Комментатор] а то, че-то я стормозил - раньше надо было
16:42 [Комментатор] to [LoneWolf_E] А еще раз сможешь повторить?
|
Comments: 2 | |
|
|
|
31.01.10 12:48 |
Bernhard | Э-э-э |
ru |
Иногда став с утра пораньше, и в полусонном бреду дотянувшись до кнопки повер, приветствуешь в голове мысли о том, как принять сегодня этот мир. Каждый день индивидуальность этой традиции требует нового подхода. Например, сегодня. Сначала сталкиваюсь с желанием произнести обычное турум пум пум, но тавтология этого выражения в виде пум-пум закладывает определенную долю сомнений. И это сомнение приводит к действиям, первый порыв предполагает заменить один пум на что-то иное, но скудность утренних умозаключений не позволяет совершить столь сложное действие. Тогда на помощь, как второе пришествие, появляется идея минимализации и синтеза. И тогда происходит чудо, на свет рождается нечто потрясающее воображение, то что готово стать главной интригой наступившего дня.
Итак всем Турум пурум :)
|
Comments: 1 | |
|
|
Total posts: 2016 Pages: 202
1.. 10.. 20.. 30.. 40.. 50.. 59 60 61 62 63 64 65 66 67 68 69 70.. 80.. 90.. 100.. 110.. 120.. 130.. 140.. 150.. 160.. 170.. 180.. 190.. 200..
|
|
Mo |
Tu |
We |
Th |
Fr |
Sa |
Su |
| | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | |
|