Восстановление Вырезанных Анимаций НПС. — различия между версиями — S.T.A.L.K.E.R. Inside Wiki

Восстановление Вырезанных Анимаций НПС. — различия между версиями

Материал из S.T.A.L.K.E.R. Inside Wiki

Перейти к: навигация, поиск
(Редактирование Восстановление Вырезанных Анимаций НПС)
 
(не показаны 4 промежуточных версий 4 участников)
Строка 1: Строка 1:
=Редактирование Восстановление Вырезанных Анимаций НПС=
+
=Редактирование и восстановление вырезанных анимаций NPC=
'''Нус...Приступим=)'''
+
'''Нус... Приступим =)'''
 
{| class="standart"
 
{| class="standart"
 
|-
 
|-
|'''Мой Тутор думаю поможет новичкам!'''
+
|'''Мой урок, думаю, поможет новичкам!'''
 
|-
 
|-
 
|__________________________________
 
|__________________________________
 
|-
 
|-
|''Первые Шаги...''
+
|''Первые шаги...''
 
|-  
 
|-  
 
|''Что нам нужно???''
 
|''Что нам нужно???''
 
|-  
 
|-  
|''Для восстановления Нам нужно сначала посмотреть что нужно восстанавливать! Так ведь?''
+
|''Для восстановления необходимо сначала посмотреть, что восстанавливать. Так ведь?''
 
|-  
 
|-  
 
|'''1. SDK'''
 
|'''1. SDK'''
Строка 17: Строка 17:
 
|'''2. Конвертер от бардака!'''
 
|'''2. Конвертер от бардака!'''
 
|-  
 
|-  
| '''Ну и естественно хоть чучуть умения в обращении с этими вещами!'''
+
| '''Ну и естественно хоть чуть-чуть умения в обращении с этими вещами!'''
 
|-  
 
|-  
|''Просмотр Анимаций...''
+
|''Просмотр анимаций...''
 
|-  
 
|-  
|''Делаем бантик для конвертации модели из'' '''ogf''' в '''object'''.
+
|''Делаем батник (''файл с расширением .bat, создается в блокноте. прим. Provod[Nik]'' ) для конвертации модели из'' '''ogf''' в '''object'''.
 
|-  
 
|-  
|''Ну возьмем Модельку Наёмника!''
+
|''Ну, возьмем модельку Наёмника!''
 
|-  
 
|-  
 
|''Название:''
 
|''Название:''
Строка 31: Строка 31:
 
|''Путь:''
 
|''Путь:''
 
|- ''\gamedata\meshes\actors\killer''
 
|- ''\gamedata\meshes\actors\killer''
|''Теперь очередь Бантика!''
+
|''Теперь очередь батника!''
 
|-  
 
|-  
|''Бантик:''
+
|''батник:''
 
|-
 
|-
 
|''converter -ogf -object stalker_ki_mask.ogf
 
|''converter -ogf -object stalker_ki_mask.ogf
Строка 41: Строка 41:
 
|_____________________
 
|_____________________
 
|-
 
|-
| ''Всё запускаем бантик и появляется файл:''
+
| ''Всё запускаем батник и появляется файл:''
 
|-
 
|-
 
|'''stalker_ki_mask.object'''
 
|'''stalker_ki_mask.object'''
Строка 49: Строка 49:
 
|''Дальше нажимаем кнопку '' '''append''' ''и загружаем'' '''.skls''' ''файл!''
 
|''Дальше нажимаем кнопку '' '''append''' ''и загружаем'' '''.skls''' ''файл!''
 
|-
 
|-
|''чтобы получить'' '''.skls''' ''файл нам нужно создать опять же бантик и файл с анимациями!''
+
|''чтобы получить'' '''.skls''' ''файл нам нужно создать опять же батник и файл с анимациями!''
 
|-
 
|-
 
|''Мы возьмём файл со сталкерскими анимациями!''
 
|''Мы возьмём файл со сталкерскими анимациями!''
Строка 61: Строка 61:
 
|''\gamedata\meshes\actors''
 
|''\gamedata\meshes\actors''
 
|-
 
|-
|''Бантик:''
+
|''батник:''
 
|-
 
|-
 
| ''converter -omf -skls stalker_animation.omf''
 
| ''converter -omf -skls stalker_animation.omf''
Строка 67: Строка 67:
 
| ''pause''
 
| ''pause''
 
|-
 
|-
|''Всё, запускаем бантик и перед нами файл'' '''stalker_animation.skls'''
+
|''Всё, запускаем батник и перед нами файл'' '''stalker_animation.skls'''
 
|-
 
|-
 
|_____________________________
 
|_____________________________
Строка 175: Строка 175:
 
|''fire''' ''- стрелять''
 
|''fire''' ''- стрелять''
 
|-
 
|-
|''все в Логике НПСа пишем:''
+
|''все в логике НПСа пишем:''
 
|-
 
|-
 
|'''[logic]'''
 
|'''[logic]'''
Строка 187: Строка 187:
 
|________________________
 
|________________________
 
|-
 
|-
|''Вот и всё Анимация Восстановлена!=)''
+
|''Вот и всё анимация восстановлена!=)''
 
