Skocz do zawartości

The Witcher

Stalker
  • Postów

    46
  • Dołączył

  • Ostatnia wizyta

Treść opublikowana przez The Witcher

  1. Autor: Infernal Postaram się objaśnić co i jak. Po pierwsze uprzedzam iż może coś nie działać. U mnie jest coś dziwnego. Pliki traderów z wypakowanych gamedat wydają mi się być inne niż te z których korzysta gra bez modów. W normalnej grze artefakt warty 1000 handlarz skupował za 750. Za to w plikach wypakowanych artefakty skupowane są za całą cenę. I dla mnie jest to bez sensu. Jeżeli ktoś miałby pliki, które działają "normalnie" to prosiłbym o kontakt na PW. Ale już dosyć tego pieprzenia, czas na tutka. Za pliki handlarzy odpowiadają odpowiednie pliki: trade_trader - Sidorowicz trade_barman - Barman trade_ecolog - Sacharow trade_dolg - Pietrenko (Powinność) trade_freedom - Kutwa (Wolność) trade_generic - zwykli NPC W swoim tutorialu posłużę się plikiem Sidorowicza. Plik dzieli się na kilka podkategorii: 1. To co kupuje Sid, 2. To co sprzedaje, 3. Wartość sprzedawanych przedmiotów. Pójdę po kolei. 1. To co kupuje Sid jest zdefiniowane pod kategorią [trader_generic_buy] Powiedzmy, że mamy tam: af_gold_fish = 1, 0.3 Artefakt złota rybka. Właściwie interesuje nas pierwsza liczba (do drugiej nie mogłem znaleźć funkcji). Wartość 1 oznacza, że artefakt jest wart całą cenę (czyli 5000 RU). Jeżeli ustawimy tę wartość na 2 Sid da nam za artefakt 10000, a jak 0.5 to 2500, etc. Jeżeli mamy ";NO_TRADE" wystarczy, że wpiszemy zamiast tego odpowiadające nam liczby. 2. To co sprzedaje jest zdefiniowane pod kategorią: [supplies_start] Warto zauważyć, że podobnych kategorii jest kilka, np. [supplies_after_fabric] co oznacza moment gry. Tutaj przydaje się lekkie liźnięcie języka ang. i będziemy wiedzieć co oznacza dana kategoria. W tym przypadku jest to asortyment po powrocie z X18. Dlatego jeżeli chcemy, aby nasze przedmioty były cały czas u handlarza to trzeba pouzupełniać wszystkie kategorie. Różni handlarze mają zazwyczaj różne kategorie momentu gry. Są tam wymienione przedmioty, które mają być sprzedawane. Źeby dodać właśny przedmiot musimy wpisać go w odpowiednią kategorię (jeżeli jej nie ma musimy ją zrobić, wystarczy skopiować z linijek powyżej np. ;Á?îí?ę? (pancerze)) i wpisać pod nią odpowiednie ID pancerza, który chcemy, np. exo_outfit no i oczywiście dodajemy odpowiadające nam liczby. Teraz czas na liczby. Powiedzmy, że mamy: novice_outfit = 3, 0.8 Pierwsza liczba oznacza ilość sprzedawanego przedmiotu. Druga liczba oznacza szansę na to iż handlarz będzie miał na sprzedaż dany przedmiot. W tym przypadku szansa wynosi 80%. Jeżeli ustawimy 1 to szansa będzie wynosić 100%, etc. 3. Wartość sprzedawanych przedmiotów jest zdefiniowana w kategorii: [trader_start_sell] Tak samo jak w przypadku punktu drugiego, kategorii jest klika jeżeli chodzi o moment gry. Również trzeba uzupełnić, aby przedmioty były cały czas w asortymencie handlarza. No to powiedzmy, że mamy: wpn_mp5 = 3, 5 Tak jak w punkcie pierwszym interesuje nas pierwsza liczba. No i zasady są te same co w punkcie pierwszym. Im większa liczba tym handlarz będzie sobie więcej liczył.
  2. Autor: Barin Są dwa rodzaje zadań w stalkerze: takie które można otrzymać tylko poprzez dialog (zabij kogoś, znajdź artefakt/broń, obroń stalkerów itd i wróć po nagrodę) oraz takie, które kontrolowane są przez infoportion (wszystkie zadania typu storyline są tego typu). Opiszę pierwszy typ zadań, ponieważ z drugim typem jest znaczenie więcej roboty (jeśli ktoś na prawde będzie chciał to mogę również opisać drugi sposó:). Zadania pierwszego typu dotyczą właściwie tylko trzech plików: - config\text\eng\stable_task_manager.xml zawiera tytuły i opisy zadań - scripts\task_manager.script skrypt, który daje zadanie, sprawdza czy zadanie zostało wykonane, daje nagrode itd. Generalnie jeśli nie macie jakiegoś ważnego powodu to nie musicie tego skryptu edytować - config\misc\task_manager.ltx jest to plik zawierający definicje zadań, myśle że najprościej będzie jeśli omówię to na przykładzie: [barmen_kill_stalker_3] type = kill_stalker community = actor init_condition = {=actor_on_level(l10_radar) +yan_kill_brain_done} need_return = false text = barmen_kill_stalker_3_text description = barmen_kill_stalker_3_descr parent = barman target = rad_monolith_master reward_money = 10000 reward_reputation = +200 reward_rank = 20 time = 86400 type to typ zadania, może to być: przynieś artefakt (type = artefact), znajdź przedmiot/broń (type = find_item), przynieś fragment ciała jakiegoś mutanta (type = monster_part), zabij stalkera (type = kill_stalker), obroń obóz stalkerów (type = defend_lager), zabij stalkerów (type = eliminate_lager), storyline community = actor - jako wartość zawsze jest actor, co oznacza, że to właśnie gracz powinien wykonać to zadanie (kiedyś w stalkerze zadania mogły być wykonywane również przez stalkerów - np. stalker przychodzi to Sidorovitcha i bierze zadanie żeby znaleźć artefakt, szuka, znajduje i odnosi do Sida - szkodza że to wycieli z gry :lol: init_condition - niektóre zadania są typu "random" (czyli takie które dostajesz co jakiś czas, jak na przykład to od Woronina żeby zabić zombi w Jantarze); jeśli zadanie ma być typu "random" to wtedy w definicji zadania musi pojawić się taka właśnie linijka. Po prawej stronie znaku = jest warunek, który musi być spełniony żebyś dostał zadanie. W tym przypadku musisz znajdować się na mapie radar (red forest) i musisz mieć infoportion yan_kill_brain_done (które dostajesz gdy wyłączysz mózg w x16). Jeśli zadanie ma być dostępne przez dialog (czyli nie "random") to ta linijka nie powinna się znaleźć w definicji zadania need_return = false - określa czy musisz wrócić do osoby która dała Ci to zadanie. Jako domyślne jest need_return = true czyli za każdym razem musisz wrócić po nagrode. Jeśli nie chcesz zmuszać gracza do powrotu do osoby która zleciła zadanie to umieszczasz w definicji zadania need_return = false (ale w takim przypadku gracz nie otrzyma nagrody, czyli zrobi zadanie za friko) text = barmen_kill_stalker_3_text - określna nazwe tekstu wyświetlanego jako opis zadania (config\text\eng\stable_task_manager.xml) description = barmen_kill_stalker_3_descr - określna nazwe tekstu wyświetlanego jako tytuł zadania (config\text\eng\stable_task_manager.xml) parent = - osoba która zleca zadanie, oczywiście można utworzyć nowego "zleceniodawce" parent = trader (Sidorovitch) parent = barmen (Barkeep) parent = ecolog (Professor Sakharov) parent = dolg (General Voronin) parent = freedom (Lukash) parent = zastava_commander (Sergeant Kitsenko) parent = wolf (Wolf) parent = petrenko (Colonel Petrenko) parent = hunter (Hunter) parent = lisiy (Baldy) parent = drunk_dolg (Brome) parent = shustriy (Nimble) parent = mercenary (Snitch) target = - cel zadania; w zależności od typu zadania: type = artefact :: target = nazwa_artefaktu type = find_item :: target = nazwa_przedmiotu type = monster_part :: target = nazwa_przedmiotu type = kill_stalker :: target = nazwa_klasy_stalkera (config\gameplay\character_desc_*.xml) type = defend_lager :: target = nazwa_smart_terrain type = eliminate_lager :: target = nazwa_smart_terrain reward_money = - nagroda w postaci rubli reward_reputation = - nagroda w postaci reputacji (raczej średnio działa w stalkerze, ale dzięki temu można na przykład zostać członkiem Freedom w oryginalnej grze :)) reward_item = - lista przedmiotów, które stanowią nagrodę reward_rank = - nagroda w postaci ranku time = - ile czasu na wykonanie zadania (w sekundach); 1 godzina = 3600 sekund, czyli jeden dzień = 3600 x 24 = 86400 sekund Zmienna description działa jak pewnego rodzaju link. Gra odczytująć wartość tej zmiennej szuka w pliku config\gameplay\storyline_info_taskmanager.xml tzw. artykułu. Artykuł opisuje w jaki sposób i gdzie dodać informacje do pda. Definicja wygląda następująco: tm_find_item_4_descr - id - jest to to samo co wpisaliście w zmiennej description w definicji zadania -name - typ zadania (to samo co type w definicji zadania) -article_type - typ artukułu, w tym przypadku task ponieważ jest to zadanie (dzięki temu gra będzie wiedziała że ten artykuł powinien zostać wyświetlony w sekcji pda odpowiedzialnej za zadania) text - link do opisu zadania (config\text\eng\stable_task_manager.xml)
  3. 1.BassHunter http://pl.youtube.com/watch?v=bfuLYW3HVoQ http://pl.youtube.com/watch?v=zt8IPq8H-Bg http://pl.youtube.com/watch?v=3SrVchFzGAY 2.Jesper Kyd http://pl.youtube.com/watch?v=-gOP5ha3I3g http://pl.youtube.com/watch?v=G7jtuwsw9_A 3.No i Creed... :-) http://pl.youtube.com/watch?v=3eUSsbd9924 http://pl.youtube.com/watch?v=5yY1Nrznh4I http://pl.youtube.com/watch?v=1HdGUNm6-qI
  4. AUTOR: Bartas Dokładne poziomy pogody znajdują się w pliku config/weathers/environment.ltx Tego pliku edytować nie musimy, znacznie większe znaczenie ma plik weathers_default.ltx Edytujesz plik weathers_default.ltx znajdujący się w folderze config/weathers i tam masz: 04:00:00 (tutaj jest godzina) = default_weather_04 (nazwa pogody znajdująca się w nawiasie[] ) Kolory w RGB odpowiadają tak: 1.0, 0.5, 0.25 = R255, G128, B64. flares = flares_gradient1 (efekty pogodowe ustawiane w flares.ltx...) sky_texture = sky/sky_14_cube (textura nieba) sky_rotation = 0 (rotacja nieba w stopniach) sky_color = 0.20, 0.20, 0.20 (kolor nieba w RGB) clouds_texture = sky/sky_oblaka (budowa chmur) clouds_color = 0.05, 0.09, 0.15, 0.0014, 0.1 (Kolor chmur na niebie w RGB) far_plane = 350 (poziom widoczności, ok 700 – 800 na ładną pogodę) fog_distance = 350 (odległość mgły) fog_color = 0.003, 0.003, 0.015 (kolor mgły, RGB) fog_density = 0.9 (intensywność mgły) rain_density = 0.2 (intensywność deszczu) rain_color = 0.21, 0.21, 0.27 (kolor deszczu, jeżeli jest odblokowany w env_ambient.ltx) thunderbolt = thunderbolt_collection_default (jeżeli chcemy mieć burzę dodajemy thunderbolt_collection_default po =, jeżeli chcemy bez burzy usuwamy) bolt_period = 5.0f (przybliżony czas uderzeń pioruna) bolt_duration = 0.35f (czas rozjaśnienia nieba po uderzeniu) wind_velocity = 0.0 (szybkość wiatru) wind_direction = 0.0 (kierunek wiatru przy blowoutach) ambient = 0.0425, 0.045, 0.0475 lmap_color = 1.0, 1.0, 1.0 hemi_color = 0.125, 0.15, 0.175, 0.1 sun_color = 0.0 , 0.0 , 0.0 sun_dir = -18.0, 291 env_ambient = ambient_env_rain (otaczające efekty pogodowe, w env_ambient.ltx) ambient,hemi itp. nie edytowałem, więc sam za bardzo nie wiem do czego to służy, ale i bez tego można stworzyć całkiem porządną, nową pogodę.
  5. 1. W pliku gamedata\config\system.ltx znajdujemy linikę z wpisem max_belt = 5 //16 i w miejsce 5 wstawiamy ilość artefaktów jaką chcelibyśmy mieć jednocześnie przy pasie. 2. Otwieramy plik gamedata\config\ui\inwentory_new.xml. Odpowiada on za rozłożenie elementów na ekranie ekwipunku. Znajdujemy tam nastepujący <dragdrop_belt x="645" y="136" width="410" height="60" cell_width = "60" cell_height="60" rows_num="1" cols_num="5"/> Odpowiednie wpisy oznaczają: x i y - współrzedne lewego górnego rogu okienka z artefaktami width i height - szerokość i wysokość tego okienka cell_width i cell_height - szerokość i wysokość komórki w okienku rows_num i cols_num - liczba wierszy i kolumn (inaczej ile komórek ma byc w poziomie i w pionie) Przykładowo jesli chcecie 10 artefaktów to mozecie ustawić wszystko nastepująco: <dragdrop_belt x="645" y="136" width="300" height="100" cell_width = "60" cell_height="50" rows_num="2" cols_num="5"/> Będę wtedy miał 10 artefaktów rozłożone w dwóch wierszach składających się z komórek 55x45 pixeli. Oczywiście przydałoby się tez sobie dopasować pozycję x i y ale to już należy wyliczyc sobie samemu - przy różnej ilości artefaktów rozkłada się inaczej. Źyczę miłego modowania.
  6. AUTOR: Missile Ostatnio dużo szperałem w plikach Stalkerowskich Pomyślałem sobie, że za niektóre zadania otrzymujemy za mało wynagrodzenia. Poszukałem trochę i znalazłem plik odpowiedzialny nie tylko za to, co otrzymujemy po ukończeniu zadania, ale też za to, ile mamy na nie czasu, ile za nie reputacji dostajemy itp. A zatem: Wchodzimy w Stalker/gamedata/config/misc i otwieramy plik task_manager.ltx dowolnym edytorem, np. notatnikiem. Na samej górze będzie lista zadań, nieco w dół storyline task, zjeżdżamy jeszcze w dół i mamy coś takiego: (na przykładzie meduzy u Sida) [tm_find_artefact_1] type = artefact community = actor text = tm_find_artefact_1_text description = tm_find_artefact_1_descr parent = trader target = af_medusa reward_money = 1500 reward_reputation = +5 reward_rank = 1 reward_item = vodka time = 86400 ;idle_time = 84000 prior = 1 "reward money" - tu zmieniamy ilość kasy jaką otrzymujemy za wykonanie zadania. "reward reputation" - reputacja, jaką otrzymujemy za zadanie "reward item" - rzecz, jaką otrzymujemy za zadanie. Możemy wpisać np. : grenade_rgd5 - 1 granat grenade_rgd5, grenade_rgd5, grenade_rgd5, grenade_rgd5 - 4 granaty itd. medkit_army - woj. apteczka ammo_5.45x39_ap - amunocja, możemy dać też 5x56 itd. af_xxx - artefakt, np. af_crystal - otrzymujemy kryształ, af_soul - dusza itd. conserva - konserwa wpn_xxx - otrzymujemy daną broń, np. lr300, GP37, wpn_groza - otrzymujemy grozę itd. wpn_addon_scope_susat - otrzymujemy celownik SUSAT wpn_addon_grenade_launcher_m203 - granatnik ammo_vog-25 - ammo do granatnika VOG ammo_m209 - to też do granatnika tylko, że do M209 itd. Najfajniejsze jest to: reward_relation = freedom, +80 - tutaj pokazane jest czy stosunki z daną frakcją poprawiły się, czy pogorszyły po wykonaniu danej misji. Możemy dać, że zyskamy w oczach wolnościm jeśli z Czachą ich rozwalimy itp. Probowałem na jednej misji i działa, wolność była do mnie dalej neutralna. time = 86400 - jest to czas na dane zadanie. 86400 oznacza 1 dzień. Wystarczy pomnożyć przez siedem i mamy tydzień na zadanie(tak mi się wydaje, chociaż jeszcze tego nie próbowałem). Na razie próbowałem wszystko oprócz zmiany czasu w zadaniach i działa. Ustawiłem sobie np. vintoreza za przyniesienie meduzy sidowi i wszystko jest ok.
  7. The Witcher

    Euro 2012

    Myślę, że zdążymy. :-D
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

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