Страница 1 из 12 123411 ... ПоследняяПоследняя
Показано с 1 по 10 из 118

Тема: Очереди событий в травиане или "Не думай о секунде как о 1000 милисекунд"

  1. #1
    Осваивающийся Аватар для bogu
    Регистрация
    13.03.2008
    Адрес
    Владикавказ
    Сообщений
    358

    По умолчанию Очереди событий в травиане или "Не думай о секунде как о 1000 милисекунд"

    Ну-с, напишем про секунду.

    Основная посылка данного поста: Кто первым вышел, тот первым и придет.

    Начнем с того, что в травиане есть минимум четыре очереди событий (с) Кириллоид:

    1. Движение войск – атаки, подкрепы, возвращения из подкрепления, возвращение после атаки.
    2. Стройка
    3. Движение торговцев
    4. Постройка войск.

    Нас интересуют первые три (и их взаимодействие друг с другом).

    Каждая очередь представляет собой обычную очередь класса FIFO – кто первый встал в очередь, тот первый получает плюшки на выходе.

    Выяснено, что Стройка и Ресурсы отрабатываются в начале, потом отрабатывается Атака:
    - Если в одну секунду достраивается здание и приходят катапульты - здание будет разрушено, независимо от того, что было раньше (отправка войск, а потом постройка - или наоборот) - проверено мной.
    - Если в одну секунду приходят торговцы и войска, то ресурсы будут ограблены, независимо от того, что было раньше (отправка ресурсов а потом войск - или наоборот) - проверенно Кириллоидом.
    Взаимодействие Стройки и Ресурсов (что отрабатываеся раньше) пока неустановленно.


    Ситуация, рассматриваемая в данном примере заключается в следующем: ночью игрок атаковал деревню другого игрока, его войска возвращаются домой, враги решают отомстить, действие разворачивается в течение дня.

    в 3 часа ночи приходит ударка на вражескую деревню, отбомбилась, и возвращается домой в 20:00:00. Формирование Очереди-0 (20:00:00) (Событие "возвращение ударки" происходит после сражения, а не в момент ее отправки (с) Кириллоид)

    Очередь-0 (20:00:00)
    1. Возвращение ударки
    Просчитав время возвращения ударки, враги начинают компанию по ее уничтожению на возврате, заодно решив поломать несколько домиков. В операции принимают участие три атакующих.

    В 10 часов утра в атаку отправляется две волны, которые приходят в 20:00:00 и в 20:00:01. Первая волна попадает в конец Очереди-0 (20:00:00), вторая формирует Очередь-1 (20:00:01)

    Очередь-0 (20:00:00)
    1. Возвращение ударки
    2. Атакер-1 - Офф+каты <---------

    Очередь-1 (20:00:01)
    1. Атакер-1 - каты <---------
    Глядя на появившиеся нападения, начинается операция по сбору дефа и прорезке волн. Для простоты картины будем считать, что деф собрался в 19:00.

    В 12:00 Защитник-1 отправляет деф (прорезку волн кат), который приходит в 20:00:00, и попадает в конец Очереди-0:

    Очередь-0 (20:00:00)
    1. Возвращение ударки
    2. Атакер-1 - Офф+каты
    3. Защитник-1 - деф <---------

    Очередь-1 (20:00:01)
    1. Атакер-1- каты
    В 13:00 Атакер-2 отправляет три волны, приходящие в 20:00:00, 01 и 02 секунды, первая волна попадает в конец Очереди-0, вторая - в конец Очереди-1, третья формирует Очередь-2 (20:00:01):

    Очередь-0 (20:00:00)
    1. Возвращение ударки
    2. Атакер-1 Офф+каты
    3. Защитник-1 деф
    4. Атакер-2 Офф+каты <---------

    Очередь-1 (20:00:01)
    1. Атакер-1 каты
    2. Атакер-2 каты <---------

    Очередь-2 (20:00:02)
    1. Атакер-2 каты <---------
    Для прорезки третьей волны В 14:00 Защитник-2 отправляет деф, приходящий в 20:00:01, которые попадает в конец Очереди-1 (20:00:01)

    Очередь-0 (20:00:00)
    1. Возвращение ударки
    2. Атакер-1 Офф+каты
    3. Защитник-1 деф
    4. Атакер-2 Офф+каты

    Очередь-1 (20:00:01)
    1. Атакер-1 каты
    2. Атакер-2 каты
    3. Защитник-2 деф <---------

    Очередь-2 (20:00:02)
    1. Атакер-2 каты
    В 16:00 Атакер3 отправляет 1 волну, с приходом в 20:00:00, которая попадает в конец Очереди-0:

    Очередь-0 (20:00:00)
    1. Возвращение ударки
    2. Атакер-1 Офф+каты
    3. Защитник-1 деф
    4. Атакер-2 Офф+каты
    5. Атакер-3 каты <---------

    Очередь-1 (20:00:01)
    1. Атакер-1 каты
    2. Атакер-2 каты
    3. Защитник-2 деф

    Очередь-2 (20:00:02)
    1. Атакер-2 каты

    В 18:00 Защитник3 отправляет деф, который приходит в 20:00:00 и попадает в конец Очереди-0:

    Очередь-0 (20:00:00)
    1. Возвращение ударки
    2. Атакер-1 Офф+каты
    3. Защитник-1 деф
    4. Атакер-2 Офф+каты
    5. Атакер-3 каты
    6. Защитник-3 деф <---------

    Очередь-1 (20:00:01)
    1. Атакер-1 каты
    2. Атакер-2 каты
    3. Защитник-2 деф

    Очередь-2 (20:00:02)
    1. Атакер-2 каты
    В 19:00 ставится в постройку Резиденция, (для простоты ситуации будем считать, что ее в деревне не было вообще), окончание постройки в 20:00:00 (Очередь постройки Очередь-0`)
    В 19:30 отправляются ресурсы, приход которых в 20:00:00 (Очередь прихода ресурсов Очередь-0``)

    В итоге в 20:00:00 происходит следующее (сверху вниз)

    Очередь-0` (20:00:00)
    1`. Постройка Резиденции
    Очередь-0`` (20:00:00)
    1``. Приход ресурсов
    Очередь-0 (20:00:00)
    1. Возвращение ударки - приходит домой ударка
    2. Атакер-1 Офф +каты - убивается ударка, грабятся ресурсы (в т.ч. пришедшие), убивается резиденция
    3. Защитник-1 ставится деф (допустим, много)
    4. Атакер-2 Офф+каты убиваются о деф (пусть частично - деф пробит)
    5. Атакер-3 каты - ломают домики
    6. Защитник-3 ставится деф

    Очередь-1 (20:00:01)
    1. Атакер-1 каты - убиваются о деф Защитника-3
    2. Атакер-2 каты - убиваются о деф Защитника-3
    3. Защитник-2 ставится деф

    Очередь-2 (20:00:02)
    1. Атакер-2 каты - убиваются о деф Защитника-2 и остатки дефа Защитника-3

    Вся идея очереди показана на схеме:



    (на случай попадания ядерной бомбы в сервер радикала (какой бы странной ни была причина для попадания, но тем не менее) - картинка положена в приложение).

    Обычный способ резать волны катапульт (из инструкции для альянса)
    Последний раз редактировалось bogu; 15.03.2009 в 02:58.
    Люди, которые думают, что все на свете знают, очень раздражают нас - людей, которые действительно все на свете знают.

  2. #2
    Постоянный обитатель Аватар для ღKidღ
    Регистрация
    26.04.2008
    Сообщений
    1.818

    По умолчанию

    Можно добавлять в фак.
    Do the impossible, see the invisible,
    Row, row, fight the power!

  3. #3
    Опытный пользователь Аватар для Вано-сан
    Регистрация
    13.02.2009
    Адрес
    Интернет
    Сообщений
    613

    По умолчанию

    ух ты, че то я запутался...
    В Траву больше не играю

  4. #4
    Хомячок Аватар для MAKAROVVV
    Регистрация
    28.12.2007
    Адрес
    Королёв
    Сообщений
    20.064

    По умолчанию

    +
    Красиво и доступно.

  5. #5
    Осваивающийся Аватар для bogu
    Регистрация
    13.03.2008
    Адрес
    Владикавказ
    Сообщений
    358

    По умолчанию

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

  6. #6
    АрхАрхАнгел
    Гость

    По умолчанию

    + грамотно расписано, но вот
    Взаимодействие Стройки и Ресурсов (что отрабатываеся раньше) пока неустановленно.
    было бы еще не плохо выяснить)

  7. #7
    Местный активист
    Регистрация
    12.05.2008
    Адрес
    Germany
    Сообщений
    2.625

    По умолчанию

    Прекрасно описано, всё понятно, всё это я знал, но так хорошо не написал бы.
    Про ресы и постройки незнал
    Вообщем +3

    Добавлено через 1 минуту
    Цитата Сообщение от АрхАрхАнгел Посмотреть сообщение
    + грамотно расписано, но вот было бы еще не плохо выяснить)
    Арх, обьясни что тебе это даст^^
    Последний раз редактировалось alexey93; 15.03.2009 в 01:00. Причина: добавлено сообщение.

  8. #8
    Осваивающийся Аватар для bogu
    Регистрация
    13.03.2008
    Адрес
    Владикавказ
    Сообщений
    358

    По умолчанию

    2 АрхАнгел

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

  9. #9
    Постоянный обитатель Аватар для Ambler
    Регистрация
    06.07.2007
    Сообщений
    1.906

    По умолчанию

    Хорошо и толково описано.

  10. #10
    Methos
    Гость

    По умолчанию

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

Страница 1 из 12 123411 ... ПоследняяПоследняя

Похожие темы

  1. Ответов: 82
    Последнее сообщение: 24.11.2010, 18:26
  2. Щастье и его "враги"
    от Fairysarafan в разделе Альянсы/Дипломатия
    Ответов: 121
    Последнее сообщение: 12.09.2010, 11:29
  3. Б. Барроу - "Враги общества"
    от sunr1se в разделе Таверна
    Ответов: 0
    Последнее сообщение: 09.01.2010, 03:57
  4. "Не думай о секундах свысока"
    от Маленький принц в разделе Вопросы по игре
    Ответов: 14
    Последнее сообщение: 07.02.2008, 16:19

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •