Файлы: 857 Видео: 13 Комментарии: 242 Статьи: 306 Новости: 155 Форум: 39179 Пользователи: 3407 + 0 |Добавить на сайт ...

Новое на форуме Новые статьи Мини профиль
[ Обновленные темы · Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: Manoichi, Ronnie, Skamp  
MUGEN WORKS - ANIME,CHARACTERS,STAGES,SCREENPACK,LIFEBAR » M.U.G.E.N » Туториалы / Tutorials » Туториал - создание скринпака (Туториал - создание скринпака)
Туториал - создание скринпака
Manoichi
Дата: Воскресенье, 16.10.2011, 16:04 | Сообщение # 1
Это Туториал AirWolF'а(все что тут написано ведется от его лица!)
Начнем.
Итак, что нам нужно для создания скринпака? В принципе, не так много:
Figther Factory
Ulead PhotoImpact, ну или Adobe Photoshop
Вот и все тулзы, нужные для этого дела.

1. Основы
Итак, начнем мы с самого простейшего. Для этого запустим Fighter Factory, нажмем на блокнот:

Далее открываем файл System.def вашего Мугена, нажав на кнопку открыть:

Все. Теперь у нас открыт System.def и мы начинаем его редактировать:
[info] - основная инфа о игре
Name = "****" - название вашей игры/сборки
Author = "****" - вы, то-есть создатель игры
displayname = "****" - отоброжаемое имя автора
versiondate = 25.04.2008 - дата создания
mugenversion= 06,14,2003 - версия Мугена
pal.defaults=1,2,3,4,5 - стандартый набор палитр (менять не надо)

2. Подключение файлов
Далее у нас идет заголовок [Files], где и идет подключение различных файлов
spr = system.sff - файл спрайтов для самого меню
snd = system.snd - файл звуков для основного меню
logo.storyboard = ****.def - Это лого при запуске игры
intro.storyboard = ****.def - Инто в игре
select = select.def - здесь пишите файл, в котором вы подключаете персов и арены
fight = fight.def - файл битвы (Лайфбар и тд и тп)
font1 = ****.fnt - шрифт 1
font2 = ****.fnt - шрифт 2, и так можете продолжать долго, увеличивая цифру после font.
Ну вот, файлы мы теперь подключили!

3. Музыка
Следующим заголовком в System.def должен быть [Music]. Разбираемся тут.

title.bgm = sound/Menu.mp3 - путь к файлу музыки для главного меню
title.bgm.loop = 1 - параметр =1говорит,что после конца песни она начнет играть снова, при = 0 этого не будет

select.bgm =sound/CharSel.mp3 - путь к файлу музыки для меню выбора персонажей
select.bgm.loop = 1 - параметр=1говорит,что после конца песни она начнет играть снова,при=0 этого не будет

vs.bgm =sound/VSscreen.mp3 - путь к файлу музыки для ВС скрина (Когда идет показ кто против кого)
vs.bgm.loop = 1 - параметр =1говорит,что после конца песни она начнет играть снова, при = 0 этого не будет

Теперь у нас есть и музыка в скринпаке!

4. Главное меню
Итак, сейчас мы будем описывать главное меню и его примочки.
Перед описанием меню должен идти такой заголовок - [Title Info]
Поехали разбирать, что к чему:

fadein.time = 10 - скорость, с которой картинка плавно появится на экране, чем значение меньше, тем быстрей появится картинка
fadeout.time = 10 - - скорость, с которой картинка плавно исчезает с экрана, чем значение меньше, тем быстрей исчезнет картинка
menu.pos = 159,158 - позиция на экране самого меню (тобишь окно для выбора режима)
menu.item.font = 2,0,0 - шрифт букв в меню. Первая цифра 2 говорит о том, что он будет истпользовать Font2, который мы подключали во 2-ом шаге. Цифра 0 обозночает цветовую гамму шрифта, третью цифру лучше не менять.
menu.item.active.font = 2,5,0 - шрифт выделеного меню или режима. Он отличается только цветом, так как вторая цифра у нас 5
menu.item.spacing = 0, 13 - Расстояние между надписями в меню

menu.itemname.arcade = "ARCADE" - надпись в меню для режима аркады. Если вы не хотите данный режим, то вместо букв просто напишите = ""
menu.itemname.versus = "VS MODE" - надпись в меню для режима поединка. Убирание идентично предыдущему.
menu.itemname.teamarcade = "TEAM ARCADE" - надпись в меню для режима командной аркады. Убирание идентично предыдущему.
menu.itemname.teamversus = "TEAM VS" - надпись в меню для режима командного поединка. Убирание идентично предыдущему.
menu.itemname.teamcoop = "TEAM CO-OP" - надпись в меню для режима командного сотрудничества. Убирание идентично предыдущему.
menu.itemname.survival = "SURVIVAL" - надпись в меню для режима выживания. Убирание идентично предыдущему.
menu.itemname.survivalcoop = "SURVIVAL CO-OP" - надпись в меню для режима командного выживания. Убирание идентично предыдущему.
menu.itemname.training = "TRAINING" - надпись в меню для режима тренировки. Убирание идентично предыдущему.
menu.itemname.watch = "WATCH" - надпись в меню для режима наблюдения. Убирание идентично предыдущему.
menu.itemname.options = "OPTIONS" - надпись в меню для режима опций. Убирание идентично предыдущему.
menu.itemname.exit = "EXIT" - надпись в меню для выхода. Убирание идентично предыдущему.

menu.window.margins.y = 12, 8 - размер окна для надписей меню.
menu.window.visibleitems = 5 - сколько надписей видно одновременно.
menu.boxcursor.visible = 1 - 1 - видимость стандартного курсора меню, 0 - станет невидимым.
menu.boxcursor.coords = -58,-10,57,2 - координаты на экране стандартного курсора.

cursor.move.snd = 100,0 - звук перемещения курсора (берется из подключенного файла музыки в шаге 2). Первое значение 100 обозначает группу звука, второе - его номер в группе.
cursor.done.snd = 100,1 - звук выбора. Берется оттуда же
cancel.snd = 100,2 - звук отмены, тоже находится в подключенном файле.

Вот мы и настроили меню. В следующем шаге я опишу установку графики на главном меню.

5. Графика в главном меню
Следующим шагом нам надо сделать графику для нашего меню, так как просто черный экран и буквы нас не устраивают. . Следующим заголовком должно идти [TitleBGdef]. Тут один параметр:
bgclearcolor = 0,0,0 - это стандартный цвет фона. Как вы поняли три цифры - это красный, синий и зеленый.

Так, фон у нас есть. Что же дальше? Дальше нам надо повставлять картинки. Для этого мы в Fighter Factory откроем вкладку sprites, как на скрине

Затем там мы жмем на кнопку "открыть"(на скрине) и выбираем .sff файл, который мы подключили во 2-ом шаге.

Итак, файл открыт, и нам надо вставить туда нужные нам картинки, которые мы хотим увидеть в скринпаке. Для этого мы жмем на кнопку "добавить" (на скрине), устанавливаем нужную вам группу, и добавляем.

Обратите внимание, все картинки должны быть в формате .pcx и в палитре 256 цветов(для этого и требуется Photoshop или PhotoImpact). Добавили? Теперь мы переходим к коду и следущим заголовком надо написать [TitleBG 0]
Теперь давайте разберемся в структуре добавления изображения на экран:

type = normal - определяет тип изображения: Normal - нормальное, Parralax - паралельное и Anim - анимация
spriteno = 5, 1 - группа и номер спрайта/картинки из подключенного файла (только для Normal & Parralax)
start = 0, 145 - Начальные координаты рисунка
width = 400, 1200 - чесслово, хр*н знает, нафига оно нужно, скока юзал, никаких от него эффектов
tile = 1,1 - дублирование изображения: первая 1 -по горизонтали, вторая 1 - по вертикали
tilespacing = 350,0 - расстояние между дублированными изображениями, опять же сначала по оси X, затем Y.
velocity = -1,1 - скорость перемещения по экрану. Первое значение - по оси Х, второе - по оси Y.
ActionNo = 2000 - указание на код анимации (только для Anim).
trans = sub - Тип прозрачности: Sub - инверсия цветов, с прозрачностью; Add - Просто прозрачность; None - нету.
Mask = 1 - отключает задний фон картинки.

Вот мы и вставили картинку, она может "плавать" по экрану, быть прозрачной. В следующем шагу настройка Anim типа изображений.

6.Анимация
Здесь я опишу как работает анимация в скринпаках. Для этого вам сначала нужно создать [Title BG] с параметром type = anim и actionno = **** для перехода к самой анимации. Когда вы напишите все остальные нужные вам параметры, с новой строки вы должны начать код анимации:
[Begin Action ****] - вместо звезд ставьте то значение, которое вы указали в параметре Actionno = ****.
В принципе код анимации прост. Сейчас я опишу его строение:
410,0,0,0, 2 - это и есть описание одного кадра анимации. Давайте разберемся в нем:
410 - номер группы изображений в подключенном файле спрайтов.
0 - номер изображения 0 в группе 410.
0 - смещение по горизонтали от начальных координат.
0 - смещение по вертикали от начальных координат.
2 - время пребывания кадра на экране.
Вот и все. Если вы хотите еще один кадр в анимации, просто напишите подобный код в следующей строке. Шаг анимация пройден!

7. Выбор персонажей
Вот мы и подошли к окну выбора персонажей. Сдесь все идет также по аналогии: сначала опись скриптов, затем графика. Со скриптов и начнем. Заголовок должен быть [Select Info]. После него идет описание выбора персонажей:
fadein.time = 10 - скорость, с которой картинка плавно появится на экране, чем значение меньше, тем быстрей появится картинка
fadeout.time = 10 - скорость, с которой картинка плавно исчезает с экрана, чем значение меньше, тем быстрей исчезнет картинка
rows = 5 - количество строк ячеек для перснонажей
columns = 5 - количество столбцов ячеек для персонажей
wrapping = 0 - при 1 позволяет курсору крутится вокруг ячейки
pos = 68,63 - самая верхняя левая точка свей таблицы ячеек, то-есть координаты ее расположения.
showEmptyBoxes = 0 - при 1 показывает пустые ячейки персонажей, при 0 нет.
moveOverEmptyBoxes = 0 - при 1 позволяет водить курсором по пустым ячейкам, при 0 нет.
cell.size = 33,32 - размер каждой ячейки.
cell.spacing = 14,6 - расстояние между каждой ячейкой: по горизонтали, по вертикали соответственно.
cell.bg.spr = 412,1 - группа и номер спрайта для ячейки.
cell.random.spr = 412,0 - группа и номер спрайта для ячейки случайного выбора.
cell.random.switchtime = 3 - время смены рандомного персонажа на следующего.
p1.cursor.startcell = 0,0 - номер строки и ряда первоначального положения курсора 1-го игрока.
p1.cursor.active.**** = 410 - Номер анимки или спрайта для курсора 1-го игрока. Хотите анимацию, тогда вместо **** пишите anim, спрайт - spr, причем, если вы выбрали аним, то это значение раносильно Actionno в устаноке картинок.
p1.cursor.done.anim = 420 - анимация выбора перса 1-ым игроком, или спрайт, как и выше (только если вы вставляете спрайт, не забудьте через запятую дописать номер изображения в группе).
p1.cursor.move.snd = 100,0 - звук перемещения курсора 1-го игрока.
p1.cursor.done.snd = 100,1 - звук выбора перса 1-ым игроком
p1.random.move.snd = 100,0 - звук перебора персов ячейкой случайного выбора.
p2.cursor.startcell = 0,4 - дальше все аналогично, но для второго игрока.
p2.cursor.active.anim = 410
p2.cursor.done.anim = 420
p2.cursor.blink = 1 - моргание курсора 2-го игрока, когда оба курсора стоят на одной ячейке.
p2.cursor.move.snd = 100,0
p2.cursor.done.snd = 100,1
p2.random.move.snd = 100,0
random.move.snd.cancel = 1 - звук отмены ячейки случайного выбора.
stage.move.snd = 100,0 - звук перемещения на другую карту.
stage.done.snd = 100,1 - звук выбора карты.
cancel.snd = 100,2 - звук отмены.
portrait.offset = 0,0 - расположение портретов.
ortrait.scale = 1,1 - масштабирование портрета.
title.offset = 160,38 - Расположение заголовка, Аркада, например.
title.font = 4,0,0 - Шрифт для заголовка.

p1.face.offset = 1,1 - позиция для большого портрета 1-го игрока.
p1.face.scale = 1,1 - масштабирование этого портрета.
p1.face.facing = 0 - инверсия портрета, то есть, если =1, то картинка будет повернута в другую сторону.
p2.face.offset = 1,1 - позиция для большого портрета 2-го игрока. Дальше идет аналогично тому, что выше, только для 2-го игрока.
p2.face.scale = 1,1
p2.face.facing = 0

p1.name.offset = 60,235 - позиция для надписи имени перса, выбранного 1-ым игроком.
p1.name.font = 4,0,0 - шрифт этой надписи, если хотите,чтобы ее не было, просто введите = -1.
p2.name.offset = 260,235 - тоже самое, но для 2-го игрока.
p2.name.font = 4,0,0

stage.pos = 175,190 - положение надписи выранной карты.
stage.active.font = 4,1,0 - первый шрифт стэйджа.
stage.active2.font = 4,2,0 - вотрой шрифт стэйджа. Здесь, как видите, используется один и тот же шрифт, но разным цветом, и это создает эффект мигания.
stage.done.font = 4,2 - цвет шрифта надписи, когда вы выбрали арену.

teammenu.move.wrapping = 0 - вращение при перемещении командного меню.
p1.teammenu.pos = 29, 189 - положение командного меню для 1-го игрока. Я надеюсь, что вы знаете, что такое командное меню. Если нет, то это можно узнать даже в Naruto Battle Arena 2, когда вы выбираете командный режим. Там вы видите надписи Single,Team, и тд, и можете выбирать: 1-му быть, в паре, или играть 4-мя по очереди. Это и есть командное меню.
p1.teammenu.bg.spr =****,****/b] - фоновый спрайт для командного меню, или анимация, если вы вместо [b]spr напишите anim.
p1.teammenu.selftitle.font = 4,0, 0 - шрифт заголовка для своего меню.
p1.teammenu.selftitle.text ="****" - сам текст заголовка.
p1.teammenu.enemytitle.font = 4,0, 0 - шрифт заголовка меню противника.
p1.teammenu.enemytitle.text ="****" - текст этого заголовка.
p1.teammenu.move.snd = 100,0 - звук перемещения в курсора в командном меню.
p1.teammenu.value.snd = 100,0 - звук при изменении количества игроков в твоем командном меню.
p1.teammenu.done.snd = 100,1 - звук выбора в командном меню.
p1.teammenu.item.offset = 0,20 - расположение командного меню
p1.teammenu.item.spacing = 0,10 - расстояние между обьектами в командном меню.
p1.teammenu.item.font = 4,0, 0 - шрифт надписей в командном меню.
p1.teammenu.item.active.font = 4,1, 0 - активный шрифт надписи в меню.
p1.teammenu.item.active2.font = 4,2, 0 - 2 активный шрифт, для мерцания.
p1.teammenu.value.icon.offset = 22,-9 - расположение иконок в командном меню (в стандартном мугене это формы человечков).
p1.teammenu.value.icon.spr = 181,0 - спрайт этих иконок
p1.teammenu.value.empty.icon.offset = 22,-9 - спрайт пустых иконок, то есть, когда их не выбирают.
p1.teammenu.value.empty.icon.spr = 182,0 - распложение пустых иконок, то есть можно делать так, что при включении этой иконки в общий список, она будет менять свое положение.
p1.teammenu.value.spacing = 6,0 - расстояние между иконками.

p2.teammenu.pos = 290, 210 - аналогично тому что выше, но для командного меню второго игрока.
p2.teammenu.bg.spr = ****,****
p2.teammenu.selftitle.font = 4,0, 0
p2.teammenu.selftitle.text = "****"
p2.teammenu.enemytitle.font = 4,0, 0
p2.teammenu.enemytitle.text = "****"
p2.teammenu.move.snd = 100,0
p2.teammenu.value.snd = 100,0
p2.teammenu.done.snd = 100,1
;p2.teammenu.item.offset = 0,20
p2.teammenu.item.spacing = 0,10
p2.teammenu.item.font = 4,0, 0
p2.teammenu.item.active.font = 4,1,0
p2.teammenu.item.active2.font = 4,2,0
p2.teammenu.value.icon.offset = -30,-10
p2.teammenu.value.icon.spr = 191,0
p2.teammenu.value.empty.icon.offset = -30,-10
p2.teammenu.value.empty.icon.spr = 192,0
p2.teammenu.value.spacing = -6,0

Когда вы все это написали, идет подключение рисунков,анимаций и тд и тп. Это дело происходит аналогично подлючению всего вышеперечисленного в главном меню, только заголовки должны быть [TitleBG **] - всемто звезд пишите номер,начиная с 0,затем 1,2, и так далее.

