-
Postów
1114 -
Dołączył
-
Ostatnia wizyta
-
Wygrane w rankingu
22
Treść opublikowana przez trurl3
-
Artykuł "Dialogi" z Mod Wiki Link do artykułu Dialogs Zawartość: 1. Wprowadzenie do Dialogów 2. Statyczne czy Dynamiczne - które zastosować 3. Dialogi Statyczne 4. Dialogi Dynamiczne 5. Preconditions (Warunki wstępne) 6. Który dialog*.xml zastosować 7. Teksty 8. Jak przypisać dialog do postaci 1. Wprowadzenie do Dialogów Po pierwsze, są dwie metody tworzenia dialogów. Jak zostało to z grubsza opisane w artykule Quest_creation, istnieją 'statyczne' drzewka dialogowe, umożliwiające zdefiniowanie stosunkowo prostych konwersacji. Dodatkowo można tworzyć dialogi 'dynamiczne' lub kontrolowane skryptowo. 2. Statyczne czy Dynamiczne - które zastosować Dla większości dialogów, metoda statyczna będzie prostsza i wystarczająco wydajna. Definiuje się wstępnie zaplanowane drzewko konwersacji, które można rozgałęziać albo przy użyciu wyborów, albo warunków wstępnych 'preconditions'. Dialogi dynamiczne, do określenia jak ma się rozwijać konwersacja, zamiast wstępnie zaplanowanego drzewka konwersacji używają skryptów. W standardowej grze prawie każdy stalker posiada opcje 'cool info' (luźne informacje), która bardziej lub mniej losowo daje odpowiedzi na pytania, czy postać wie coś ciekawego. Ta opcja wykorzystuje 'dynamiczne' dialogi ze skryptem 'losowo' decydującym, którą odpowiedź da stalker. 3. Dialogi Statyczne Prosty dialog statyczny może wyglądać następująco. 1 - Hej, facet, co jest grane? 2 - Nic szczególnego, a jak u ciebie? 11 - Nieźle, dziękuję. 111- Miło słyszeć, tak trzymaj. lub 12 - Bywało lepiej. 121- No cóż, jutro też jest dzień, miejmy nadzieję na lepsze. or 13 - Człowieku, jestem na dnie. 131- Kiepsko, kolego. Przykro to słyszeć. Jest to prosta konwersacja z jedna linią otwierającą, jedną odpowiedzią, i trzema odgałęzieniami dla trzech odpowiedzi. Możemy pozwolić użytkownikowi wybrać jedną z trzech gałęzi, lub ograniczyć dostępność niektórych przez preconditions. Aby zdefiniować ten dialog jako statyczny, powinniśmy stworzyć strukturę dialogu xml, i wstawić ją do jednego z plików dialog*.xml w katalogu config\gameplay. our_casual_dialog_0 1 our_casual_dialog_1 11 12 13 our_casual_dialog_11 111 our_casual_dialog_12 121 our_casual_dialog_13 131 our_casual_dialog_111 our_casual_dialog_121 our_casual_dialog_131 4. Dialogi Dynamiczne Przy dialogach Dynamicznych nie definiuje się całego drzewka, ale definiuje się skrypt inicjalizacyjny, który będzie w stanie określić, jaka frazę należy podać. dialog_manager.init_intro_dialog [/php] 5. Preconditions (Warunki wstępne) Zarówno dialogi Dynamiczne jak i Statyczne umożliwiają użycie tagu . Preconditions (warunki wstępne) są to funkcje skryptowe które muszą zwrócić wartość 'true' aby dialog był możliwy. Wiele funkcji precondition jest definiowanych w pliku dialog_manager.script. Jest ważne aby zdać sobie sprawę, że jakikolwiek błąd w dialog_manager.script nie pozwoli na prawidłowe przypisanie dialog_manager global i spowoduje natychmiastowy wypad gry z komunikatem: [error]Arguments : LUA error: e:\games\stalker\gamedata\scripts\_g.script:1255: attempt to index global 'dialog_manager' (a nil value) Preconditions sa wywoływane z pięcioma parametrami - oryginalny (pierwszy) mówca (the original speaker), inny (drugi) mówca (the other speaker), oraz P1,P2,i P3 (których do tej pory nie widziałem w zastosowaniu, i naprawdę nie mam pojęcia jaka mają funkcję) Proste precondition może wyglądać tak: [php] function precondition_is_stalker(speaker1,speaker2,P1,P2,P3) if IsStalker(speaker2) then return true end return false end jest wiele wstępnie zdefiniowanych preconditions, takich jak function has_2000_money(first_speaker, second_speaker) return first_speaker:money() >= 2000 end [/php] 6. Który dialog*.xml zastosować Zauważyliście pewnie, że jest kilka plików dialog*.xml w katalogu config/gameplay. Jeden z nich to standardowo nazwany dialog.xml, a pozostałe mają w swoich nazwach strefy Zony (Np. dialog_escape.xml) Biorąc z grubsza, każda strefa wykorzystuje dialog.xml oraz specyficzny dla strefy xml... więc jeśli wasz nowy dialog będzie się rozgrywać tylko w jednej strtefie, dodajcie go do pliku specyficznego dla strefy (aby obniżyć zużycie zasobów), ale jeśli będzie używany w wielu (wszystkich) strefach, trzeba go dodać do dialog.xml. 7. Teksty We wszystkich dialogach stosuje się identyfikatory, a nie aktualny tekst który ma się ukazać. Jest to zrobione w celu umożliwienia wielu wersji językowych gry. Musicie dodać wejście do odpowiedniego pliku(ów) stable_dialog*.xml dla używanego przez was języka. 8. Jak przypisać dialog do postaci Dialogi są przypisywane do postaci poprzez tagi lub w definicji postaci. To określa kto jest mówcą1 (speaker1) a kto jest mówcą 2 (speaker2). Tagi mówią że npc rozpoczyna konwersację i jest mówcą1 (speaker1). Jeśli wasz dialog jest stworzony dla konkretnej poostaci, po prostu dodajecie go do definicji tej postaci. Jeśli wasz dialog ma być dostępny dla wszystkich postaci, możecie dodać go do character_dialogs.xml, i wtedy będzie widoczny dla wszystkich postaci Z WYJĄTKIEM postaci specjalnych (o ile preconditions nie wprowadzają dalszych ograniczeń). Tak więc, jeśli chcemy aby nasz statyczny dialog pokazywał się dla wszystkich losowych postaci, musimy dodać [php] our_casual_conversation do character_dialogs.xml.
-
Elitarne exo CN (Polski akcent Solianki)
trurl3 odpowiedział(a) na Yurek temat w Problemy techniczne
Ale za trochę... -
Ja mam chyba najgorzej... podczas tłumaczenia poznaję całą akcję, a jak przychodzi do grania - to nie za bardzo mam czas. Poza tym sprawdzanie wersji i zmiany powodują, że ciągle zaczynam od początku. Najdalej jak doszedłem, to Radar, a i to pomimo scenariusza, z czystej ciekawości... A to kontakt ciągły i intensywny
-
Coś pięknego...
-
Poradnik do każdej wersji Stalkera (kryterium: sposób edycji tekstur), jednakże w C-Sky oraz CoP ścieżki do tekstur będą inne! Autor: maltese - forum: Link do tematu W tym tutorialu dowiesz się jak sprawić, by trójwymiarowe obiekty w stalkerze miały inną barwę. 1. Co potrzebujesz? Do edycji tekstur, bo tak nazywają się obrazki, które nadają trójwymiarowym modelom kolor, najlepiej nadaje się program Adobe Photoshop, jednak z racji na trudny dostęp do niego z powodu ceny, polecam całkowicie darmowy program Paint.NET, który można pobrać z tej strony. Potrzebujesz też wypakowaną zawartość stalkera, o tym jak wypakować zawartość stalkera napisane jest w oddzielnym tutorialu. 2. Edytujemy i podmieniamy teksturę. Wejdź do folderu z rozpakowanym stalkerem, następnie do folderu textures, a z folderu textures wejdź do folderu act. Znajdź interesującą cię teksturę, w moim przypadku jest to act_stalker_face1.dds. Teraz skopiuj ją do schowka, wejdź do folderu ze stalkerem, stwórz folder gamedata, w nim folder textures, a w folderze textures folder act, do folderu act wklej tą teksturę. Teraz otwórz ją za pomocą Paint.NET'a, i przemaluj, na przykład tak: Teraz kliknij kolejno File->Save as...(wybierz rozszerzenie .dds)->Save, w FileFormat wybierz DTX5, CompressorType slow/HQ, ErrorMetric Perceptual, zaznacz Generate Mip Maps i wybierz z listy Super Sampling. Kliknij OK i gotowe! U mnie wilk wygląda teraz tak: Autor: maltese aka. "zdzichorowerzysta"
-
Autor name='mea' date='25 01 2010 forum http://themodders.org Tu jest link do posta Kolejny tutek o stalku. Tym razem dialogi. Pliki, których będziemy używać: \config\gameplay\character_desc_escape.xml \config\gameplay\dialogs_escape.xml \config\gameplay\info_l01escape.xml Mówiąc szczerze, miałem duże wątpliwości, czy pisanie tego tutka ma jakikolwiek sens, gdyż to jest po prostu nieopisywalnie proste. No, ale dobra, zaczynamy. Będziemy pisali dialog dla Sidorowicza - bo on zaraz po starcie jest najbliżej, najłatwiej testować. Otwieramy character_desc_escape.xml. W zasadzie te okna z notatnikiem nie będzie sensu zamykać, w obu ciągle będzie się coś zmieniać. Ten escape_trader, którego widzimy od początku skryptu, to właśnie sidorowicz. Widzimy tu dużo wersów typu (pierdoły). Tu jest zapisane, które dialogi wyświetlają się u danego NPCa. Dodajmy linię: escape_trader_losowo Ja dodałem ją gdzieś w środku tych actor_dialog, ale myślę, że można to dodać gdziekolwiek, a i tak zadziała. Dobra, teraz otwieramy plik dialogs_escape.xml. Zaraz po Wstawiamy: Witaj LOSOWE.123Siema.Cześć.Witam. Teraz opis, co do czego. dialog id - "Nazwa" dialogu, której używamy do wstawienia go w plik character_desc_escape.xml; priority - Priorytet. Tutaj oznacza pozycję na liście w wyborze dialogu. Wybieramy dużą liczbę, jak to przykładowe 90, bo wybranie innej może nam zepsuć dialog, "zasłaniając" jakąś inną kwestię o tym samym priorytecie; phrase_id - ID frazy. Dzięki temu, że takie coś istnieje, możemy pisać jeden dialog na kilka sposobów; text - Logiczne; next - Jaka fraza jest następna. Wpisując to w odpowiedni sposób, uzyskamy inne wyniki, ale o tym dalej. Włączamy grę. Powinno - dzięki temu, że kilka "next" było w jednej frazie - wyświetlać nam losowo odpowiedzi 1,2, lub 3, poklikajcie kilka razy, a zauważycie. Uwaga - najpierw trzeba wziąć od Sidorowicza misję, dopiero potem dialogi są możliwe do wybrania. No, to dalej. Losowo już było, teraz będzie dialog, w którym osoby wypowiadają się więcej, niż jeden raz. Witaj KONKRETNE.1Siema.2Cześć.3Witam. Co się zmieniło? Przestawiłem NEXT tak, aby każdy był odnośnikiem do następnej frazy. Dzięki temu dialog działa tak, że na początku Sidorowicz mówi Siema, potem bohater Cześć, potem sidorowicz znowu, ale tym razem Witam. Oczywiście zmieniłem również priorytet, żeby dwa dialogi się nie gryzły, i zmieniłem ID - jeśli chcecie zobaczyć to w grze, musicie dopisać do character_desc_escape.xml: escape_trader_konkretnie Łatwe, proste, zrozumiałe. Dobra, następny przykład: Witaj Z WYBOREM.1Siema.23Cześć.Witam. Tutaj mamy dwa NEXT w frazie dalszej, niż 0 - więc będę miał wybór pomiędzy odpowiedzią 2 albo 3. Jak zwykle zmiana ID - dokleić do character_desc_escape nową linijkę! - i zmiana priorytetu. Parę ciekawostek: Informacje. Stalker ma całkiem ciekawie rozwiązane sprawdzanie, czy gracz dowiedział się o danej rzeczy, czy nie. Robią za to chyba tylko te trzy rzeczy: - sprawdza, czy gracz posiada daną informację; - sprawdza, czy gracz jeszcze nie posiada informacji; - dodaje informację dla gracza. Takie informacje dodajemy przez "info_portion id" w pliku info_l01escape.xml. Jak? Przykładowo, mam informację "wiedzapowszechna. Więc dodaję gdzieś pomiędzy innymi podobnymi liniami: I gotowe! Można już tego używać w swoich dialogach. Dla przykładu: W info_l01escape.xml dodajemy pod swoją linijkę - na przykład Teraz w dialogu KONKRETNIE, na samym początku frazy pierwszej, doklejamy . Powinno wyjść to tak: Witaj KONKRETNE.1 wiedzapowszechna Siema.2Cześć.3Witam. Teraz w dialogu LOSOWE doklejamy przed swoje - powinno wyjść: wiedzapowszechna Witaj LOSOWE.123Siema.Cześć.Witam. I gotowe! Po rozmowie KONKRETNIE pojawi się opcja dialogowa LOSOWE. Dalsza ciekawostka - jak dodać nóż i broń graczowi. escape_dialog.give_weapon_to_actorescape_dialog.give_knife_to_actor To chyba nie wymaga opisu? Wklejamy w któryś z testowych dialogów i sprawdzamy efekt. A może jednak wymaga. Znalazłem w Internecie, co można wsadzić w te : http-~~-//fr.pastebin.ca/445944 Jest to plik scripts/escape_dialog.script. Opiszę tutaj, jak go edytować: Przykładowo, mamy funkcję Trader. Po jej END, dopisujemy: function measkrypt(first_speaker, second_speaker) dialogs.relocate_item_section(first_speaker, "medkit", "in") dialogs.relocate_item_section(first_speaker, "bandage", "in") end W gruncie rzeczy nie rozumiem, co znacza first_speaker, ale dobra. medkit, bandage - to itemy. Można tam wsadzić sobie rakietnicę, granatnik, czy pistolecik z poprzedniego tutka. function measkrypt - to nazwa skryptu. Nazwałem go tak, Wy nazywajcie go jak chcecie. "in" - to stwierdza, że item jest dla nas, a nie od nas. Przeciwieństwo to oczywiście OUT. Teraz w swoim dialogs_escape, przykładowo w frazie 0 dialogu losowe, po TEXT dodajemy: escape_dialog.measkrypt escape_dialog jest konieczne, żeby pokazać, który to plik. measkrypt to nazwa naszego skryptu. Sprawdzamy w grze i cieszymy się Co jeszcze można tam dopisać, oprócz dialogs.relocate_item_section? Ano, kasę. Piszemy to tak: dialogs.relocate_money(npc, 500, "in") Bądź "out", żeby zapłacić - jak kto woli. SCREENY:
-
Tworzenie kwestu z losowymi nagrodami
trurl3 opublikował(a) temat w Tutoriale i poradniki użytkowników
Tworzenie kwestu z losowymi nagrodami. Tutorial ze strony AMK - link - autor posta(nr. 26): dan z dn. 02 06 2008 - 07:54 Jak stworzyć kwest z losowymi nagrodami? Bierzemy dowolnego handlarza lub jakiegokolwiek innego unikalnego NPC-a i dodajemy mu dialog. Na przykład Wilk. Stworzymy kwest, że jeśli przyniesiemy 3 ogony albo 3 kopyta Wilkowi, to on da nam w zamian losową (tzn. przypadkową) nagrodę. 1) W character_desc_escape.xml [gamedataconfiggameplay], do już przypisanych Wilkowi dialogów dodajemy swój unikatowy. <actor_dialog>prinesi_hvost</actor_dialog><start_dialog>escape_lager_volk_talk</start_dialog><start_dialog>dm_hello_dialog</start_dialog><actor_dialog>dm_cool_info_dialog</actor_dialog><actor_dialog>dm_help_wounded_medkit_dialog</actor_dialog><actor_dialog>tm_wolf_dialog</actor_dialog><actor_dialog>tm_wolf_reward</actor_dialog><actor_dialog>escape_lager_volk_story</actor_dialog><actor_dialog>escape_lager_volk_story2</actor_dialog>Mój nowy dialog nosi identyfikator: <actor_dialog>prinesi_hvost</actor_dialog>2) Otwieramy plik stable_dialogs_escape.xml [gamedataconfigtextpol] i na końcu dopisujemy następujący dialog: <string id="prinesi_hvost_0"><text>Cześć, co robisz?</text></string><string id="prinesi_hvost_1"><text>Cześć Naznaczony, właśnie biznes rozkręcam. Posłuchaj, ty się kręcisz po Zonie, odstrzeliwujesz rożne mutanty, przyniósłbyś mi 3 ogony ślepych psów albo 3 kopyta miejscowych dzików. Pojawił się chętny na wszelkiego rodzaju części mutantów, podobno robi z nich lekarstwa. Bo na miejscowych nowicjuszy nie bardzo można liczyć. Na widok dzika sami mogą kopyta wyciągnąć. Jeśli przyniesiesz, odwdzięczę się jak zwykle, krzywdy mieć nie będziesz.</text></string><string id="prinesi_hvost_2"><text>No Wilk, przyniosłem kopyta, zabieraj.</text></string><string id="prinesi_hvost_3"><text>No Wilk, przyniosłem ogony, zabieraj.</text></string><string id="prinesi_hvost_4"><text>Przyniosłeś kopyta, dobrze - weź zapłatę.</text></string><string id="prinesi_hvost_5"><text>Przyniosłeś ogony, no dobra, też nieźle, może i one na-coś się przydadzą.</text></string><string id="prinesi_hvost_6"><text>Dziś nic nie mam, tylko pogadać zaszedłem.</text></string>3) Następnie otwieramy plik dialogs_escape.xml [gamedataconfiggameplay], w zasadzie lepiej stworzyć swój własny plik dialogowy typu "dialogs_new.xml" potem łatwiej dogrywać z innymi modami, najważniejsze - nie zapomnieć dopisać swojego pliku do pliku system.ltx [gamedataconfig] i na końcu dopisujemy dialog: to jest id dialogu który dodaliśmy Wilkowi w jego sekcji: <game_dialogs><dialog id="prinesi_hvost"><phrase_list><phrase id="0"><text>prinesi_hvost_0</text><next>1</next></phrase><phrase id="1"><text>prinesi_hvost_1</text><next>2</next><next>3</next><next>6</next></phrase><phrase id="2"><precondition>new_dialog.prines_kopyto</precondition><text>prinesi_hvost_2</text><next>4</next></phrase><phrase id="3"><precondition>new_dialog.prines_hvost</precondition><text>prinesi_hvost_3</text><next>5</next></phrase><phrase id="4"><action>new_dialog.otdal_kopyto</action><text>prinesi_hvost_4</text></phrase><phrase id="5"><action>new_dialog.otdal_hvost</action><text>prinesi_hvost_5</text></phrase><phrase id="6"><text>prinesi_hvost_6</text><action>dialogs.break_dialog</action></phrase></phrase_list></dialog>gdzie poszczególne wpisy oznaczają: ☒ <dialog id="prinesi_hvost"> jest identyfikatorem dialogu wprowadzonym w pkt. 1 - patrz powyżej! ☒ <precondition>new_dialog.prines_kopyto</precondition> jest warunkiem aktywacji funkcji prines_kopyto, zdefiniowanej w pliku new_dialog.script ☒ <text>prinesi_hvost_2</text> jest odniesieniem do tekstu spolszczenia w naszym przykładzie - patrz pkt. 2 ☒ <next>4</next> następna faza tekstu dialogowego, która wykorzystuje funkcję prines_kopyto zawartą w pliku new_dialog.script ☒ <precondition>new_dialog.prines_hvost</precondition> warunek sprawdzający przyniesienie przedmiotu oparty o funkcję prines_hvost zawartą w pliku new_dialog.script ☒ <text>prinesi_hvost_3</text> tutaj znajdziemy odniesienie dot. ogonów, tekst spolszczony w pkt. 2 ☒ <action>new_dialog.otdal_kopyto</action> tutaj włącza się funkcja przekazania kopyt i otrzymania nagrody ☒ <text>prinesi_hvost_4</text> dotyczy losowo otrzymanej nagrody ☒ <action>new_dialog.otdal_hvost</action> funkcja analogiczna j/w, dotycząca oddania ogonów (otdal_hvost). 4) Teraz trzeba stworzyć nasz plik skryptowy i dopisać nasze funkcje. Tworzymy plik new_dialog.script (plik wykorzystują utworzone powyżej funkcje: prines_kopyto, otdal_kopyto, prines_hvost, otdal_hvost) a w nim piszemy co następuje: Niektóre z przedmiotów są unikatowe, pochodzą bowiem z Solijanki, więc implementacja skryptu w innym modzie powiedzie się w sytuacji uwzględnienia przedmiotów występujących w rozgrywce. Generalnie skrypt umożliwia losowy przydział nagród zawartych w zdefiniowanej puli przedmiotów wśród których znajdziemy: amunicję, artefakty, chleb, kiełbasę. Zaskoczeniem dla nas może być fakt otrzymania kiełbasy za ciężkie zadanie. Funkcje prines_kopyto i prines_hvost sprawdzają obecność u nas w inwentarzu 3 ogonów albo 3 kopyt i odpowiednio dopuszczają nas do fraz (new_dialog.prines_kopyto) w których u nas zachodzi wymiana kopyt i ogonów na losową nagrodę. Funkcje otdal_hvost i otdal_kopyto zabierają od nas kopyta i ogony i wydaja nagrody z odpowiedniego spisu. To wszystko. -
Elitarne exo CN (Polski akcent Solianki)
trurl3 odpowiedział(a) na Yurek temat w Problemy techniczne
OK, dodaje do kolejnej polonizacji. Musze przyznać, że to dośc zawansowane miejsce akcji gry. Ja jakos nie mam czasu dograć sie do tych miejsc... Rozumiem że w stosunku do poprzedniej paczki tylko w tym nastąpiły zmiany? -
No i juz widzisz, że nie każdy... Ale w zasadzie wytłumaczony jest tok postepowania. A jesli ktos umie pisac programy w XML-u to wtedy nie ma problemu
-
[align=left]Jest to tłumaczenie tutoriala tworzenia kwestu w rodzaju: Art dla sierżanta Pliczko za wpuszczenie do bazy Powinności[/align] Źródło - forum AMK, autor='potap' data='23.5.2008 1) Trzeba stworzyć dialog. Szukamy pliku stable_dialogs_bar(ścieżka gamedata\config\text\rus) i na końcu dodajemy dwa dialogi, na przykład takie: Słuchaj stary, mam bardzo ważna informacje dla twojego dowódcy, może się jakoś dogadamy? W zasadzie można, ale przysluga za przysługę, Naznaczony. Mam klienta, dobrze płaci, ale szuka jedynie naprawdę cennych artefaktów. Możesz mi przynieść artefakt Pancerz? Dałeś do pieca ... dobra, czekaj, znajde ci pancerz, ty nasz żółwiku. Eh ty żłobie, lepiej dobrze sie rozglądaj, bo jeszcze jakas zabłakana kulka nadleci. Czołem sierżancie, nie zapomniałeś o naszej umpowie?. Tak, pamiętam, coś tam było. Jakoś niespieszno ci było, mnie żólwirm nazwałeś, a sam... no dobra, przyniosłeś?. A jakże, trzymaj, tylko ostrożnie, sporo mnie to trudu kosztowało. No, w naszym fachu bez tego sie nie da... i czego stoisz, przechodź. [/php] Pierwszy dialog nazywa się bar_ohran_propusk, a drugi bar_friend_propusk. Zwróćcie uwagę, że wszystkie dialogi powinny zaczynać się od kwestii Naznaczonego. 2)Znajdujemy plik dialogs_bar(ścieżka gamedata\config\gameplay) i tworzymy szkielet naszego dialogu znowu na końcu pliku: [php] bar_ohran_propusk_0 1 bar_ohran_propusk_1 2 3 bar_ohran_propusk_2 bar_ohran_propusk_3 dialogs.break_dialog bar_friend_propusk_0 1 bar_friend_propusk_1 2 bar_friend_propusk_2 3 bar_friend_propusk_3 To wszystko, mamy już dialog. Właśnie ta linijka dialogs.break_dialog oznacza, że z pliku skryptowego dialogs wywoływana jest funkcja break_dialog. T.zn. jeśli my odmówimy przyniesienia artu dla Pliczko, to dialog zostanie przerwany. Jesli wszystko zrobilismy dobrze, to zapisujemy nasze zmiany. 3) Znajdujemy plik character_desc_bar, szukamy Pliczko(tego, który nas nie puszcza do Woronina) i dodajemy mu dwa dialogi: bar_ohran_propusk bar_friend_propusk - to są nasze dialogi. bar_dolg_base_guard_start bar_dolg_base_guard_talk bar_dolg_base_guard_story bar_dolg_base_guard_rules #include "gameplay\character_dialogs.xml" Zapisujemy nasze zmiany i uruchamiamy grę. Jeśli zrobiliśmy wszystko prawidłowo, to u Pliczko pojawią się dwa nowe dialogi. Dialogi mamy, ale teraz trzeba zrobić tak, żeby on nas wpuścił do Woronina t.zn. trzeba dodać Pliczko kwest. W katalogu gameplay jest dużo plików tego rodzaju: info_known_objects,info_l05dark_valley i t.d. To wszystko są infoportions gry, bez nich kwest nie zadziała. Musimy stworzyć swoje infoportions. Stworzymy swój plik, gdzie będą sie mieścić nasze infoportions. Ja nazwałem swój plik info_dan_way(nie zapomnijcie dopisać go w pliku system t.zn. dodać swojego pliku do pozostałych plików z infoportions) Wewnętrzna struktura plikubędzie mniej więcej taka to nasz infoportion Nr1 bar_dolg_propusk to jest cel zadania, który ukazuje sie w game_tasks to nasz infoportion Nr2 to nasz infoportion Nr3 Następnie otwieramy game_tasks i po wszystkich include wpisujemy nasz kwest Przynieść art Pliczko Znaleźć artefakt Pancerz ui_iconsTotal_artefact bar_dolg_propusk_done Znaleźć artefakt Pancerz ui\ui_icons_task dan_dialog.bar_dolg_propusk_have bar_dolg_propusk_have Przynieść artefakt Pliczko blue_location bar_dolg_guard_commander bar_dolg_propusk_done To wszystko, teraz musimy podłaczyć infoportions do naszego dialogu, znajdujemy dialogs_bar szukamy w nim naszych dialogów i dodajemy inforpotions; bar_dolg_propusk_start to znaczy, że dialog nie pojawi sie u Pliczko bar_dolg_propusk_have jeśli zadziałały nasze inforpotions наши инфопоршни t.zn. żeby bar_dolg_propusk_done po wypełnieniu zadania dialog nie pojawił sie znowu bar_ohran_propusk_0 1 bar_ohran_propusk_1 2 3 bar_ohran_propusk_2 dan_dialog.bar_dolg_propusk_havet.zn. będzie wykonywana funkcja bar_dolg_propusk_startbar_dolg_propusk_have z pliku skryptowego dan_dialog. bar_ohran_propusk_3 bar_dolg_propusk_startinformacja o otrzymaniu pierwszego infoportion. dialogs.break_dialog bar_dolg_propusk_done nie pokazywać po otrzymaniu 3 infoportion bar_dolg_propusk_have pokazywać, jesli jest drugi infoportion bar_friend_propusk_0 1 bar_friend_propusk_1 2 bar_friend_propusk_2 dan_dialog.bar_dolg_propusk_done wywoływana jest funkcja bar_dolg_propusk_done bar_dolg_propusk_done informacja o otrzymaniu 3 infoportion zadanie wypełnione 3 bar_friend_propusk_3 bar_dolg_base_pass tu działa infoportion o przxepuszczeniu nas na bazę Powinności. bar_dolg_community_start bar_dolg_community_leader Teraz musimy stworzyć swój plik skryptowy i dodać 2 funkcje. Jedna konieczna jest do sprawdzenia obecności w inwentarzu Pancerza o odpowiednio do włączenia infoportion bar_dolg_propusk_have. Druga dla przekazania Pliczko artu. Na przykład nazwiemy go dan_dialog i wpiszemy nasze funkcje. function bar_dolg_propusk_have(task, objective) ta funkcja sprawdza obecność artu if db.actor ~= nil then return db.actor:object("af_armor_3") ~= nil end return false end function bar_dolg_propusk_done(first_speaker, second_speaker) ta funkcja oddaje art Pliczko dialogs.relocate_item_section(second_speaker, "af_armor_3", "out") second_speaker:set_relation(game_object.friend, first_speaker) ta linia zmienia Pliczko w przyjaciela. end I to jakby wszystko. Jesli zrobiliście wszystko prawidłowo, to po tym, jak przyniesiecie art Pliczko, zostaniecie wpuszczeni do bazy Powinności. ------------------------------------------ Pytanie: bar_ohran_propusk_01 Może to głupie pytanie, ale co znaczy: ? Odpowiedź: - to identyfikator kolejnej frazy. Piszesz jakie frazy mogą nastapić po tej. Wytłumaczę po kolei. Tag, rozpoczynający frazę - oznacza, że ta fraza otrzymuje "nazwę" "1". Przy pomoicy tej "nazwy" fraza jest pózniej wywoływana z innych fraz przez tag . Tag , w ktorym, na przykład, jest "bar_ohran_propusk_1" - to odwolanie do linii, w której znajduje sie tekst frazy, znajdujący sie w innym pliku. Przykład: Walnij się o ścianę Pytanie: Z tego co tu było napisane, mogę zrozumiec co nastepuje: - słowa NPC-a + słowa naznaczonego, a - jak może Naznaczony odpowiedzieć. Jesli nie, to będę musiał zrobić to, co proponował ochroniarz. Walnąć sie o ścianę. Odpowiedź: Hmmm... Z HTML miałes do czynienia? Przystaw do ściany materac )) Plik "bar_dialogs.xml" ... -- otwarcie ciała frazy text1 -- wpisujemy, co będzie tekstem frazy - odniesienie do linii 2 -- odniesienie (identyfikator) do nastepnej frazy - piszemy to, co jest w jej parametrze id -- zamknięcie ciała frazy -- otwarcie ciała frazy, do której jest odniesienie z pierwszej text2 -- odniesienie ndo linii z tekstem tej frazy -- zamknięcie ciała frazy ... Plik "stable_bar_dialogs.xml" ... -- otwieramy ciało linii Walnij się o ścianę -- dodajemy tekst -- zamykamy ciało linii Dobra, tylko daj materac ... Ale oczywiście, najlepiej dochodzić samemu.
-
Metro 2034 - kolejna 'następna część' sagi. Można się spodziewać dalszych, skoro temat okazał się nośny. Nie mam nic przeciwko, w końcu zdarzają się cykle kilkunastoczęściowe. Przejrzałem w księgarni i nie kupiłem.
-
Elitarne exo CN (Polski akcent Solianki)
trurl3 odpowiedział(a) na Yurek temat w Problemy techniczne
Heh, to nie takie proste. Pliki ktore podałeś zawierają informacje tekstowe. ALe cały mechanizm działań znajduje sie w skryptach. Znalazłem na forum AMK instrukcje dodawania kwestów. Może ja tez przetłumaczę i wstawie do Poradników tak jak dodawanie exy. -
Tu w ogóle nie ma żadnej dyskusji - aktualna wersja jest z Dopą. Polonizacja jest na wersje aktualną...
-
Elitarne exo CN (Polski akcent Solianki)
trurl3 odpowiedział(a) na Yurek temat w Problemy techniczne
Proszę bardzo, tłumaczenie artykułu jest tutaj: http://www.stalkerteam.pl/Thread-Tworzenie-kombinezonu-dla-Soljanki?pid=6890#pid6890 -
Tworzenie kombinezonów Dziś nauczymy się tworzyć kombinezony dla gry na przykładzie nano-kombinezonu. Będziemy go dodawać do Narodnoj Solianki Do stworzenia kombinezonu potrzebujemy: 1. ikonki kombinezonu, do pokazywania w inwentarzu 2. wizual kombinezonu ( dzieli się na dwa: model kombinezonu, leżącego na ziemi i model gracza ubranego w kombinezon) 3. dodać sam kombinezon do gry 4. dodać opis naszego kombinezonu 5. samej tekstury naszego kombinezonu 6. wyznaczyć procent uderzeń, które docierają do obiektu przy trafieniu
-
Informacją dodałem do Poradników w cz. 4 - Odpowiedzi na inne, często zadawane pytania #2 w dziale Czerwony Las.
-
Elitarne exo CN (Polski akcent Solianki)
trurl3 odpowiedział(a) na Yurek temat w Problemy techniczne
Uważam, że uhonorowanie w pliku gry wymaga jednak czegoś więcej, niż porady technicznej. A co do orła na piersi - według mnie to zbyt dużo... w końcu to jest ciągle exo Czystego Nieba z 'ukłonem" w stronę polaków. A orzeł na piersi to , według mnie symbol dominacji, posiadania... a jeszcze do tego dwugłowy... -
Elitarne exo CN (Polski akcent Solianki)
trurl3 odpowiedział(a) na Yurek temat w Problemy techniczne
Heh, i dobrze. -
Elitarne exo CN (Polski akcent Solianki)
trurl3 odpowiedział(a) na Yurek temat w Problemy techniczne
Jestem pod wrażeniem.. doskonała robota, a przy tym ile zdobytego doświadczenia... CO do lokalizacji - to racja, że Generatory mogą być za daleko. Ale weź również pod uwagę, że Arhara wprowadził do gry kilka nowych lokacji (Janów, Zaton, Podziemne przejście do Prypeci, wschodnią część Prypeci, Martwe Miasto) z których tylko Martwe Miasto jest, że się tak wyrażę, 'okablowane' w scenariusz i NPC-ów. Prawdopodobnie w kolejnym dopełnieniu przybędzie sporo akcji. Niestety, z pewnych przyczyn nie jestem w stanie skontaktować się z Arharą (ma problemy domowe a takżę sostał nieładnie potraktowany na forum AMK, gdzie zarzucono mu niestosowanie się do reguł. Dla porządku informuję, że NLC6 jest produktem AMK i niektórzy twierdzą, że występuje tu konflikt interesów pomiędzy Soljanką i NLC6. NIe wiem jak jest naprawdę, ale nie zdziwiłbym się, gdyby AMK w ten sposób chroniła swój produkt.) Jeśli uda mi się z nim skontaktować, przedstawię mu nasze osiągnięcia i być może gotowy projekt zostanie włączony do wersji autorskiej. W każdym razie wierzę, że dopracujesz projekt do perfekcji. Tak czy inaczej, jeśli jucz pancerz będzie w grze, zawsze ktoś znajdzie sposób na dotarcie do niego. -
Na nowym komputerze musisz ponownie zainstalować, samo przeniesienie nic nie da, bo system nie będzie ich widział. Natomiast konto w Steam, pozostaje bez zmian.
-
Najważniejsze, czy gra z nową wersja polonizacji uruchamia się bez problemu - bo to świadczy o integralności plików i braku błędów składni. Potem trzeba będzie zdobyć pancerz...
-
Myślałem, że post Yurka o problemach z egzą Nieba dotyczy polonizacji, ale widocznie byłem w błędzie. Jeśli możesz spróbuj, jak działa nowa polonizacja.
-
Elitarne exo CN (Polski akcent Solianki)
trurl3 odpowiedział(a) na Yurek temat w Problemy techniczne
Za mało mamy wiedzy o tych mechanizmach. Ale rozumiem, że to wszystko dotyczy tego pancerza specjalnego z polska flagą, a ten z godłem powinien działać dobrze? -
Elitarne exo CN (Polski akcent Solianki)
trurl3 odpowiedział(a) na Yurek temat w Problemy techniczne
Taki plik nie istnieje w całej instalacji Solyanki. -
Niestety, wydaje się, że są problemy techniczne. Trzeba dopracować...