Сделал наконец то систему точности (набросок).
Идея состоит в том, что героям танкам дается со старта игры 60% штрафа на точность, ловкачам- 45%.
Штраф этот можно будет уменьшать с помощью вещей и ловкости героя (каждые +3 ловкости = +1% к точности).
Всё вроде бы ничего но тут насчитал вот такие вот проблемы:
(у меня 100 уровней умения и каждый уровень соответствует %-ту промаха),
1. После того как выбросил предмет который давал бонус к ловкости описание в статусе дебафа не изменилось, но когда берешь следующий предмет или тот же с бонусом на ловкость меняется, а когда выбрасываешь на землю или передаешь другому герою - нет;
2. я пока не удалял тени с даммиков чтобы понять когда они не удаляются. я создал под каждый триггер свою переменную на дамми и героя чтобы если что то происходило одновременно то не было ошибок с одной переменной которую используют два героя.
Итак,
I - когда я быстро поднимаю и ложу предмет на землю (специально тестил) дамми не удаляются, может нужно поставить запрет на поднятие сброшенного предмета секунды так на 4..но как..
II - когда передаю от героя к герою предмет вроде та же фишка
3. Если у горного короля хоть как и у всех на этой карте с этой системой отображается промах только когда берешь предмет, а у Смотрящей в Ночь с такими же триггерами вообще ничего менятся не хочет.
4. Как правильно описать код спелла чтобы он корректно отображался в статусе персонажа —бафы\дебафы где находятся еще..— (пример: замедляет на Ampl:AO1 но это на один уровень описание, а мне нужно чтобы описание менялось в соответствии с сменой уровня умения соответственно для правдивых данных).
5. Бывает что при передаче предмета другому персонажу и или быстрое выкидывание и поднимание предмета производит к тому что статус вообще пропадает.
Может еще какие то косячки тут есть но я по крайней мере не нашел, это большее что в глаз бросалось.
Оформлял тему в заклинания на заказ, всё правильно оформил но удалили её оттуда не знаю почему , может быть потому что не спелл а система а это не подходит там в разделе такое или что..вообщем прошу помощи хоть тут то мучаюсь

Поскольку его не пугает наличие большого влияния промахов на геймплей - скорее всего он делает рпг. Имхо в рпг всегда клево смотрятся тексттаги полученного урона, для создания которых необходимы триггеры на отлов получения урона. А отлавливаемый урон - можно и прохилить.
Для прохила(и вообще всех манипуляций с задержкой в 0.00 сек) лично я юзаю такие костыли:
Либа здесь только для доп табуляции. Я за чистый жасс + дефайны.
library ZeroTimeEvent

    globals
        constant integer ZTEArraySize = 64//Even 32 is alot, 64 is too much! Exactly what I need!
        timer Zero//Used for 0. sec uses
        integer ZTECurrent = 0
        unit array ZTEUnits[ZTEArraySize]
        integer array ZTEIntegers[ZTEArraySize]
        real array ZTEReals[ZTEArraySize]
        trigger array ZTETriggers[ZTEArraySize]
    endglobals
    
    function ZeroTimeEvent takes nothing returns nothing
            loop
                set  ZTECurrent = ZTECurrent - 1
                call TriggerExecute( ZTETriggers[ZTECurrent] )
                exitwhen ZTECurrent < 1
            endloop
    endfunction
    
    #define ZTEAddUnit(u) = {
        set  ZTEUnits[ZTECurrent] = u
    }
    
    #define ZTEAddInteger(i) = {
        set  ZTEIntegers[ZTECurrent] = i
    }
    
    #define ZTEAddReal(r) = {
        set  ZTEReals[ZTECurrent] = r
    }
    
    #define ConfirmZTE(trig) = {
        set  ZTETriggers[ZTECurrent] = trig
        set  ZTECurrent = ZTECurrent + 1
        call TimerStart( Zero, ZeroTime, false, function ZeroTimeEvent )
    }
    
    
    
