С помощью ACDC декомпилируем all.spawn Получаем кучу файлов типа : alife_l01_escape , way_l01_escape и тд. Создадим нового непися на Кордоне. Открываем alife_l01_escape, и крутим в самый низ. Если у вас чистая игра и вы ничего не делали в Олл спавне то посленяя секция у вас будет под номером 869. Добавляем туда вот такой код(в конец):
Код
[l01_escape_93] ; cse_abstract properties section_name = stalker name = noobik position = -172.21215820313,-19.941787719727,-161.09272766113 direction = 0.062321275472641,0.00316426996141672,0.0140644172206521
Разъясню некоторые пункты, чтобы в след. раз не пришлось прибегать к тутору.
Цитата
section_name = stalker -//это для игры тут пишется к примеру если ето у тебя сталкера или бандюки то должно быть section_name = stalker name = noobik -//пишем что хотим position = -172.21215820313,-19.941787719727,-161.09272766113 -//позиция direction = 0,0,0 -// направление взгляда(можно писать всегда нули)
; cse_alife_trader_abstract properties money = 5000 -//его бабло character_profile = esc_noobik -//ссылка на профиль в character_desc_локация(раз создаем в алайф эскейп значит и профиль будет искатсья в характер_деск_ескейп)
upd:next_game_vertex_id = 65535-//честно не знаю что это, я всегда пишу эти цифры upd:prev_game_vertex_id = 65535-//не знаю, но пишем всегда это upd:distance_from_point = 0 upd:distance_to_point = 0
Компилируем, получаем файл all.spawn.new , копируем его в геймдату/спавнс и переименовываем просто в алл спавн. Это еще не все!
Теперь открываем файл character_desc_escape перед профилем волка вставляем это:
у нас будет чел с визуалом военного, иконкой волка, и голосом обычного сталкера. Теперь создаем файл логики, в папке config/scripts создаем файл noobik_logic.ltx и пишем туда:
Код
[logic] active = remark1 danger = danger_ignore
[danger_ignore] ignore_distance = 5
[remark1] no_move = true
Все, он никуда не уйдет пока на него не нападут Теперь открываем файл game_story_ids.ltx и в самый низ вписываем:
Код
10000 = "esc_noobik"
Далее открываем файл npc_profile.xml вставляем сие:
Все, все готово! Начинаем новую игру, и видем сталкера с именем Нубик = ) Послесловие Ну вот, если вы все сделали правильно, все будет работать. Это был тутор по созданию нового непися с нуля, то бишь не имея его нигде прописанным. Спасибо Николай ФеНиКс и Futura за помощь в находке метода = )
Очень полезная статейка! Единственная нормальная, которую видел. Везде, блин, надо эти амк-ский файлы, а тут нормально расписано.
Добавлено (20.10.2013, 15:05) --------------------------------------------- Блин, у меня не компилируется алл спавн, когда пишу по этому тутору. Я менял только число {870} на {873}, потому что у меня в алл спавне в конце 872. Почему не компилируется?
Когда батник выдает ошибку, снизу должна быть надпись "Нажмите любую клавишу...". Так вот, лог батника - то что находится выше. Сколько строчек и можно ли выделить текст мышкой - не скажу, не знаю. Если выделить нельзя, кидай скрин. Только обрежь)
На этом черном окошке нету "нажмите любую клавишу", через пару секунд закрывается окно после того, когда нажимаешь на батник компиляции. А когда декомпилируешь, есть.
C:\Perl\bin>acdc.pl -c all.ltx defined(@array) is deprecated at stkutils/data_packet.pm line 31. (Maybe you should just omit the defined()?) defined(@array) is deprecated at stkutils/ini_file.pm line 124. (Maybe you should just omit the defined()?) Died at stkutils/ini_file.pm line 47, line 28674.
C:\Perl\bin>acdc.pl -d all.spawn defined(@array) is deprecated at stkutils/data_packet.pm line 31. (Maybe you should just omit the defined()?) defined(@array) is deprecated at stkutils/ini_file.pm line 124. (Maybe you should just omit the defined()?) section_name==name:explosive_barrel section_name==name:zone_campfire_grill section_name==name:zone_flame_small section_name==name:zone_campfire_grill section_name==name:pri_decoder_documents section_name==name:vodka section_name==name:physic_object
C:\Perl\bin>pause Для продолжения нажмите любую клавишу . . .
Скажи игру (ТЧ, ЧН, ЗП) и прикрепи чистый спавн. Если и у меня не скомпилит, значит буду думать в чем дело.. Я по этому гайду сам делал и у меня все отлично компилилось
Итак что я получил: код из гайда действительно не робит. Скорее всего он был взят из спавна ранних патчей (хотя там может быть простая ошибка). Попробовал скопипастить имеющуюся секцию сталкера. Результат - все прекрасно скомпилилось. Вывод - думайте сами, мне лень) Вот то, что я копипастил.
Код
[l01_escape_93] ; cse_abstract properties section_name = stalker name = esc_lager1 position = -209.067367553711,-19.7512016296387,-132.083114624023 direction = 0.062321275472641,0.00316426996141672,0.0140644172206521
Зато скрипты слишком нагружают игру, что не очень хорошо для тех у кого мало оперативки. Скриптами спавнят только квестовых НПС, которые должны появиться в определенный момент времени.