Помощь M.U.G.E.N.

Тем: 48
Сообщений: 965
- Как создать свою палитру?
Для начала, нам потребуется программа Fighter Factory.
1. Открываем *sff файл персонажа, которому будем делать палитру. Сохраняем любой спрайт (исключая спрайты эффектов) в *pcx или *bmp, или в *png.

2. Открываем наш спрайт в фотошопе.

Если возникнут проблемы с коррекцией пиксельной пропорции, то отключите её (Просмотр > Коррекция пропорций).

3. Теперь меняем цвет с помощью всех доступных параметров коррекции цвета (Изображение > Коррекция > ...). Некоторые параметры нам недоступны, так как наш спрайт 8-ми битный.


4. Заходим в таблицу цветов (Изображение > Режим > Таблица цветов...) и нажимаем кнопку «Сохранить».


5. Сохраняем нашу палитру в формате *act, в папку с нашим персонажем.


6. Теперь открываем *def файл персонажа любым текстовым редактором. Добавляем новый порядковый номер нашей палитры в строку pal.defaults. Так же, в секцию [Files], добавляем строку palN = имя_палитры.act, где N - порядковый номер палитры.


Готово!
Результат:
Дата: | Дата редактирования: | Сообщение # 1
Тем: 48
Сообщений: 965
Dark_Evilous, хех, да не за что. ;-)
Дата: | Сообщение # 11
Тем: 12
Сообщений: 330
Занимаюсь улучшением Грандмастера МКМ для МКР. Добавил один приём, связанный с силовым полем, которое на некоторое время зияет вокруг персонажа и при приближении к нему недруга наносит тому урон. Способность эта работает, но не так, как надо. Поэтому задаю три основных вопроса:

1. Эффект вращающегося поля находится ЗА Грандмастером, а должен находиться ПЕРЕД ним. Как поставить его перед персонажем?

2. По каким-то причинам удар НЕ блокируется, даже если враг стоит в блоке. Как это можно исправить?

3.1. Как в HitDef`е прописать таким образом, чтобы враг не отлетал при соприкосновении с полем, а пятился, но оставался стоять на ногах?

3.2. Как в HitDef`е прописать таким образом, чтобы враг не отлетал при соприкосновении с полем, а пятился, после чего плавно падал на землю?

Мне бы желательно знать оба варианта, так как второй пригодится для другого чара.

Вот сам стейт приёма:

[Statedef 1200]
type = S
movetype= A
physics = N
juggle = 1
velset = 0,0
ctrl = 0

[State ]
type = changeanim
trigger1 = 1
value = anim
elem = animelemno(0)

[State ]
type = nothitby
trigger1 = 1
value = sca,NA

[State ]
type = Helper
trigger1 = time = 0
stateno = 2771
postype = p1
pos = 0,-80
helpertype = normal
sprpriority = 1
keyctrl = 0
ownpal = 1

[State ]
type = Changestate
trigger1 = time = 2
value = 0
ctrl = 1

[Statedef 1091]
type = A
movetype= A
physics = N
juggle = 1
velset = 0,0
ctrl = 0

[State ]
type = changeanim
trigger1 = 1
value = anim
elem = animelemno(0)

[State ]
type = nothitby
trigger1 = 1
value = sca,NA

[State ]
type = Helper
trigger1 = time = 0
stateno = 2771
postype = p1
pos = 0,-80
helpertype = normal
sprpriority = 1
keyctrl = 0
ownpal = 1

[State ]
type = Changestate
trigger1 = time = 2
value = 12758
ctrl = 1

[Statedef 2771]
type = A
movetype= A
physics = N
velset = 0,0
ctrl = 0
anim = 940 <=== анимация возникающего поля

[State ]
type = Playsnd
trigger1 = time = 0
value = s16,0
volume = 250

[State ]
type = BindToParent
trigger1 = time = 0
pos = 0,-80
time = 180

[State ]
type = HitDef
triggerall = parent, p2stateno != 9010
trigger1 = time = 0
attr = S, NA
damage = 300,150
getpower = 300,150
givepower = 0,0
animtype = Back
air.fall = 0
fall.recover = 0
pausetime = 0,0
sparkno = s950
guard.sparkno = s950
hitsound = s16,1
guardsound = s16,1
ground.velocity = -5,-8
kill = (parent, Var(9)=0)
fall.kill = (parent, Var(9)=0)
guard.kill = (parent, Var(9)=0)

[State ]
type = destroyself
trigger1 = time = 180 || movecontact
Дата: | Дата редактирования: | Сообщение # 12
Тем: 48
Сообщений: 965
Цитата (Dark_Evilous)

1. Эффект вращающегося поля находится ЗА Грандмастером, а должен находиться ПЕРЕД ним. Как поставить его перед персонажем?



Пропиши sprpriority по больше.

Цитата (Dark_Evilous)

2. По каким-то причинам удар НЕ блокируется, даже если враг стоит в блоке. Как это можно исправить?


Не понмю уже, но полагаю, нужно поэксперементировать с параметрами в hitdef, которые содержат в себе словосочетание «guard». Возьми лучше HitDef с какого-нибудь другого приёма, где работает блок.

Цитата (Dark_Evilous)

3.1. Как в HitDef`е прописать таким образом, чтобы враг не отлетал при соприкосновении с полем, а пятился, но оставался стоять на ногах?3.2. Как в HitDef`е прописать таким образом, чтобы враг не отлетал при соприкосновении с полем, а пятился, после чего плавно падал на землю?


А вот тут уже эксперементируй с p2stateno в hitdef, посмотри какой указан p2stateno в приёмах с таким эффектом.
Дата: | Сообщение # 13
Тем: 2
Сообщений: 9
can i ask a question

I`m confused about stage fatality

this is a true code i am using this code for my stage fatality and working very well

[StageInfo]
zoffset = 0
zoffsetlink = 1
autoturn = 1
resetBG = 1
localcoord = 400,254

[BG up]
type = dummy
start = 0, 10010
id = 1

[BGCtrl stageID 2]
type = PosSet
time = 4
y = -9786
ctrlID = 1

...................................................


Problem is i have big size stage

i am using
[StageInfo]
zoffset = 0
zoffsetlink = 1
autoturn = 1
resetBG = 1
localcoord = 400,254

xscale = .7, .7
yscale = .7, .7

problem is when i use ( xscale ) and ( yscale ) my stage fatality not work what i must do

what code i must use I`m confused



[BGCtrl stageID 2] i know how to work BGCtrl stageID this is coordinates
type = PosSet
time = 4
y = -9786
ctrlID = 1
Дата: | Сообщение # 14
Тем: 48
Сообщений: 965
Mortal_Levent_Jp,

You are using outdated wrapper in the trigger.
Use this in *st files:

[state 0, MyStageFatality]
type = MY_TYPE
triggerN = StageVar(info.name) = «My Stage Name»
bla = bla
Дата: | Дата редактирования: | Сообщение # 15
Тем: 2
Сообщений: 9
Black Shadow can u send me a example st
Дата: | Сообщение # 16
Тем: 48
Сообщений: 965
Mortal_Levent_Jp,

For example, instead:

[State -1, pit2]
type = ChangeState
value = 4318
triggerall = command = «x»
triggerall = command = «holddown»
triggerall = p2stateno = 9010
triggerall = p2name != «motaro»
triggerall = var(30) = 10014
triggerall = p2bodydist X <= 10
trigger1 = statetype = C
trigger1 = ctrl = 1
triggerall = Vel Y = 0

To do this:

[State -1, pit2]
type = ChangeState
value = 4318
triggerall = command = «x»
triggerall = command = «holddown»
triggerall = p2stateno = 9010
triggerall = p2name != «motaro»
triggerall = StageVar(info.name) = «The Pit 2»
triggerall = p2bodydist X <= 10
trigger1 = statetype = C
trigger1 = ctrl = 1
triggerall = Vel Y = 0




This condition is triggered if the current arena is the «My Stage»:
triggerN = StageVar(info.name) = «My Stage»

My_Stage.def:

[Info]
name = «My Stage»
author = «bla»
Дата: | Дата редактирования: | Сообщение # 17
Тем: 2
Сообщений: 9
thanx ruslan i will try it and i thiking this code must be in chars CMD
Дата: | Сообщение # 18
Тем: 48
Сообщений: 965
Mortal_Levent_Jp, Yes, in the CMD.
Дата: | Сообщение # 19
Тем: 2
Сообщений: 9
You are using outdated wrapper in the trigger.
Use this in *st files:

i dont use this code in pt.st but work now my pit fatality just i changed in cmd

i thiking this code not need to use maybe i am wrong

[state 0, MyStageFatality]
type = MY_TYPE
triggerN = StageVar(info.name) = «My Stage Name»



Дата: | Сообщение # 20
15:40