Приветствуем вас на форуме проекта WoW Circle. Если вы читаете это, значит не зарегистрировались у нас. Для того, чтобы получить доступ к расширенным возможностям нашего форума нажмите сюда и пройди регистрацию, которая не займет у вас много времени. После регистрации будут доступны новые, более расширенные, возможности.
Глубокие раны - Страница 7

Упомянутые в теме пользователи:

Страница 7 из 10 ПерваяПервая ... 56789 ... ПоследняяПоследняя
Показано с 73 по 84 из 113
  1. #73
    Ветеран форума
    Регистрация
    03.02.2012
    Сообщений
    1,180
    Поблагодарил(а)
    27
    Получено благодарностей: 180 (сообщений: 95).
    Репутация: 119
    Сравнение с видео и логами скорее всего не прокатит по причине особенного стакания проковых дотов на официалке, а точнее dots rolling i dots munching.
    http://forums.elitistjerks.com/topic...ounds-and-you/
    Вырезка из пре-нерф темы про ДВ

    Formulas:
    DWTdmgBase = 0.48*(wdps+ap/14)*wspeed/6 (no buffs nor talents)
    DWTdmg = DWTdmgBase*1.06 (Two-Handed Weapon Specialisation)

    1. No Enrage buff when applying DeepWounds
    tick damage = DWTdmg*1.3*1.02

    2. Enrage buff present when applying DeepWounds
    tick damage = DWTdmg*1.3*1.02*1.1*1.1 (double Enrage buff) вот что собственно было изменено.

  2. #74
    Инопланетянин
    Регистрация
    20.03.2012
    Сообщений
    4,200
    Поблагодарил(а)
    362
    Получено благодарностей: 1,439 (сообщений: 839).
    Репутация: 2399
    А почему вы не желаете изнасиловать симкравт и вытащить от туда формулы?=)

    Вот например ваши ванды , выловите Рамусика пусть почитает , да и все дела

    Скрытый текст

    // trigger_deep_wounds ======================================================

    static void trigger_deep_wounds( action_t* a )
    {
    warrior_t* p = a -> player -> cast_warrior();
    sim_t* sim = a -> sim;

    if ( ! p -> talents.deep_wounds )
    return;

    // Every action HAS to have an weapon associated.
    assert( a -> weapon != 0 );

    struct deep_wounds_t : public warrior_attack_t
    {
    deep_wounds_t( warrior_t* p ) :
    warrior_attack_t( "deep_wounds", p, SCHOOL_BLEED, TREE_ARMS )
    {
    background = true;
    trigger_gcd = 0;
    weapon_multiplier = p -> talents.deep_wounds * 0.16;
    base_tick_time = 1.0;
    num_ticks = 6;
    reset(); // required since construction occurs after player_t::init()

    id = 12868;
    }
    virtual void target_debuff( int dmg_type )
    {
    target_t* t = sim -> target;
    warrior_attack_t::target_debuff( dmg_type );

    // Deep Wounds doesn't benefit from Blood Frenzy or Savage Combat despite being a Bleed so disable it.
    if ( t -> debuffs.blood_frenzy -> up() ||
    t -> debuffs.savage_combat -> up() )
    {
    target_multiplier /= 1.04;
    }
    }
    virtual double total_td_multiplier() SC_CONST
    {
    return target_multiplier;
    }
    virtual void tick()
    {
    warrior_attack_t::tick();
    warrior_t* p = player -> cast_warrior();
    p -> buffs_tier7_4pc_melee -> trigger();
    p -> buffs_tier10_2pc_melee -> trigger();
    }
    };

    if ( ! p -> active_deep_wounds ) p -> active_deep_wounds = new deep_wounds_t( p );

    p -> active_deep_wounds -> weapon = a -> weapon;
    p -> active_deep_wounds -> player_buff();

    double deep_wounds_dmg = ( p -> active_deep_wounds -> calculate_weapon_damage() *
    p -> active_deep_wounds -> weapon_multiplier *
    p -> active_deep_wounds -> player_multiplier );

    if ( a -> weapon -> slot == SLOT_OFF_HAND )
    deep_wounds_dmg *= 0.5;

    if ( p -> active_deep_wounds -> ticking )
    {
    int num_ticks = p -> active_deep_wounds -> num_ticks;
    int remaining_ticks = num_ticks - p -> active_deep_wounds -> current_tick;

    deep_wounds_dmg += p -> active_deep_wounds -> base_td * remaining_ticks;
    }

    // The Deep Wounds SPELL_AURA_APPLIED does not actually occur immediately.
    // There is a short delay which can result in "munched" or "rolled" ticks.

    if ( sim -> aura_delay == 0 )
    {
    // Do not model the delay, so no munch/roll, just defer.

    if ( p -> active_deep_wounds -> ticking )
    {
    if ( sim -> log ) log_t::output( sim, "Player %s defers Deep Wounds.", p -> name() );
    p -> procs_deferred_deep_wounds -> occur();
    p -> active_deep_wounds -> cancel();
    }

    p -> active_deep_wounds -> base_td = deep_wounds_dmg / 6.0;
    p -> active_deep_wounds -> schedule_tick();
    trigger_blood_frenzy( p -> active_deep_wounds );

    return;
    }

    struct deep_wounds_delay_t : public event_t
    {
    double deep_wounds_dmg;

    deep_wounds_delay_t( sim_t* sim, player_t* p, double dmg ) : event_t( sim, p ), deep_wounds_dmg( dmg )
    {
    name = "Deep Wounds Delay";
    sim -> add_event( this, sim -> gauss( sim -> aura_delay, sim -> aura_delay * 0.25 ) );
    }
    virtual void execute()
    {
    warrior_t* p = player -> cast_warrior();

    if ( p -> active_deep_wounds -> ticking )
    {
    if ( sim -> log ) log_t::output( sim, "Player %s defers Deep Wounds.", p -> name() );
    p -> procs_deferred_deep_wounds -> occur();
    p -> active_deep_wounds -> cancel();
    }

    p -> active_deep_wounds -> base_td = deep_wounds_dmg / 6.0;
    p -> active_deep_wounds -> schedule_tick();
    trigger_blood_frenzy( p -> active_deep_wounds );

    if ( p -> deep_wounds_delay_event == this ) p -> deep_wounds_delay_event = 0;
    }
    };

    if ( p -> deep_wounds_delay_event )
    {
    // There is an SPELL_AURA_APPLIED already in the queue.
    if ( sim -> log ) log_t::output( sim, "Player %s munches Deep Wounds.", p -> name() );
    p -> procs_munched_deep_wounds -> occur();
    }

    p -> deep_wounds_delay_event = new ( sim ) deep_wounds_delay_t( sim, p, deep_wounds_dmg );

    if ( p -> active_deep_wounds -> ticking )
    {
    if ( p -> active_deep_wounds -> tick_event -> occurs() <
    p -> deep_wounds_delay_event -> occurs() )
    {
    // Deep Wounds will tick before SPELL_AURA_APPLIED occurs, which means that the current Deep Wounds will
    // both tick -and- get rolled into the next Deep Wounds.
    if ( sim -> log ) log_t::output( sim, "Player %s rolls Deep Wounds.", p -> name() );
    p -> procs_rolled_deep_wounds -> occur();
    }
    }
    }
    [свернуть]
    Последний раз редактировалось DreamlØlz; 21.03.2014 в 00:23.

  3. #75
    Q.E.D. Аватар для Зороастр
    Регистрация
    13.02.2012
    Адрес
    Измаил, Украина
    Сообщений
    3,234
    Поблагодарил(а)
    149
    Получено благодарностей: 1,378 (сообщений: 911).
    Репутация: 1598
    Цитата Сообщение от DreamlØlz Посмотреть сообщение
    А почему вы не желаете изнасиловать симкравт и вытащить от туда формулы?=)
    Симкрафт имеет достаточно запутанную структуру. Модификаторы не сгруппированы в рамках одного умения, а разбросаны по всем алгоритмам. Тому, кто малознаком с его языком, будет достаточно трудно отследить взаимосвязь. У меня например часто возникали с этим проблемы.
    Оригинальные профили на форуме - Зороастр и Зоро. Остальные похожие профили являются плагиатом.

  4. #76
    Инопланетянин
    Регистрация
    20.03.2012
    Сообщений
    4,200
    Поблагодарил(а)
    362
    Получено благодарностей: 1,439 (сообщений: 839).
    Репутация: 2399
    Цитата Сообщение от Зороастр Посмотреть сообщение
    Симкрафт имеет достаточно запутанную структуру. Модификаторы не сгруппированы в рамках одного умения, а разбросаны по всем алгоритмам. Тому, кто малознаком с его языком, будет достаточно трудно отследить взаимосвязь. У меня например часто возникали с этим проблемы.
    дада вот у меня щас чтение этого бреда вызвало легкий багет ,мне это больше напомнило "..принимаем эту часть уравнения за "Х" , а эту часть за "У" , а дальше вставляем это сюда и принимаем это за "Д", вообщем у меня аперативы для этого не хватает =)

    Ну в принцепи если смареть на это дело кусочками и записывать на бумажке ,думаю даже школьник выведет из этого формулу , но мне в падлу это делать :P
    Последний раз редактировалось DreamlØlz; 21.03.2014 в 00:29.

  5. #77
    Q.E.D. Аватар для Зороастр
    Регистрация
    13.02.2012
    Адрес
    Измаил, Украина
    Сообщений
    3,234
    Поблагодарил(а)
    149
    Получено благодарностей: 1,378 (сообщений: 911).
    Репутация: 1598
    Цитата Сообщение от DreamlØlz Посмотреть сообщение
    дада вот у меня щас чтение этого бреда вызвало легкий багет ,мне это больше напомнило "..принимаем эту часть уравнения за "Х" , а эту часть за "У" , а дальше вставляем это сюда и принимаем это за "Д", вообщем у меня аперативы для этого не хватает =)
    Ну, примерно так. Некоторые его элементы более-менее ясны, а некоторые как изучение древнеегипетского языка - "вот тут ибис, там Сет. Все что между ними заполняем предположениями согласно основной логики фразы". Так что не мы его насилуем, а скорее симкрафт насилует нас. В довольно грубой форме.
    Оригинальные профили на форуме - Зороастр и Зоро. Остальные похожие профили являются плагиатом.

  6. #78
    Инопланетянин
    Регистрация
    20.03.2012
    Сообщений
    4,200
    Поблагодарил(а)
    362
    Получено благодарностей: 1,439 (сообщений: 839).
    Репутация: 2399
    пойду касячок утяну , а там мб и чота патестить захочется

  7. #79
    Ветеран форума
    Регистрация
    03.02.2012
    Сообщений
    1,180
    Поблагодарил(а)
    27
    Получено благодарностей: 180 (сообщений: 95).
    Репутация: 119
    Зашел на циркл потестить ДВ. Вложение 219670
    По расчетам получается что ДВ должен тикать по 287, но как видите на скрине ДВ дамажит по 275.

  8. #80
    Длань А'дала Аватар для JovaNNi
    Регистрация
    05.01.2012
    Адрес
    Омск
    Сообщений
    1,617
    Поблагодарил(а)
    359
    Получено благодарностей: 775 (сообщений: 475).
    Репутация: 860
    Цитата Сообщение от DreamlØlz Посмотреть сообщение
    А почему вы не желаете изнасиловать симкравт и вытащить от туда формулы?=)

    Вот например ваши ванды , выловите Рамусика пусть почитает , да и все дела

    Скрытый текст

    // trigger_deep_wounds ======================================================

    static void trigger_deep_wounds( action_t* a )
    {
    warrior_t* p = a -> player -> cast_warrior();
    sim_t* sim = a -> sim;

    if ( ! p -> talents.deep_wounds )
    return;

    // Every action HAS to have an weapon associated.
    assert( a -> weapon != 0 );

    struct deep_wounds_t : public warrior_attack_t
    {
    deep_wounds_t( warrior_t* p ) :
    warrior_attack_t( "deep_wounds", p, SCHOOL_BLEED, TREE_ARMS )
    {
    background = true;
    trigger_gcd = 0;
    weapon_multiplier = p -> talents.deep_wounds * 0.16;
    base_tick_time = 1.0;
    num_ticks = 6;
    reset(); // required since construction occurs after player_t::init()

    id = 12868;
    }
    virtual void target_debuff( int dmg_type )
    {
    target_t* t = sim -> target;
    warrior_attack_t::target_debuff( dmg_type );

    // Deep Wounds doesn't benefit from Blood Frenzy or Savage Combat despite being a Bleed so disable it.
    if ( t -> debuffs.blood_frenzy -> up() ||
    t -> debuffs.savage_combat -> up() )
    {
    target_multiplier /= 1.04;
    }
    }
    virtual double total_td_multiplier() SC_CONST
    {
    return target_multiplier;
    }
    virtual void tick()
    {
    warrior_attack_t::tick();
    warrior_t* p = player -> cast_warrior();
    p -> buffs_tier7_4pc_melee -> trigger();
    p -> buffs_tier10_2pc_melee -> trigger();
    }
    };

    if ( ! p -> active_deep_wounds ) p -> active_deep_wounds = new deep_wounds_t( p );

    p -> active_deep_wounds -> weapon = a -> weapon;
    p -> active_deep_wounds -> player_buff();

    double deep_wounds_dmg = ( p -> active_deep_wounds -> calculate_weapon_damage() *
    p -> active_deep_wounds -> weapon_multiplier *
    p -> active_deep_wounds -> player_multiplier );

    if ( a -> weapon -> slot == SLOT_OFF_HAND )
    deep_wounds_dmg *= 0.5;

    if ( p -> active_deep_wounds -> ticking )
    {
    int num_ticks = p -> active_deep_wounds -> num_ticks;
    int remaining_ticks = num_ticks - p -> active_deep_wounds -> current_tick;

    deep_wounds_dmg += p -> active_deep_wounds -> base_td * remaining_ticks;
    }

    // The Deep Wounds SPELL_AURA_APPLIED does not actually occur immediately.
    // There is a short delay which can result in "munched" or "rolled" ticks.

    if ( sim -> aura_delay == 0 )
    {
    // Do not model the delay, so no munch/roll, just defer.

    if ( p -> active_deep_wounds -> ticking )
    {
    if ( sim -> log ) log_t::output( sim, "Player %s defers Deep Wounds.", p -> name() );
    p -> procs_deferred_deep_wounds -> occur();
    p -> active_deep_wounds -> cancel();
    }

    p -> active_deep_wounds -> base_td = deep_wounds_dmg / 6.0;
    p -> active_deep_wounds -> schedule_tick();
    trigger_blood_frenzy( p -> active_deep_wounds );

    return;
    }

    struct deep_wounds_delay_t : public event_t
    {
    double deep_wounds_dmg;

    deep_wounds_delay_t( sim_t* sim, player_t* p, double dmg ) : event_t( sim, p ), deep_wounds_dmg( dmg )
    {
    name = "Deep Wounds Delay";
    sim -> add_event( this, sim -> gauss( sim -> aura_delay, sim -> aura_delay * 0.25 ) );
    }
    virtual void execute()
    {
    warrior_t* p = player -> cast_warrior();

    if ( p -> active_deep_wounds -> ticking )
    {
    if ( sim -> log ) log_t::output( sim, "Player %s defers Deep Wounds.", p -> name() );
    p -> procs_deferred_deep_wounds -> occur();
    p -> active_deep_wounds -> cancel();
    }

    p -> active_deep_wounds -> base_td = deep_wounds_dmg / 6.0;
    p -> active_deep_wounds -> schedule_tick();
    trigger_blood_frenzy( p -> active_deep_wounds );

    if ( p -> deep_wounds_delay_event == this ) p -> deep_wounds_delay_event = 0;
    }
    };

    if ( p -> deep_wounds_delay_event )
    {
    // There is an SPELL_AURA_APPLIED already in the queue.
    if ( sim -> log ) log_t::output( sim, "Player %s munches Deep Wounds.", p -> name() );
    p -> procs_munched_deep_wounds -> occur();
    }

    p -> deep_wounds_delay_event = new ( sim ) deep_wounds_delay_t( sim, p, deep_wounds_dmg );

    if ( p -> active_deep_wounds -> ticking )
    {
    if ( p -> active_deep_wounds -> tick_event -> occurs() <
    p -> deep_wounds_delay_event -> occurs() )
    {
    // Deep Wounds will tick before SPELL_AURA_APPLIED occurs, which means that the current Deep Wounds will
    // both tick -and- get rolled into the next Deep Wounds.
    if ( sim -> log ) log_t::output( sim, "Player %s rolls Deep Wounds.", p -> name() );
    p -> procs_rolled_deep_wounds -> occur();
    }
    }
    }
    [свернуть]
    из этого куска видно, что ДВ не получает профита только от дебаффа на 4% физ.урона + получает 50% пенальти на прок с оффхенда. Тип урона SCHOOL_BLEED, значит действуют все дебаффы для этого типа (травма/мангл в т.ч.).
    Для полной картины не хватает посмотреть calculate_weapon_damage(), но я думаю там базовый урон. Все баффы (в т.ч. 3% общего урона) должны забираться из p -> active_deep_wounds -> player_buff();


    gauss(aura_delay, 0.25* aura_delay) -- вот как выглядит та самая задержка наложения дебаффа =) вестьма просто, оказывается
    Bunny
    <Rogue Trainer>
    Сервер: x50 -> x30 -> x100 -> x300 -> x100

    PVE гайд по комбат-рогам

    Цитата Сообщение от Отражение луны Посмотреть сообщение
    Футбол это как просмотр порнухи. Однообразно, многие симулируют, и лучше играть самому, чем смотреть, как кто-то играет.
    Цитата Сообщение от BloodyMess Посмотреть сообщение
    Все, джестер научно доказал, что снимать штаны неразумно

  9. #81
    Инопланетянин Аватар для pavvvel
    Регистрация
    13.05.2012
    Адрес
    в сауне с эльфиечками
    Сообщений
    3,057
    Поблагодарил(а)
    692
    Получено благодарностей: 681 (сообщений: 346).
    Репутация: 676
    У меня не супер знания английского, но я покопался и нашел инфу, которую сам не могу перевести достаточно грамотно для правильного восприятия.
    нашел темку в которой много тестов.
    http://forums.elitistjerks.com/topic...ounds-and-you/
    Hypothesis: if two crits happen at around same time, one of them can be "overlooked" in DeepWounds generation.


    Hypothesis summary:
    1. DeepWounds is affected by Trauma generated by the same crit hit but not affected by Enrage from the same source.
    2. Buffs that are "on target" (Trauma, Blood Frenzy) affects only ticks damage, while buffs that are on character (for example Enrage) can affect both base and tick damage.
    3. Sometimes last tick of DeepWounds is carried on to next DW even if it did it's damage. When this happens remaining damage is added to final tick value without doubling buffs like Trauma or Blood Frenzy but if it wasn't affected by Enrage it is now added.
    4. Execute crits proc minimal (close to 0) DeepWounds on live. EDIT: as stated in this comment Execute crits generate normal DW, so behaviour from case 6 is currently without explanation.
    5. If two crits happen at around same time, one of them can be "overlooked" in DeepWounds generation.
    - в 5 пункте сказано, что если 2 крита прошли в очень малом промежутке времени, то накопление силы этой доты не происходит.
    вероятно, механика похожа с работой таланта Brain Freeze у фрост магов - что есть некое кд, в данном случае кд на возможность стакания силы доты. ведь хоть и нашли баг с ресом, все равно уж слишком люто и слишком быстро эта смертельная штука стакается
    у меня нет возможности проверить.
    кстати пункты 1-4 тож интересные, не могу четко перевести
    Последний раз редактировалось pavvvel; 21.03.2014 в 10:34.

  10. #82
    Ветеран форума
    Регистрация
    03.02.2012
    Сообщений
    1,180
    Поблагодарил(а)
    27
    Получено благодарностей: 180 (сообщений: 95).
    Репутация: 119
    - в 5 пункте сказано, что если 2 крита прошли в очень малом промежутке времени, то накопление силы этой доты не происходит.
    вероятно, механика похожа с заморозкой разума у фрост магов - что есть некое кд, в данном случае кд на возможность стакания силы доты.
    у меня нет возможности проверить.
    Это и называется дотс роллинг и дотс мунчинг...

  11. #83
    Инопланетянин Аватар для UmbrellaRain
    Регистрация
    28.02.2012
    Адрес
    Moscow
    Сообщений
    1,866
    Поблагодарил(а)
    815
    Получено благодарностей: 241 (сообщений: 195).
    Репутация: 418
    кстати у фералов проверить доты потому что они бьют просто омг много.

  12. #84
    Chaotic Good Аватар для Jester
    Регистрация
    31.01.2012
    Адрес
    Dark Side
    Сообщений
    4,145
    Поблагодарил(а)
    541
    Получено благодарностей: 865 (сообщений: 436).
    Репутация: 867
    Цитата Сообщение от DreamlØlz Посмотреть сообщение
    Вот например ваши ванды
    Не вижу упоминания Травмы вообще..

    Цитата Сообщение от Зороастр Посмотреть сообщение
    Так что не мы его насилуем, а скорее симкрафт насилует нас. В довольно грубой форме.
    Не виноватый он - вы же сами пришли

    Цитата Сообщение от sin000711 Посмотреть сообщение
    По расчетам получается что ДВ должен тикать по 287, но как видите на скрине ДВ дамажит по 275.
    Расчеты и статы в студию. Равно как и средний урон оружия + модификаторы.

    Цитата Сообщение от JovaNNi Посмотреть сообщение
    получает 50% пенальти на прок с оффхенда.
    Это не ДВ получает штраф, а урон с оффхенды от которого берется ДВ. Причем штраф идет до наложения процентных модификаторов.

    Цитата Сообщение от pavvvel Посмотреть сообщение
    нашел темку в которой много тестов.
    http://forums.elitistjerks.com/topic...ounds-and-you/
    Там красным написано:
    EDIT: According to Blizz comment from this thread on official forum DeepWounds double dipping has been hotfixed, so these calculations are no longer correct.
    Цитата Сообщение от Allright Посмотреть сообщение
    кстати у фералов проверить доты потому что они бьют просто омг много.
    Доты фералов, (как и рогов), не являются производной от урона. Они расчитываются самостоятельно. Котэ получает сначало 30% бонус от Саважа, потом еще 30% бонус от Мангла. Это невероятно мощный ап урона, и если ферал грамотный, и наложил доты под проками - урон будет колоссальный.
    Последний раз редактировалось Jester; 21.03.2014 в 11:20.

Страница 7 из 10 ПерваяПервая ... 56789 ... ПоследняяПоследняя

Похожие темы

  1. Ответов: 32
    Последнее сообщение: 14.03.2014, 15:29
  2. Ответов: 8
    Последнее сообщение: 25.11.2012, 00:33

Ваши права

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