Главная | Форум | Мой профиль | Выход | Регистрация | Вход Приветствую Вас Гость
Меню Сайта
    Главная Форум Mp3 Топ сайтов Online NaRuTo TV Каталог файлов Картинки
Категории файлов
    Видео NaRuTo Видео Death Note Видео Bleach Игры Музыка, клипы NaRuTo Музыка, клипы DT Музыка, клипы Bleach Манга Naruto Манга Death NoTe Манга Bleach
Категории видео
    Naruto 1-220 Naruto Shippudden Мувики Movie Flash NTSD
Категории картинок
    Обои Приколы Арт Разное
Статьи
    Все статьи NTSD Naruto Death Note Bleach
Наша сеть
Сеть: ntsd-naruto
Код: пробел

#2
Сеть: NLWS
Код: ntsd-naruto.ru

Всё для ntsd & naruto

Ntsd-naruto - World of Naruto -
Главная » Файлы » Статьи » NTSD

Создаем собственного персонажа для LF [ntsd]
[ ] 17.06.2009, 20:34


Поясню сразу LF - Little Fighters 

Данный гайд я не писал собвственно ручно (скачан с офф сайта LF), поэтому если какие-то вопросы вы задавайте я попробую ответить 
Честно скажу сам лично пока не пробывал все руки никак не дойдут... 

1. Введение. 
Этот гайд предназначен для тех, кто хочет создать нового персонажа в LF2, но не знает как. 

2. Необходимые программы. 
Для создания персонажа вам обязательно потребуется кодировщик и декодировщик для редактирования *.dat файлов из LF2. Одной из лучших программ для этого я считаю Data Changer by Jiquera Mondilano. Конечно можно использовать и программы Decrypt и Encrypt, но в них не так удобно работать, как в Data Changer. Также потребуется хороший редактор графики и просмоторщик, например Adobe Photoshop и ACDSee. 

3. Начинаем работу. 
Ну что, если вы готовы приступить, то запускайте Data Changer и открывайте davis.dat (мы будем использовать персонажа Davis в качестве примера). Когда программа загрузит файл, в окне редактора мы увидим примерно следующее: 

name: Davis 

head: sprite\sys\davis_f.bmp 

small: sprite\sys\davis_s.bmp 
file(0-69): sprite\sys\davis_0.bmp w: 79 h: 79 row: 10 col: 7 

file(70-139): sprite\sys\davis_1.bmp w: 79 h: 79 row: 10 col: 7 

file(140-209): sprite\sys\davis_2.bmp w: 79 h: 79 row: 10 col: 7 

walking_frame_rate 3 

walking_speed 5.000000 

walking_speedz 2.500000 

running_frame_rate 3 

running_speed 10.000000 

running_speedz 1.600000 

heavy_walking_speed 3.700000 

heavy_walking_speedz 1.850000 

heavy_running_speed 6.200000 

heavy_running_speedz 1.000000 

jump_height -16.299999 

jump_distance 10.000000 
jump_distancez 3.750000 

dash_height -10.000000 

dash_distance 18.000000 

dash_distancez 5.000000 

rowing_height -2.000000 
rowing_distance 5.000000 

Эта часть - самая главная часть кода персонажа, сейчас я подробно объясню вам, что означает каждая строка в этом коде: 
name: Davis --> Имя персонажа. 
head: sprite\sys\davis_f.bmp --> Путь к спрайту davis_f.bmp в папке LF2. Этот спрайт отвечает за картинку при выборе персонажа в LF2. 
small: sprite\sys\davis_s.bmp --> Путь к спрайту davis_s.bmp в папке LF2. Этот спрайт отвечает за маленькую картинку персонажа на статус баре во время игры. 

file(0-69): sprite\sys\davis_0.bmp w: 79 h: 79 row: 10 col: 7 

file(70-139): sprite\sys\davis_1.bmp w: 79 h: 79 row: 10 col: 7 
file(140-209): sprite\sys\davis_2.bmp w: 79 h: 79 row: 10 col: 7 
Эти строчки показывают путь к спрайтам davis_0, davis_1, davis_2. В этих спрайтах содержаться анимация персонажа. 
Параметр w: 79 означает, что ширина одной яйчейки под картинку, в файле спрайта, равна 79. 
Параметр h: 79 означает, что высота одной яйчейки под картинку, в файле спрайта, равна 79. 
Параметры row: 10 и col:7 показывают сколько всего рядов и колонок в файле спрайта. В случае с Davis - 10 рядов и 7 колонок. 

walking_speed --> Скорость ходьбы. 
walking_speedz --> Скорость ходьбы по кооординате Z (вверх/вниз), во время ходьбы по координате X (влево/вправо). 
running_speed --> Скорость бега. 
running_speedz --> Скорость бега по кооординате Z (вверх/вниз), во время бега по координате X (влево/вправо). 
heavy_walking_speed --> Скорость ходьбы, когда персонаж держит тяжелый предмет (например камень). 
heavy_walking_speedz --> Скорость ходьбы по координате Z, когда персонаж держит тяжелый предмет (например камень) и двигается по координате X. 
heavy_running_speed --> Скорость бега, когда персонаж держит тяжелый предмет. 
heavy_running_speedz --> Скорость бега по координате Z, когда персонаж держит тяжелый предмет. 
jump_height --> Высота прыжка. 
jump_distance --> Дистанция прыжка по оси X. 
jump_distancez --> Смещение по координате Z во время прыжка в дистанцию с нажатой кнопкой Up или Down. 
dash_height --> Высота прыжка во время бега. 
dash_distance --> Дистанция прыжка во время бега. 
dash_distancez --> Смещение по координате Z во время прыжка в дистанцию во время бега с нажатой кнопкой Up или Down. 
rowing_distance --> Дистанция подката. 

===================================================================== 
-Мы будем использовать бег и удар Дєвиса для следующих нескольких примеров. 
_________________________________________________________________________________ 

72 super_punch 

pic: 8 state: 3 wait: 2 next: 73 dvx: 0 dvy: 0 dvz: 0 centerx: 28 centery: 79 hit_a: 0 hit_d: 0 hit_j: 0 

itr: 

kind: 0 x: 40 y: 5 w: 35 h: 45 dvx: 3 dvy: -10 fall: 70 arest: 15 bdefend: 60 injury: 40 

itr_end: 

bdy: 

kind: 0 x: 26 y: 12 w: 35 h: 66 

bdy_end: 

_________________________________________________________________________________ 
72 super_punch ---> номер кадра и название движения (имя обычно сокращенное)+(название движения здесь только для того чтоб было легче найти нужный кадр) 
pic: 8 ---> картинка которую загружает кадр (!картинки в спрайтах считаются от левого угла до правого и первая картинка не 1 а 0!) 
state: 3 ---> состояние персонажа* 
wait: 2 ---> как долго длится кадр 
next: 73 ---> следующий кадр 
dvx: 0 ---> насколько персонаж продвигается в перед 
dvy: 0 ---> насколько персонаж продвигается вверх \ вниз (!Когда в небе и на земле НЕ вверх и вниз вовремя ходьбы!) 
dvz: 0 ---> насколько персонаж продвигается вверх \ вниз (!теперь это верх и вниз вовремя ходьбы!) 
centerx: 28 ---> centerx используется чтоб показать где центр персонажа (!Я не советую вам парится с этим!) 
centery: 79 ---> точка в которой ноги персонажа (если показатель больше 79 то персонаж окажется в воздухе) 

----------------------------------------------------------------------------------------------------------------- 
hit_a: 0 ---> указывает какой кадр последует дальше если вы нажмете атаку 
hit_d: 0 ---> указывает какой кадр последует дальше если вы нажмете защиту 
hit_j: 0 ---> указывает какой кадр последует дальше если вы нажмете прыжок 
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 
hit_fj: ---> указывает какой кадр последует дальше если вы нажмете d>j вовремя этого кадра 
hit_uj: ---> указывает какой кадр последует дальше если вы нажмете d^j вовремя этого кадра 
hit_dj: ---> указывает какой кадр последует дальше если вы нажмете dvj вовремя этого кадра 
hit_fa: ---> указывает какой кадр последует дальше если вы нажмете d>a вовремя этого кадра 
hit_ua: ---> указывает какой кадр последует дальше если вы нажмете d^a вовремя этого кадра 
hit_da: ---> указывает какой кадр последует дальше если вы нажмете dva at вовремя этого кадра 
hit_ja: ---> указывает какой кадр последует дальше если вы нажмете dja вовремя этого кадра 

