Главная » Статьи » Сталкер Зов Припяти » Уроки по модостроению |
Основная работа. Запускаем программу ggEditor. Видим там два окошка. В левом открываем game.graph от ТЧ, а в правом — от ЗП или ЧН (в ЗП и ЧН граф вшит в all.spawn, ищите его там. Нужно выбрать тип файлов для ЧН — graph.bin, а для ЗП — все файлы и открыть в папке с ACDC файл section4.bin). В окошках мы видим список уровней. В левом окошке находим нужный нам уровень и нажимаем на соответствующую стрелку для переноса уровня в нужный нам граф. Нажимаем в правом окошке «сохранить». После того, как граф сохранился, можно закрыть программу, она нам больше не понадобится. Потом этого шагаем в папку с ACDC для ЧН/ЗП и удаляем старые файлы section4.bin или graph.bin. Затем переименовываем файлы graph.bin.new или section4.bin.new в graph.bin и соответственно section4.bin. Далее идем в папку с ACDC от ТЧ, находим там файл alife_наша_локация и копируем его. Затем шуруем в папку с ACDC от ЧН/ЗП, вставляем скопированный нами файл. Открываем этот файл, сносим все, оставляем только одну секцию спавна (лучше всего, если это будет какой-нибудь объект), присваиваем секции номер не меньше 20000, сворачиваем на время этот файл. Далее нужно подогнать вертексы. Для этого запускаем ggTool.bat, ждем некоторое время, после чего в parse_lvids.ltx появляются имена локаций, а рядом с ними числа. Смотрим это число рядом с нашей локацией (в ЧН это скорее всего будет 1620, а в ЗП 934). Далее разворачиваем alife_ файл с нашей локацией, ищем там строку game_vertex_id и пишем там число, которое появилось рядом с нашей локацией при запуске батника ggTool. А вот строку level_vertex_id трогать не следует, т.к. вершины уровня в нашем случае остаются неизменными. RedPython 10:04, 21 ноября 2010 (UTC) Мы подогнали вертексы. Затем открываем файл all.ltx. Вписываем туда свой alife_ файл локации, way_ файлы не трогаем. Меняем на соответствующее количество локаций строку level_count. После этого открываем файл alife_zaton (для ЗП) или alife_marsh (для ЧН) и ищем там ГГ по строке section_name = actor. Нашли? Отлично. Теперь присваиваем этой секции спавна позицию (новую позицию прописываем также в строке upd:position = ) и вертексы как у единственного предмета в файле alife_новая_локация. При следующей распаковке, если вы все сделали правильно, наш актор окажется в файле alife_новая_локация. Мы почти закончили с пробной сборкой новой локации (пока без переходов на другие уровни). Осталось только прописать наш новый уровень в файл ACDC_CoP\acdccop.pl (для ЗП), либо в файле ACDC_CS\stkutils\level.pm. В этих файлах ищем такие строки (для ЗП): use constant levels_info => ( И если у вас число, когда мы запускали батник ggTool, тоже 934, то прописываем так: use constant levels_info => ( А в файле level.pm от ACDC ЧН вы увидите такой текст: use constant levels_info => ( Прописать там свой уровень нужно точно так-же как в файле от ACDC ЗП: use constant levels_info => ( По идее, в levels_info следует прописать также верхнюю вершину последнего уровня. RedPython 10:04, 21 ноября 2010 (UTC) Всё. Собираем all.spawn. Сборка геймдаты. Осталось собрать gamedata`у для игры и посмотреть, что получилось. Итак, приступим. В папке с игрой создаем папку gamedata, а в ней папки configs, levels, spawns. В папку spawns кладем получившийся при сборке all.spawn.new (или new.spawn), не забывая переименовать его в all.spawn. В папку levels кладем уровень из ggEditor_01\SoC\gamedata\levels\ваша_локация\. Затем заходим в папку с уровнем, удаляем старый файл level.ai и переименовываем файл level.ai10 в level.ai. Теперь осталось только прописать уровень в конфигах. Из распакованной геймдаты игры берем файлы configs\game_graphs.ltx, \game_levels.ltx, \game_maps_single.ltx. game_graphs.ltx для ЧН должен выглядеть так: [location_0] [location_1] [location_2] [location_3] game_graphs.ltx для ЗП должен выглядеть так: [location_0] [location_1] [location_2] [location_3] [graph_points_draw_color_palette] Далее лезем в game_levels.ltx. Там в самом начале, где список уровней, вписываем level183 (число не менее 183.) Листаем файл до самого конца и в конце пишем следующее: [level183] Затем открываем файл game_maps_single.ltx и прописываем свой уровень в секции [level_maps_single]. Затем создаем примерно такую секцию для нашего уровня: [ваша_локация] Всё. Запускайте игру и пробуйте, что получилось. Соединение с остальными уровнями. Предлагаю вам не терять зря времени, просто бегая по подключенной локации, а замерить координаты для создания перехода.Координаты будем снимать на 2-х локациях: на подключенной и на той, на которую вы хотите сделать переход соответственно. На каждой локации нам нужно снять по две координаты (координата самого перехода и координата места, в которое будет бросать при переходе с второй локации, вторую координату делаем на пару метров дальше, потому как если сделать близко, то сразу же будет кидать обратно, на локацию с которой переходим). Как снять координаты, я думаю все знают, поэтому объяснять здесь не буду. Мы отмерили все необходимые нам координаты. Затем распаковываем сделанный нами ранее all.spawn. Теперь в нужных нам локациях, в alife_ файлах добавляем следующую секцию спавна: [40000] ;свободный номер секции ; cse_alife_object properties ; cse_shape properties ; cse_alife_space_restrictor properties ; cse_alife_level_changer properties ; se_level_changer properties Пояснения после знаков ; желательно удалить. RedPython 10:04, 21 ноября 2010 (UTC) Метод исправления лайтмапов После переноса лок из ТЧ в ЧН/ЗП освещение локации вело себя странным образом, тени были жутко черные, тени от деревьев на зданиях имели странную форму, некоторые объекты вообще светились в темноте. А все дело заключалось в картах освещения, принцип их построения в ТЧ отличается от ЧН/ЗП, поэтому для получения более качественной картинки нужно произвести некоторые манипуляции с ними. Карты освещения хранятся в файлах * lmap#1_1.dds в папке с локацией. Мапы с именем заканчивающимся на _1 менять не нужно а вот заканчивающимся на _2 нужно изменить. Значит так, открываем в фотошопе (ну, или в другом редакторе, не суть важно) карты: * lmap#1_2.dds ... и меняем местами альфа канал и RGB. Сохраняем. Теперь косяков с освещением не будет. Но в некоторых картах в файлах lmap#*.dds нет альфа канала, поэтому нужно в lmap#*_1.dds добавить черный альфа канал, а в lmap#*_2.dds канал rgb перенести в альфу, и залить rgb черным цветом. Убедительная просьба к начинающим модмейкерам. Пожалуйста, если вы только начали заниматься модами, то я вам настоятельно не советую заниматься подключением локаций. Наберитесь опыта, подучитесь элементарному. Никто вас учить этому не подписывался. Да, и еще. Если будете переносить секции спавна, то для массовой замены геймвертексов и левелвертексов можно использовать блокнот: открываем наш файл в блокноте=>правка=>заменить, и пишем, что на что заменять. Также можно использовать Vertex Parser или Spawn Parser 2.0 beta. Автор статьи: БАТЯ-STALKER О способе подключения поведал: джЭдай (ака Panisher) Метод исправления лайтмапов открыт Push85 | |
|
|
Просмотров: 1615 | | |
Всего комментариев: 0 | |
| |
-Давай как с новичком.. |
-Давай как с опытным!!! |