Дата: Понедельник, 26.03.2012, 11:05 | Сообщение # 1
Мастер
Группа: Главный Администратор - Сайта
Сообщений: 159
Статус: Не в сети
Созадание Удара
[Statedef 221] anim = 221 ;номер анимации ctrl = 0 ;отключает Контроль во время удара или движения type = S ;тип физики движения Стоя ( С- Сидя, А- В воздухе) movetype = A ;Показывает что это атака ( активирует Clsn1 Красные рамки ) physics = S ;тип физики движения Стоя ( С- Сидя, А- В воздухе) velset = 6,0 ;Движение в начале атаки juggle = 1 poweradd = 30 ;Сколько прибавиться Энергии или Чакры sprpriority = 1 ;приаритет спрайтов
[State 221,1] ;Начало функции атаки type = HitDef ;Включает тип функции серий trigger1 = Time = 0 ;Проиграть все спрайты \ AnimElem = ? проиграть номер спрайта attr = S,NA ;определяет признак Вашего хита (1-Стоя,2-Нормальное,3-Атака) damage = 10,0 ;Сколько % будет снимать атака припопадании, будет снимать атака припопадании по блоку guardflag = MA hitflag = MAF priority = 1,Hit ;С какого удара начинается приаритет атаки pausetime = 1,14 ;Первая цифра притормаживает бойца,2 цифра Огрушение врага sparkno = 0 ;Номер эффекта при попадании sparkxy = -10, -76 ;Коардинаты эффекта hitsound = 3,1 ;Звук при попадании удара guardsound = S16,0 ;Звук при попаданию по блоку animtype = Hard ;Тип удара (Лёгкий-Средний,Тяжёлый,Жёсткий-> Light-Medium-Heavy-Hard--> и , Back) ground.type = High ;Тип аним. удара(Нижний-Высокий-Откидывающий,->Low,High,trip) ground.slidetime = 5 ;Время, которое противник скользит назад ground.hittime = 12 ;восстанавливает управление в комбо ground.velocity = -3,-1 ;Откидывает врага если он стоит на земле X,Y airguard.velocity = -1.0,-.8 ;Откидывает врага при защите в воздухе X,Y air.velocity = -1,0 ;Откидывает врага при попадания удара в воздухе air.type = High ;Тип аним. удара в воздухе(Нижний-Высокий-Откидывающий,->Low,High,trip) air.hittime = 12 ;восстанавливает управление в воздухе fall = 1 ;Раняет врага на спину
[State 221,End] ;Функция завершения кода type = ChangeState trigger1 = AnimTime = 0 ;Не закончится пока анимация не проиграет ВСЯ value = 0 ;Переход на 0 стейл группу ctrl = 1 ;Может двигаться после перехода
Дата: Понедельник, 26.03.2012, 11:06 | Сообщение # 2
Мастер
Группа: Главный Администратор - Сайта
Сообщений: 159
Статус: Не в сети
как сделать чтоб появлялась картинка перед супер атакой?ну например лицо твоего перса просто прописываешь как простой эффект в SuperPause ;----------------------------------- [State 221, SuperPause] – супер пауза type = SuperPause trigger1 = AnimElem = 1 ;– начинается с кадра первого time = 150 ;– сколько времени она будет anim = 700 ; – Номер анимации Эфекта sound = s2,0 ;– звук анимации pos = 40,-10 ;– позиция анимации movetime = 150 ;– сколько будешь двигаться ты во время супер паузы darken = 1 ;– затемнение экрана, если 1 – то будет, если 0 – не будет p2defmul = 1 ;если 1, Снимает заданное в damage = 10,10 котичество энергии при каждом ударе -------------------------------------------------------------------------------------------------------------------------------- только не забудь поставить прозрачность на этот спрайи в Fighter Factory ......
Дата: Понедельник, 26.03.2012, 11:09 | Сообщение # 3
Мастер
Группа: Главный Администратор - Сайта
Сообщений: 159
Статус: Не в сети
вот скажем пример: я сей час поставлю картинку на заставку перед боем на 191 стейт -------------------------------------------------------------------------------------------------------------------- ; Стойка Перед боем [Statedef 191] ; Стэйт начальной анимации type = S ;тип физики движения Стоя ( С- Сидя, А- В воздухе) ctrl = 0 ;отключает Контроль во время удара или движения anim = 190 ;номер анимации velset = 0,0 ;Движение в начале атаки
[State 191,PlaySnd] ;Определяем Стэйт для проигрывания звуков type = PlaySnd ; Тип проигрывания звуков trigger1 = animelem = 1 ;На каком спрайте проигрывать звук value = S0,1 ;Адрес звука ( Если без буквы S-то из обших звуков...1-группа,2-номер мелодии volume = 255 ;Громкость звука channel = 1
[State 221, SuperPause] – супер пауза type = SuperPause trigger1 = AnimElem = 1 ;– начинается с кадра первого time = 0;– сколько времени она будет поставь 0 anim = 700 ; – Номер анимации Эфекта--- тут твоя картинка sound = s2,0 ;– звук анимации pos = 40,-10 ;– позиция твоей анимации movetime = 0 ;– сколько будешь двигаться ты во время супер паузы darken = 1 ;– затемнение экрана, если 1 – то будет, если 0 – не будет p2defmul = 1 ;если 1, Снимает заданное в damage = 10,10 котичество энергии при каждом ударе
[State 191, 1] ; Стэйт следующей анимации type = ChangeState ; trigger1 = AnimTime = 0 ;Проиграть всю анимацию value = 0 ;Переходим и проигрывам в группу 0 в Air ( Стойка )
Дата: Понедельник, 26.03.2012, 11:14 | Сообщение # 4
Мастер
Группа: Главный Администратор - Сайта
Сообщений: 159
Статус: Не в сети
Вот смотри как управлять размером эффектов ..разберём - наш прошлый пример.... --------------------------------------------------------------------------------------- [State 900, Effect_L] type = Explod ;Вызов Эффекта triggerall = teamside = 1 trigger1 = time = 150 ;Время через которое выполниться Эффект anim = F3011 ;Анимация Эффекта pos = 80,80 ;координаты эффекта scale = .9,.9 ; Размер ЭФФЕКТА postype = Left ;тип Вывода - слева ontop = 1 ; поверх всего на экране facing = 1 ;повернуться лицом к врагу ownpal = 1
[State 900, Effect_R] type = Explod triggerall = teamside = 2 trigger1 = time = 150 ;Время через которое выполниться Эффект anim = F3011 ;Анимация Эффекта pos = -80,80 ;координаты эффекта scale = .9,.9 ; Размер ЭФФЕКТА postype = Right ;тип Вывода - справа ontop = 1 ; поверх всего на экране facing = 1 ;повернуться лицом к врагу ownpal = 1
Drummer86, Так можно установить приоритет над спрайтами.... С помощью контройлеров - sprpriority = приоритетность (целое) и ontop = значение (булево, 0 или 1) - Пример: sprpriority = 1 или ontop = 1 (Описание ниже )
sprpriority = приоритетность (целое) Указывает приоритетность рисования эксплода. Анимации с более высокой приоритетностью будут нарисованы поверх анимаций с более низкой приоритетностью. Для примера, если sprpriority = -3, то при этом эксплод будет показываться под большинством бойцов и их эксплодами, которые обычно имеют приоритетность >= -2. По умолчанию 0, если не учтено. ------------------------------------------------------------------------------ ontop = значение (булево, 0 или 1) Выбрать 1, чтобы эксплод был прорисован поверх всех спрайтов и слоев арен. Этот параметр имеет превосходство над sprpriority. По умолчанию 0.
Дата: Воскресенье, 13.05.2012, 15:25 | Сообщение # 7
Начинающий
Группа: Заслуженный
Сообщений: 8
Статус: Не в сети
Код ошибки: invalid trigger: trigger1 Error parsing trigger 1,1 OzXaker, а ты на каком магене её тестил??? У меня просто RC8+ баттле кри бета.
Добавлено (13.05.2012, 14:07) --------------------------------------------- А нет всё работает!!!!!
Добавлено (13.05.2012, 15:25) --------------------------------------------- Мелочь а важно!! [State 900, Pulse] спцифект type = Explod -тип triggerall = command = "Charge" -команда trigger1 = power - сила и вот тут весь замес. Если ставить просто power- то персонаж в дальнейшем будет набирать силу только после того, как вы сделаете первый удар или наоборот получите по репе. А вот если поставить powermax то сила будет набиратся сразу. trigger1 = animtime = 0 -будут ли проигрыватся спрайты. Если ставить 1- то спецыфекта не увидеть а вот если поставить -1 то специфекты будет не только видно но ещё вас не будут трогать во время чарджинга. (Просто проскочат сквозь вашего перса-читерство!) anim = 7780 - ну номер анимации. pos = 10,0 -поза анимации shadow = 0 -этот параметр то же каким то образом влияет на повербар. Оо у меня лично стоит 1 и сила набирается сразу. А вот если 0 то сила не будет набиратся сразу же. scale = .5,.5 -размер специфекта. sprpriority = 18 -приоритет removetime = 34 - это показатель того, через сколько спрайты будут исчезать или какое время она будет проигрыватся. И если поставить очень низкое число, то (я поставил 5) то у меня просто выскакивала одна застывшая картинка. Так что думаю чем число больше, тем будет лучше.
Дата: Понедельник, 04.06.2012, 09:01 | Сообщение # 9
Начинающий
Группа: Заслуженный
Сообщений: 8
Статус: Не в сети
Имею вопрос. Хочу написать одному чару код парирования. (Ниже приведён код из парирования Раре акумы. И код, хоть каким местом вы его ставьте у вас не попрёт если его не переписать как надо). Так вот и у меня вопрос. Как закодировать парирование. [Statedef 700]-номер стейта это я помню. (У себя моня прописать другой). type=U -Тип. physics=N (физ тип или чото типа того) movetype=I (то же какой то тип, я не знаю, я блондин ) anim=700 -ну тут понятно анимация. velset=0,0 ctrl=0 sprpriority=2 - приоритет спрайтов poweradd=78 - добавление силы (Да-да, ровно как при ударах)
[State 700, hb]- так теперь вот что это такое?? type=hitby- тип стейта, но что он значит мне непонятно. trigger1= 1 -Триггер(пусковик. И почему прописано тока 1?) value=SCA,AT time=1
[State 700, stop] - ну это понятно, остановка. type=posfreeze - замораживает при контакте вроде. trigger1= 1 -пусковик. value=1
[State 700, pause] - пауза type=pause - тип команды. trigger1= !time && var(20)<=0 (вот это что значит и для чего написано?? Оо) time=15 movetime=15 endcmdbuftime=15 pausebg=0
[State 700, end] type=changestate trigger1= !animtime value=ifelse(statetype=A, 51, 0) ctrl=1 Вот и ответте мне. Можно и как то этот код сократить что бы был не такой длинный и что бы было понятно для чего это пишется, как и зачем??
Добавлено (04.06.2012, 09:01) --------------------------------------------- Да народ, очень важный момент при создании даже простенького бойца. Думаю что все с этим сталкивались. Допустим вы написали код удара в CNS фаайле, прописали как положено статы и прочее, а затем вы пишите в CMD саму команду, пусть это будет: [command] name = "Parry" command = a+b time = 2
Затем в как положено прописываете все соответствующие константы внизу, сохраняете персонажа и пытаетесь его запустить. И в ответ вам сообщение (Error library command ******- имя команды). И вы в недоумении начинаете пробовать разные комбинации кнопок в надежде что какая либо опознается. Сразу скажу. Забуддте про это. Просто в константах управления где идёт код самой команды в строке: triggerall = command =(ваша команда) тупо пропишите Parry и оставьте всё как есть. (по крайней мере с командой Charge это прокатило, думаю и с другими подействцует). Надеюсь это вам помогло.
Renjmon, вот держи тутор -нашел на английском сайте (переведенный гуглом)-я сначала на русском копирну а потом на английском. =========Парированиe=============== ========= Парирующий ========= Автор: FlowaGirl flowergirl@cutey.com http://blargh.i-xcell.com
-------------------------------------------------- ------------------------- Эта функция была родом из SF3, и это возможность блокировать атаковать и быть немедленно предоставлена возможность принять ответные меры.
Для выполнения парировать, вы должны нажать вперед в момент нападения составляет около чтобы поразить вас. Надавите на низких атак.
Эта версия основана на версии CvS2, поэтому она не включает в себя дополнительных функций, которые были в SF3, гвардии Парри, и Нижний воздушных Пэрри. -------------------------------------------------- -------------------------
Положите эти государства под -2/-3 StateDef. Var (0) используется для того времени парировать активна, и Var (1) используется для определения момента, когда вы впервые нажмите вперед / вниз направленный ключ для выполнения этого.
[Государство -2: VarAdd] тип = VarAdd trigger1 = (Var (0)> 0) ж (0) = -1 ignorehitpause = 1
Это используется для парирования в воздухе во время прыжка и во время воздушных парировать. Примечание: *** 1 является основанием парировать государства, *** 2 в воздухе парировать государства, 3 *** помощник для парирования воздуха и *** 4 парировать искры.
[Государство -2: HitOverride] тип = HitOverride triggerall = ((StateNo = 50) | | (StateNo = *** 2)) && (Var (0)> 0) trigger1 = (Command! = "крепежный") && (Command! = "задержка") Attr = SCA, А. А., А. П. Слот = 0 stateno = *** 2 ignorehitpause = 1
И теперь, парировать государств.
[Statedef *** 1] тип = U movetype = I физика = U Anim = IfElse (StateType = S, ****, ****) <--- первое значение должно быть постоянно парировать аним, 2 являются корточках парировать аним. velset = 0,0 Ctrl = 0 poweradd = 0 жонглировать = 0 facep2 = 1 hitdefpersist = 0 movehitpersist = 0 hitcountpersist = 0 sprpriority = 2
Необходимый материал.
[Государство *** 1: AssertSpecial] тип = AssertSpecial trigger1 = 1 флаг = NoWalk
[Государство *** 1: CtrlSet] тип = CtrlSet trigger1 = (Время> 4) && (StateType = S) значение = 1
[Государство *** 1: NotHitBy] тип = NotHitBy trigger1 = 1 Значение = SCA
[Государство *** 1: Пауза] type = пауза trigger1 = (! время) Время = 14 movetime = 14
[Государство *** 1: VarSet] тип = VarSet trigger1 = (! время) VAR (1) = 1
Разные спецэффекты.
[Государство *** 1: PalFX] тип = PalFX trigger1 = (! время) время = 8 добавить = 0,0,0 MUL = 256256256 sinadd = 75,100,255,8 invertall = 0 цвет = 256
[Государство *** 1: EnvColor] тип = EnvColor trigger1 = (! время) Значение = 255255255 Время = 4
[Государство *** 1: EnvShake] тип = EnvShake trigger1 = (! время) время = 8 частота = 60 ампл = -2 фаза = 90
Звуковых эффектов, если это необходимо. Один голос за персонажа, а другой для парирования искра звуковой эффект.
[Государство *** 1: PlaySnd] тип = PlaySnd trigger1 = (! время) Значение = S *, *
[Государство *** 1: PlaySnd] тип = PlaySnd trigger1 = (! время) Значение = S *, *
Это парировать искры.
[Государство *** 1: Explod] тип = Explod trigger1 = (! время) Anim = **** ID = **** POS = (IfElse (StateType = S *, *)), (IfElse (StateType = S *, *)) <--- Первый набор координат используются на должность постоянного парирования искры, со 2-й , установленных для Крадущийся. postype = p1 перед = 1 vfacing = 1 bindtime = 1 Вел = 0,0 ускорение = 0,0 случайный = 0,0 removetime = -2 supermove = 0 supermovetime = 0 pausemovetime = 12 шкала = 1,1 sprpriority = 3 OnTop = 0 тень = 0,0,0 ownpal = 1 removeongethit = 1
И это заканчивается земля парировать государства.
[Государство *** 1: ChangeState] тип = ChangeState trigger1 = (! AnimTime) Значение = IfElse (StateType = S, 0,11)
Это воздушный парировать государства.
[Statedef *** 2] тип = movetype = I физика = N Anim = *** 2 Ctrl = 0 poweradd = 0 жонглировать = 0 facep2 = 0 hitdefpersist = 0 movehitpersist = 0 hitcountpersist = 0 sprpriority = 2
[Государство *** 2: CtrlSet] тип = CtrlSet trigger1 = (Время> 4) значение = 1
[Государство *** 2: NotHitBy] тип = NotHitBy trigger1 = (Время <14) Значение = SCA
[Государство *** 2: Пауза] type = пауза trigger1 = (! время) Время = 14 movetime = 14
[Государство *** 2: VarSet] тип = VarSet trigger1 = (! время) VAR (1) = 1
То же самое спецэффекты от земли состоянии парировать можно добавить здесь. [PalFX] [EnvColor] [EnvShake] [PlaySnd]
Они используются для проверки текущей прыжки персонажа скоростями и сохранить его для последующего использования. FVar (0) используется для скорости X и FVar (1) Y скорости.
[Государство *** 2: Null] тип = Null trigger1 = (! время) trigger1 = (FVar (0): = X Vel) && (FVar (1): = Vel Y)
Характер заморожен в течение парировать государства.
[Государство *** 2: VelSet] тип = VelSet trigger1 = (Время) х = 0 у = 0 стойкие = 0
Но после 14 клещей, характер возобновится нормальное движение прыжками.
[Государство *** 2: VelSet] тип = VelSet trigger1 = (время> 14) х = FVar (0) у = FVar (1) стойкие = 0
[Государство *** 2: VelAdd] тип = VelAdd trigger1 = (время> 14) у = 0,45
Пэрри искры могут быть добавлены здесь. [Explod]
И это заканчивается воздушным парировать состояние, когда земли характер.
[Государство *** 2: ChangeState] тип = ChangeState trigger1 = (Pos Y> = 0) && (Vel Y> 0) значение = 52
Это состояние воздушной парировать помощника. Следует использовать невидимый аним, не Clsns.
[Statedef *** 3] тип = movetype = I физика = N Anim = *** 3 poweradd = 0 жонглировать = 0 facep2 = 0 hitdefpersist = 0 movehitpersist = 0 hitcountpersist = 0 sprpriority = 2
[Государство *** 3: ParentVarSet] тип = ParentVarSet trigger1 = (! время) ж (0) = 8 ignorehitpause = 1
--------------------------------------------------------------------------- This feature is was originally from SF3, and it is the ability to block an attack and immediately be given the chance to retaliate.
To perform a parry, you must press forward the moment the attack is about to hit you. Press down for low attacks.
This version is based on CvS2's version, so it does not include the additional features that were in SF3; Guard Parry, and Lower Aerial Parry. ---------------------------------------------------------------------------
Put these states under StateDef -2/-3. Var(0) is used for the time the parry is active, and Var(1) is used to detect the moment when you first tap the forward/down directional key to perform it.
This is used for parrying in the air, while jumping and during the aerial parry. Note: ***1 is the ground parry state, ***2 is the air parry state, ***3 is the helper for air parrying, and ***4 is the parry spark.
[Statedef ***1] type = U movetype = I physics = U anim = IfElse(StateType = S,****,****) <--- The first value should be the standing parry anim, 2nd being the crouching parry anim. velset = 0,0 ctrl = 0 poweradd = 0 juggle = 0 facep2 = 1 hitdefpersist = 0 movehitpersist = 0 hitcountpersist = 0 sprpriority = 2
The required stuff.
[State ***1: AssertSpecial] type = AssertSpecial trigger1 = 1 flag = NoWalk
[State ***1: CtrlSet] type = CtrlSet trigger1 = (Time > 4) && (StateType = S) value = 1
[State ***1: NotHitBy] type = NotHitBy trigger1 = 1 value = SCA
[State ***1: Pause] type = Pause trigger1 = (!Time) time = 14 movetime = 14
The same special effects from the ground parry state can be added here. [PalFX] [EnvColor] [EnvShake] [PlaySnd]
These are used to check the character's current jumping velocities, and save it to be used later. FVar(0) is used for the X velocity, and FVar(1) for the Y velocity.
[State ***2: Null] type = Null trigger1 = (!Time) trigger1 = (FVar(0) := Vel X) && (FVar(1) := Vel Y)
The character is frozen during the parry state.
[State ***2: VelSet] type = VelSet trigger1 = (Time) x = 0 y = 0 persistent = 0
But after 14 ticks, the character will resume normal jumping movement.
[State ***2: VelSet] type = VelSet trigger1 = (Time > 14) x = FVar(0) y = FVar(1) persistent = 0
[State ***2: VelAdd] type = VelAdd trigger1 = (Time > 14) y = 0.45
Parry spark can be added here. [Explod]
And this ends the aerial parry state when the character lands.
[State ***2: ChangeState] type = ChangeState trigger1 = (Pos Y >= 0) && (Vel Y > 0) value = 52
This is the aerial parry state helper. It should use an invisible anim, with no Clsns.
[Statedef ***3] type = A movetype = I physics = N anim = ***3 poweradd = 0 juggle = 0 facep2 = 0 hitdefpersist = 0 movehitpersist = 0 hitcountpersist = 0 sprpriority = 2
Скорпион, ОГРОМЕННОЕ СПИСИБИЩЕ ТЕБЕ. Но в следующий раз такие вкусняшки и плюшки лучше в личку.=)
Добавлено (07.06.2012, 16:46) --------------------------------------------- И ещё. Scorpion, я тебя очень прошу. Чуть чуть совсем дополни где надо в CNS писать а г де в CMD. (Сожалею но первая ссылка меня выкидывает на мою домашнюю страницу а вторая вообще на рекламный сайт).
А для чего служит и как работает стейт ReversalDef и ReversalHitDef?? Просто я тут с одним человечком разговаривал, он говрит что это очень просто в применении но я сам так нифига и не понял.