----------------------------------------------------------------------------------------------------------------- 
itr: ---> атака начинается 
kind: 0 ---> тип атаки* 
x: 40, w: 35 ---> как далеко атакует (!вперед и назад!) (если вы учили алгебру то должны знать что ось х это движение влево и вправо ,а w это ширина) 
y: 5, h: 45 ---> как высоко атакует (!вверх и вниз на земле и в небе!) (y – верх низ h - высота) 
dvx: 3 ---> как далеко падает враг от удара (допустимы негативные значения) 
dvy: -10 ---> как высоко подлетит противник после удара (!негативное значение допустимо!) 
fall: 70 ---> шанс того что противник упадет 
arest: 15 ---> хз 
bdefend: 60 ---> шанс пробить защиту противника 
injury: 40 ---> сколько атака наносит урона* 
itr_end: ---> конец атаки 
---------------------------------------------------------------------------------------------------------------- 
bdy: ---> начяло команд относящихся к телу (действия тела) 
kind: 0 ---> ?Special Effect? (I'm not sure what will happen, maybe I'll experiment with it later) 
x: 26, w: 35 ---> How far when attacked 
y: 12, h: 66 ---> How far when attacked 
bdy_end ---> конец команд относящихся к телу 

---------------------------------------------------------------------------------------------------------------- 
mp: сколько манны жрет скил 
============================================================== 
ЗВУК 
---------------------------------------------------------------- ----------------------------------------------- 
Добавить звук в игру не трудно, труднее сделать чтоб звук использовался в нужный момент 
Чтобы добавить новый звук нужно скопировать его в папку "Data" 
Чтобы добавить движению звук нужно в кадре во второй строке 
(после pic:, etc): !sound: data\(sound name).wav! 

Пример: 
У меня есть звук "beep.wav" в папке "Data" 
Теперь я хочю чтоб этот звук играл когда мой персонаж идет 
Я ставлю!sound: data\beep.wav! во вторую линию кадра ходьбы 
Теперь когда персонаж идет звук играет. 

============================================================== 
УРОН 

--------------------------------------------------------- ------------------------------------------------------ 
Мы знаем что увеличивая значение параметра injury мы увеличиваем урон наносимый противнику но есть еще спец команды для этого параметра: 
effect: 0 --> просто удар 
effect: 1 --> Острое оружие (эффект крови) 
effect: 2 --> Огонь 
effect: 3 --> Лед 
effect: 4  проходит сквозь врагов (?используется например для отхиливающих магий чтоб не хилило врагов?) 
effect: 5 или выше ---> ? 
effect: 20 огонь _______________________________________________________________________________ 

injury: 40 

+++++++++++++++++++ 
Потом добавляем effect: 2 

+++++++++++++++++++ 

injury: 40 effect: 2 

-------------------- 
Теперь атака бет на 40 урона и поджигает 

________________________________________________________________________________ 

=========================================== =================== 
СПРАЙТЫ 

------------------------------------------------------------------------------------------------------------ ---- 
The Высота и ширина спрайта может бить изменена в начале даты. Стандартно 79 на 79 пикселей. 
!первая картинка спрайта 0 не 1! 
Когда говорят 2 ряда это значит не количество рядов а количество картинок 

============================================================== 

$ $ 
$Здесь заканчивается базовый курс. $ 

Продолжаем....... 

$ $ 

x: ширина стартовой точки в спрайте 
y: высота стартовой точки в спрайте 

-1 

-1 -0---------------------79 

----------------------- 

----------------------- 

----------------------- 

79 
Но всё место 79x79 чаще всего не используется. 
К примеру ударDavisа 

72 super_punch 

pic: 8 state: 3 wait: 2 next: 73 dvx: 0 dvy: 0 dvz: 0 centerx: 28 centery: 79 hit_a: 0 hit_d: 0 hit_j: 0 

itr: 

kind: 0 x: 40 y: 5 w: 35 h: 45 dvx: 3 dvy: -10 fall: 70 arest: 15 bdefend: 60 injury: 40 

itr_end: 

bdy: 

kind: 0 x: 26 y: 12 w: 35 h: 66 bdy_end: 

>pic: 8 

the pic no. from 0 to the no. 

>state: 3 
Состояние персонажа 
state: 0 = стоит 
state: 1 = идет 
state: 2 = бежит 
state: 3 = атакует 
state: 7 = защита 
state: 1700 = хил самого себя 

>wait: 2 
Как долго длится кадр. 

>next: 73 
Номер картинки в спрайте. 

>dvx: 0 dvy: 0 dvz: 0 

example: 
dvx: 10 перемещается вперед на 10 кубов ,если -10 это значит движение назад 
dvy: -10 движение вверх на 10(like jump) если 10 движение на землю на 10 
dvz: - это позиция движения относительно земли 

>centerx: 28 centery: 79 
centerx: 28 не важно, centery: 79, высота персонажа (если больше 79 персонаж летает) 

>hit_a: 0 hit_d: 0 hit_j: 0 
hit_a: 0 смотрите выше 

hit_fj: d>j 

hit_uj: d^j 

hit_dj: dvj 

hit_fa: d>a 

hit_ua: d^a 

hit_da: dva 

hit_ja: dja 

> itr: 

kind: 0 x: 40 y: 5 w: 35 h: 45 dvx: 3 dvy: -10 fall: 70 arest: 15 bdefend: 60 injury: 40 

itr_end: 
kind: 0—тип атаки 0 – нормальная, 10 - флейта 
x: 40—стартовая точка x y: 5 стартовая точка y 
w: 35—ширина из x, h: 45—высота из y 

>bdy: 

kind: 0 x: 26 y: 12 w: 35 h: 66 

bdy_end: 
kind: 0 – тип атаки 

x: 26 y: 12 w: 35 h: 66> attack a bit 
effect—эффект атаки (см выше) 

special: 

4300: hp-40 mp-300 

10100: hp-100 mp-100,etc 

-5050: hp+500 mp+500,etc 
fall—падения персонажа если 70 персонаж падает если 60 персонаж згибается если 1 перс никогда не упадет, 
bdefend—сколько процентов защиты пробито у противника 
,когда вы атакуете этот параметр увеличивается... 
Transform - трансформация 
state: 80xx xx=id перса 

команда opoint сумонит оружие (как меч фриза), параметр oid указывает id оружия. 

Создание лвлов 

1 id: 0 #stage 1-1 

2 bound: 900 

3 id: 30 hp: 50 times: 2 ratio: 1.0 



5 bound: 1300 

6 id: 30 hp: 50 times: 2 ratio: 1.0 

7 id: 31 hp: 50 times: 1 

8 id: 31 hp: 50 times: 1 ratio: .4 



10 bound: 1700 

11 id: 3000 hp: 50 times: 2 

12 id: 3000 hp: 50 times: 2 ratio: 1.0 

13 

14 bound: 2200 

15 id: 122 x: 1100 #milk 

16 id: 123 x: 1100 #beer 

17 id: 30 hp: 50 ratio: 1 

18 id: 30 hp: 50 

19 id: 31 hp: 50 

20 id: 31 hp: 50 ratio: .4 

21 id: 31 hp: 50 ratio: .2 

22 

23 
В строке 1, мы видим параметр "id: 0" and "#stage 1-1". 
"id: 0"означает какой это уровень. Значение "0" укажет на уровень 1, а "1" укажет на уровень 2 и тд. уровень 2 на самом деле в игре уровень 1-2 а уровень 7,в id: "8", будет уровнем 2-2. 
"#stage 1-1" это коментарій чтоб легче было понять что это за уровень. Все что пишется после знака # не влияет на код. 
В строках 2-4,мы видим параметры в которых показаны фазы появления врагов . кждая фаза в игре обозначается стрелочкой Go и сопровождается появлением врага если врагов больше нет то стрелка указывает на переход на следующий уровень. 
"bound: 900" указывает на длину участка одной фазы, в конце этой длинны пока фаза не закончилась нас остановит невидимая стена. Длинна второй фазы еще 1300, на фазе 2 можно бегать 900+1300. 

Все параметры обозначают объекты в фазе. Это враги, заложники, оружие, бутылки. 
К примеру в фазе 1 мы видим: 

id: 30 hp: 50 times: 2 ratio: 1.0 
"id: 30"это id объекта . Все id прописаны в Data.txt 
"id:30"означает бандита. 
"hp: 50" Указывает на то что у бандита 50хп. 
"times: 2"Показывает сколько раз появляется объект. В данном случае после смерти первого бандита выйдет второй 
"ratio: 1.0"показывает ситуацию когда играет больше 1 человека. В данном случае по 1 бандиту на персонажа. Если параметр изменить на 5 то на каждого персонажа выйдет 5 бандитов, а если изменить до 0.5 то на 2 персонажей выйдет только 1 бандит а на 4 два и тд. 
В линиях 15 и 16 мы видим: 