8. VS меню.
Вот мы и подошли к написанию Versus Screen. Это по сути то окно где показывают перед раундом кто против кого сражается. Как и все предыдущие пункты давайте разберемся в коде этого окна:
[VS Screen] - этот заголовок служит определителем для МУГЕНА что здесь описываются параметры ВС окна.
time = 150 - этот параметр задает продолжительность нахождения ВС окна на экране.
fadein.time = 15 - этот параметр отвечает за скорость появления этого окна из черного фона.
fadeout.time = 15 - обратный параметр предыдущему. Задает скорость исчезновения окна.
p1.pos = 20,31 - отвечает за положение портрета первого персонажа из его файла спрайтов 9000,1 на координатах Х,У в данном окне.
p1.facing = 1 - устанавливает отражение портрета 1-го игрока. Тоесть если будет 1 - то портрет будет направлен в ту сторону в которую он смотрел изначально, а если -1 то в противоположную.
p1.scale = 1,1 - масштаб портрета 1-го игрока по осям Х и У. Если хотите чтоб портрет был больше оригинальных размеров увеличьте эти числа, меньше - уменьшите.
p2.pos = 299,31 - отвечает за положение портрета второго персонажа из его файла спрайтов 9000,1 на координатах Х,У в данном окне.
p2.facing = -1 - отражение портрета 2-го персонажа. Как видите у меня он -1, значит если персонаж будет один и тот же, то портреты в ВС окне будут смотреть друг на друга
p2.scale = 1,1 - масштаб портрета 1-го игрока по осям Х и У. Если хотите чтоб портрет был больше оригинальных размеров увеличьте эти числа, меньше - уменьшите.
p1.name.pos = 78,190 - позиция Надписи имени 1-го персонажа. Если вы пишите имя шрифтом игры, а не врисовываете его в портрет как это делаю я в своей игре, тогда вам нужно настраивать этот параметр.
p1.name.font = 3,0,0 - шрифт который будет использоваться для написания имени 1-го игрока.
p2.name.pos = 241,190 - позиция Надписи имени 2-го персонажа. Если вы пишите имя шрифтом игры, а не врисовываете его в портрет как это делаю я в своей игре, тогда вам нужно настраивать этот параметр.
p2.name.font = 3,0,0 - шрифт который будет использоваться для написания имени 2-го игрока.

Когда вы все это написали, идет подключение рисунков,анимаций и тд и тп. Это дело происходит аналогично подлючению всего вышеперечисленного в главном меню, только заголовки должны быть [VersusBG **] - всемто звезд пишите номер,начиная с 0,затем 1,2, и так далее.
MUGEN WORKS - ANIME,CHARACTERS,STAGES,SCREENPACK,LIFEBAR » M.U.G.E.N » Туториалы / Tutorials » Туториал - создание скринпака (Туториал - создание скринпака)
  • Страница 1 из 1
  • 1
Поиск: