Skocz do zawartości

The Emperor

Zasłużony
  • Postów

    622
  • Dołączył

  • Ostatnia wizyta

  • Wygrane w rankingu

    57

Treść opublikowana przez The Emperor

  1. @Ksantyp, odznacz opcję ☒ :Use Download Accelerator, wówczas nastąpi odliczanie do automatycznego download'u (plik .rar). Nie pobieraj za pomocą download'era w formie .exe, ponieważ te często mają wbudowany moduł Adware, służący wyświetlaniu reklam.
  2. @Boskimonolit Czy w katalogu z grą masz do podmiany jakikolwiek plik .dll? Jeśli tak - zastąp oryginalny. Drugie pytanie - gra oryginał czy pirat?
  3. @Krwawy Baron Wygląda na niewłaściwie zainstalowany mod, być może nie wszystko się wypakowało?. Z loga wynika, iż brakuje pliku czcionki: ui_font_graffiti19_russian_cent.ini .Gra próbuje wystartować, ponieważ config wykorzystuje wskazany plik, który powinien być w katalogu gamedatatexturesui. Jeśli pliku brakuje - poproś osoby grające w moda o podesłanie - w przeciwnym razie instaluj jeszcze raz.
  4. @Junx Chyba najlepszym pomysłem będzie znalezienie prawidłowo stworzonego configu rzeczonej broni, być może tak dużo animacji jest błędnie wpisane?, że gra wywala bez loga. Pytanie podstawowe - w którym modzie zaimplementowano ten model Desert'a Eagle? Znalazłem taki oto link z modelami (klik), jest tam również plik animacji, której de facto brakuje w katalogu z bronią. Plik nosi nazwę - wpn_hand_spc_desert_eagle_hud_animation.omf. Szukając po nazwie modelu znalazłem taki oto config - link , zawiera model o nazwie (ta sama nazwa co w pobranym modelu): wpn_spc_desert_eagle.ogf ale nie sprawdziłem go z uwagi na fakt braku CoP. To co zasługuje na uwagę to ten katalog broni: SGM1.7/ config - link. Trzeba sprawdzić na innym configu - bez loga trudno o inną radę.
  5. @Damianox213 Na twoim miejscu - po wykluczeniu przyczyn technicznych, zająłbym się monitorowaniem szybkości łącza - sprawdzając kilka programów dedykowanych wspomnianemu zagadnieniu - link, dodatkowo polecam uzupełnić monitoring Speedtestem. Zebrałbym logi z miesiąca a następnie złożył reklamację na niezgodność towaru z umową. Nie wiem co zawiera twoja umowa z dostawcą internetu (mam nadzieję, że nie jest niekorzystna), jednakże poradę prawną możesz zasięgnąć tutaj - link. Mój znajomy powołując się na reklamację, która była w pełni uzasadniona - uzyskał pozytywne jej rozpatrzenie. Zobacz jeszcze ten wątek zanim zabierzesz się za reklamację - link.
  6. Mogę zajrzeć do konstrukcji zadań w CoP, ale muszę mieć pliki. Jeśli masz wypakowane pliki .db z Zewu - wyślij mi spakowane foldery: scripts, configs oraz plik alife (all.spawn) z Zatonu. Pliki mają być z oryginalnego CoP w wersji 1.6.02 - bez żadnych dodatków czy innych modów.
  7. @Krwawy Baron Usunąłeś starą wersję pliku user.ltx ? Jaką masz wersję gry? @Fryko podaj loga błędu od linijki Fatal Error. [code]zawartość taguj jak w przykładzie[/code]
  8. Powiedz czy wpisy: quest_storyline_give oraz quest_storyline2_give zostały dodane do pliku zawierającego infoportion'y - czyli dla zatonu: info_zaton.xml? (chyba że umieściłeś je w innym pliku?). Plik powinien zawierać zbiór zdefiniowanych dla realizacji fabuły/questów i ich aktywacji wpisy warunkujące. Jeśli tworzysz nowy infoportion definiując quest - zadbaj o dodanie go do bazy infoportion'ów gry.
  9. Na pierwszy rzut oka brakuje odniesienia do tekstu... TEXT_DONT_EXIST (tekst główny) oraz DESC_DONT_EXIST (opis zadania) - to informacje które pojawiają się gdy nie istnieje powiązanie tekstu np. spolszczenia z drzewem dialogowym na którym osadzone są odniesienia do tegoż tekstu. Weźmy przykład z poradnika, otóż w pkt. 4 mamy plik: dialogs_escape.xml [gamedataconfiggameplay] a wnim wpis<text>explosive_dialog_0</text>explosive_dialog_0 - jest swoistym identyfikatorem tekstu spolszczenia występującym dla tego przykładu w pliku: stable_dialogs_escape.xml [gamedataconfigtextpol], gdzie mamy właściwy tekst:<text>Mam wrażenie, ze coś cię gryzie?</text> - pkt. 6 poradnikaNie znam struktury plików CoP'a, dlatego trudno mi wskazać dokładne położenie tego tekstu - bazując jedynie na tutorialu pod Shoc. Szukałbym w/w fraz w plikach .xml, ja standardowo otwieram jednocześnie do 200 plików (Notepad ++), Ctrl + F i szukam położenia frazy w takiej sytuacji. Jesteś pewien, że wszystko dobrze połączyłeś? Edit: pobrałem patch 1.6.02, mam kilka plików po wypakowaniu dla wstępnej oceny problemu. przykład na podst. pliku tm_zaton.ltx [lokalizacja: gamedataconfigsmisc] [zat_b100_heli_2_crash]icon = ui_inGame2_Skat_2prior = 104storyline = truetitle = zat_b100_heli_2_crash_namedescr = zat_b100_heli_2_crash_texttarget = zat_b100_heli_2condlist_0 = {+zat_b100_heli_2_searched} complete, {+pri_b305_actor_wondered_done} completew powyższym zadaniu zwróć uwagę na parametry: title, który odpowiada za tytuł zadania, a znajduje się w pliku st_quests_zaton.xml, wpis: <string id="zat_b100_heli_2_crash_name">    <text>Ogończa 2: zbadaj miejsce katastrofy</text>  </string>oraz parametr "descr" odpowiadający za opis zadania zawarty również w pliku st_quests_zaton.xml czyli wpis: <string id="zat_b100_heli_2_crash_text">    <text>Zbadaj miejsce katastrofy Ogończy 2.</text>  </string>W twoim przypadku prawdopodobnie brakuje w/w powiązań - piszę prawdopodobnie ponieważ nie widziałem konstrukcji twoich zadań. Inny przykład do usunięte przez Ciebie infoportion. [zat_b101_heli_5_crash]icon = ui_inGame2_Skat_5prior = 101storyline = truetitle = {+zat_b101_both_heli_info} zat_b101_heli_5_crash_name_03, {+zat_b101_one_heli_info -jup_b8_heli_4_searching} zat_b101_heli_5_crash_name_02, zat_b101_heli_5_crash_namedescr = {+zat_b101_both_heli_info} zat_b101_heli_5_crash_text_03, {+zat_b101_one_heli_info -jup_b8_heli_4_searching} zat_b101_heli_5_crash_text_02, zat_b101_heli_5_crash_texttarget = {+zat_b101_both_heli_info} nil, {+zat_b101_one_heli_info -jup_b8_heli_4_searching} nil, zat_b101_heli_5condlist_0 = {+pri_b305_actor_wondered_done} completew/w znajduje się w pliku tm_zaton.ltx widzimy przykładowy odnośnik do infoportion tj. {+pri_b305_actor_wondered_done}nie wiem jaki komunikat może pojawić się w sytuacji gdy zadanie zostało niewłaściwie skonfigurowane. Przejrzyj uzupełniająco te poradniki pod CoP: link oraz link2. Ponieważ nie mam wszystkich plików CoP'a a jedynie te z patcha - pomóc mogę połowicznie. Myślę, że usunięcie plików tm...*.ltx nie było najlepszym pomysłem. Więcej czasu zajęłoby usuwanie poszczególnych sekcji - efekt byłby jednak lepszy. Jeśli tworzyłeś już zadania i były właściwie skonstruowane - odpowiedzi musisz szukać w usuniętych plikach.
  10. Witamy kol. na forum. Pierwsza sprawa - logi błędów taguj następująco: [code] treść błędu [/code]Jeśli chodzi o błąd, zastosuj wskazówki z tego tematu - link, z tą różnicą iż w twoim przypadku zamiast frazy "af_rusty_thorn21505" podajesz to co zawiera log, tj "ros_sniper2". Pracuj na kopii pliku, generalnie pozbywasz się postaci powodującej błąd. Twój problem został już opisany w tym temacie - link, znajdziesz tam pełne info. Edit: Ja natomiast dziękuję Cichemu za punkt reputacji!
  11. Dziś urodziny obchodzi kol. Jurij - którego szaleństwo jest wypisane na twarzy :D ...składam najlepsze życzenia: zdrowia, uśmiechu fortuny, wielu sukcesów zarówno w życiu osobistym jaki i zawodowym (chociaż wiekiem młody jesteś - Yoda) i 100 lat ! Wznoszę toast za zdrowie solenizanta:
  12. Gdzie może być zawarta fabuła, hmm? Podstawą wszelkich zadań są opcje dialogowe oferujące określone questy. Wycinając fabułę - usunąłbym dialogi odpowiedzialne za zadania, wspomniane przez Ciebie - infoportion'y oraz przeszukałbym plik all.spawn, ponieważ tam znajdują się odpowiedzialne za pojawienie się zadań aktywatory - przykładem są strefy aktywacji zadań, gdy dochodzimy do Ogończy na wzgórzu lub nawet patrząc na Shoc - strefa aktywująca licznik, gdy dochodzimy do CEA-1 i zadanie "uciec przed emisją". Są to strefy reprezentowane przez obiekty typu: section_name = space_restrictoro określonej logice narzucającej aktywację questu. Musiałbyś przeszukać all.spawn'a pod kątem infoportions odnoszących się do fabuły. Usunąłbym lub zakomentował pliki .xml w których zawarte są questy, ale nie podam Ci dokładnie jakie to muszą być pliki, ponieważ nie moduję CoP (nie mam nawet plików na dysku). Jest tutaj krótkie info o usuwaniu fabuły - link, ale traktowałbym to jako ewentualne uzupełnienie. Linię fabularną prawdopodobnie rozpoczyna wpis w pliku bind_stalker.script (trzeba sprawdzić jego zawartość pod kątem powiązania z pierwszym questem). Jeśli znajdę przydatne informacje - dam znać. W tej chwili bardziej precyzyjnie nie jestem w stanie Ci powiedzieć. W skrócie usuwasz korelacje pomiędzy plikami: all.spawn.xml - zawierającymi infoportions.xml odpowiedzialnymi za dialogibind_stalker.script
  13. @najdrok Przedmiot którego szukasz nosi identyfikator: part_digitis_biblio. Możesz zwiększyć prawdopodobieństwo spawnu w/w przedmiotu edytując plik odpowiedzialny za konfigurację bibliotekarza. Znajdź plik o nazwie m_fracture.ltx [lokalizacja: gamedataconfigcreatures]. W wierszu nr. 306 powinna być sekcja: Spawn_Inventory_Item_Probability = 0.4zmień wartość z 0.4 na 1 czyli Spawn_Inventory_Item_Probability = 1wówczas prawdopodobieństwo spawnu łapy bibliotekarza wyniesie 100%
  14. Odpowiedzią na twoje pytanie jest Outfit Mod 1.5, pod linkiem znajdziesz listę zmian. Pobierz z tego linka (reszta jest nieaktywna). P.S - nie miałem okazji go testować, ale nastaw się na opisy kombinezonów po rosyjsku i ewentualność polonizacji. Prawdopodobnie zmieniono dialogi z handlarzami. Edit: alternatywa dla w/w moda - Armory Mod.
  15. @Bartus Komentarz zawsze możesz zrealizować w postaci napisów do filmu - jest to w pewnym sensie rozwiązanie kwestii barwy głosu, która nie koniecznie zachęca do oglądania relacji/recenzji. Jeśli przy projekcie może pomóc Ci znajomy - poproś go o użyczenie głosu.
  16. @Agrael Klocuch w poprzedniej recenzji z dn. 3.05.2012 r (link) popełniał te same błędy...jak można przejść całą grę i nie zorientować się - gdzie jest ekwipunek trupa a gdzie głównej postaci? Już pomijam tutaj ikonę "przekreślonego psa" [8min:34sek], tekst "oni są 2" [ 17min:30sek] czy "łaki-taki" [24min:25sek]. Jeśli gościu udaje - to po mistrzowsku.
  17. To jest zdecydowanie najlepszy dział dla tej mega-produkcji. W każdej sekundzie widać zaangażowanie, pasję i prawdziwe emocje recenzenta...jest kreatywny, jest elokwentny, jest błyskotliwy...Ladies and Gentlemen oto nadchodzi Klocuch. http://www.youtube.com/watch?v=eCDLzG3PKdQ&feature=c4-overview&list=UUxSGC9BtJN2jgcz7ynXWdOw
  18. @bartus Dzięki Windows Movie Maker wyciąłem ok. minuty ładowania w/w filmiku (link w poście nr. 4), zmiany są praktycznie niedostrzegalne - ocenę jednak pozostawiam Tobie. Zobacz jeszcze polecany w 1 poście VirtualDub (1, 2).
  19. @Miedziany Ja zapisuję film w 1080p - następująco (przykładowy film - link): Mam Windows Movie Maker 2012 (v.16.04.35.08 xxxx).
  20. Autorem moda jest GoroVer [link alternatywny]. Dobra rada na przyszłość... Jeśli na jednej ze stron brakuje informacji o autorze - starajmy się szukać po tytule moda informacji o jego autorze oraz dodatkowych linkach zwiększających szanse pobrania moda na wypadek usunięcia upload'u z danego serwera.
  21. @bartus Ad.1) Każda sugestia będzie subiektywna z uwagi na fakt różnych doświadczeń z programami do nagrywania filmów, ale w mojej ocenie najlepszym z programów - o największej palecie możliwości, jak również czasie nagrywania znacznie większym niż w przypadku Frapsa, którego wersja demo oferuje tylko 3 min. nagrywanie - jest Bandicam. Program ten umożliwia nagrywanie filmów o długości 10 min w wersji demo, co nie jest dla mnie problemem ponieważ korzystam z Windows Movie Maker 2012, który w porównaniu do wersji poprzednich oferuje naprawdę dobrą jakość edytowanych filmów. Tworząc nawet 10 min nagrania - jestem je wstanie scalić w jeden film. Wracając jednak do Bandicam - jedyną chyba wadą programu jest dodawanie loga programu w przypadku wersji demo, wersja full - usuwa je z tworzonych nagrań. Zalety programu świetnie przedstawiła strona Programosy (link) - szczerze polecam. Krótka prezentacja menu programu : Ad.2) Na rynku jest wiele alternatyw dla programów oferujących możliwość nagrywania, ja wybrałem Bandicam, którego wersja demo w zupełności mi wystarcza. Edycja filmów jak kompresja czy dodawanie ścieżki dźwiękowej w moim przypadku spoczywa na edycji programem VirtualDub, do którego tutorial można znaleźć pod tym linkiem. Uzupełniająco można jeszcze przeczytać te porady. Dla forum piszę tutoriale nt. modyfikacji, ostatnimi czasy uzupełniając je o krótkie filmiki tworzone w/w narzędziami - jakość możesz ocenić sam, oczywiście wybierz HD. My YouTube Channel Ad.3) Jest b. dużo filmów ze stalkera tworzonych przez fanów. Gdyby każdy miał obowiązek posiadać prawa autorskie udzielone przez GSC, wówczas wiele kont YT z powodu powiadomienia o naruszeniu praw autorskich zostałoby zamkniętych a tak nie jest. Śmiało możesz nagrywać filmy, ba - robisz reklamę wspaniałej gry na popularnym serwisie - zachęcając graczy do przygody ze stalkerem. Jeszcze jedno - nie jestem ekspertem od obróbki filmu, jest to jedynie zbiór polecanych metod z których korzystam osobiście. Cytując Morfeusza: "mogę wskazać ci drzwi, ale TY sam musisz przez nie przejść"...
  22. @Kazik skrzynka musi zawierać zestawy naprawcze: Remzestaw RIA, czyli zestaw odpowiedzialny za naprawę pancerzy o identyfikatorze: repair_item_outfitRemzestaw RIW, czyli zestaw naprawczy odpowiedzialny za naprawę broni o identyfikatorze: repair_item_weaponPodaję identyfikatory, gdybyś chciał zastosować motyw z podmianą przedmiotu za wykonanie zadania z posta nr. 8. Generalnie zestawy są dostępne u handlarzy na zasadzie wymiany barterowej. Sidorowicz potrzebuje bodajże artefaktu "Błysk" za zestawy kamizelek i pancerzy, Barman - zestawy do pancerzy proponuje za artefakt "Kotlet", natomiast zestawy do broni wymienia za "Ognistą Kulę" - pozostałych handlarzy nie pamiętam. Musisz sprawdzać dokładnie dialogi. Właściwe użycie zestawów - zobacz ten post - link. Zestawy naprawiają pancerze/bronie o 10%/1x użycie zestawu. Przedmioty o stopniu zużycia ok. 50% - nie dają się naprawić zestawem, wówczas trzeba iść do mechanika. Jeśli chodzi o misję z wojskowymi - ja zawsze zaczynałem od zniszczenia BTR'ów. Jeśli masz RPG-7 - wówczas transportery szybko będą wspomnieniem, możesz również spróbować podejść jak najbliżej - obrzucając transportery granatami (zaopatrz się w rozsądną ilość). Po likwidacji BTR'ów - masz dużo większe możliwości działania.
  23. Jest prosty sposób na dodanie gotówki poprzez dialog - działa w każdym modzie z tą różnicą, iż początkowy dialog w zależności od moda może prowadzić inna osoba. Weźmy przykładowo dialog z Wilkiem, nie jest to co prawda początek rozgrywki, ale do handlarza mamy blisko, zatem... 1. Odszukajmy plik skryptu dialogów z kordonu - tj. escape_dialog.script [lokalizacja: gamedatascripts] 2. Przejdźmy do funkcji w której otrzymujemy ekwipunek czyli function give_weapon_to_actor (trader, actor)   dialogs.relocate_item_section(trader, "wpn_pm", "in")   dialogs.relocate_item_section(trader, "ammo_9x18_fmj", "in")  dialogs.relocate_item_section(trader, "ammo_9x18_fmj", "in")   dialogs.relocate_item_section(trader, "wpn_knife", "in")end3. dopiszmy tylko jedną linijkę: dialogs.relocate_money(trader, 7000, "in")dopisany wiersz poprzez zawartą w pliku dialogs.script funkcję "relocate_money" i zmienną "trader" (na początku funkcji mamy zmienne: trader, actor)powoduje otrzymanie przychodu ("in") w wysokości określonej na 7000 rubli. całość ma wyglądać następująco: function give_weapon_to_actor (trader, actor)   dialogs.relocate_item_section(trader, "wpn_pm", "in")   dialogs.relocate_item_section(trader, "ammo_9x18_fmj", "in")  dialogs.relocate_item_section(trader, "ammo_9x18_fmj", "in")   dialogs.relocate_item_section(trader, "wpn_knife", "in")  dialogs.relocate_money(trader, 7000, "in")end Wartość gotówki można płynnie zmieniać. Zmienne trader, actor są przynależne do w/w funkcji. Jeśli w modzie wystąpią inne parametry - wówczas kierujemy się nimi tworząc "cheat" funkcję ułatwiającą start w Zonie.
  24. Przedmowa Niniejszy poradnik dedykowany jest każdemu, kto chce dodać postać do świata gry Stalker - bez konieczności ingerencji w plik all.spawn. Przypomnę jednak podstawowe informacje, otóż - dodając za pomocą pliku all.spawn jakikolwiek przedmiot, jesteśmy zobligowani do rozpoczynania nowej gry, aby wprowadzone zmiany zostały dodane do rozgrywki. Poprzednio opisałem metodę dodawania jednostek do gry (link), która pomimo drobnej ingerencji w plik all.spawn, a dokładniej w pod-pliki way_*.ltx (* - nazwa lokacji) - nie wymuszała rozpoczynania nowej rozgrywki by przedmiot został zespawnowany. Metoda o której traktuje powyższy link ma wiele zalet, jak wspomniana elastyczność dodawania NPC'ów - jednak ma również wadę, na której owa elastyczność się kończy, a która jest funkcją możliwości dekompilacji pliku all.spawn. Innymi słowy - rzeczoną metodę można stosować w każdej modyfikacji Shoc (testowane na Shoc 1.0004 oraz modach) pod warunkiem, iż jesteśmy w stanie dodać waypoint do plików way_*.ltx, a jesteśmy to w stanie zrobić gdy możliwa jest dekompilacja pliku all.spawn. Determinująca dla wspomnianej (patrz w/w link) metody jest możliwość edycji pliku all.spawn. Są jednak mody - takie jak Solijanka/DMX, w których plik all.spawn został zmodyfikowany xrSpawner'em co uniemożliwia nam jego dekompilację, mało tego - xrSpawner posiada wiele ograniczeń edycyjnych, co utrudnia modyfikację plików way_*.ltx. Osobiście nie stosuję w edycji spawna - xrSpawner'a, dlatego pominę niuanse sposobów edytowania w/w narzędziem. Wróćmy jednak do meritum - chcąc dodać jakąkolwiek postać do Solijanki/DMX'a czy innego moda, w którym dekompilacja jest niemożliwa - napotykamy na spory problem. Ileż to graczy musiało używać spawner'ów w sytuacji gdy określony NPC ginął na takim etapie rozgrywki, iż szukanie zapisu gry sprzed jego śmierci traciło jakikolwiek sens? Ile fantów - począwszy od broni a skończywszy na artefaktach trzeba było zostawić w schowkach - tylko dlatego, iż w najbliższej okolicy nie było żadnego handlarza, zaś alternatywą dla opcji pozostawienia ich była konieczność zwiększania udźwigu? Niniejszy poradnik jest odpowiedzią na postawione pytania, wychodząc na przeciw problemowi staremu jak sam Stalker, problemowi który zainspirował mnie do napisania niniejszego opracowania. Widziałem podobną metodę zastosowaną w CoP, postanowiłem przenieść ją na grunt "Cienia Czarnobyla" do którego zawsze miałem sentyment. Uwagi: metoda najlepiej nadaje się na dodawanie neutralnych NPC - np. handlarzy czy zleceniodawców bez przynależności frakcyjnej, ponieważ dodana postać nie zmienia pozycji (neutralność eliminuje ryzyko ataku na postać). Można w ten sposób dodawać np. snajperów, ale ich ograniczeniem będzie brak mobilności. Niewątpliwa zaleta to możliwość dodania postaci w dowolnym momencie fabuły bez konieczności rozpoczynania rozgrywki od początku. Metody nie polecam do tworzenia obozowisk (niemożność stworzenia trasy patrolowej). Wspomniana neutralność nie ogranicza funkcjonalności metody o której traktuje niniejsze opracowanie - jest jedynie sugestią, która zwiększa szanse przetrwania dodanej postaci. I. Etap przygotowawczy. W pierwszej kolejności należy ustalić pozycję w jakiej zostanie zespawnowany NPC. Pozycja spawnu będzie jednocześnie punktem zajmowanym przez dodaną jednostkę. Wadą omawianej metody jest brak możliwości zmiany pozycji przez NPC z uwagi na brak waypoint'ów, których dodanie jest tożsame z ingerencją w plik all.spawn. Jeśli zespawnujemy np. handlarza czy zleceniodawcę w miejscu gdzie będzie narażony na ostrzał czy ataki mutantów - wówczas szybko pożegna się z życiem. Pomijam tutaj aspekt uczynienia postaci nieśmiertelną (tutorial). To samo tyczy się modów jak np. Solijanka, gdzie spawn na obszarze braku ochrony przed emisją - będzie dla postaci stanowił wyrok śmierci, ponieważ dodany NPC nie będzie w stanie zająć pozycji wyznaczonej na ochronę przed zwarciem. Wybierzmy zatem takie miejsce, by trudu włożonego w dodanie NPC nie zmarnowała "zabłąkana kula" lub szukający pożywienia mutant. Dla celów testowych - obrałem punkt spawn'a w piwnicy wioski kotów na Kordonie: ! Unknown command: patrolName=npc_1|anim=spawn|pos=-213.51487731934,-23.183620452881,-124.86627960205|game=59|level=39928 Do zbierania punktów terenowych tj. koordynatów X, Y, Z, game_vertex_id, level_vertex_id - polecam narzędzie "Smartterrain and Waypoint Tools by dez0wave", które zostało opisane w tym poradniku - link, dostępność - download. Alternatywne metody pozyskiwania koordynatów dla wszystkich części Stalkera: Warto zwrócić jeszcze uwagę na znacznie szybszy sposób uzyskania koordynatów, wymagający w przeciwieństwie do w/w narzędzi - wprowadzenia zmian w jednym tylko pliku. Jeśli chcemy wprowadzić zmiany w zaawansowanym skryptowo modzie jak np. Solijanka i jednocześnie nie mamy ochoty łączyć wielu plików w celu uzyskania kompatybilności - wówczas skorzystajmy z poniższej porady: [ 1 ]. Do pliku ui_main_menu.script [lokalizacja: gamedatascripts] na samym końcu dodajemy poniższą funkcję: [ 2 ]. Po zapisaniu zmian - wchodzimy w grę - wczytując savegame. Teraz wystarczy, iż podczas rozgrywki wyjdziemy do menu - klikając przycisk "Twórcy gry"/"Credits". Sygnał dźwiękowy powiadomi nas o dodaniu wiadomości na ekran. Po powrocie do gry - widzimy informację o koordynatach w dolnym lewym rogu ekranu - patrz screen. II. Etap wykonawczy - tworzenie struktury moda oraz edycja plików. [ 1 ]. Tworzymy profil naszego NPC. Za cechy postaci takie jak wygląd, dźwięk, stan posiadanej gotówki, wyposażenie, nazwę, dialogi, ikonę - odpowiadają pliki character_desc_*.xml ( * - nazwa mapy). Więcej informacji nt. poszczególnych parametrów profilu postaci znajdziemy w tym poradniku, patrz pkt. 8.2. W przykładzie tworzę postać handlarza na Kordonie, zatem modyfikuję plik character_desc_escape.xml [lokalizacja: gamedataconfiggameplay], dodając wpis następujący: Zwróćmy uwagę na identyfikator profilowy utworzonej postaci tj. "assassin". Identyfikator ten będzie wykorzystywany w skrypcie, ponadto w konfiguracji wykorzystano niewystępujący w innych modyfikacjach model postaci, tj. act_bright.ogf [lokalizacja: gamedatameshesactorsunic]. Jeśli brakuje folderów - tworzymy je zgodnie ze ścieżką w/w pliku .xml: <visual>actorsunicact_bright</visual>Ścieżka nie zawiera w nazwie folderów gamedata i meshes - o czym warto pamiętać by właściwie umieścić żądany model postaci. Model z kolei posiada określoną teksturę, którą również należy umieścić w folderze [gamedata] - zgodnie ze ścieżką zdefiniowaną w pliku modelu .ogf. W moim przypadku: act_bright.dds [lokalizacja: gamedatatexturesAazactor]. Wykorzystany w modyfikacji model postaci wraz z teksturami - link, autor: Aaz Zapisuję zmiany, przechodząc do kolejnej konfiguracji Uwagi dot. Solijanki: [ 2 ]. Do pliku npc_profile.xml [lokalizacja: gamedataconfiggameplay] dodaję wpis uzupełniający dane z profilu postaci, dotyczący wprowadzonego identyfikatora: "assassin" [ 3 ]. Do pliku spawn_sections.ltx [lokalizacja: gamedataconfigcreatures] dodaję wpis wiążący identyfikator profilowy z przynależnością frakcyjną, rangą oraz schematem zachowań. Pamiętajmy by tworząc powyższe zestawienie - zachować zgodność parametrów z utworzonym wcześniej profilem postaci, omówionym w pkt. 1. tj: □ character_profile □ spec_rank - patrz link, pkt. 8.5 - w części II poradnika. □ community [ 4 ]. Zgodnie z wpisem "custom_data" opisanej powyżej, tworzymy plik dark_assassin.ltx [lokalizacja: gamedataconfigscriptsassassin_addon], brakujące foldery tworzymy zgodnie ze ścieżką. W pliku umieszczamy wpis: gdzie: □ combat_ignore, danger_ignore - są parametrami nakazującymi ignorowanie stanu zagrożenia przez wykorzystującego schemat NPC'a. combat_ignore_cond = alwayspowyższy wiersz nakazuje ciągłe ignorowanie zagrożenia. no_move = truewpis w/w - powoduje utrzymywanie stałej pozycji przez NPC'a. Ustawienie zdefiniowane powyższymi parametrami - ma za zadanie utrzymać NPC z dala od ferworu walki poprzez ignorowanie pobliskich ataków. Ponieważ moja postać to handlarz - występuje tutaj dodatkowy wpis, definiujący oferowany przez handlarza asortyment. trade = misctrade_assassin.ltx[ 5 ]. Zgodnie ze ścieżką wpisu "trade" - pliku opisanego powyżej, tworzę trade_assassin.ltx [lokalizacja: gamedataconfigmisc], zawierający wpis: [ 6 ]. Następnie tworzymy nowy plik skryptu - ja nazwałem go emperor.script (nazwa pliku jest wykorzystywana) [lokalizacja: gamedatascripts] i umieszczamy w nim szereg funkcji: Opis: funkcja zawiera identyfikator profilowy, opisany w pkt. 1 oraz 2 tj: "assassin". Koordynaty odpowiednio w skrypcie: X: -213.51487731934Y: -23.183620452881Z: -124.86627960205level_vertex_id: 39928game_vertex_id: 59Pozostałe parametry zostawiamy bez zmian.[ 7 ]. Kolejnym plikiem wymagającym konfiguracji jest bind_stalker.script [lokalizacja: gamedatascripts]. W sekcji w której znajdziemy funkcję: function actor_binder:update(delta)→ umieszczamy wpis pomiędzy obszarem pliku zaczynającym się od: object_binder.update(self, delta)→ a wpisem kończącym rzeczoną funkcję - end Trudno opisać umieszczenie wpisu, z uwagi na bardziej rozbudowane (w niektórych modach) pliki bind_stalker.script, w moim przypadku wpis znajdziemy w linijce 338 - patrz załącznik [gamedata] na końcu poradnika. Wpis powinien mieć postać: gdzie: spawn_dark,start_emp_spawn - są funkcjami umieszczonymi w pliku emperor.script. Budowa funkcji: najpierw zdefiniowana funkcja znajduje plik skryptu "emperor", następnie występujące w nim funkcje (zdefiniowane w pkt. 6): load_variable, save_variable. Całość rozdziela kropka np: emperor.save_variable [ 8 ]. W zależności od tego, czy tworzymy handlarza czy członka innej frakcji - uzupełniamy plik skryptu opisany poniżej. Jeśli tworzymy handlarza, wówczas nie uzupełniamy pliku xr_conditions.script. Warto jednak zwrócić uwagę na potencjalny błąd związany z uśmierceniem sprzedawcy - patrz poniższy spoiler. Rozważmy stworzenie NPC - frakcja: stalker W pliku z oryginalnego stalkera - xr_conditions.script [lokalizacja: gamedatascripts] dodaję wpis (w moim przypadku od wiersza 28 do 32), który stosuje się do standardowych jednostek np. w przypadku schematu snajpera: -- assassin wpis początkowyfunction is_assassin_enemy(enemy, object)return enemy:id() ~= db.actor:id()end-- assassin wpis końcowygdzie: □ is_assassin_enemy - jest frazą występującą w schemacie postaci (w pliku dark_assassin2.ltx - załącznik). W przygotowanej prezentacji (patrz filmik) wykorzystałem schemat handlarza. Sfinalizowana postać [gamedata] zawiera również konfigurację snajpera - wystarczy zmienić wpisy w: a). pliku character_desc_escape.xml (opis, pkt.1 - cz.II) <community>trader</community>na: <community>stalker</community> b). pliku npc_profile.xml (opis, pkt. 2 - cz.II ) <character id="assassin"> <class>Trader</class> <specific_character>assassin</specific_character> </character>Zmieniamy na: <character id="assassin"> <class>assassin</class> </character> c). pliku spawn_sections.ltx (opis, pkt. 3 - cz.II ) custom_data = scriptsassassin_addondark_assassin.ltxna : custom_data = scriptsassassin_addondark_assassin2.ltxoraz wpisy: community = Traderzastępujemy: community = stalkerWówczas postać będzie wykorzystywać schemat snajpera, którego plik znajdziemy w załączonym folderze gamedata - plik: dark_assassin2.ltx. Plik xr_conditions.script występuje w wielu modach, ważne aby wpis umieścić w pliku dostosowanym do określonej modyfikacji. W funkcji występuje fraza "is_assassin_enemy", którą wykorzystuje plik odpowiedzialny za schemat zachowania postaci: dark_assassin2.ltx Uwagi: Jeśli tworzysz handlarza - nie atakuj go! [ 9 ]. Zapisujemy zmiany - sprawdzając efekt. Jak widać na prezentacji - nie jest konieczne rozpoczynanie nowej gry, aby postać handlarza została zespawnowana. Zwróćmy uwagę - folder gamedata nie zawiera katalogu [spawns]. Bez ingerencji w plik all.spawn udało się stworzyć zajmującego stałą pozycję NPC'a. http://www.youtube.com/watch?v=NMWCBTCZea8 Poniżej - sfinalizowana wersja plików (dla wersji Shoc 1.0004). Po odpowiedniej adaptacji plików dla innych modyfikacji - bez konieczności rozpoczynania nowej gry, jesteśmy w stanie stworzyć nową postać. gamedata.7z Prawa autorskie na podstawie regulaminu, pkt.1.6. - The Emperor, wyłączność: StalkerTeam. __________________________ Autor: The Emperor dla StalkerTeam
  25. Najlepsze życzenia @Fokol - zdrowia, uśmiechu fortuny, radości życia i 100 lat!
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Korzystając z tej strony, zgadzasz się na nasze Warunki użytkowania.