id: 122 x: 1100 #milk 

id: 123 x: 1100 #beer 

(x: 1100)- это указывает на то где на поле появится объект. Если установить длину поля 2200 то молоко появится по центру 
Посмотрим на другой пример, теперь это уровень 4-4 (id: 33). 

bound: 1800 

id: 300 hp: 100 act: 40 x: 1000 y: 0 reserve: 8 

id: 300 hp: 100 act: 40 x: 1100 y: 0 reserve: 8 

id: 122 x: 900 #milk ratio: 2 

id: 123 x: 900 #beer ratio: 1 

id: 3000 hp: 50 times: 2 ratio: 2 

Рассмотрим строки: 

id: 300 hp: 100 act: 40 x: 1000 y: 0 reserve: 8 
Id 300 это criminal.dat (враг). act: 40указывает на то какой враг имеется ввиду . если мы посмотрим на criminal.txt, мы увидим: 

40 bandit 

pic: 20 state: 0 wait: 7 next: 41 dvx: 0 dvy: 0 dvz: 0 centerx: 38 centery: 78 hit_a: 0 hit_d: 0 hit_j: 0 

bdy: 

kind: 1043 x: 21 y: 18 w: 43 h: 62 

bdy_end: 

Сейчас мы не смотрим на код. Все что нам надо это"40 bandit".Это значит что act: 40 указывает на бандита. (0 монах, 10 is Марк... и тд.). 
"x"это точка где появится бандит. A негативное значение "x" # (ex. x: -1000) значит что враг появится сзади нас ...на 1000 сзади от конца экрана. 

======================================= 

======================================= 

Автор НАСТОЯТЕЛЬНО рекомендует создать копию data.txt во избежание проблем 

Активация всех персов: 

Открываем data.txt. 

Первый кусочек даты с персонажами. Найдите его 

Вы должны увидеть Bandit, Hunter, Mark, LouisEX, Firzen, и тд. 

Скопируйте эти строчки и перенесите их в центр даты . 

Теперь меняем их id. Их стандартные id используются в режиме прохождения уровней. Чтоб не мучатся добавьте перед каждым "8". К примеру: Bandit номер 30, а будет номер 830. Только убедитесь что номер еще не использован (убедитесь что нет повторов) . 
If Теперь вам не надо прописывать код в игре для открытия персов . 

Добавление персонажей: 

Копируем дату нового персонажа в \data\ 

Открываем data.txt. 

Теперь все что вам надо сделать так это придумать ему id и записать в части где у нас игровые персонажи(центр). Только убедитесь что номер еще не использован (убедитесь что нет повторов) . 

Дальше тип, у персонажей всегда тип 0. 

Если вы все правильно сделали то должно быть как тут : 

id: Свой номер type: 0 file: data\"имя вашего перса(а точнее имя его файла даты)".dat 

7.Ваш персонаж должен появится в игре.




Поделитесь этой новостью с друзьями
BB-Code
Ссылка
Категория: NTSD | Добавил: DRaGoN
Просмотров: 4860 | Загрузок: 0 | Комментарии: 3 | Рейтинг: 1.0/2 |
Всего комментариев: 3
3 sasce  
1
тут ктонить есть если да то помогите я ссылку не вижу
sad sad sad

2 Dreyo  
-1
хотя все спасиб разобрался сам получилось кульно

1 Dreyo  
-1
Спасибо за урок DRaGon! Несколько вопросов:
1.Неполучается сделать прием превращения (как у саске в cs2) можеш обьяснить в облегченной версии, ну что то вроде личного урока?
2.Создаю прием а как поставить комбинацию (типа D > J) не могу понять. dry

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Панель юзера
Гость

Сообщения:

Группа:
Гости
Время:17:11

Гость, мы рады вас видеть. Пожалуйста зарегистрируйтесь или авторизуйтесь!
Логин:
Пароль:
Поиск
На форуме

MayAlena

(1)

Друзья сайта
Все для ntsd & naruto, манга, игры, видео, картинки
Yandex, найдется все
Rambler's Top100
Сайт поддержки cms dle
http://anime-club.info/top100/
Статистика Сайта

Онлайн всего: 1
Гостей: 1
Пользователей: 0


Сегодня были:


[ Кто нас сегодня посетил ]
Copyright ntsd-naruto.at.ua / 2024
www.popularsite.ru