Кто как считает: нужен ли шанс на то, что ничего не сработает? ИМХО, нет, горыныч и так в основном не такие уж и сильные заклы накладывает.
Какую длительность заклов лучше делать? Продлевание при повторном наложении есть.
Шанс на несрабатывание не нужен, длительность - 3 раунда.
тогда надо низкий процент на паралич. 5%?
Я тупо писал, не обновив страницу, и пост Sav-а на тот момент еще не видел.
Какой закл дать горынычу вместо яда? Может старость? Эффект похожий, а вероятность можно меньше сделать.
Quote:тогда надо низкий процент на паралич. 5%
По-моему это слишком низкий шанс. Но я потестирую и скажу.
(09.08.2010 14:46)Sav Wrote: [ -> ]Какой закл дать горынычу вместо яда? Может старость? Эффект похожий, а вероятность можно меньше сделать.
старость - очень мощный закл, так что если и давать, то вероятность еще меньше.
(09.08.2010 15:25)Sav Wrote: [ -> ]По-моему это слишком низкий шанс.
а мне кажется, что слишком высокий. учитывая проверку для каждого существа. в общем, увидим.
Вот пока что есть (без нормального рандома):
ZVSE
;Горыныч.
!#MA : A168/35 C168/6/17500 C168/0/24 D168/35 E168/60 F168/27145 H168/3 I168/30027 M168/50 P168/750 S168/10 V168/1;Устанавливаем характеристики горыныча.
;Горыныч колдует заклинание на всех вокруг.
!?BG0;При действии существа...
!!VRv6001 : S0;Обнуляем контрольную переменную.
!!BG : N?v6002;Находим номер стека, совершившего действие.
!!BMv6002 : T?y-1;Находим, какое существо совершило действие.
!!BG&y-1=168 : A?y-2;Если существо - горыныч, находим, какое действие он совершил.
!!VRv6001&y-1=168/y-2=6 : S1;Если действие было ближним ударом и ударял горыныч, устанавливаем контрольную переменную в 1.
!!VRv6003&v6001=1 : S6003;Устанавливаем управляющую переменную позиций целей.
!?MF1&v6001=1;При нанесении физического урона, если контрольная переменная равна 1...
!!MF : E?y-1;Определяем, не был ли урон блокирован.
!!FU&y-1=0 : E;Если урон был блокирован, завершаем функцию.
!!VRv6003 : Sv6003+2;Устанавливаем управляющую переменную позиций целей на следующее значение.
!!VRy-1 : Sv6003-1;Вычисляем вторую управляющую переменную позиций целей.
!!MF : N?vy-1;Определяем номер стека, получающего урон.
!!BMvy-1 : P?vv6003;Определяем позицию стека, получающего урон.
!?BG1&v6001=1;После совершения действия, если контрольная переменная равна 1...
!!DO9015/6005/v6003/2 : P;Вызываем цикл наложения заклинаний.
!!VRv6001 : S0;Устанавливаем контрольную переменную в 0.
!!VRv6002 : S0;Сбрасываем переменную стека, совершившего действие.
!!VRv6003 : S0;Сбрасываем управляющую переменную позиций целей.
;Функции наложения и продления заклинания.
!?FU9015;Функция подготовки к наложению заклинаний.
!!VRy1 : Sx16-1;Вычисляем адрес номера целевого стека.
!!BMvy1 : N?y2;Считыываем количесто существ в целевом стеке.
!!VRvy1&y2<1 : S0;Если в стеке меньше 1 существа, сбрасываем переменную номера целевого стека.
!!VRvx16&y2<1 : S0;Если в стеке меньше 1 существа, сбрасываем переменную позиции целевого стека.
!!FU&y2<1 : E;Если в стеке меньше 1 существа, завершаем функцию.
!!VRy3 : S0;Устанавливаем переменную рандома в 0.
!!VRy3 : R4;Добавляем к переменной рандома в случайное число от 0 до 4.
!!FU9016&y3=0 : Pvy1/vx16/45;Если переменная рандома равна 0, вызываем функцию наложения и продления слабости.
!!FU9016&y3=1 : Pvy1/vx16/54;Если переменная рандома равна 1, вызываем функцию наложения и продления медлительности.
!!FU9016&y3=2 : Pvy1/vx16/73;Если переменная рандома равна 2, вызываем функцию наложения и продления болезни.
!!FU9016&y3=3 : Pvy1/vx16/74;Если переменная рандома равна 3, вызываем функцию наложения и продления паралича.
!!FU9016&y3=4 : Pvy1/vx16/75;Если переменная рандома равна 4, вызываем функцию наложения и продления старости.
!!VRvy1 : S0;Сбрасываем переменную номера целевого стека.
!!VRvx16 : S0;Сбрасываем переменную позиции целевого стека.
!?FU9016;;Функция наложения и продления заклинания.
!!BMx1 : Gx3/?y1/d;Проверяем, не наложено ли заклинание на цель.
!!BMv6002&y1<1 : Cx3/x2/2/1/0;Если заклинание не наложено, накладываем его.
!!BMx1&y1<1 : Gx3/3/d;Если заклинание не наложено, устанавливаем его длительность в 3 раунда.
!!BMx1&y1>0 : Gx3/d3/d;Если заклинание наложено, увеличиваем его длительность на 3 раунда.
Заклы не колдуются при ответном ударе, игнорируются иммунитеты и после колдовства заклов ход передаётся следующему существу, а рамка выделения остаётся на предыдущем.
Кто знает, как решить эти проблемы, особенно последнюю, напишите.

gamecreator, так ты веди себя проще, и их не будет.

Миру мир, как говорится.

Старость? Гм, как-то не очень логично, но... Вдруг у него зараза такая, что, как после радиации, начинают выпадать зубы и волосы и морщится кожа?...

Всё, у меня появился интернет!

Могу тестировать!
Выкладываю небольшую таблицу того, что у нас уже определено по драконам. Размер - 159,81 КБ.
Таблица будет обновляться.
Тестировал. Паралич не работает должным образом: существо все равно может ходить.
Sav, идея появилась: может, заклинание накладывать без анимации, а саму анимацию одну и ту же на всех накладывать? Или накладывать на врагов, а над горынычем какую-нибудь анимацию особую колдовать и выводить в лог "Горыныч заразил окружающих его врагов!"?
у меня кристальные драконы постоянно боятся атаковать горынча и становятся в защиту. Ну и 4 горыныча безответкой без потерь валят7 кристальных.
Quote:Паралич не работает должным образом: существо все равно может ходить.
Этого не мог заметить, они так у меня пропускали ходы - боялись.
Quote:а саму анимацию одну и ту же на всех накладывать?
Будет так же, как и сейчас (по очереди).
Quote:Или накладывать на врагов, а над горынычем какую-нибудь анимацию особую колдовать и выводить в лог "Горыныч заразил окружающих его врагов!"?
ИМХО, хорошо, только откуда взять и как выводить эту осбоую анимацию?
Кстати, звуки играются вроде бы не по очереди.
Анимация - проиграть на горыныче анимацию какого-нибудь подходящего спелла. В идеале, конечно, хорошо бы проиграть анимацию над горынычем (как удар молнии или блок), но не уверен, что это возможно.