|-
 
|-
|''Ну теперь спавним для нашего Чистильщика стул!''
+
|''Ну теперь спауним для нашего Чистильщика стул!''
 
|-
 
|-
 
|''Создаёшь файл в папке'' '''creatures'''
 
|''Создаёшь файл в папке'' '''creatures'''
Строка 203: Строка 203:
 
|'''discovery_dependency ='''
 
|'''discovery_dependency ='''
 
|-
 
|-
|'''$spawn = "taburetka\table"'''  ''-- тут указывается файл и секция (понадобится для спавна)''
+
|'''$spawn = "taburetka\table"'''  ''-- тут указывается файл и секция (понадобится для спауна)''
 
|-
 
|-
 
|''';$prefetch = 32'''
 
|''';$prefetch = 32'''
Строка 211: Строка 211:
 
|'''cform = skeleton'''
 
|'''cform = skeleton'''
 
|-
 
|-
|'''visual = physics\stol\stol_obedenniy.ogf ''' ''-- Визуал стола''
+
|'''visual = physics\stol\stol_obedenniy.ogf ''' ''-- визуал стола''
 
|-
 
|-
 
|'''radius = 1'''
 
|'''radius = 1'''
Строка 269: Строка 269:
 
|'''$spawn = "taburetka\stul"'''
 
|'''$spawn = "taburetka\stul"'''
 
|-
 
|-
|'''visual = physics\stul\stul_1a.ogf''' ''-- Стул''
+
|'''visual = physics\stul\stul_1a.ogf''' ''-- стул''
 
|-
 
|-
 
|''Ах да! чуть не забыл!=)''
 
|''Ах да! чуть не забыл!=)''
 
|-
 
|-
|''Нужно прописать наш файл в'' '''system.ltx''' ''чтобы спавн работал!=)''
+
|''Нужно прописать наш файл в'' '''system.ltx''' ''чтобы спаун работал!=)''
 
|-
 
|-
 
|''куда-нибудь в начало пихаем вот это:''
 
|''куда-нибудь в начало пихаем вот это:''
Строка 281: Строка 281:
 
|''Всё сохраняем!''
 
|''Всё сохраняем!''
 
|-
 
|-
|''Очередь спавна:''
+
|''Очередь спауна:''
 
|-
 
|-
 
|''Cоздаём файл в папке '' '''gamedata\scripts'''
 
|''Cоздаём файл в папке '' '''gamedata\scripts'''
Строка 302: Строка 302:
 
|-
 
|-
 
|}
 
|}
Создатель:[[Участник:ФеНиКс|ФеНиКс]] 10:32, 23 ноября 2009 (UTC)<br>
+
 
 +
 
 
{| class="standart"
 
{| class="standart"
! style="background-color:#E0FFFF" width=20% | Связаться со мной можно
+
|Поправил текстовые и лексические ошибки. '''Provod[Nik]'''                           
|-
+
|По ICQ<br> №559615499
+
|-
+
| ВКонтакте<br> №id19647122
+
|-
+
|На СП(Сталкер-портале)<br>Ник:Николай ФеНиКс
+
 
|}
 
|}
[[Категория: SDK]]
+
 
 +
 
 +
 
 +
[[Категория:Незаконченные_статьи]]

Текущая версия на 16:00, 10 мая 2011

Редактирование и восстановление вырезанных анимаций NPC

Нус... Приступим =)

