MOTR logo
    • Категории
    • Последние
    • Популярные
    • Метки
    • Пользователи
    • Группы
    • Зарегистрироваться
    • Войти

    Формула Стрипа

    Запланировано Прикреплена Закрыта Перенесена Воровская Гильдия
    3 Сообщения 2 Posters 339 Просмотры
    Загружаем больше сообщений
    • Сначала старые
    • Сначала новые
    • По количеству голосов
    Ответить
    • Ответить, создав новую тему
    Авторизуйтесь, чтобы ответить
    Эта тема была удалена. Только пользователи с правом управления темами могут её видеть.
    • oblivionO Не в сети
      oblivion
      отредактировано

      что-то я немогу нигде найти =(
      выложите пожалуйста ТОЧНУЮ формулу стрипа, которая работает на МОТР. ПАСИПА !!

      ЗЫ: арч не закрывай топик плз:)

      1 ответ Последний ответ Ответить Цитировать 0
      • archerA Не в сети
        archer
        отредактировано

        oblivion, епт)
        обли, это
        [code:4pgun4ld]strip_fix = status_get_dex(src) - status_get_dex(bl);
        вычитаем из декса рога декс врага
        if(strip_fix < 0)
        strip_fix=0;
        если декс врага больше то 0
        strip_per = 5+5*skilllv+strip_fix/5;
        вот тут видно базовый шанс 5+25 (на 5ом лвле) плюс разница в дексах делить на 5
        if (rand()%100 >= strip_per)
        break;
        проверка удачи 🙂

        Весь код стрипов:

        case RG_STRIPWEAPON:/* XgbvEF| /
        case RG_STRIPSHIELD:/
        XgbvV[h /
        case RG_STRIPARMOR:/
        XgbvA[}[ /
        case RG_STRIPHELM:/
        Xgbvw */
        {
        struct status_change *tsc_data = status_get_sc_data(bl);
        int cp_scid,scid, equip, strip_fix;
        scid = SkillStatusChangeTable[skillid];
        switch (skillid) {
        case RG_STRIPWEAPON:
        equip = EQP_WEAPON;
        cp_scid = SC_CP_WEAPON;
        break;
        case RG_STRIPSHIELD:
        equip = EQP_SHIELD;
        cp_scid = SC_CP_SHIELD;
        break;
        case RG_STRIPARMOR:
        equip = EQP_ARMOR;
        cp_scid = SC_CP_ARMOR;
        break;
        case RG_STRIPHELM:
        equip = EQP_HELM;
        cp_scid = SC_CP_HELM;
        break;
        default:
        map_freeblock_unlock();
        return 1;
        }

        if (tsc_data &&
        (tsc_data[scid].timer!=-1 ||
        tsc_data[cp_scid].timer!=-1))
        break;

        strip_fix = status_get_dex(src) - status_get_dex(bl);
        if(strip_fix < 0)
        strip_fix=0;
        strip_per = 5+5*skilllv+strip_fix/5;
        if (rand()%100 >= strip_per)
        break;

        if (dstsd) {
        for (i=0;i<MAX_INVENTORY;i++) {
        if (dstsd->status.inventory**.equip && (dstsd-**
        >status.inventory.equip &**
        equip)){
        pc_unequipitem(dstsd,i,0);
        break;
        }
        }
        if (i == MAX_INVENTORY)
        break;
        }
        clif_skill_nodamage(src,bl,skillid,skilllv,1);
        strip_time = skill_get_time(skillid,skilllv)+strip_fix/2;
        status_change_start(bl,scid,skilllv,0,0,0,strip_time,0 );
        break;
        }[/code:4pgun4ld]

        свадьбы от того самого арчера

        1 ответ Последний ответ Ответить Цитировать 0
        • oblivionO Не в сети
          oblivion
          отредактировано

          фигасе :)))

          как я понял то шанс всегда 30% если стрипы по 5.
          но идет бонус когда твой декс > декс врага и делится на 5...
          пасиба за код епрст:))

          1 ответ Последний ответ Ответить Цитировать 0
          • Первое сообщение
            Последнее сообщение