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. Spróbuj wyjść z ciała: wpisz w konsoli demo_record 1 i zobacz jak wygląda sytuacja. Prawdopodobnie animacja odpowiadająca za ciemność nie została wyłączona. Musiałbyś znaleźć plik tej animacji i podmienić go na jakiś neutralny widok, ale moda nie mam - więc bardziej nie pomogę.
  2. Nie wiem czy problem nadal jest aktualny?, niestety nie miałem ostatnio czasu by dokładnie sprawdzić tematy, ale do rzeczy - odporność ustawiona na max. jest podstawą nieśmiertelności stalkera, najczęściej jest zapisana w modelu .ogf .Nie mając moda - nie powiem Ci jaki to plik, ale poszukaj w plikach .xml [gamedataconfiggameplay] - najczęściej character_desc_*.xml nazwy stalkera (mam nadzieję, że nie jest to losowo wygenerowana postać) i w sekcji dotyczącej jego configu znajdź: <visual>ścieżka do modelu</visual>czyli parametr odpowiadający za kombinezon stalkera i zmień go wg. tego poradnika. Modyfikacja dotyczy tylko modelu - warto zrobić kopię zapasową przed wprowadzeniem zmian.
  3. Dopiero zaczynasz przygodę z forum więc dam Ci radę - nie cytuj całych bloków tekstu, tylko istotny fragment by skrócić posta, ewentualnie dodaj wpis w stylu: odnosząc się od uwag kolegi z postu nr. 22 itd. Druga sprawa - po co cytujesz ten sam tekst, który napisałeś powyżej a zaczynający się od Jest to uwaga którą potraktuj jak radę - zanim moderator upomni Cię o konieczność edytowania posta. Nie chcę by komentarz stanowił off-topic, dlatego podaj treść loga błędu od linijki Fatal Error by znaleźć rozwiązanie twojego problemu.
  4. Jeśli pozbyłeś się całości ekwipunku - problem nie powinien wystąpić. Jeśli wypady będą się powtarzać - wczytaj save z poprzedniej lokacji - udaj się po materiały wybuchowe dużej mocy np. "samoróbkę" + kilka kanistrów dla spotęgowania efektu (plastyd odpada ponieważ jest zbyt słaby). Wiesz co mam na myśli?...sprzedajesz ochronie Gawra materiały a jeśli nie będą chcieli kupić - podrzuć im ciało z ładunkiem oraz jakimś drobnym przedmiotem - by ochrona pokusiła się o przeszukanie zwłok. Zdetonuj ekipę przed zadaniem - nie jest potrzebna do jego realizacji, natomiast zostaw Gawra, którego wyprawisz na "tamten świat" bezproblemowo. Jeszcze jedna sprawa - prześpij się przed zadaniem do czasu emisji, zacznij robić motyw chwilę po tym jak przejdzie zwarcie by nie wystąpiło podczas snu zafundowanego przez Gawra. By całość poszła szybko - wyrzuć obok niego kanistry (lub coś mocniejszego), min. 5 szt i oddaj w nie strzał, by przedmiot zadania odszedł z hukiem.
  5. Kolejny z linków wymaga aktualizacji: w tym temacie jest prośba o wznowienie linku do tego poradnika. Informacja z : narod.ru Edit: nie jestem webmasterem, ale pomyślałem nad rozwiązaniem kwestii nieaktywnych linków, otóż w tym temacie - link jest omówiony pewien sposób na umożliwienie szybkiego sprawdzenia uszkodzonych linków (również pod tym adresem). Co prawda - podana jest wtyczka do rapidshare, ale być może istnieje rozszerzenie również na rosyjskie hostingi plików? Gdyby stworzyć jeden temat ze wszystkimi ważnymi linkami, wówczas z pomocą takiego skryptu można by błyskawicznie sprawdzić dany link. Tylko czy jest szansa na dostosowanie rozwiązania pod nasze forum?
  6. The Emperor

    SGM CS czy OGSM 1.8?

    Nie grałem w żaden z modów o których traktuje założony temat, ale jeśli miałbym dać radę - postawiłbym na moda ingerującego w fabułę w jak najmniejszym stopniu a skupiającego się na dodaniu wielu urozmaicających grę przedmiotów i ulepszeń. Jeśli tworzysz nowy mod skupiając się na zmianach fabularnych - postaraj się aby fabuła zaskoczyła graczy znających ów mody - w przeciwnym wypadku stworzysz kompilację, która może się znudzić. Kreując nową fabułę - wprowadzasz element zaskoczenia oraz zagadkę sprawiającą, iż gracz ma ochotę odkrywać tajemnice Zony. Jeśli wykorzystasz fabułę wnoszoną przez któryś z modów - gra straci element zaskoczenia. Jeśli oba mody nie wprowadzają zmian w fabule, to postawiłbym na drobne zmiany w sporej ilości - rzecz jasna nierzutujące na stabilności moda.
  7. Sprecyzuj co chcesz osiągnąć w efekcie modyfikacji configu (obrzyn ma zostać wyrzucony czy szukasz animacji?) Widziałeś kiedyś podobną zmianę w którymś z modów? Jeśli tak - skorzystaj z jego plików. W jednej z prezentacji modów (film na yt) widziałem jak niektóre z broni były zaminowane i podczas strzału - wybuchały znikając z rąk oraz dotkliwie raniąc Naznaczonego, nie wiem jednak co dokładnie masz na myśli - im bardziej precyzyjnie opiszesz swój zamiar - tym większą masz szansę na pomoc. Krótkie, zdawkowe i enigmatyczne pytania sprawią, że twój post zostanie bez odpowiedzi - zatem czekamy na więcej informacji.
  8. Na szczęście mam "wypaloną" Solijankę, więc mogę pomóc. Konfiguracja znajduje się w pliku unikalnych broni i przedmiotów tj. unique_items.ltx [gamedataconfigmisc]. Wpisem odpowiadającym za rzeczony celownik jest: scope_texture = death_modcrosshaircrosshair_1zatem wg. powyższej ścieżki znajdź plik crosshair_1.dds - zrób kopię i operuj w kanale alpha - usuwając zanieczyszczenia optyczne jak te widoczne poniżej.
  9. Jestem bliski doznania uczucia zazdrości...jakby kol. był uprzejmy zrobić test wydajności np. 3Dmark'iem - byłoby to miłym akcentem podsumowującym temat. Zapewne wszyscy są ciekawi wyniku (przynajmniej ja).
  10. Szkoda, z listy zmian wynikało, że nie powinno być problemów - być może chodzi tutaj o wersję językową lub odpowiedni patch? Podaj treść loga od Fatal Error.
  11. Niestety większość modyfikacji które zmieniają spawn, dodają nowe lokacje, ingerują fabułę czy wprowadzają szereg istotnych zmian - wymaga rozpoczęcia nowej rozgrywki. Mod Call of Pripyat Reloaded 0.7 (lub wersje wcześniejsze) wprowadzają mniejsze zmiany, głównie grafika, dźwięki i kilka ulepszeń. Przejrzyj jeszcze ten dział.
  12. @Fokol Zacznijmy od pytania - na jakiej wersji patcha gry zainstalowałeś moda? Błąd powyższy często wynika z nieodpowiedniego patcha, zatem podtrzymuję pytanie...
  13. Nie wiem dlaczego screeny w tagu są u Ciebie wstawione nieprawidłowo do posta?, u mnie wygląda to następująco: Najlepiej sprawdź link wraz z tagiem w trybie BBcode (ikona białego kwadratu w pełnym menu edycyjnym posta - górny lewy róg).
  14. Dzięki za info, dziś już nie postawię ,bo skończył mi się limit, ale mam drobną sugestię o której może nie wszyscy wiedzą, otóż w górnym prawym rogu menu - pola komentarzy mamy ikonę . Kliknięcie na nią generuje link do konkretnego posta (podobnie jak kliknięcie na numer posta), dzięki temu możemy wskazać precyzyjnie dany wątek np. podany przez @Smox'a : klik
  15. Niezwykły mutant, fascynuje mnie jego możliwość kamuflażu wśród gałęzi czy krzewów - już widzę oczami wyobraźni jak niczego niepodejrzewający stalker szuka artefaktów lub schowków w leśnej głuszy, aż następuje atak płoszący pobliskie kruki - kończący życie biedaka w brutalny sposób, co jeszcze bardziej podkreśla tajemnicę Zony i jej jasne przesłanie - tylko śmierć umożliwi stalkerowi powrót do domu, zaś murszejące kości są najlepszym tego świadectwem - fantazja mnie ponosi...dzięki za link. Gdybyś znalazł tego mutanta pod Shoc - daj znać. P.S - lepiej screeny będą wyglądać jeśli link otagujesz następująco: [img] tutaj podajesz link do screena [/img]
  16. Najlepiej będzie jak zrobisz screen'a z zaznaczeniem enigmatycznego wskaźnika, to na pewno ułatwi jego identyfikację.
  17. Nie jestem graczem WoT, ale nie zaszkodzi oddać koledze przysługę. Poniżej załącznik dla uwierzytelnienia oddanego głosu. P.S - radzę wspomnieć o temacie na SB, albo codziennie go podbijać bo zainteresowanie jest niewielkie.
  18. The Emperor

    Walther WA2000 [SoC]

    @Jerczi Myślę, że najlepsze wyjście to podanie poszczególnych etapów dodawania broni (podaj również z jakich plików korzystałeś). To znacznie ułatwi szukanie błędu - będziemy mogli stwierdzić czego nie uzupełniłeś.
  19. @KubasPL podaj treść loga do wglądu - najlepiej od wpisu Fatal Error. Jeśli chcesz wstawić całość - daj w spoiler.
  20. Pomysł jest bardzo dobry z 2 powodów: po pierwsze - wszystkie modele zebrane w jednym miejscu. po drugie - kiedyś rozgorzała dyskusja o dodawaniu długich opisów broni, w odpowiednim dziale można będzie umieszczać opisy broni zgodne z rysem historycznym - tworząc swoistą bazę danych dla potrzeb modyfikacji.
  21. I. Dodawanie przejść (level_changer'ów) między poziomami za pomocą ACDC. Tutorial Shoc. Wprowadzenie. Tworzenie przejść na inny poziom gry nie jest sprawą skomplikowaną w przypadku spawnowania z wykorzystaniem kompilatora/dekompilatora ACDC. Wystarczy skopiować właściwą sekcję do pliku alife_*ltx (* - nazwa mapy na której spawnujemy przejście) - który powstaje po rozpakowaniu all.spawn'a. Wadą tej metody jest konieczność ingerencji w plik all.spawn, co wymusza na nas obowiązek rozpoczynania nowej gry. Metoda polecana modderom, którzy mają zamiar od podstaw tworzyć moda, gdzie rozpoczynanie nowej gry to zamierzony element rozwoju fabuły. Dodawanie przejść jako elementu fabuły, której postęp umożliwia pojawienie się przejścia - jest realizowane przez skryptowe spawnowanie level_changer'a - omówione w II części poradnika, jednakże zanim stworzono skrypt na spawn level_changer'ów - tworząc własne modyfikacje starałem się uniemożliwić przejście na dany level wykorzystując anomalię przestrzenną (teleport), która cofała nas kilka metrów wstecz - by nie przejść na dany level zanim nie wynikało to z rozwoju fabuły. Później ową anomalię - usuwał skrypt odblokowując drogę. Wracając do clou poradnika - dodawanie przejść pomiędzy poziomami przedstawia się następująco: Dekompilujemy plik all.spawn (link do poradnika, część I.). Zbieram współrzędne terenowe tj. koordynaty X,Y,Z oraz game_vertex_id, level_vertex_id : m-ca spawnu tworzonego przejścia, m-ca w które zostanę przeniesiony - w przykładzie Bagna oraz 2 dodatkowych punktów w odl. ok. 10 m od spawnowanego level_changer'a (będą odpowiedzialne za cofnięcie gracza). W tym celu korzystam z narzędzia omówionego w pierwszej części tego poradnika - link. Po procesie dekompilacji - wybieramy plik alife_*ltx na którym będziemy tworzyli level_changer. Ja w przykładzie będę tworzył przejście z Kordonu na Bagna (poziomy dostępne dzięki modyfikacji Stalker Map Pack volume 1 "SMP1" + with Addons - by Kostya), zatem w pliku alife_l01_escape.ltx dodaję sekcję odpowiadającą za przejście (w przykładzie gotowy level_changer) : Omówienie parametrów sekcji level_changer'a: □ [2053] - kolejny numer dodawanego do pliku obiektu. Ten numer musi być unikalny - nie może się powtórzyć dla całego pliku all.spawn (wszystkie pod-pliki składowe alife_*.ltx). Dodając obiekt do świata gry - należy zadbać o ustalenie numeru ostatniego z obiektów, by nadać numerację wyższą. Ów numer zawsze jest kwestią indywidualną, więc przepisywanie go z przykładu nie jest wskazane! □ wpis stały charakteryzujący obiekt przenoszący gracza na inny poziom: section_name = level_changer □ name - unikalna nazwa dodawanego obiektu, będzie ona wykorzystana w pliku game_story_ids.ltx [gamedataconfig]. □ position - pozycja X,Y,Z spawnowanego przejścia. □ direction - obrót obiektu po zespawnowaniu. □ game_vertex_id, level_vertex_id - współrzędne wierzchołkowe uzyskane dzięki Smartterrain and Waypoint Tools by dez0wave (link). □ kolejny wpis odpowiada za konfigurację punktu cofnięcia gracza po wybraniu opcji zaniechania przejścia na dany poziom. Gdy zbliżymy się w obszar działania level_changer'a otrzymujemy zapytanie: "Przejść na następny poziom?" Wybranie opcji: Nie - skutkuje cofnięciem gracza do punktu zdefiniowanego w pliku way_l01_escape.ltx. Wybór pliku jest zależny od miejsca dodawanego przejścia, ponieważ tworzę level_changer w alife_l01_escape.ltx odpowiadający mu plik to way_l01_escape.ltx (plik zawierający trasy patrolowe, kierunki patrzenia NPC'ów i punkty uzupełniające). Mamy zatem wpis: [pt_move_if_reject]path = esc_to_marsh_way_if_reject musimy w pliku way_*.ltx zdefiniować punkty cofnięcia gracza poza obszar działania level_changer'a. Dodaję zebrane uprzednio koordynaty wraz z nadanym identyfikatorem - pokrywającym się z frazą: "esc_to_marsh_way_if_reject" do pliku way_l01_escape.ltx. [esc_to_marsh_way_if_reject]points = p0,p1p0:name = name00p0:position = -144.241821289063,5.96699380874634,232.452438354492p0:game_vertex_id = 167p0:level_vertex_id = 106520p0:links = p1(1)p1:name = name01p1:position = -138.745223999023,5.35821628570557,232.173400878906p1:game_vertex_id = 167p1:level_vertex_id = 112647 Są to dwa punkty na Kordonie w niewielkiej odległości (ok. 1,5 m) od siebie. Po ich dodaniu - zapisujemy zmiany w pliku. □ story_id - jest to parametr zawierający unikalny numer obiektu, zawarty w pliku game_story_ids.ltx [gamedataconfig]. □ shape0:type = box - definiuje kształt obiektu jako box (graniastosłup prawidłowy czworokątny). Kształt widać projektując level_changer w SDK. Wartości axis_x, axis_y, axis_z - nie zmieniamy! □ kolejny parametr to typ ogranicznika: dla tego obiektu wartość zawsze równa 3. restrictor_type = 3 □ Parametry: dest_game_vertex_id, dest_level_vertex_id, dest_position (X,Y,Z) - to punkty na lokacji na którą przenosi nas level_changer. W moim przykładzie docelowa pozycja to Bagna. □ dest_direction - parametr obrotu aktora po przeniesieniu na lokację. Możemy przyjąć wartości 0,0,0. □ dest_level_name - poziom gry na który jesteśmy przenoszeni. Nazwy znajdziemy w pliku game_levels.ltx [gamedataconfig]. Uzupełniam plik game_story_ids.ltx [gamedataconfig] dodając wpis zgodny z poprzednio zdefiniowanymi parametrami ("name" oraz "story_id") sekcji level_changer'a: 11534 = "exit_to_marsh_from_escape" Kolejny krok to uzupełnienie pliku level_tasks.script [gamedatascripts] o wpis odpowiadający za opis znacznika przejścia na PDA. obj = sim:story_object(11534) if obj then level.map_add_object_spot(obj.id, "level_changer", "Na Bagna") end wartość 11534 odpowiada wpisowi z pliku omówionego w pkt. 4 poradnika. Kompilujemy zmodyfikowane pliki (link do poradnika) alife_*.ltx, way_*.ltx aby zmiany zostały wprowadzone do pliku all.spawn, który następnie umieszczamy w [gamedataspawns]. Rozpoczynamy nową grę by sprawdzić efekt naszej pracy. II. Dodawanie przejść (level_changer'ów) między poziomami za pomocą skryptu. Tutorial testowany pod Shoc, Solijankę/Dmx'a. Kilka słów wprowadzenia... Dodawanie przejść z wykorzystaniem ACDC bądź xrSpawner'a stwarza konieczność rozpoczynania nowej gry - by zmiany mogły zostać wprowadzone. Każda modyfikacja pliku all.spawn podlega tej zasadzie. Jeśli chcemy rozwijać daną modyfikację np. Solijankę/DMX'a czy inny mod - tworząc pakiet rozszerzeń w postaci nowych jednostek, obiektów czy przejść (level_changer'ów) jednocześnie nie chcąc ingerować w plik all.spawn - jesteśmy zobligowani do wykorzystania innych - mniej inwazyjnych metod umożliwiających spawn w/w komponentów modyfikacji, innymi słowy - pozostaje nam skorzystać ze spawnowania obiektów za pomocą skryptu, które bez konieczności modyfikowania pliku all.spawn - umożliwia dodawanie w elastyczny sposób tych samych elementów co za pomocą ACDC czy xrSpawnera. Skryptowe dodawanie obiektów jest jednak w przypadku skomplikowanych elementów (jak np. level changer'y) - zależne od specjalnej konstrukcji skryptu - często dostosowanej do jednej tylko funkcji. Na szczęście powstaje wiele modów wprowadzających szereg innowacji skryptowych - takim modem jest Solijanka. Ów poradnik w części II skupi się na tworzeniu nowych przejść tzw. level_changer'ów, które wymagają zdefiniowania szeregu parametrów by przenoszenie na inny level odbyło się bez wylotu na pulpit oraz wszelkie dane o przejściu zostały zapisane w pliku .sav - jak również na mapie pojawił się znacznik przejścia zawierający opis. Na szczęście w Solijance - z której to plików korzystałem - znajduje się odpowiedni skrypt umożliwiający dodawanie level_changer'ów, - tym plikiem jest level_new.script. Każdemu polecam zapoznać się z jego zawartością - zwłaszcza przy tworzeniu dużej liczby level_changer'ów. Do celów poradnika, wyodrębniłem zawartość z której będziemy korzystać - dzięki temu, każdy będzie mógł wykorzystać pozbawiony Solijaknowych przejść - plik na własne potrzeby. Etap przygotowawczy. Zbieram współrzędne potrzebne do zespawnowania level_changer'ów oraz docelowej pozycji aktora. Do tego celu - mogę wykorzystać narzędzie opisane pod tym linkiem - w początkowej części poradnika. Ponieważ stworzę 2 przejścia tj. Kordon-Agroprom, Agroprom-Kordon - potrzebuję 4 punktów terenowych w których skład wchodzą: [koordynaty pozycji X,Y,Z, game_vertex_id, level_vertex_id]/pkt.: a). miejsce spawnu level_changer'a (przejście na Kordonie) b). miejsce w które zostaję przenoszony (na Agroprom) c). miejsce spawnu powrotnego level_changer'a (z Agropromu) d). miejsce w które przenosi mnie level_changer (punkt na Kordonie) Być może powyższa uwaga jest oczywista, jednak mam obowiązek przedstawić wszelkie mogące się przydać informacje - tym bardziej, iż z poradnika może korzystać osoba zaczynająca przygodę z moddowaniem. Zebrane współrzędne (2 na kordonie, 2 na Agropromie): ! Unknown command: patrolName=przejscie_na_Agroprom|anim=p1|pos=-280.5696105957,-11.70304775238,-107.6070098877|game=10|level=214* Log file has been saved successfully!! Unknown command: patrolName=pozycja_docelowa_kordon|pos=-269.89373779297,-14.946743011475,-110.01386260986|game=9|level=2931* Log file has been saved successfully!! Unknown command: patrolName=przejscie_na_Kordon|pos=185.51370239258,0.013489663600922,-242.2205657959|game=692|level=400584* Log file has been saved successfully!! Unknown command: patrolName=pozycja_docelowa_agroprom|pos=179.32797241211,0.44028130173683,-239.4962310791|game=692|level=397281Etap wykonawczy - tworzenie oraz modyfikacje plików. W katalogu [gamedatascripts] tworzę nowy plik skryptu (zmiana rozszerzenia .txt na .script) o dowolnej nazwie. W moim przypadku - będzie to nowy_lc.script. Nazwa jest istotna znacznie później, ponieważ funkcje zawarte w pliku, będą się do niej odwoływały poprzez wpisy nowy_lc.create_level_changer Aby nie wprowadzać zamieszania podzielę dodawanie sekcji na II części. Pierwsza zawiera bazową funkcję, której parametrów nie należy modyfikować! Druga zawiera funkcje odnoszące się do spawnu konkretnych przejść - dodawanych wg. uznania i te sekcje będziemy modyfikowali wykorzystując zebrane punkty terenowe. Plik jest odpowiednio opisany - zatem dodając w późniejszym etapie funkcje spawnu naszego level_changer'a, warto zapoznać się z treścią komentarzy, by dodać w odpowiednie miejsce tworzoną funkcję. Uwaga: Pomimo podziału opisu na części, wszystkie funkcje będą zawarte w jednym pliku! W pliku który utworzyłem - umieszczam funkcję: Powyższa część stanowi podstawę działania level_changer'a. Warto przyjrzeć się całości, ponieważ opisy parametrów funkcji zostały dodane poprzez za-komentowanie wiersza lub jego części. Jeśli ktoś wcześniej nie modyfikował skryptu przypomnę, iż podwójne poziome kreski -- w skrypcie służą wstawianiu komentarzy do opisu funkcji. Oznacza to, iż tekst znajdujący się poza wstawionymi znakami nie jest przez skrypt wykorzystywany (dotyczy plików .script. Komentowanie .xml czy .ltx zawiera inny zestaw znaków). W tym samym pliku skryptu tj. nowy_lc.script dodaję funkcję odpowiadającą za spawn określonych przejść. Modyfikacja tej części jest uzależniona od naszego zapotrzebowania na level_changer. Jak wspominałem powyżej - tworzę 2 przejścia, dlatego funkcja tutaj zawarta przyjmuje postać następującą: -- Część II - Funkcje dodatkowe, zawierające konkretny (unikalny) Level_Changer (LC) stworzony na potrzeby własnej modyfikacji.function spawn_lc_agro() -- funkcja tworzy przejście z Kordonu na Agroprom if (not has_alife_info( "level_esc_agro" )) thennowy_lc.create_level_changer(6000, vector():set(-280.5696105957,-11.70304775238,-107.6070098877),214, 10,397281, 692, vector():set(179.32797241211,0.44028130173683,-239.4962310791 ), vector():set(0,0,0),"l03_agroprom",0) db.actor:give_info_portion("level_esc_agro") end -- funkcja tworzy przejście z Agropromu na Kordon if (not has_alife_info( "level_agro_esc" )) thennowy_lc.create_level_changer(6001, vector():set(185.51370239258,0.013489663600922,-242.2205657959),400584, 692,2931, 9, vector():set(-269.89373779297,-14.946743011475,-110.01386260986), vector():set(0,0,0),"l01_escape",0) db.actor:give_info_portion("level_agro_esc") endend Opis funkcji i jej parametrów: □ level_esc_agro, level_agro_esc - odnosi się do infoportion, czyli wpisu warunkującego dodanie przejścia po uzyskaniu konkretnej informacji, dostosowanej do właściwego momentu fabuły lub realizacji całości kryteriów danego zadania. Wpisy te zostały opisane w pkt. 4, części II poradnika (znajdują się w pliku info_l01escape.xml określającym zbiór infoportion z Kordonu - w przykładzie) Ów wpis został tak dobrany, aby informacja została dodana tylko raz, tzn. poprzez warunek not has_alife_info czyli poprzez brak informacji o przejściu mamy możliwość spawnu tegoż przejścia, ale funkcja podczas procesu dodawania level_changer'a poprzez wpis db.actor:give_info_portion jednocześnie dodaje informację, zatem jej zaistnienie stoi w sprzeczności z pierwszym warunkiem tj. not has_alife_info, dlatego level_changer nie może zostać dodany drugi raz (opcja zostaje zablokowana). Infoportion musi być jednorazowe by wykluczyć możliwość ciągłego spawnowania tego samego level_changer'a, która skutkowałoby wylotem na pulpit. □ poprzez wpis: nowy_lc.create_level_changer funkcja create_level_changer zawarta w nowy_lc.script (rozszerzenia pliku nie wpisuje się w skrypcie) spawnuje przejście na inną lokację. □ wartość 6000 odnosi się do pliku level_tasks.script, w którym zawarty jest opis przejścia - omówione w pkt. 5, części II poradnika. (wartość uzależniona jest od znajdujących się tam numeracji, tzn. nie dublujemy numeru tylko nadajemy unikalny). □ kolejne współrzędne to koordynaty miejsca w którym tworzymy przejście (kolejność jest istotna, została omówiona zgodnie zapisanymi parametrami): X: -280.5696105957Y: -11.70304775238Z: -107.6070098877level_vertex_id: 214game_vertex_id : 10 □ poniższe współrzędne odpowiadają za punkty terenowe - w miejscu na które jesteśmy przenoszeni - pozycja docelowa (w przykładzie Agroprom). level_vertex_id: 397281game_vertex_id : 692X: 179.32797241211Y: 0.44028130173683Z: -239.4962310791 □ współrzędne: (0,0,0) odpowiadają za obrót po przejściu - direction (tych wartości nie trzeba modyfikować). □ l03_agroprom - poziom na który jesteśmy przenoszeni. Spis poziomów - plik game_levels.ltx [gamedataconfig] Ustalając współrzędne zawarte w drugiej funkcji - kierujemy się analogią j/w. Kolejność jest tutaj bardzo istotna (taka sama dla wszystkich tworzonych funkcji). Analizując funkcję pod kątem występujących parametrów w pierwszej kolejności występują: identyfikator (wykorzystywany również w pliku level_tasks.script - pkt.5 cz. II poradnika), następnie koordynaty poziomu na którym umieszczamy level_changer - kolejno [X,Y,Z, level_vertext_id, game_vertext_id] po nich wpisujemy level_vertext_id, game_vertext_id poziomu na który zmierzamy docelowo - dalej występują koordynaty [X,Y,Z] pozycji na którą zostaniemy przenoszeni - na końcu zaś - obrót po przejściu (0,0,0) oraz poziom gry na który zmierzamy. W/w plik uzupełniony o omówione wpisy jest kluczowy dla działania nowego przejścia - jednak nie wystarczy by nowy level_changer został zespawnowany. Musimy wywołać funkcję: spawn_lc_agro() najlepiej tworząc dialog. Ponieważ tworzenie dialogów oraz infoportions to temat innego poradnika, toteż do niego odsyłam - Link. Jest to pozycja obowiązkowa dla osób, które tworzą questa po raz pierwszy co ma znaczenie z uwagi na infoportion. Funkcję aktywujemy wprowadzając do drzewa dialogowego wpis następujący: <action>nowy_lc.spawn_lc_agro</action> W/w wpis oznacza, iż dialog aktywuje poprzez <action> </action> w pliku o nazwie nowy_lc.script funkcję: spawn_lc_agro, która odpowiada za pojawienie się naszych przejść (opis w pkt.2, cz.II poradnika). Ja umieściłem wpis w pliku dialogs_escape.xml [gamedataconfiggameplay] - ponieważ informacja o nowym przejściu będzie nagrodą za wykonanie zadania dla Wilka ("dostarczenie kanistra do agregatu"). Ponieważ wcześniej opisywałem jak stworzyć zadanie z wykorzystaniem skryptu - [link], skorzystam z wprowadzonych tam dialogów oraz dodam nową funkcję. Oczywiście - to w jakim momencie fabuły i przez jaką postać otrzymamy informację o przejściu - zależy od naszej wyobraźni, od fabuły którą jako modder kreujemy. Uzupełniająco radzę przeczytać poradnik nt. tworzenia zadań lub konstrukcji dialogów wraz z infoportion i powtarzam to nie bez kozery. Następny krok to dodanie infoportions zgodnego z wpisami umieszczonymi w pliku nowy_lc.script (część II). - patrz pkt. 2 frazy: level_esc_agro oraz level_agro_esc. Wpisy dodaję do [gamedataconfiggameplay] pliku info_l01escape.xml <!-- Tutorial level_changer --> <info_portion id="level_esc_agro"></info_portion> <info_portion id="level_agro_esc"></info_portion> <!-- Tutorial level_changer --> <!-- ów zestaw znaków służy komentowaniu plików .xml - dzięki niemu możemy dodawać dowolną informację i oznaczać ważne sekcje. Tekst wpisany jako komentarz nie jest wykorzystywany. Aby znacznik na mapie został odpowiednio opisany - uzupełniam plik level_tasks.script [gamedatascripts], dodając wpisy: -- nowy Level_changer obj = sim:story_object(6000) if obj then level.map_add_object_spot(obj.id, "level_changer", "Na Agroprom") end obj = sim:story_object(6001) if obj then level.map_add_object_spot(obj.id, "level_changer", "Na Kordon") end Gdy przejście zostanie zespawnowane po raz pierwszy - marker reprezentujący przejście będzie opisany jako no hint, jednakże po zmianie lokacji nastąpi korekta nazwy na zadaną w skrypcie np. "Na Agroprom", "Na Kordon" Zapisujemy zmiany w plikach - sprawdzając rezultat. Efekt finalny prezentuje się następująco: http://www.youtube.com/watch?v=fNpdMGoVRhA Jeśli znajdą się osoby chcące zapoznać się z konstrukcją niniejszej modyfikacji - w załączeniu przesyłam folder gamedata. Jest to zmodyfikowana postać zadania stanowiącego przedmiot tego poradnika (link), dzięki jego realizacji - otrzymujemy informację o nowym przejściu. Testowano na Shoc 1.0004. Polecam w celu wyodrębnienia różnic - użyć programu WinMerge, zestawiając pliki z ich niemodyfikowaną wersją. Prócz plików których modyfikacje opisywałem w niniejszym poradniku - znajdziemy tam również pliki dialogów, infoportion i configi jako istotne uzupełnienie w kontekście aktywacji wykorzystywanego skryptu. nowy level_changer.7z Prawa autorskie na podstawie regulaminu, pkt.1.6. - The Emperor, wyłączność: StalkerTeam. _________________________ Autor: The Emperor dla StalkerTeam
  22. Lornetka jest identyfikowana w grze jako wpn_binoc - o ile w Soli nie dodano 20 jej wariantów. Config znajdziesz w [gamedataconfigweapons] pliku w_binoc.ltx
  23. Ja znam tylko Slow Medicine Mod'a pod Shoc: link (linki w dolnej części 1 posta), ale czy będziesz w stanie połączyć go z plikami Czystego Nieba? Akurat w większym stopniu interesowało mnie modowanie Shoc'a - dlatego sam musisz ocenić czy warto podejmować się łączenia moda. Gdybym znalazł rozwiązanie pod CS - dam znać w temacie.
  24. Log niestety nie zawiera informacji o temperaturze - co jest dość nietypowe. Mam tę samą wersję programu i log posiada sekcję GPU Temperature [°C]. Czy karta jest na gwarancji? Mógłbyś złożyć reklamację.
  25. W zakładce sensors na samym dole masz opcję do zaznaczenia: "Log to file". Po zaznaczeniu jej i pozostawieniu włączonej aplikacji (w tle) następuje zapis wartości do pliku .txt. Godzinny test pod obciążeniem (np. w trakcie gry) jest wystarczająco miarodajny (po testach odznacz opcję). Jeśli plik loga X-Ray jest pusty, to może oznaczać, iż mod nie działa właściwie. Dobrze by było, gdybyś u znajomego postawił moda i sprawdził efekt - zawsze będziesz miał jakieś odniesienie.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

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