Мой урок, думаю, поможет новичкам!
__________________________________
Первые шаги...
Что нам нужно???
Для восстановления необходимо сначала посмотреть, что восстанавливать. Так ведь?
1. SDK
2. Конвертер от бардака!
Ну и естественно хоть чуть-чуть умения в обращении с этими вещами!
Просмотр анимаций...
Делаем батник (файл с расширением .bat, создается в блокноте. прим. Provod[Nik] ) для конвертации модели из ogf в object.
Ну, возьмем модельку Наёмника!
Название:
stalker_ki_mask.ogf
Путь:
Теперь очередь батника!
батник:
converter -ogf -object stalker_ki_mask.ogf
pause
_____________________
Всё запускаем батник и появляется файл:
stalker_ki_mask.object
Открываем его в SDK и кликаем на три точки в motion reference , и снимаем все галочки!
Дальше нажимаем кнопку append и загружаем .skls файл!
чтобы получить .skls файл нам нужно создать опять же батник и файл с анимациями!
Мы возьмём файл со сталкерскими анимациями!
Название:
stalker_animation.omf
Путь:
\gamedata\meshes\actors
батник:
converter -omf -skls stalker_animation.omf
pause
Всё, запускаем батник и перед нами файл stalker_animation.skls
_____________________________
Выбор анимации...
В SDK нажимаем на Motion и перед нами появляется список анимаций!
Я нашёл вырезанную анимацию чистки ствола!
Название:
chistit ruje_1
_____________________________
Восстановление...
Для этого нужно два файла:
state_mgr_animation_list.script
state_lib.script
В первом прописываем нашу анимку вот так:
stulik = { prop = { maxidle = 1,
sumidle = 1,
rnd = 100 },
into = { [0] = {"chistit ruje_1", {a="wpn_sig220"}, "chistit ruje_1"} },
out = nil,
idle = { [0] = "chistit ruje_1" },
rnd = nil },
Разъяснение:
Толком я не понял что за что отвечает, но что-то я всё же понял...
stulik -- Здесь можно писать что угодно это название анимки которое будет использоваться при
запись в Логику...
into -- использовать
out -- выкинуть
idle -- идловые анимки.
rnd -- используется для групповых анимаций, типа повернулся влево вправо встал сел...
nil -- не использовать.
Так же Объяснения от Замечательного человека Максим Р.
into - входная анимация (начальная);
out - выходная анимация (конечная);
idle - анимация между into и out;
rnd - случайная анимация, которая будет отыгрываться во время idle случайным образом.
chistit ruje_1 -- тут думаю понятно! (сама анимка)
Т.к. я до конца не разобрался врать не буду, что-то может и не так разъяснил то за что отвечает!
В state_lib.script пишем следующее:
stulik= {weapon = "unstrapped",
movement = nil,
mental = nil,
bodystate = nil,
animstate = nil,
animation = "stulik"
},
Здесь разъяснять без толку, т.к. тут и всё понятно!
НО есть формальности из-за которых у меня и была ошибка( не появлялось оружие в руках)
Поясняю:
strapped - оружие на спине
unstrapped - оружие в руках
none - убрать вообще
drop - бросить
fire' - стрелять
все в логике НПСа пишем:
[logic]
active = remark
'[remark]
anim = stulik
________________________
Вот и всё анимация восстановлена!=)
Ну теперь спауним для нашего Чистильщика стул!
Создаёшь файл в папке creatures
Ну допустим назовём файл taburetka.ltx
и в него конфинги:
'[table]:identity_immunities
'GroupControlSection = spawn_group
discovery_dependency =
$spawn = "taburetka\table" -- тут указывается файл и секция (понадобится для спауна)
;$prefetch = 32
class = II_ATTCH
cform = skeleton
visual = physics\stol\stol_obedenniy.ogf -- визуал стола
radius = 1
;script_binding = bind_physic_object.init
description = inventory_sakbox_01_desc
inv_name =
inv_name_short =
inv_weight = 10
inv_grid_width = 3
inv_grid_height = 3
inv_grid_x = 22
inv_grid_y = 29
cost = 0
can_take = false
[table_2]:table
GroupControlSection = spawn_group
discovery_dependency =
$spawn = "taburetka\table_2"
visual = physics\stol\stol_4.ogf -- тот же стол но с другим визуалом
[table_3]:table
GroupControlSection = spawn_group
discovery_dependency =
$spawn = "taburetka\table_3"
visual = physics\stol\stol_7.ogf -- аналогично
[stul]:table
GroupControlSection = spawn_group
discovery_dependency =
$spawn = "taburetka\stul"
visual = physics\stul\stul_1a.ogf -- стул
Ах да! чуть не забыл!=)
Нужно прописать наш файл в system.ltx чтобы спаун работал!=)
куда-нибудь в начало пихаем вот это:
#include "creatures\taburetka.ltx" '
Всё сохраняем!
Очередь спауна:
Cоздаём файл в папке gamedata\scripts
Назовём его esc_stul.script
в нём пишем:
function esc_stul ()
alife():create("stul",vector():set(-X,Y,Z),l_v,g_v)
end
где XYZ пишем координаты места
где l_v g_v пишем левел и гейм вертексы.
Всё Наш Чистильщик усажен на стул!=)


Поправил текстовые и лексические ошибки. Provod[Nik]
Другие места
LANGUAGE