Сглобяване на AI мрежа
От Mod Wiki.
Съдържание
Списък на необходимите програми
- AiCompiler 0,1 от Нео
- AiWrapper от Bardak 'и
- Информация LVID/GVID скрипт от Bardak 'и
- SDK 0.4 от GSC
- Актуализация на SDK от Нео + GSC
- Pos Extracter - нова програма за работа с координати
Добре. нека започнем с най-простото, компилирайте нивото с AI (чудовища) на картата mp_atp. Отваряме нивото. Първото нещо, което трябва да направите, е да премахнете всичко. rpoint (мултиплейър точки за хвърляне на хайвера). Премахнато? Отлично. Ние създаваме Spawn елементи -> актьор добре и по желание в имотите (Имоти) в потребителски данни ние му предписваме, да предположим това:
Така, когато играчът се появи, той вече ще има AK74 в ръцете си. След това създаваме чудовище (всяко, по желание) - да кажем, кръвопиец и го поставяме на нивото. Сега е до AI карта - AI мрежа, която е необходима за NPC и чудовища, за да се движат по нивото. Натискаме Обект и кликнете върху земята (по този начин го "избрахме" за по-нататъшни манипулации), след това AI карта -> Команди -> Направете списък от избрания, натискаме Добавяне В глава Възли на AI карта и Добавяне за да добавите обекти горе вляво (чайник), поставете възлите на картата в реда, в който се нуждаете (един е достатъчен), и след това щракнете Генериране на пълен. Това е всичко, генерира се AI мрежа. Сега добавете една графика точка (Хвърля хайвера си->AI->графична точка), не е нужно да пишете нищо в него. Запазваме нивото, изграждаме (изграждане).
Следващата стъпка е да редактирате конфигурациите.
Сега отваряме AI Съставител, посочете папката с SDK(./level_editor или, ако е обединен с играта, пътят към него). Избор на вашето ниво. Преминаваме първия етап от грубото изобразяване на AI-картата (етап 1), или, ако искате да изчакате дълго време и да изчислите капака за NPC, изберете стъпка 2. След това изграждаме мрежа (графика) и кръстосана таблица на нивото (стъпка 3), след това графиката на играта (стъпка 4) и накрая .spawn файла (стъпка 5). След всички етапи отидете на gamedata \ spawns и преименувайте test.spawn в всички.спаун
Правилен .bat файл:
% 1 - име на ниво
Разширено проучване
След това ще разгледаме как да съберем няколко нива и да зададем преходи между тях.
Така че имате две нива. един от тях е актьор. Нека започнем с него:
Ние създаваме AI -> Превключвател на ниво, тогава Форма -> Сфера, през Мащаб увеличете до необходимия размер, сега преминете в режим на редактиране Елемент за хвърляне на хайвера, подчертавам Превключвател на ниво и щракнете Команди -> Прикачете обект, и след това щракнете върху сферата. Всичко, сферата и нивелирът вече са свързани. След това отидете на отметката Имоти, ние посочваме името, например to_atp_2, сега трябва да се регистрирате в потребителски данни точка за връщане, в случай че играчът откаже да се премести от място на място (това трябва да се направи). Въвеждаме това:
IN Ниво за промяна въведете името на нивото, където искаме да преминем от това ниво, например atp_2. IN Точка на ниво за промяна посочете точката, в която играчът ще се появи. start_actor_01. С чейнджър за ниво това е всичко на това ниво, нека отидем по-нататък. Ние създаваме графична точка или използвайте празен съществуващ, ако имате такъв. Влизаме в него start_actor_01, тази точка, за да можем да изравним от втората atp_2 Отидете на atp_1(първо). Създайте друг графична точка със заглавие exit_atp_1_01, В глава местоположение изберете например "бягство". IN Връзка -> Име на ниво посочете нивото, с което ще бъде свързано atp_1, тоест изберете atp_2, в Връзка-> Име на точка въвеждаме точка на връзка от второто ниво, която ще създадем по-късно изход_atp_2_01. С първото ниво всичко.
Защо ни трябват графични точки изход_xxx? изход_xxx представлява точка на свързване(точка на свързване) - така че компилаторът да знае кои нива свързва и ако по различен начин: графиката на началното ниво, тогава всички възли се отчитат от него.
start_actor_xx - точката на хвърляне на актьора след прехода.
Не забравяйте, че писахме потребителски данни чейнджър 'а точката? Сега трябва да го създадем. Ние избираме Пътни точки -> натиснете "чайник" и поставете 1 точка от точката до нивелира (така създадохме началната точка на пътя), сега натиснете точков режим и сложи втория. Ако не са свързани със стрелка, натиснете създайте 1-линк. Сега имаме пътя, който регистрирахме в потребителските данни чейнджър за ниво, влизаме в свойствата и го наричаме по същия начин, както в потребителски данни, т.е. atp_1_way_if_reject. Всички завършиха с първото ниво.
И така, ние отваряме второто ниво и преминаваме към ново.
Създайте път там от две точки, съгласно схемата по-горе, и го наименувайте atp_2_way_if_reject. Създайте чейнджър за ниво и го кръстете to_atp_1, в потребителски данни ние пишем
IN ниво за промяна посочете atp_1 //, където преминаваме от atp_2 V точка на ниво за промяна - start_actor_01(dada, този, който създадохме на първо ниво:))
Сега тук на atp_2 създайте точка на графиката с името start_actor_01. И още една, където въвеждаме следните стойности:
Забравете това АКТОР трябва да е само на едно място (в нашия случай atp_1), в противен случай компилаторът ще генерира грешка. Всичко. Запазване, предварително компилиране.
Стартиране Ай Съставител, изберете нашите две нива на свой ред и изчислете стъпка 1, проверете мрежата. Сега ние създаваме Текстов документ и ние влизаме там
запазете го като .bat и го стартирайте, в резултат на което всяко ниво ще има свое ниво.граф(графика и кръстосан таб).
Създаваме още един учебник, пишем
запазете като .bat и започнете. Ето как събрахме game.graph на level.graph 'ов.
И накрая . създайте 3-тия "лък" за сглобяване всички.спаун!
Компилирайте, отидете на gamedata \ хвърля хайвера \, преименувайте получения хайвер на всички.спаун и го пуснете в нова игра. Както можете да видите, можете да се движите от ниво на ниво, тук-там без никакви проблеми.
Почти забравих, винаги временно, по време на компилацията, преместете всички останали нива на играта с изключение на вашето във всяка друга папка, в противен случай може да има грешки при събиране на графики и хвърляне на хайвер.
За сглобяване от всички единични нива от оригиналната игра, използвайте файла bat: fullgame.bat Ако има грешки, свързани с Alife, щракнете върху продължете. След това следвайте процедурите, както е описано по-горе, монтаж game.graph, и тогава всички.спаун.
Добавете нивото ни към един играч!
Данък, да продължим. Най-накрая успях да комбинирам тестовото си ниво с картите на GSC. Така че нека да започнем. Първо, имаме нужда от изравняване. своя собствена, подготвена. Ако не сте прочели инструкциите по-горе, тогава няма какво да правите по-нататък. На наше ниво, първо точка на свързване(свързваща точка), ние въвеждаме параметрите на този пример в него, да предположим следното:
Сега създаваме друга графика на нивото, просто въведете нейното име. напр Име: start_actor_01. Не забравяйте да добавите уникален обект към нивото. да предположим кола. Защо ще разберете по-късно. Но на ниво, в никакъв случай не трябва да има Актьори! Запазете, предварително компилирайте нивото. Компилирайте с xrLC цялото ниво, сега отваряме AICompiler от нео и направете 1 или 2 и 3 стъпки по отношение на нивото ни.
Сега трябва да запишем СПЕЦИАЛНИ инструменти, в нашия случай се нуждаем от скрипт от бъркотията, който ни позволява да разберем при стартиране на всяко ниво level_vertex_id, game_vertex_id, позиция(координати на играча в момента), посока(координати на посоката на неговия "поглед"), всичко това се изисква при работа с AC DC няколко стъпки по-долу. Зареждаме играта, намираме подходящо място, където искаме да видим в бъдеще спусък за прехода на нивата и записваме всички параметри на лист хартия, ще ни трябват по-късно. За добро е желателно отделно след това отидете на друг LE (редактор на нива), отворете нивото ни, като поставите ector точно на графиката с start_actor_01, компилирайте проекта, преминете през всички стъпки за компилиране в xraicompiler(1,3,4,5,6), задължително предварително архивиране game.graph, започнете нова игра и запишете координатите level_vertex_id и посока, но това е доста скучно и трудно, но желателно, и тогава ще е необходимо всичко да се върне на държавата преди всички тези действия. т.е. премахване ектор, възстанови оригинала game.graph.
Така. трябва да го разопаковате всичко играта е инсталирана aiwrapper от бъркотията (прочетете инсталацията readme.) и aicompiler той е нео.
Създайте .bat файл в папка aiwrapper с текст
или също влизаме в общия командир, с помощта на този ключ, който актуализирахме level.spawn 's на всички единични нива, тъй като те не са били актуализирани от първата корекция.
Сега учим връзки.проба в тетрадка. не разбрах нищо? Обяснявам: aiwrapper има най-полезния ключ -м2.
Тоест с помощта на него можем да вземем всяка съществуваща графика на ниво gsc, която е „не е заета“, и да добавим необходимите ни стойности към нея, например да я направим точка на свързване (свързваща точка), и тогава всичко това ще бъде залепено в общ глобален game.graph.
Ние изпълняваме aiwrapper -dump_graph graphs.txt бат или общо. Командата ще ни покаже списък с оригиналните върхове на AI-графиката в посочения файл, тоест списък на съставени графики на всички едностепенни gsc във файла graphs.txt. Намерете точка там esc_graph_point_0034. Виждате ли, че е празен по отношение на връзките, за разлика от exit_escape_01.02? Това означава, че можем да го използваме, в оригинала те са разработени за пътеките на ботове, тоест, ai се движи по тях, но ние го използваме за комуникация с нивото на теста ни.
Така например, ние създаваме учебник links_fixed.txt и влизаме там
test_level_x - име на нашето ниво. point_test_location_escape - точка на свързване на наше ниво. Тоест, ние регистрираме тези два параметъра в точката на бягство в точката на бягство, които я превръщат в точка на свързване, свързана с това, което е на нашето ниво; запишете учебника.
Изпълнете с бухалка или тотален командир:
ZYY Препоръчително е временно да преместите някъде неизползвани нива (мултиплейър също) далеч от вредата преди това действие. Чакаме, докато се съберат game_graph, грешки не трябва да има.
В резултат на това във файла svyazi.txt в скоби ще бъдат посочени game_vertex_id за определено ниво, така че няма нужда да се учи dest_game_vertex_id чрез прекомпилиране.
Пример: l01_escape (0) --1206.29 -> l02_garbage (415)
0 - game_vertex_id, 415 - dest_game_vertex_id, 1206,29 - разстояние(разстояние между точките), а не тази в промяна на ниво_д, а между точка на връзка 'ами.
Сега е до всички.спаун:
В резултат на това пълна всички.спаун от всички нива, които са в папката нива. Но това е само началото на работата, сега е необходимо редактиране това се оказа всички.спаун и добавете обменник на ниво до нивото на gsc, за да можем да превключим от него на нашето (в нашия случай от бягството към test_level_x). Копирайте полученото всички.спаун в \ utils и създайте .bat с този текст:
В резултат на това анализирахме all.spawn в ltx, имаме нужда alife_l01_escape.ltx, въвеждаме това в края там:
Друго определение на два параметъра за скучните:
Въвеждаме уникален идентификатор за всяко ниво в тях, т.е. в някои случаи просто разглеждаме тези два параметъра за съседните обекти на това ниво и въвеждаме стойностите. Обикновено, level_vertex_id може да се сложи -един, но не за всички обекти, game_vertex_id = идентификатор на ниво.
Изморен ли си? =) Но това не е всичко, трябва да създадете точка, в която се регистрирахме потребителски данни чейнджър 'и. Ние отваряме way_l01_escape.ltx и въведете нещо като:
Слагам? Всичко, остава само да се събира всички.спаун, baht или тотален командир направете това:
Сега копирайте полученото all.spawn.new в gamedata \ хвърля хайвера \ и го преименувайте на всички.спаун.
Мъките свършиха:) Започнете нова игра и се насладете на прехода си.
- Сглобяване на мебели в Москва цени, ревюта, гаранция
- Направи си сам монтаж и монтаж на таванни греди и стрели
- Метална печка за камина - направете си сам огнище, запознаване с характеристиките и
- Професионално сглобяване на мебели в Москва - монтажни услуги, цени
- Производствен план - Инвестиционен проект за подмяна на оборудване за монтажния цех на пластмасови прозорци