endlibrary
Пример использования
#define UnitRemoveForceAttack(u) = {
    call UnitAddAbility( u, 'Abun' )
    call UnitRemoveAbility( u, 'Abun' )
         ZTEAddUnit(u)
         ConfirmZTE(CheckIfUnitHasA002)
}
Минус такой системы в необходимости создавать триггер для каждого блока кода, т.к. массивы блоков кода запрещены
`
ОЖИДАНИЕ РЕКЛАМЫ...
20
Ты просишь юзеров исправить косяки твоей системы, но ты просишь без уважения. Ты даже не соблюдаешь правила ксгм.
Оформи тему нормально. Ты даже не описал принципов работы системы. Например в пункте 1 ты говоришь про дебаффы. Какие дебаффы могут относиться к промахам?
Вы знаете о чем здесь говорится? Я — нет.
20
Diaboliko:
у андедовский баншей есть дебафф проклятие, который дает шанс промахнуться при физической атаке. еще схожий эффект есть у спелла панды, когда он кидается алкашкой
видно, вся система стоит на применении этого дебаффа к героям
20
Поскольку его не пугает наличие большого влияния промахов на геймплей - скорее всего он делает рпг. Имхо в рпг всегда клево смотрятся тексттаги полученного урона, для создания которых необходимы триггеры на отлов получения урона. А отлавливаемый урон - можно и прохилить.
Для прохила(и вообще всех манипуляций с задержкой в 0.00 сек) лично я юзаю такие костыли:
Либа здесь только для доп табуляции. Я за чистый жасс + дефайны.
library ZeroTimeEvent

    globals
        constant integer ZTEArraySize = 64//Even 32 is alot, 64 is too much! Exactly what I need!
        timer Zero//Used for 0. sec uses
        integer ZTECurrent = 0
        unit array ZTEUnits[ZTEArraySize]
        integer array ZTEIntegers[ZTEArraySize]
        real array ZTEReals[ZTEArraySize]
        trigger array ZTETriggers[ZTEArraySize]
    endglobals
    
    function ZeroTimeEvent takes nothing returns nothing
            loop
                set  ZTECurrent = ZTECurrent - 1
                call TriggerExecute( ZTETriggers[ZTECurrent] )
                exitwhen ZTECurrent < 1
            endloop
    endfunction
    
    #define ZTEAddUnit(u) = {
        set  ZTEUnits[ZTECurrent] = u
    }
    
    #define ZTEAddInteger(i) = {
        set  ZTEIntegers[ZTECurrent] = i
    }
    
    #define ZTEAddReal(r) = {
        set  ZTEReals[ZTECurrent] = r
    }
    
    #define ConfirmZTE(trig) = {
        set  ZTETriggers[ZTECurrent] = trig
        set  ZTECurrent = ZTECurrent + 1
        call TimerStart( Zero, ZeroTime, false, function ZeroTimeEvent )
    }
    
    
    
endlibrary
Пример использования
#define UnitRemoveForceAttack(u) = {
    call UnitAddAbility( u, 'Abun' )
    call UnitRemoveAbility( u, 'Abun' )
         ZTEAddUnit(u)
         ConfirmZTE(CheckIfUnitHasA002)
}
Минус такой системы в необходимости создавать триггер для каждого блока кода, т.к. массивы блоков кода запрещены
Принятый ответ
7
Diaboliko:
Ты просишь юзеров исправить косяки твоей системы, но ты просишь без уважения. Ты даже не соблюдаешь правила ксгм.
Оформи тему нормально. Ты даже не описал принципов работы системы. Например в пункте 1 ты говоришь про дебаффы. Какие дебаффы могут относиться к промахам?
Вы знаете о чем здесь говорится? Я — нет.
Здравствуй,
"Ты просишь юзеров исправить косяки твоей системы"
  1. Я не прошу других сделать мне полностью наработку и скинуть, я хочу узнать как и что я сделал не так в триггерах, карта же прилагается, хочу понять свои ошибки.
  2. "Оформи тему нормально"
Да некоторые, я бы даже сказал большинство пишут сразу свой вопрос и все, и их за это никто не ругал.
3."Например в пункте 1 ты говоришь про дебаффы. Какие дебаффы могут относиться к промахам?"
Дебаф на основе проклятия. Ложится на себя с помощью даммика, я для кого карту скинул.
ssbbssc:
у андедовский баншей есть дебафф проклятие
Дак я на ней и делал,сколько боков и вылезло, вот пытаюсь решить проблему
Diaboliko:
Поскольку его не пугает наличие большого влияния промахов на геймплей - скорее всего он делает рпг
ну как бы не рпг, если стартовый промах 60%, а с базовой ловкостью уже 52, немного подкопив ловки+базовый прирост и уже 30%.. т.е 25-30% для меня это норма, нет ни единого человека как по мне как робин гуд всегда точно попадал в цель и рассекал стрелу другой стрелой.
" Имхо в рпг всегда клево смотрятся тексттаги полученного урона, для создания которых необходимы триггеры на отлов получения урона. А отлавливаемый урон - можно и прохилить"
Да там будет не триггерный спелл, триггерно будет он только налаживатся дамми, а так это на основе стандартного проклятия нежити .
Diaboliko:
да я как бы джасс не знаю (
20
твоя система плоха тем, что щиты от магии и амулеты негейшена будут постоянно мешать работе системы
ищи готовые системы урона и используй их
7
ssbbssc:
твоя система плоха тем, что щиты от магии и амулеты негейшена будут постоянно мешать работе системы
ищи готовые системы урона и используй их
Хм, а вот за это пока не задумывался, пожалуй вы правы, наверное стоит все таки найти другую систему, вот роюсь на хайве но ничего пока найти не могу..(
20
Вообще есть тема с 100% уворотом и использованием скилла крита/баша/аналогичных для игнора мисов(там соответствующий пунктик есть)
5
Diaboliko:
Вообще есть тема с 100% уворотом и использованием скилла крита/баша/аналогичных для игнора мисов(там соответствующий пунктик есть)
Кстати да тоже идея, всем юнитам дать спелл уклонения на 100% шанса, а так же крит с % шансом, там уже сам смотри минимальное значение и максимальное, т.е. если базовое минимальное допустимое 50% то 1 уровень способности будет 50%, 2 уровень 51% и так далее) весело короче
Плюс что не будет высвечиваться иконка дебаффа в статусе)
Чтобы оставить комментарий, пожалуйста, войдите на сайт.