Skocz do zawartości

Diegtiariow

Zasłużony
  • Postów

    4879
  • Dołączył

  • Ostatnia wizyta

  • Wygrane w rankingu

    381

Odpowiedzi opublikowane przez Diegtiariow

  1. NAZWA: Dodajemy nową rangę - Legenda [SoC]
    TWÓRCA: Fireman3000

     

    NIEZBĘDNE PLIKI:

    Spoiler
    • game_relations.ltx (gamedata/config/creatures/)
    • _g.script (gamedata/scripts/)
    • xr_info.script (gamedata/scripts/)
    • xr_statistic.script (gamedata/scripts/)
    • se_respawn.script (gamedata/scripts/)
    • ui_st_mm.xml (gamedata/config/text/pol)


    W celach przetestowania:

    • character_desc_general.xml (gamedata/config/gameplay/character_desc_general.xml)

     

    CO ZMIENIĆ W PLIKACH:

    Spoiler

    1. GAME_RELATIONS.LTX:

    Spoiler

    Zmieniamy:

    ;rzeczywisty podział na grupy reputacji na skale
    rating = novice, 300, experienced, 600, veteran, 900, master, 1200, legend

     

    A potem wiersz z nazwą rang:

    ;skale dla wyświetlenia nazw zamiast liczb
    ;oceny, reputacje itd. w interfejsie
    rating_names = novice, 300, experienced, 600, veteran, 900, master, 1200, legend

     

    Potem szukamy tej linijki i zmieniamy ją:

    [rank_relations]
    ; novice, experienced, veteran, master, legend
    ;===================================================================
    novice = 0, 0, 0, 0, 0
    experienced = 0, 0, 0, 0, 0
    veteran = 0, 0, 0, 0, 0
    master = 0, 0, 0, 0, 0
    legend = 0, 0, 0, 0, 0

     

    Potem zmieniamy jeszcze jedną linijkę. Nie jest znana jej działanie, ale lepiej nie ryzykować:

    ;punkty rankingowe zdobyte za zabicie postaci
    ;z określonym statusem
    [rank_kill_points]
    novice = 0
    experienced = 0
    veteran = 0
    master = 0
    legend = 0

     

     

    2. _G.SCRIPT:

    Spoiler
    function set_actor_rank(rank)
    if rank == "novice" then
    db.actor:set_character_rank(0)
    elseif rank == "stalker" then
    db.actor:set_character_rank(300)
    elseif rank == "veteran" then
    db.actor:set_character_rank(600)
    elseif rank == "master" then
    db.actor:set_character_rank(900)
    elseif rank == "legend" then
    db.actor:set_character_rank(1200)
    end
    end

    Zamiast 1200 możesz wpisać dowolną wartość. Ten skrypt jest odpowiedzialny albo za to, kiedy ranga gracza zostanie uzyskana, albo jeśli zmienisz rangę tego ostatniego za pomocą skryptu, wówczas jego punkty rangi są równe temu, co właśnie zastąpiliśmy (czyli 1200)...

     

     

    3. XR_INFO.SCRIPT:

    Spoiler
    local info_by_rank = {
    novice = { "encyclopedy_zone_artifact_af-medusa",
    "encyclopedy_zone_artifact_af-cristall-flower",
    "encyclopedy_zone_artifact_af-vyvert",
    "encyclop edy_zone_artifact_af-gravi",
    "encyclopedy_zone_artifact_af-blood",
    "encyclopedy_zone_artifact_af-soul",
    "encyclopedy_zone_zone-story_stor y-2006",
    "encyclopedy_zone_anomalies_bald",
    " encyclopedy_zone_anomalies_gravi",
    "encyclopedy_zone_anomalies_meat",
    "encyclopedy_zone_anomalies_electra",
    "encyclopedy_z one_anomalies_radioactive",
    "encyclopedy_zone_locations_escape",
    "encyclopedy_zone_locations_garbage",
    "encyclopedy_mutant _crow_general",
    "encyclopedy_mutant_rat_general",
    "encyclopedy_mutant_flesh_general",
    "encyclopedy_mutant_blind_general",
    " encyclopedy_mutant_boar_general",
    "encyclopedy_social_military_army",
    "encyclopedy_social_stalker-clans_duty",
    "encycloped y_social_stalker-clans_bandits"
    },
    
    stalker = { "encyclopedy_zone_artifact_af-medusa",
    "encyclopedy_zone_artifact_af-cristall-flower",
    "encyclopedy_zone_artifact_af-night-sta r",
    "encyclopedy_zone_artifact_af-vyvert",
    "encyclopedy_zone_artifact_af-gravi",
    "encyclopedy_zone_artifact_af-gold-fish",
    "encyclopedy_ zone_artifact_af-blood",
    "encyclopedy_zone_artifact_af-mincer-meat",
    "encyclopedy_zone_artifact_af-soul",
    " encyclopedy_zone_zone-story_story-2008",
    "encyclopedy_zone_anomalies_fuzz",
    "encyclopedy_zone_anomalies_radioactive",
    "enc yclopedy_zone_anomalies_electra",
    "encyclopedy_zone_anomalies_ameba",
    "encyclopedy_zone_locations_escape",
    "encyclopedy_zo ne_locations_garbage",
    "encyclopedy_zone_locations_agroprom",
    "encyclopedy_zone_locations_darkdolina",
    "encyclopedy_zone_l ocations_bar",
    "encyclopedy_zone_locations_rostok",
    "encyclopedy_mutant_tushkano",
    "encyclopedy_mutant_pseudodog_general",
    "encyclopedy_ mutant_bloodsucker_general",
    "encyclopedy_mutant_burer_general",
    "encyclopedy_mutant_snork_general",
    " encyclopedy_mutant_flesh_general",
    "encyclopedy_mutant_blind_general",
    "encyclopedy_mutant_boar_general",
    "encyclopedy_soc ial_stalker-clans_freedom",
    "encyclopedy_social_stalker-clans_monolith",
    "encyclopedy_social_stalker-clans_killers",
    "ency clopedy_social_stalker-clans_zomstalkers",
    "encyclopedy_social_scientists_mobile-labs",
    "encyclopedy_social_military_army",
    " encyclopedy_social_stalker-clans_duty",
    "encyclopedy_social_stalker-clans_bandits",
    "stalker_story_2",
    "stalker_story_3",
    " stalker_story_7",
    "stalker_story_11",
    "stalker_story_12",
    "stalker_story_16",
    "stalker_story_17",
    "stalker_sto ry_18",
    "stalker_story_19",
    "stalker_story_20"
    },
    
    veteran = { "encyclopedy_zone_artifact_af-electra-sparkler",
    "encyclopedy_zone_artifact_af-electra-flash",
    "encyclopedy_zone_artifact_af-r usty-thorn",
    "encyclopedy_zone_artifact_af-rusty-kristall",
    "encyclopedy_zone_artifact_af-gravi",
    "encyclopedy_zone_artifa ct_af-gold-fish",
    "encyclopedy_zone_artifact_af-blood",
    "encyclopedy_zone_artifact_af-mincer-meat",
    "encyclopedy_zone_arti fact_af-soul",
    "encyclopedy_zone_artifact_af-electra-sparkler",
    "encyclopedy_zone_artifact_af-electra-flash",
    "encyclopedy _zone_artifact_af-electra-moonlight",
    "encyclopedy_zone_artifact_af-ameba-slime",
    "encyclopedy_zone_artifact_af-ameba-slug",
    " encyclopedy_zone_zone-story_story-2010",
    "encyclopedy_zone_zone-story_story-raid",
    "encyclopedy_zone_anomalies_fuzz",
    "enc yclopedy_zone_anomalies_radioactive",
    "encyclopedy_zone_anomalies_electra",
    "encyclopedy_zone_anomalies_ameba",
    "encyclope dy_zone_locations_agroprom",
    "encyclopedy_zone_locations_darkdolina",
    "encyclopedy_zone_locations_bar",
    "encyclopedy_zone_ locations_rostok",
    "encyclopedy_zone_locations_military-loc",
    "encyclopedy_zone_locations_yantar",
    "encyclopedy_zone_locat ions_radar",
    "encyclopedy_mutant_pseudogiant_general",
    "encyclopedy_mutant_poltergeist_general",
    "encyclopedy_mutant_contr oller_general",
    "encyclopedy_mutant_bloodsucker_general",
    "encyclopedy_mutant_burer_general",
    "encyclopedy_mutant_snork_ge neral",
    "encyclopedy_social_stalker-clans_loners",
    "encyclopedy_social_military_milstalkers",
    "encyclopedy_social_stalker- clans_freedom",
    "encyclopedy_social_stalker-clans_monolith",
    "encyclopedy_social_stalker-clans_killers",
    "encyclopedy_soci al_stalker-clans_zomstalkers",
    "encyclopedy_social_scientists_mobile-labs",
    "stalker_story_2",
    "stalker_story_3",
    "s talker_story_7",
    "stalker_story_10",
    "stalker_story_11",
    "stalker_story_12",
    "stalker_story_13",
    "stalker_stor y_14",
    "stalker_story_16",
    "stalker_story_17",
    "stalker_story_18",
    "stalker_story_19",
    "stalker_story_20"
    } ,
    
    master = { "encyclopedy_zone_artifact_af-electra-sparkler",
    "encyclopedy_zone_artifact_af-electra-flash",
    "encyclopedy_zone_artifact_af-e lectra-moonlight",
    "encyclopedy_zone_artifact_af-rusty-thorn",
    "encyclopedy_zone_artifact_af-rusty-kristall",
    "encyclopedy _zone_artifact_af-rusty-sea-urchin",
    "encyclopedy_zone_artifact_af-drops",
    "encyclopedy_zone_artifact_af-fireball",
    "encyc lopedy_zone_artifact_af-cristall",
    "encyclopedy_zone_zone-story_story-raid",
    "encyclopedy_zone_anomalies_fuzz",
    "encyclope dy_zone_anomalies_radioactive",
    "encyclopedy_zone_anomalies_electra",
    "encyclopedy_zone_anomalies_ameba",
    "encyclopedy_zon e_locations_yantar",
    "encyclopedy_zone_locations_radar",
    "encyclopedy_zone_locations_pripiat",
    "encyclopedy_zone_locations _stancia",
    "encyclopedy_mutant_pseudogiant_general",
    "encyclopedy_mutant_poltergeist_general",
    "encyclopedy_mutant_control ler_general",
    "encyclopedy_social_stalker-clans_loners",
    "encyclopedy_social_military_milstalkers",
    "stalker_story_6",
    " stalker_story_9",
    "stalker_story_10",
    "stalker_story_13",
    "stalker_story_14",
    "stalker_story_16",
    "stalker_sto ry_17",
    "stalker_story_18",
    "stalker_story_19",
    "stalker_story_20"
    },
    
    legend = { "encyclopedy_zone_artifact_af-electra-sparkler",
    "encyclopedy_zone_artifact_af-electra-flash",
    "encyclopedy_zone_artifact_af-e lectra-moonlight",
    "encyclopedy_zone_artifact_af-rusty-thorn",
    "encyclopedy_zone_artifact_af-rusty-kristall",
    "encyclopedy _zone_artifact_af-rusty-sea-urchin",
    "encyclopedy_zone_artifact_af-drops",
    "encyclopedy_zone_artifact_af-fireball",
    "encyc lopedy_zone_artifact_af-cristall",
    "encyclopedy_zone_zone-story_story-raid",
    "encyclopedy_zone_anomalies_fuzz",
    "encyclope dy_zone_anomalies_radioactive",
    "encyclopedy_zone_anomalies_electra",
    "encyclopedy_zone_anomalies_ameba",
    "encyclopedy_zon e_locations_yantar",
    "encyclopedy_zone_locations_radar",
    "encyclopedy_zone_locations_pripiat",
    "encyclopedy_zone_locations _stancia",
    "encyclopedy_mutant_pseudogiant_general",
    "encyclopedy_mutant_poltergeist_general",
    "encyclopedy_mutant_control ler_general",
    "encyclopedy_social_stalker-clans_loners",
    "encyclopedy_social_military_milstalkers",
    "stalker_story_6",
    " stalker_story_9",
    "stalker_story_10",
    "stalker_story_13",
    "stalker_story_14",
    "stalker_story_16",
    "stalker_sto ry_17",
    "stalker_story_18",
    "stalker_story_19",
    "stalker_story_20"
    }
    }

    Ten skrypt odpowiada za historie usłyszane od/znalezione u stalkerów (które pozostają w encyklopedii).

     

     

    4. XR_STATISTIC.SCRIPT:

    Spoiler
    local killCountProps = {
    neutral_novice = 1, neutral_experienced = 2, neutral_veteran = 3, neutral_master = 4, neutral_legend = 5,
    monolith_novice = 1, monolith_experienced = 2, monolith_veteran = 3, monolith_master = 4, monolith_legend = 5,
    military_novice = 1, military_experienced = 2, military_veteran = 3, military_master = 4, military_legend = 5,
    killer_novice = 1, killer_experienced = 2, killer_veteran = 3, killer_master = 4, killer_legend = 5,
    ecolog_novice = 1, ecolog_experienced = 2, ecolog_veteran = 3, ecolog_master = 4, ecolog_legend = 5,
    dolg_novice = 1, dolg_experienced = 2, dolg_veteran = 3, dolg_master = 4, dolg_legend = 5,
    freedom_novice = 1, freedom_experienced = 2, freedom_veteran = 3, freedom_master = 4, freedom_legend = 5,
    bandit_novice = 1, bandit_experienced = 2, bandit_veteran = 3, bandit_master = 4, bandit_legend = 5,
    zombied_novice = 1, zombied_experienced = 2, zombied_veteran = 3, zombied_master = 4, zombied_legend = 5,

    Zamiast 5 można wstawić inną wartość. Tyle punktów wpada do sumy punktów, gdy zabijasz ludzi z rangą legendy...

     

     

    5. SE_RESPAWN.SCRIPT:

    Spoiler
    -- Tablica ograniczeń na spawn: wszystkich NPC w symulacji nie powinno być więcej, niż określono.
    local simMaxCount = {
    stalker_novice = 43, stalker_regular = 48, stalker_veteran = 43, stalker_master = 20, stalker_legend = 5,
    monolith_novice = 0, monolith_regular = 30, monolith_veteran = 35, monolith_master = 30, monolith_legend = 10,
    military_novice = 0, military_regular = 32, military_veteran = 22, military_master = 5, military_legend = 2,
    killer_novice = 0, killer_regular = 18, killer_veteran = 17, killer_master = 10, killer_legend = 2,
    ecolog_novice = 1, ecolog_regular = 1, ecolog_veteran = 1, ecolog_master = 1, ecolog_legend = 0,
    dolg_novice = 0, dolg_regular = 33, dolg_veteran = 36, dolg_master = 17, dolg_legend = 13,
    freedom_novice = 50, freedom_regular = 20, freedom_veteran = 26, freedom_master = 21, freedom_legend = 13,
    bandit_novice = 40, bandit_regular = 50, bandit_veteran = 18, bandit_master = 10, bandit_legend = 2,
    zombied_novice = 20, zombied_regular = 15, zombied_veteran = 10, zombied_master = 10, zombied_legend = 10,

     

    6. UI_ST_MM.XML:

    Spoiler
    <string id="legend">
    <text>Legenda</text>
    </string>

     

     

    7. PLIK DO TESTU - CHARACTER_DESC_GENERAL.XML:

    Spoiler
    <specific_character id="actor" no_random = "1">
    <name>actor_name</name>
    <icon>ui_npc_u_actor</icon>
    <map_icon x="2" y="5"></map_icon>
    
    <team>Actor</team>
    <supplies>
    [spawn] \n
    device_torch \n
    </supplies>
    
    <class>actor</class>
    <community>actor</community>
    
    <rank>1201</rank>
    <reputation>0</reputation>
    <visual>actors\hero\stalker_novice</visual>
    </specific_character>

    Aby przetestować wystarczy zmienić rangę u gracza na np. 1201.

    Wchodzimy do gry i voila! GG ma rangę Legenda.

     

     

    ŹRÓDŁO:

    https://ap-pro.ru/forums/topic/1180-soc-dobavlyaem-novyy-rang-legenda/

  2. NAZWA: Losowa broń z walizki [CoP]
    TWÓRCA: mohovoy

     

    OPIS:

    Spoiler

    W tej chwili są tylko 4 walizki - z pistoletami, z automatami, ze strzelbami, z karabinami snajperskimi

    Jeśli chcecie dodać ten dodatek do swojego moda, to twórca prosi o ukazywanie twórcy tego dodatku.

     

    SCREEN:

    Spoiler

    2021-02-12-201052.png

     

    LINKI:

    Spoiler

    https://disk.yandex.ru/d/dfhYLpJzjQmDig

    Instalacja: Wszystkie foldery wrzucić do folderu z grą w folder gamedata.

     

    ŹRÓDŁO:

    https://ap-pro.ru/forums/topic/2373-sluchaynoe-oruzhie-iz-keysa/

    • Dodatnia 1
  3. NAZWA: Władca Zony Gold 5.0 [SoC]
    TWÓRCA: shoker
    TWÓRCA ADAPTACJI: liner
    PLATFORMA: Cień Czarnobyla 1.0006

     

    OPIS:

    Spoiler

    Przeniesienie wersji Władcy Zony do Czystego Nieba do Cienia Czarnobyla.

    Wywołanie WZ odbywa się za pomocą klawisza F1 w menu, kiedy gracz wczytał save/zaczął nową grę. 

     

    Instrukcja instalacji:

    1. Pobrać ostatnią wersję.
    2. Wrzucić zawartość archiwum do Cienia Czarnobyla 1.0006 ze zgodą na zamianę.

     

    Komentarz od twórcy: "Jeśli używacie prac z tego dodatku lub samego dodatku, to proszę nie usuwać copyright'u i pozostawić podziękowania dla twórcy/-ów, ponieważ jest to podstawowa etyka moddowania."

     

    SCREENY:

    Spoiler

    ss-05-06-22-21-26-51-l01-escape.jpgss-05-06-22-21-27-08-l01-escape.jpgss-05-06-22-21-27-19-l01-escape.jpgss-05-06-22-21-27-36-l01-escape.jpgss-05-06-22-21-27-28-l01-escape.jpg

     

    LINKI:

     

    ŹRÓDŁO:

    https://ap-pro.ru/forums/topic/3487-povelitel-zony-gold-50-dlya-tch/

  4. NAZWA: Lokacja "Bar" z SoC [CoP]
    TWÓRCY: twórcy lokacji Bar, pirat

     

    OPIS:

    Spoiler

    Przeniesienie geometrii sceny lokacji "Bar" z SDK 0.4 do formatu SDK 0.7. Głównym obiektom poziomu zmieniono tekstury na te z ZP. Wykorzystywane prop'y i dynamika zostały zamienione na analogiczne z ZP. W scenie są: sound occluder, HOM, siatka AI i detail'e. Smooth grupy są w porządku.

    Co więcej dorysowano bump'y do niektórych tekstur oraz dodano tekstury, których jest brak analogicznych w CzN/ZP.

    W teorii mogą zostać użyte zarówno dla SDK 0.5\0.6, ale będą niuanse w teksturach lub modelach. 

    P.S. SoC'owe decal'e (wallmarki) nie zostały przeniesione, ponieważ w SoC i CoP decal' mają różne foldery z teksturami, a edytować już ustawionych wallmark'ów nie wolno.

     

    SCREENY:

    Spoiler

    1.jpg2.jpg3.jpg4.jpg5.jpg6.jpg7.jpg

     

    LINKI:

     

    ŹRÓDŁO:

    https://ap-pro.ru/forums/topic/4369-sdk-07-uroven-bar-iz-tch-v-zp/

  5. NAZWA: Władca Zony 5.1
    TWÓRCA: Shoker
    TWÓRCA NOWEJ WERSJI: Chel2077
    PLATFORMA: Czyste Niebo
    DATA PREMIERY: 30.12.2020

     

    OPIS:

    Spoiler

    Zmiany:

    1. Można spawnować wycięte mutanty (chimerę, zombi, połamańca, kota, burera) nie bojąc się wylotów.
    2. Poprawiono niektóre ikonki.
    3. Dodano pancerze do gry, których wcześniej nie było (Egzoszkietet Monolitu, Powinności, Najemników, itd.).
    4. Z zakładki "Вещи" (Rzeczy) usunięto Antyrad (z powodu niego był wylot).
    5. Do gry (i w menu) dodano wycięty karabin maszynowy "bozar". Amunicja do niego to ammo_223_fmj.

     

    Instalacja:

    Folder gamedata skopiować do folderu z grą.

    Uwaga! Do niektórych modów typu Faction Commander 2.51 trzeba obowiązkowo robić adaptację.

     

    LINKI:

     

    ŹRÓDŁO:

    https://ap-pro.ru/forums/topic/2237-povelitel-zony-51/

    https://www.moddb.com/addons/51

  6. Mody z nowymi lokacjami*:

    Krótka ściągawka:

    • NEW - now-a/-e autorsk-a/-ie lokacje
    • SoC - Cień Czarnobyla
    • CS - Czyste Niebo
    • CoP - Zew Prypeci
    • CoC - Zew Czarnobyla
    • LA - Lost Alpha

     

    Nazwa moda Link do moda Platforma Autor/autorzy moda
    Alone in Windstorm [NEW] [KLIK] CoP Leer, Invincible
    Alternative Epilogue [KLIK] SoC Mehanik_Yar
    Alternatywa 1.3.2 [NEW] [KLIK] SoC N.S.A. (san27)
    Alternatywa 1.4 [NEW] [KLIK] SoC N.S.A. (san27)
    Anomaly Anthology - 1.0 (OBT) [KLIK] CoC Максим Ратниченко
    AVS "Kodeks Naznaczonego" 2.1+2.1.1 [KLIK] SoC strelok200
    Call of Chernobyl 1.4.22 [KLIK] CoC TeamEPIC
    Call of Chernobyl 1.5 R6 [BETA] [KLIK] CoC TeamEPIC
    Clear Sky Location Pack [KLIK] CS Gunner shadow (Eugenium/Eugene), Nikitalebedin (Kompilacja lokacji)
    CoC by Demosfen [NEW] [KLIK] CoC Demosfen
    Czas Sojuszu (2 część serii) [KLIK] CoP S.A.T (Stalker Alliance Team)
    Czas Sojuszu - Więź Czasów (3 część serii) [NEW] [KLIK] CoP S.A.T (Stalker Alliance Team)
    Czas Zmian 2.0 [NEW] [KLIK] CS Aleks (aleksn09)
    Czas Zmian 2.5 [NEW] [KLIK] CS Aleks(aleksn09) (Александр Нехорошев)
    Czas Zmian 3.0 [NEW] [KLIK] CS Aleks aka Aleksn09
    Człowieczy Los - Powrót [KLIK] SoC Хемуль36рус
    Człowieczy Los - Powrót (OGSE) [KLIK] SoC Хемуль36рус
    Dark Path [NEW] [KLIK] LA MrGroove i DP-Team
    Dead City: Breakthrough v3.0/3.01 [NEW] [KLIK] CoP Policai
    Dead City Special Release [NEW] [KLIK] CoP Policai
    Dead City v4.80 [KLIK] CoP Dead City Team
    Dolina Szeptów [NEW] [KLIK] CoP Den-Stash
    Dollchan 8: Infinity [NEW] [KLIK] CoC Андрей Мирай (Andrey Mirai) aka Chiliaz
    Doppelganger - Zagadki Północnej Strefy Zony. 7.64 [NEW] [KLIK] CS Reborn Team
    Dream Reader [NEW] [KLIK] SoC ShtoporOk
    Dream Reader - Dangerous Area [KLIK] SoC DRM Team
    Dream Reader - Dangerous Area 2.0 [Build 1935] [KLIK] SoC DRM Team
    Dream Reader - The Forbidden Zone [KLIK] SoC Shtopor
    Dream Reader - The Leper Area [KLIK] SoC ShtoporOk
    Droga do Prypeci v1.0.0.1 [KLIK] CoP razoromon
    Drugie Słońce [NEW] [KLIK] CoP Sergachkook
    Echo Monolitu [NEW] [KLIK] CoP Gerbys
    Ecolog Story (Historia Ekologa) [NEW] [KLIK] CoP VoronStalker
    F.O.T.O.G.R.A.F (Ф.О.Т.О.Г.Р.А.Ф) [NEW] [KLIK] SoC Secret Path Team / Team FOTO
    Fabularna kontynuacja Czystego Nieba [KLIK] CS tankist
    Farthest Edge (Cz. 1) [NEW] [KLIK] CoP detooxe
    Global War [KLIK] CoC Global War Developers
    Hardwarmod v3.2 [NEW] [KLIK] CS Warwer, Kirgudu
    Hibernation Evil - Epizod I [KLIK] SoC Кирилл Левшин, Амон Нихродский
    Hibernation Evil - Epizod II [KLIK] SoC Кирилл Левшин, Амон Нихродский
    Hibernation Evil - Epizod III [KLIK] SoC Одиночка
    Hibernation Evil - Epizod IV. Część 1 [KLIK] SoC Одиночка
    Historia Kota (Cat Story) [KLIK] CoP Войсик (VOVASIKVAIS)
    Jermak: Miraże Zony [KLIK] CS AlbertVIctory
    Jermak: Niezbadane ścieżki [KLIK] CS AlbertVIctory
    Jermak: Ostatni rajd [KLIK] CS AlbertVIctory
    Kamień Zgorszenia. Prolog. [KLIK] CoP RBSS TEAM
    Kontrakt na Dobre Życie [NEW] [KLIK] CoP V.I.V.I.E.N.T. TEAM
    Kontrakt na Nowe Życie [NEW] [KLIK] CoP V.I.V.I.E.N.T. TEAM
    Kontrakt na Złe Życie: Efekt Motyla [NEW] [KLIK] CoP V.I.V.I.E.N.T. TEAM
    Korkociąg [KLIK] SoC Андрюха Святой
    Kroniki Czarnobyla [KLIK] CoP Chernobyl Chronicles Team
    Kroniki Kajdana (cz. 1) [KLIK] SoC Basil
    Kroniki Kajdana (cz. 2) [KLIK] SoC Basil
    Kroniki Kajdana (cz. 3) [KLIK] SoC Basil
    Labirynt [KLIK] CoP makdm, Механик, Policai, Пилот
    Last Fallout Overhaul (Beta) [KLIK] CS Ceasar(acs)
    Last War [KLIK] CoC Last War Team
    Legend Returns 0.9.2 [NEW] [KLIK] CoC LR Team
    Looking Back [NEW] [KLIK] CoP Ekagors
    Lost Alpha [KLIK] LA Dez0wave
    Lost Alpha Developer's Cut [KLIK] LA Dez0wave
    Lost Alpha Developer's Cut Extended [KLIK] LA dez0wave, Michael Rast & Valerok
    Lost Alpha: Ulepszone Spolszczone LA 1.4005 DC+DLC [KLIK] LA dez0wave, RastaMichael, phobos2077, Artem_killer, EGZOdaw
    Lost World 3.0 [KLIK] SoC Ирбис
    Lost World Condemned [KLIK] SoC Ирбис, Real Wolf
    Lost World Origin [NEW] [KLIK] SoC L.W.C. Team (Real Wolf, Ирбиs, Tekila, Lagos, Larento, Бонифаций, Леонид)
    Lost World Requital [KLIK] SoC Irbis, Real Wolf
    Lost World Troops of Doom 3.0 + Patch 3.5.5 [KLIK] SoC Irbis, Real Wolf
    Lost Zone - Armageddon v3.0 [KLIK] SoC DIGBOX (KFS-team)
    Los Zony [KLIK] SoC Zander_driver
    Łącznik [KLIK] CoP Michaił Zarubin
    Miasto Potępionych [NEW] [KLIK] SoC prizrak
    Miasto Potępionych - Remake [NEW] [KLIK] SoC Global Zone Mod Team
    MLR addon 10 [NEW] [KLIK] CoC MLR Team
    Mroczne Bractwo - Przeklęci przez Strefę [KLIK] SoC Artem „-GAS-” Gromych
    Na Bagnach [KLIK] CoP 61dimon161
    Na przekór śmierci 1.5: Nowicjusz [NEW] [KLIK] CoP Geonezis, FaLcon, Винторез94, Goroff, Skyff, ХОВАН, Malik, HitmanNew, FantomICW, Aaz, kv0, hakim, Scarabay, nikitalebedin, Unfear, RazRuSchiTeL, den-stash
    Na przekór śmierci 2: Jednym dniem żyję [KLIK] CoP Geonezis, FaLcon i inni
    Na przekór śmierci 3: W pajęczynie kłamstw [NEW] [KLIK] CoP artGT969, makdm, Wolfstalker, GasSnork
    Narodnaja Soljanka 2010 [NEW] [KLIK] SoC Arhara
    Narodnaja Soljanka 2010: DMX Mod [KLIK] SoC Ray Twitty
    Narodnaja Soljanka 2010: ООP / Collector / Master Addon [KLIK] SoC Архара, proper70, Buusty, Zizon975
    Narodnaya Solyanka + DMX 1.3.5.OOP.MA.K. [KLIK] SoC ForestOfShadows
    Narodnaya Solyanka + OOP + MAK + CzSz + Addon Rodzinne Ognisko [KLIK] SoC Архара, proper70, Buusty, Zizon975, oksana579, azrael1325, Zizon, frankenshtayn, Fagot
    Na Rozdrożu [KLIK] CoP Дмитрий Симченков (Dmitrij Simczenkow)
    NLC 6: Początek [KLIK] SoC Siak i inni
    NLC 7 3.0 Edycja Polska [KLIK] SoC

    igor.doc, waylander, VeNoMMaNs, den1s, Damage, Ell, Paradox, AllCore, -R-V-S-, vvdok, Lemberg-73, Dennis, Dmitry, Alkseur, Paladin120810, Okichi, Дядя Вася, Petrenka, Zagolski, dsh, mikelik, Dimorin, den1s, GrayCat

    NLC 7: Build 3.0 [KLIK] SoC twórcy moda NLC 7
    NLC 7: Build 3.7 [KLIK] SoC twórcy moda NLC 7
    NLC 7: Build 3.8 [KLIK] SoC twórcy moda NLC 7
    Nowy Arsenał (wersje 4-7) [KLIK] SoC phorumer
    Nowy Arsenał 7 [KLIK] SoC phorumer
    Nowy Czas. Los najemnika [NEW] [KLIK] SoC Graff46
    Nowy Czas. Naukowe Podejście [OGSR] [NEW] [KLIK] SoC Graff46
    NS 2016 [KLIK] SoC Arhara
    NS OGSR [KLIK] SoC D1mon, KRodin, _Sk8_AsTeR_, Laucer, Mecheniy@Mecheniy, dog19601, c510new, ALEXMANLEO, joye-ramone, petrov0805, Dennis_Chikin, Shadowman, SergeT, BFG,  I am Dead, fED
    Oblivion Lost 3.1 - Definitive Edition [KLIK] SoC Kanyhalos, Bangalore, OLP Team
    Oblivion Lost Remake 2.5 [KLIK] SoC hi_flyer
    Ocalały: Ucieczka z Zony [KLIK] CoP jek@n
    OGSE 0.6.9.3 (Final 2.0) [KLIK] SoC OGSE TEAM
    OGSM 1.8 CE [KLIK] CS DEXXX, Alex Ros, Minister, Antnigm
    OGSM Extended [KLIK] CS Eugenium
    OGSR Mod [KLIK] SoC KRodin
    Old Story [NEW] [KLIK] CS Chriotmao, Старлей
    OP 2.1 [NEW] [KLIK] SoC OP-2.1 Team
    OP 2.2 [NEW] [KLIK] SoC OP-2.2 Team
    Operacja Czarne Gniazdo [KLIK] CoP svi_042
    Ostatni Dzień [KLIK] SoC Sine
    Ostatni Stalker [NEW] [KLIK] SoC zaurus
    Ostatni Stalker 1.3 x64 OGSR [NEW] [KLIK] SoC zaurus
    Ostatni Stalker 2020 [NEW] [KLIK] SoC zaurus
    Pieśni żelaznych choinek [KLIK] SoC imcrazyhoudini, tetr
    Pod Osłoną Śmierci: Klondajk 2.0 [NEW] [KLIK] CoP Strelok200, Skyff
    Pod Przykrywką Śmierci: Klondajk [NEW] [KLIK] CoP strelok200, FantomICV, SlaittyPWCS, makdm
    Powrót 1.2 Final [KLIK] CoP Arche
    Powrót zagubionego Chorążego [KLIK] SoC muzafir
    Powrót do Zony [NEW] [KLIK] CoP Jek@n-Lim0n
    Powrót Szramy cz.1 + Dopełnienie [KLIK] SoC dimak
    Powrót Szramy 2 [KLIK] SoC dimak
    Pozostawiony śmierci [KLIK] SoC HellRatz
    Projekt "Odstępca" [NEW] [KLIK] CoP Проект отступник Dev
    Prypeć. Czas Rozliczeń - Czas Sojuszu (Prolog: 1 część serii) [NEW] [KLIK] CoP russibic, makdm, mechanik, Baleryj, Diesel/Disel, Kolja
    Przestrzenna Anomalia (Update 4.1) [NEW] [KLIK] CoP PROFFESIONAL
    Przez Przypadek [KLIK] CoP Eugenium
    Przygody Tolika [NEW] [KLIK] CoP M.F.S. Team
    Przygody Tolika: DLC Ciemny Interes [NEW] [KLIK] CoP M.F.S. Team
    Reach mod + Slenderman [NEW] [KLIK] CoP wind
    Reborn: Dziedzictwo [KLIK] CS DDOS
    Reborn - Nowicjusze idą do Zony [NEW] [KLIK] CS Reborn Team
    Reborn - Stalker Wolfenstein [NEW] [KLIK] CS Er i Reborn Team
    Reborn 2.52 - Inną drogą [KLIK] CS Er i Reborn Team
    Reborn: Duplikaty - Cz2. Źródło [NEW] [KLIK] CS Er
    Reborn: Duplikaty v.7.63 Odmienne Światy [NEW] [KLIK] CS Reborn Team
    Rozszerzone Terytoria/Zona 2010r. [KLIK] CoP tankist
    SFZ Project: Lost Story [NEW] [KLIK] SoC exDeMODER, Operator_Nanami, Operator_Larsen, Hozar_2002, TheShmuga, Melya, Dezodar
    Shadow Of Chernobyl Update [NEW] [KLIK] SoC Владислав Романов
    Short Story - Intruders [NEW] [KLIK] CoP Cartoteka
    Sigerous Mod 2.2 Questowe Dopełnienie [KLIK] CoP lushagin0
    Skazany na Wieczne Męki [KLIK] CoP Nktk
    Slayer mod 0.18 [KLIK] CoP slayer_kch
    Spectrum Project: Droga we Mgle [NEW] [KLIK] CoP Spectrum Project Team
    SZA: The Second Project [NEW] [KLIK] CoP SZA - Team
    Szkolenie Bojowe 3 [KLIK] CoC Дядя Саша, Shkiper2012
    Tajemnica Strefy: Historia Striełoka. Prolog [NEW] [KLIK] SoC Global Zone Mod Team
    Tajne Ścieżki [KLIK] SoC antreg, Ruvin
    Tajne Ścieżki 2 Final Update [KLIK] SoC antreg, dimos, Erlik, gruber, amik, Ruvin
    Tajne Ścieżki 2 Final Update + Autumn Aurora 2 [KLIK] SoC vandr, Cromm Cruac
    Tajne Ścieżki 2 [OGSR Engine x64] [KLIK] SoC I am Dead
    Taktyczny Poligon [KLIK] CS Krievu_Okupants
    The Dark Legends [KLIK] CoP Владислав Гірченко, Назар Моісеєнко, Богдан Кислий
    The Journey [NEW] [KLIK] CoP el_chupacabra
    The Price of Lost Memories [NEW] [KLIK] CoP Dmitry_Shadoff
    Unexplored Land (build) [NEW] [KLIK] CoP _SKIF_
    Upadła Gwiazda - Honor Najemnika [KLIK] SoC zaurus
    Upadek Zatonu [NEW] [KLIK] CS MadRazor
    Wariant Omega 2 - Chłodne Lato 2014 [KLIK] SoC Basil
    Wariant Omega v4.0 [KLIK] SoC Basil
    We Are Not Alone [NEW] [KLIK] CoP svi
    Wiatr Czasu 1.3 [NEW] [KLIK] CoP akmc47u
    Wielka Wojna [KLIK] CoC Walera Piłoian, Sergej Baranow
    Wielka Zona [KLIK] SoC riddik121
    W Piekle... Psy [KLIK] SoC Хемуль36рус
    W Potrzasku [NEW] [KLIK] CoP makdm
    Wyjście z Limańska [KLIK] CoP Ekagors
    Wyjście z Limańska 2: Kontynuacja [NEW] [KLIK] CoP Ekagors
    Zagubiona Dusza (Gone Soul) [NEW] [KLIK] CoP SGS Team
    Zimna krew [KLIK] CS aleksn09, AzzzA, stalker36vrn
    Złoty kufer 2 [KLIK] CoP !SkIF!
    Żywa Zona [NEW] [KLIK] CoP Artiom Buszujew (Артём Бушуев)
     
    * - w katalogu mogą znajdować się nieprzetłumaczone mody, katalog uwzględnia TYLKO mody z nowymi lokacjami
    • Ważne 2
  7. NAZWA: Tekstury celowników
    TWÓRCA: g_m_e

     

    OPIS:

    Spoiler

    19 tekstur celowników zrobionych dla gier S.T.A.L.K.E.R. Użyj go jako zasobów dla swojego moda. Są dostępne w formacie 1920x1080.jpg (do podglądu) i .dds wykonane z pomocą GIMP.

    Instalacja:

    1. Znajdź pliki wpn_crosshair.dds w S.T.A.L.K.E.R. SOC/gamedata/textures/wpn.

    2. Wykonaj kopię zapasową oryginalnych plików.

    3. Zmień nazwę pobranego pliku .dds na ten, który chcesz zastąpić.

    4. Wklej go.

    5. Baw się dobrze.

     

    SCREEN:

    Spoiler

    crosshairs.jpg

     

    LINKI:

     

    ŹRÓDŁO:

    https://www.moddb.com/addons/stalker-stalker-crosshair-textures-resource

    • Dodatnia 2
  8. Lista trudnych modów*:

    Nazwa moda Link do moda Autor/autorzy moda
    A.R.E.A. [KLIK] Holodilnik, Darril
    Alone in Windstorm [KLIK] Leer, Invincible
    Alternatywa 1.1 (BETA) [KLIK] san27
    Alternatywa 1.3 [KLIK] N.S.A.(san27)
    Alternatywa 1.4 [KLIK] N.S.A. (san27)
    Call of Misery [KLIK] Lanforse Rainford
    Clear Sky: Remake [KLIK] Max Warlock
    Człowieczy Los Krok w Nieznane: Deja Vu [KLIK] Хемуль36рус
    Człowieczy Los Krok w Nieznane: Deja Vu Outfater Addon [KLIK] Хемуль36рус, Outfater
    Darkest Time: Extended [KLIK] Никита Клинг, Александр Шевченко, Павел Спицин
    Dead Air [KLIK] Dead Air Devs
    Dead Air Rebalance [KLIK] GRAFS
    Dead Air: Rerum [KLIK] ed777, Kramer
    Dead Air Revolution [KLIK] nPu3PaK
    Dead Air Survival [KLIK] Aleksandr Owerin
    Dead Air - Tajemnice Zony [KLIK] Віталій Ігорович
    DSH mod [KLIK] dsh
    Echo of Misery v0.42 [KLIK] Team Echo of Misery
    HARDWARMOD v3.2 [KLIK] Warwer, Kirgudu
    HARDWARMOD v3.2 + LAST DAY + weapons MOD [KLIK] X_A_M_E_L_E_O_N
    Krwawy Szlak v.1.0.3/1.0.3.1 + Addon Twisted Area [KLIK] Zander, Stunder, Chorniy666, BorzoyExist
    Księga Umarłych [KLIK] Kalambur (Виталий Игорович), Gorbun (Влад Филин), Александр Оверин, Ekidona Arubino
    Los Zony [KLIK] Zander_driver
    Lost World: Origin [KLIK] L.W.C. Team (Real Wolf, Ирбиs, Tekila, Lagos, Larento, Бонифаций, Леонид)
    Lost World Requital [KLIK] Irbis, Real Wolf
    Lost World Troops of Doom 3.0 + Patch 3.5.5 [KLIK] Irbis, Real Wolf
    Lost Zone - Armageddon v3.0 [KLIK] DIGBOX (KFS-team)
    Misery [KLIK] Misery Development Ltd.
    Misery 2.2.1 Official + Gunslinger [KLIK] Ёлки Палки
    MYSTERY [KLIK] T.Z.P.
    Narodnaya Solyanka + OOP + MAK + CzSz + Addon Rodzinne Ognisko [KLIK] Архара, proper70, Buusty, Zizon975, oksana579, azrael1325, Zizon, frankenshtayn, Fagot
    Narodnaya Solyanka - "Krwawy Finał" lub knucia tajemniczego Pustelnika [KLIK] Zizon975, azrael1325, FrostWirm, frankenshtayn, lexa-odin2009, Korpus, dimak, Fagot
    Narodnaya Solyanka - Poszukiwania Czarnobylskiego Szachisty lub Tajemnica biorobota Fritza [KLIK] Zizon975, azrael1325, frankenshtayn, Fagot
    NLC 6: Początek [KLIK] Siak i inni
    NLC 6.0 - Long Way mod [KLIK] Forest of Shadows
    NLC 7: Build 3.0 [KLIK] twórcy moda NLC 7
    NLC 7: Build 3.7 [KLIK] twórcy moda NLC 7
    NLC 7: Build 3.7.5 + "Martwa strefa" + "Autumn Aurora - 2" [KLIK] twórcy modów takich jak NLC 7, Apokalipsa-3 (optivankiev), Autumn Aurora 2
    NLC 7: Build 3.8 [KLIK] twórcy moda NLC 7
    NLC 7 3.0 Edycja Polska [KLIK] igor.doc, waylander, VeNoMMaNs, den1s, Damage, Ell, Paradox, AllCore, -R-V-S-, vvdok, Lemberg-73, Dennis, Dmitry, Alkseur, Paladin120810, Okichi, Дядя Вася, Petrenka, Zagolski, dsh, mikelik, Dimorin, den1s, GrayCat
    NLC 7: Hard Edition [KLIK] Котовод & Кот
    NLC 7: HBM 1.6 [KLIK] Zagolski
    NLC Style Addon 1.0R [KLIK] Hardplayer22
    OGSE 0.6.9.2 + Jek@n's Gameplay Addon [KLIK] OGSE Team + Jek@n's
    OP-2 [KLIK] Proper70, Buusty, Akill
    OP-2.1 [KLIK] OP-2.1 Team
    OP-2.2 [KLIK] OP-2.2 Team
    Perfect Story 3.0 [KLIK] Jurok
    Prawo Diegtiariowa [KLIK] proger_Dencheek
    Prosectors Project [KLIK] Карлан, Nazgool, Malandrinus, Bak, Дядя Вася
    Reach mod + Slenderman [KLIK] wind
    Reborn 2.47 - SexyPatogen Zone [KLIK] Reborn Team
    Reborn 2.50 - Artefakty Śmierci [KLIK] Er i Reborn Team
    Reborn 2.52 - Inną drogą [KLIK] Er i Reborn Team
    Reborn: Duplikaty v.7.63 Odmienne Światy [KLIK] Reborn Team
    Reborn: Duplikaty - Cz2. Źródło [KLIK] Er
    Reborn: FF - Artefakty Śmierci [KLIK] Max Warlock
    Reborn: Stalker Wolfenstein [KLIK] Er i Reborn Team
    Road to the North [KLIK] Zone Expanded
    SGM 2.1 + Misery [KLIK] Crazy Stalker aka Глупи=)
    The Long Road [KLIK] Jurok
    Złota Kula [KLIK] Jek@n, Charsi
    Złota Kula [OGSR Engine] [KLIK] I am dead, jek@n, charsi
    Złota Kula + Autumn Aurora 2.1 [KLIK] Jek@n, Charsi, sergei27shus
     
    * - w katalogu mogą znajdować się nieprzetłumaczone mody, katalog uwzględnia TYLKO trudne mody
    • Ekstra 1
  9. NAZWA: Otwarcie drzwi po wprowadzeniu kodu [CoP]
    AUTOR: FalkineIsaku

     

    OPIS:

    Spoiler

    WSTĘP:

    Cyfrowy kod, który po wprowadzeniu otwiera drzwi. Takie coś było w SoC, ale w CoP nie jest stosowane. Na szczęście został wycięty tylko model.

     

    DZIAŁANIE W LEVEL EDITOR (LE):

    1. Na początek pobieramy to archiwum i wrzucamy go do gamedata SDK i Stalkera.
    2. W LE na niezbędne miejsce ustawiamy physics_object i naciskamy Enter.
    3. Naciskamy na Visual, wybieramy codedoor_key.ogf wzdłuż ścieżki: meshes\dynamics\door\.
    4. W fixed_bones wybieramy opcję link
    5. Następnie idziemy do Custom Data, możecie zrobić oddzielny plik w config\scripts, lub zrobić logikę od razu w Custom Data. Twórca porady robił logikę w Custom Data. 
    6. W Custom Data piszemy:
      [logic]
      active = ph_code@first_code; - przejście na konieczną sekcję logiki
      
      [ph_code@first_code]
      code = 1414; - Kod, po wprowadzeniu, którego zostanie wykonane działanie w on_code
      on_code = {=actor_alive} %=disable_ui +infoportion%; - Wszystko co jest po "on_code = " możecie zamienić na własne.

       

    7. Gotowe, wchodzimy do gry i sprawdzamy otrzymanie infoportion.

     

    OTWARCIE DRZWI PO WPROWADZENIU KODU:

    1. Wchodzimy do pliku z logiką drzwi.
    2. Powiedzmy, że są 3 sekcje: ph_door@locked, ph_door@closed i ph_door@open
    3. Upewniamy się, że w sekcji ph_door@locked jest napisane:
      locked = true
      closed = true
      sound = ***
      sound = ***
      sound = ***
    4. I po tym kodzie piszemy:
      on_info = {+infoportion} ph_door@close/ph_door@open;- wybieramy odblokowanie drzwi tak, aby można było otworzyć je ręcznie lub otwieramy je od razu.

       

     

     

    ŹRÓDŁO:

    https://ap-pro.ru/forums/topic/4318-cop-otkrytie-dveri-posle-vvedeniya-koda/

    • Dodatnia 1
  10. Co-P.jpg

    NAZWA: Tworzenie typowych zadań w Zewie Prypeci [CoP]
    TWÓRCA: Xmk

     

    Analiza systemu zadań w S.T.A.L.K.E.R. Zew Prypeci.

     

    ANALIZA PARAMETRÓW:

    Spoiler

    icon - ikonka zadania
    Przykład: icon = ui_inGame2_Put_v_pripyat

    prior - priorytet zadania
    Przykład: prior = 112

    storyline - flaga zadania (true - fabularne, false - poboczne)
    Przykład: storyline = true

    title - nazwa zadania (id z xml) - jeśli bierzemy nazwę nie z xml, to w grze zostanie wyświetlone bez spacji
    Przykład: title = zat_a9_way_gates_check_transport_workshop_name

    descr - opis zadania (id из xml) - jeśli bierzemy nazwę nie z xml, to w grze zostanie wyświetlone bez spacji
    Przykład: descr = zat_a9_way_gates_check_transport_workshop_text

    target - cel na mapie (znaczek)

    Przykłady:
    target =zat_a2_stalker_barmen (ID NPC, na którego został postawiony znaczek)
    target = {+nazwa_infoportion}zat_a2_stalker_barmen -- sprawdzanie infoportion, po którym znaczek będzie postawiona na NPC

    on_init - infoportion, który "uruchamia" zadanie
    Przykład: on_init = %+nazwa_infoportion%

    condlist_x -- blok warunków. Możliwe wartości to complete, reversed, fail

    Przykłady:
    condlist_0 = {+nazwa_infoportion} complete - jeśli infoportion jest, to zadanie zostało wykonane
    condlist_1 = {+nazwa_infoportion} reversed - jeśli infoportion jest, to zadanie można powtórzyć
    condlist_2 = {+nazwa_infoportion} fail - jeśli infoportion jest, to zadanie nie powiodło się/zostało zawalone

    on_complete - działania, które są wykonywane, jeśli zadanie zostało wykonane
    on_reversed - działania, które są wykonywane, jeśli zadanie nie powiodło się/zostało zawalone

    Przykłady:
    on_complete = %=inc_faction_goodwill_to_actor(stalker:200)% -- zwiększamy reputację u stalkerów (funkcja jest używana z xr_effect)
    on_reversed = {+nazwa_infoportion} %=inc_faction_goodwill_to_actor(stalker:200)% -- zwiększamy reputację u stalkerów, tylko, jeśli jest okr. infoportion
    on_complete = %+nazwa_infoportion% -- wydajemy infoportion

    reward_money - nagroda pieniężna

    Przykład: reward_money = 5000

     

    TWORZYMY PRYMITYWNE ZADANIE:

    Spoiler

    Wykorzystywane pliki:

    • configs\gameplay\dialogs_zaton.xml
    • configs\gameplay\info_zaton.xml
    • configs\gameplay\character_desc_zaton.xml
    • configs\text\rus\st_ quests_zaton.xml
    • configs\misc\tm_zaton.ltx
    • scripts\dialogs_zaton.script

    Tworzenie dialogu:

    Otwieramy plik dialogs_zaton.xml i dodajemy przed </game_dialogs>:

    <dialog id="vodka_quest_dialog">
    <dont_has_info>quest_vodka_done</dont_has_info>
    <dont_has_info>quest_vodka_give</dont_has_info>
    <phrase_list>
    <phrase id="1">
    <text>Przynieś butelkę</text>
    <give_info>quest_vodka_give</give_info>
    <action>dialogs_zaton.give_vodka_quest</action>
    </phrase>
    <phrase id="0">
    <text>Cześć, nie potrzeba ci wódki?</text>
    <next>1</next>
    </phrase>
    </phrase_list>
    </dialog>
    
    <dialog id="vodka_quest_prines">
    <has_info>quest_vodka_give</has_info>
    <precondition>dialogs_zaton.is_has_vodka_borode</precondition>
    <phrase_list>
    <phrase id="1">
    <text>Dzięki, stary.</text>
    <give_info>quest_vodka_done</give_info>
    </phrase>
    <phrase id="0">
    <has_info>quest_has_vodka</has_info>
    <text>Trzymaj.</text>
    <action>dialogs_zaton.transfer_vodka_to_boroda</action>
    <next>1</next>
    </phrase>
    </phrase_list>
    </dialog>

     

    Następnie dodajemy nasze dialogi Brodaczowi:

    Otwieramy plik character_desc_zaton.xml i szukamy linijki <actor_dialog>zat_a2_stalker_barmen_actor_info</actor_dialog>. Pod nią piszemy:

    <actor_dialog>vodka_quest_dialog</actor_dialog>
    <actor_dialog>vodka_quest_prines</actor_dialog>

    Zapisujemy.

    Infoportion'y i skryptowe funkcje:

    Otwieramy plik info_zaton.xml i dodajemy przed </game_information_portions>:

    <info_portion id="quest_vodka_give"></info_portion>
    <info_portion id="quest_has_vodka"></info_portion>
    <info_portion id="quest_vodka_done"></info_portion>

    Otwieramy plik dialogs_zaton.script i na początku dopisujemy:

    function give_vodka_quest()
    task_manager.get_task_manager():give_task("quest_vodka_give")
    end
    function is_has_vodka_borode()
    if db.actor:object("vodka") then
    return true
    end
    return false
    end
    function transfer_vodka_to_boroda(first_speaker, second_speaker)
    dialogs.relocate_item_section_from_actor(first_speaker, second_speaker, "vodka")
    end

    Zapisujemy.

    Samo zadanie:

    Otwieramy plik tm_zaton.ltx i na końcu piszemy:

    [quest_vodka_give]
    icon = ui_inGame2_Put_v_pripyat
    prior = 2
    storyline = false
    title = {=actor_has_item(vodka)}vodka_barmen_prinesti_name, vodka_barmen_naiti_name
    descr = vodka_barmen_descr
    target = {=actor_has_item(vodka)}zat_a2_stalker_barmen
    condlist_0 = {+quest_vodka_done} complete

    Otwieramy plik st_quests_zaton.xml i dodajemy po <string_table>

    <string id="vodka_barmen_naiti_name">
    <text>Znajdź wódkę dla barmana</text>
    </string>
    <string id="vodka_barmen_prinesti_name">
    <text>Przynieś wódkę barmanowi</text>
    </string>
    <string id="vodka_barmen_descr">
    <text>Barman w celach testowych poprosił o znalezienie i przyniesienie mu 2 butelek wódki</text>
    </string>

    Zapisujemy.

     

    ŹRÓDŁO:

    https://ap-pro.ru/forums/topic/1024-cop-sozdanie-tipovyh-kvestov-v-zove-pripyati/

    • Dodatnia 1
    • Ważne 1
  11. image.jpg

    NAZWA: Szczegółowa analiza tworzenia elementu OGM
    TWÓRCA: Detron

     

    Co będzie potrzebne do tworzenia OGM dla menu?:

     

    WSTĘP:

    Spoiler

    Załóżmy, że tworzysz nowe menu gry i chcesz dodać do niego wstawkę OGM. Masz gotową animację i musisz tylko ją wkleić, ale nie wiesz jak. Co zrobić następnie? To jest dokładnie to, co teraz z tobą przeanalizujemy!

    dbbe92b08ebf89b.jpg

     

    ETAP 1 - PRZYGOTOWANIE I RENDEROWANIE ANIMACJI W SONY VEGAS:

    Spoiler

    Część 1 - Wyostrzanie:

    Spoiler

    Gorąco polecane jest wyostrzanie animacji, ponieważ po konwersji do AVI, a następnie do OGM ostrość jest częściowo tracona!
    - Dla ostrości ze standardowego zestawu Sony polecane jest ustawienie wartości na 0.250

    d6f6370cc18e389.png

    - Dla ostrości ze specjalnego zestawu NewBlue polecane jest ustawienie wartości na 25

    c17a63043206b04.png

     

    Część 2 - Ustawienie projektu:

    Spoiler

    Teraz musimy ustawić parametry animacji, których potrzebujemy:
    - Rozdzielczość i liczba klatek są takie same, jak w przypadku animacji (jeśli zostały zaimportowane)
    - Obowiązkowo trzeba ustawić niżej wymienione parametry w następujący sposób:
    -- Field Order: None (progressive scan)
    -- Deinterlace Method: None
    -- Rendering Quality: Best

    e49374719d99986.png

     

    Część 3 - Ustawienie presetu:

    Spoiler

    Na początek, szukamy i wybieramy dowolny preset z "Video for Windows (*.avi)"

    Po jego otwarciu musisz skonfigurować ustawienia w następujący sposób:
    - Frame Size: (use project settings)
    - Frame Rate: 29,970 (NTSC)
    - Field Order: None (progressive scan)
    - Pixel aspect ratio: 1.0
    - Video format: ffdshow video codec

    Z dodatkowych opcji pozostaw tylko najniższą.

    Uwaga: Gorąco polecane jest wyłączenie dźwięku, jeśli w animacjach występuje dźwięk

    5aa3b6aec58f7aa.png

     

    Część 4 - Ustawienie kodeku:

    Spoiler

    W ustawieniach presetu wybieramy "Configure" i zostaje otworzone menu kodeku

    W nim ustawiamy następujące parametry:
    - Encoder: HufYUV (FFMpeg variant)
    - Colorscape: YV12
    - Pozostałych ruszać nie należy!

    1e3fd796ae11fe3.png

     

    Część 5 - Zapisujemy preset:

    Spoiler

    Aby w przyszłości nie konfigurować wszystkich tych ustawień, zapisujemy je.
    Aby to zrobić, po prostu wprowadź nową nazwę w miejsce poprzedniej i kliknij na dyskietkę.
    I to wszystko! Preset jest zapisany i następnym razem znajdziesz go tam spośród innych!
    Następnie po prostu uruchomiamy renderowanie i czekamy, aż się zakończy!

    e72368822b0b74f.png

     

     

    ETAP 2 - KONWERSJA DO FORMATU OGM:

    Spoiler

    Tutaj wszystko jest niezwykle proste. Pobieramy gotowy skonfigurowany konwerter i rozpakowywujemy go.

    Po zakończeniu renderowania animacji, wrzucamy go do folderu konwertera.
    Otwieramy "OGM Converter" za pomocą dowolnego tekstowego edytora.
    Zamiast fire_place.avi i fire_place.ogm wstawiamy swoje własne nazwy (np: campfire.ogm lub waterfall.ogm). Zapisujemy nasz zmieniony plik i potem uruchamiamy go.

    Po kilku sekundach, animacja OGM będzie w pełni gotowa do wstawienia do gry!

    Uwaga: Info - wyświetla wszystkie możliwe komendy konwertera i objaśnia właściwości komend.

    119ae5a98fc73a3.png

     

    ETAP 3 - UMIESZCZENIE GOTOWEGO OGM W MENU (DLA ZEWU PRYPECI):

    Spoiler

    1. Wrzucamy gotowy plik do gamedata/textures/ui.
    2. Otwieramy ui_mm_mainmenu_16, jeśli mamy rozdzielczość 16:9 lub ui_mm_mainmenu jeśli mamy 4:3. Oba pliki znajdują się w gamedata/configs/ui.

    Dodajemy tą linijkę:

    <auto_static x="103" y="390" width="240" height="200" stretch="1">
           <texture width="300" height="200">ui\fire_place</texture>
    </auto_static>

    nad linijką:

    <auto_static x="103" y="0" width="818" height="768" stretch="1">
           <texture>ui_inGame2_background</texture>
    </auto_static>

    - auto_static - pozycja i rozmiar w menu
    - texture width, height - szerokość i wysokość waszego pliku .ogm
    - ui\fire_place - nazwa waszego pliku .ogm i jego lokalizacja

    3. Wymazujemy miejsce w tle, gdzie będzie znajdować się nasza animacja (najlepiej z miękkimi krawędziami)

    Nazwa i pozycja tła - gamedata/textures/ui/ui_actor_main_menu.dds

    d647480079d1de4.png

    4. Wchodzimy do gry i cieszymy się widokiem!

     

    EFEKT:

    Spoiler

     

     

    UWAGA I KRÓTKO O TYM, DLACZEGO ZOSTAŁ NAPISANY TEN ARTYKUŁ:

    Spoiler

    Uwaga:

    Wymagane jest, aby animacja miała bardziej standardowe rozmiary (koncentrując się na 16:9 i 4:3). Tworząc animację pionową, w której wysokość jest większa niż szerokość, możesz mieć wylot!

    Nie zalecane jest również tworzenie animacji mniejszych niż 200px (możliwy wylot).
    Nazwa animacji nie powinna mieć takiej samej nazwy jak jakaś tekstura!

     

    Dlaczego został napisany ten artykuł:

    Twórca przejrzał sporo tematów na różnych stronach poświęconych tworzeniu OGM, ale w żadnym z tematów nie znalazł czegoś sensownego, co dokładnie wyjaśniłoby, jak to zrobić. Ustawienia renderowania, ustawienia konwertera nie są nigdzie dokładnie opisane. W jakichś tematach są używane stare wersje programów, gdzieś zostały użyte przestarzałe kodeki, trudne sposoby i programy... Tak więc autor poradnika postanowił sam dociec wszystkich rzeczy i siedząc nad tym więcej niż jedną godzinę, znalazł prosty i efektywny sposób oraz uznał, że warto się nim podzielić. Ten artykuł będzie dla Ciebie bardziej przydatny niż te artykuły były dla twórcy. Powodzenia w moddingu.

     

    ŹRÓDŁO:

    https://ap-pro.ru/forums/topic/1173-detalnyy-razbor-sozdaniya-ogm-elementa/

  12. image.jpg

    NAZWA: Sound Environment w S.T.A.L.K.E.R.
    TWÓRCA: Macron

     

    O SOUND ENVIROMENT SŁÓW KILKA:

    Spoiler

    Czym jest Sound Environment w S.T.A.L.K.E.R.? Jest to wymuszona zmiana zwykłych dźwięków w niektórych obszarach. Na przykład logiczne jest, jeśli po wejściu do piwnicy/jaskini/pod most, zaczynamy słyszeć echo od strzałów/przeładowania/naszych kroków, itp.

    Same strefy są ustawiane ręcznie w SDK, a później dodawane do folderu poziomu jako plik level.snd_env (lub jako level.sound_environment w przypadku starszych buildów).

    Wszystkie buildy od 18xx do Cienia Czarnobyla/Czystego Nieba obsługują Sound Environment. Nikt tego nie wyciął z silnika Cienia Czarnobyla.

     

    IMPLEMENTACJA SOUND ENVIRONMENT:

    Spoiler

    Są problemy z implementacją:

    1. Pierwszy problem polega na tym, że Sound Environment działa tylko wtedy, gdy włączony jest EAX.
    2. Drugi problem polega na tym, że z bibliotek OpenAL (OpenAL32.dll+wrap_oal.dll), począwszy od 2006 roku, nagle zniknęła obsługa EAX dla kart dźwiękowych z poprzednich lat.
    3. Trzeci problem polega na tym, że EAX, nawet jeśli jest obsługiwany przez kartę dźwiękową, normalnie działa nie z każdym sterownikiem.
    4. Czwarty problem polega na tym, że w SoC w opcjach dźwięku dozwolone jest ustawianie EAX w dowolnym przypadku, tzn. gra nie sprawdza, czy faktycznie jest włączony, co prowadzi do samooszukiwania się, jeśli nie czyta się logu.
    5. Piąty problem polega na tym, że w finale SoC ten sam Sound Environment został z jakiegoś powodu wycięty na większości poziomów. Pozostał tylko gdzieś na:
      • l07_wojsko
      • l08_jantar
      • l12u_sarcofag
      • testers_mp_factory
      • testers_mp_pool

    EAX FIXX ver 3:

    Spoiler

    dodano !!!_dsound_software dla wymuszonego włączenia Generic Software
    dodano !!!_backup dla przywrócenia w przypadku poważnych problemów
    dodano warianty 15-19
    dodano !!!_sound_fixx_for_cs_cop
    dodano !!!_sound_fixx_for_shoc_10004
    dodano !!!_sound_fixx_for_shoc_10006
    zaktualizowano eax.dll do wersji v4.0.1.0
    dodano obsługę CoP (przy użyciu !!!_sound_fixx_for_cs_cop)

    Link: https://disk.yandex.ru/d/lGuwBsvVQpnub

    Dana paczka (EAX FIXX) jest przeznaczona do włączenia obsługi EAX przez grę, a co za tym idzie Sound Environment zarówno dla istniejących poziomów, jak i perspektywnych modów, w pierwszej kolejności dla SoC. Ta paczka jest przeznaczona dla buildów od 18xx do SoC/CS.

    Paczka składa się z numerowanych folderów z plikami .dll, gdzie w różnych kombinacjach są spotykane importowane z buildów/SoC/CS biblioteki OpenAL wszystkich możliwych wersji.

    Każdy folder zawiera:

    • eax.dll (standardowa wersja)
    • OpenAL32.dll
    • wrap_oal.dll

    Zadanie paczki: metodą przeszukiwania wszystkich kombinacji wybrać opcję, przy której na konkretnym sprzęcie i w konkretnym buildzie/grze zadziała EAX, a co za tym idzie zostanie włączona obsługa Sound Environment.

     

    Instalacja:

    1. W user.ltx jeden raz poprawiamy (lub przez konsolę wprowadzamy) komendy:

    • snd_efx on (pozwalamy grze na używanie efektów)
    • snd_targets 24 (starsze warianty plików .dll mogą "kłócić się", jeśli wartość jest duża. Można po testach ustawić 32.)
    • snd_volume_eff 1 (maksymalna głośność efektów)
    • snd_volume_music 0 (muzykę wyłączamy, aby nie przeszkadzała)
    • snd_volume_master 1 (ogólna maksymalna głośność, komenda dla buildów 18xx)

    2. Uruchamiamy grę (build od 18xx do SoC/CS/CoP) i patrzymy co jest napisane w konsoli lub logu w dwóch linijkach definiujących EAX.

    Jeśli zostało napisane:
    * sound: EAX 2.0 extension: present
    * sound: EAX 2.0 deferred: present
    znaczy najprawdopodobniej, że wszystko jest w porządku, EAX działa. Dalsze eksperymenty można pominąć.
     

    Jeśli zostało napisane:
    * sound: EAX 2.0 extension: absent
    * sound: EAX 2.0 deferred: absent
    Lub tylko w jednej linii jest absent, to oznacza, że EAX nie działa lub może zawierać błędy i można eksperymentować.

    3. Tworzymy kopię zapasową folderu bin w jakimś miejscu. Jeśli korzystamy z buildów, pomijamy punkt 4.

    4. Jeśli korzystamy z CS/CoP, to do folderu bin wrzucamy wszystko z !!!_sound_fixx_for_cs_cop
    Jeśli korzystamy z SoC 1.0004, to do folderu bin wrzucamy wszystko z !!!_sound_fixx_for_shoc_10004
    Jeśli korzystamy z SoC 1.0006, to do folderu bin wrzucamy wszystko z !!!_sound_fixx_for_shoc_10006

    5. Sprawdzamy.
    Dla CS/CoP w przypadku braku EAX lub problemów z dźwiękiem, w grze w opcjach dźwięku zmieniamy z Generic Hardware na Generic Software lub odwrotnie, restartujemy grę i sprawdzamy jeszcze raz.
    Dla buildów/SoC w przypadku braku EAX lub problemów z dźwiękiem, kopiujemy dsound.dll z !!!_dsound_software do folderu bin. Dźwięk powinien zostać przełączony w tryb Generic Software.

    Dla CS/CoP, jeśli nie przełącza się w opcjach (Generic Hardware/Generic Software), można także spróbować sztuczkę z plikiem dsound.dll.

    6. Jeśli to nie zadziała, zaczynamy testy na pełną skalę:
    (Dla CS/CoP pełne testy można wykonać dwukrotnie - najpierw z wybranym w opcjach Generic Hardware, a następnie z Generic Software).
    (Dla buildów/SoC pełne testy można wykonać dwukrotnie - najpierw zwykle, a następnie z pomocą !!!_dsound_software).

    Bierzemy wszystkie biblioteki .dll z folderu 01_18xx-22xx_default i umieszczamy je w folderze bin. Uruchamiamy grę i czytamy w logu/konsoli linijki o EAX. Następnie bierzemy biblioteki .dll z folderu 02_18xx-22xx_tweaked1, robimy to samo i tak dalej, sprawdzamy wszystkie warianty. Pamiętamy, gdzie włączył się EAX (zapisane jest present w obu liniach). Jeśli EAX jest włączony w kilku opcjach, zostawiamy tę, w której daty plików są nowsze lub dźwięk wydaje się lepszy. Zdarzają się przypadki, gdy w dzienniku jedna linia mówi, że jest present, a inna jest absent. Najprawdopodobniej Sound Environment nie będzie wywalać.
    Niektóre warianty mogą nie być zgodne z określonym buildem/grą/systemem i podczas testowania mogą powodować do wylotu/zawieszania się gry podczas uruchamiania. Gdy EAX jest włączony w różnych wersjach, mogą pojawić się nowe drobne usterki, takie jak kliknięcia. Nie ma gwarancji, że ten sam wariant będzie działał poprawnie w różnych buildach/grach.

    Jeśli w wyniku testów w SoC/CS/CoP dźwięk pogorszył się lub gra się nie uruchamia, usuwamy dsound.dll (jeśli jest zainstalowany) i przywracamy z !!!_backup.

    Co robić, jeśli to nic nie pomogło:
    1. Jeśli układ dźwiękowy nie jest wbudowany/jest włożona do komputera karta dźwiękowa, spróbuj zaktualizować jego/jej sterowniki, zwróć uwagę na obsługę EAX.
    Sterowników może być kilka, w tym nieoficjalne.

    2. Jeśli system dźwiękowy jest wbudowany, na przykład Realtek, spróbuj zaktualizować jego sterowniki. Często na stronach pomocy technicznej dla płyt głównych dostępne są nieaktualne opcje. Oznacza to, że lepiej jest szukać sterowników bezpośrednio od producenta układu dźwiękowego. Możesz też wygooglować program "Realtek 3D SoundBack", może się przydać.

    3. Kup prosty Sound Blaster Live/5.1 za 20$. W zależności od modelu/systemu operacyjnego problemy ze znalezieniem sterowników nie są wykluczone, ale przynajmniej te urządzenia audio powinny obsługiwać EAX z jedną z opcji fixa.

    4. Pobierz kody źródłowe OpenAL i będąc dobrym programistą, skompiluj pod własny układ dźwiękowy osobisty OpenAL32.dll+wrap_oal.dll.

     

    Jak samodzielnie stworzyć Sound Environment w SDK?
    Załóżmy, że otwartą jakąś lokację/poziom.
    Edit Mode -> Sound Env -> Ustawiamy punkt na mapie. Pojawi się sześcian. Klikamy prawym przyciskiem myszy w jego właściwości.

    Environment Inner ustawiamy long_corridor (np).
    Environment Outer ustawiamy open_space.

    Następnie przybliżamy/obracamy naszą kostkę, aby wypełnić pomieszczenie. Po ustawieniu wystarczającej liczby kostek mówimy: Compile -> Make Game. I umieszczamy gotowy plik level.snd_env w grze w folderze poziomu.

     

    PRZYKŁAD WYKORZYSTANIA SOUND ENVIRONMENT NA KORDONIE:

    Spoiler

     

     

    OPIS PRESETÓW:

    Spoiler
    • Alley - Aleja
    • Arena - Arena
    • Auditorium - Audytorium
    • Bathroom - Łazienka (pomieszczenie wyłożony kafelkami)
    • Carpeted Hallway - Korytarz (przedpokój) wyłożony dywanami (z pewnością będzie wpływać na dźwięk kroków?)
    • Cave - Jaskinia
    • City - Miasto
    • Concert Hall - Sala koncertowa
    • Dizzy - Zawroty głowy
    • Drugged - Pod wpływem różnych substancji
    • Forest - Las
    • Generic - Ogólny
    • Hallway - Korytarz
    • Hangar - Hangar
    • Livingroom - Pokój dzienny
    • Mountains - Góry
    • Padded Cell - Wyściełana filcem komórka
    • Parkinglot - Parking
    • Plain - Równina
    • Quarry - Kamieniołom
    • Room - Pokój
    • Sewer Pipe - Kanał (np. na Jantarze)
    • Stone Corridor - Kamienny korytarz
    • Stone Room - Pokój z kamienia
    • Under Water - Pod wodą

     

    ŹRÓDŁO:

    https://ap-pro.ru/forums/topic/1174-sound-environment-v-stalker/

  13. NAZWA: Dodajemy nowy dźwięk
    TWÓRCA: AziatkaVictor

     

    Od twórcy: „To jest mały przewodnik po wprowadzaniu nowych dźwięków do Stalkera. Jest kilka podstawowych pojęć, o których po prostu musisz wiedzieć - bez nich nic nie będzie działać”.

     

    PRACA W EDYTORZE AUDIO:

    Spoiler

    Pierwsze, co trzeba wiedzieć, to jaki dokładnie dźwięk jest nam potrzebny. Prościej mówiąc, należy określić, w jaki sposób dźwięk będzie odtwarzany. Jest to ważne na początku pracy. To typ dźwięku.

    Są dwa możliwe warianty, od których będzie zależeć efekt:

    • Mono. Taki typ jest potrzebny w celu odtwarzania dźwięków przedmiotami, bronią, itd. To wszystko z powodu tego, że dźwięk jest odtwarzany w jednym z uszu z określoną głośnością. Pozwala to stworzyć efekt 3D. Natomiast dla stereo to nie pasuje, ponieważ w stereo dźwięk jest odtwarzany różnie w każdym z uszu, a tutaj jest całkiem inna zasada działania.
    • Stereo. Ten typ jest wykorzystywany w celu odtwarzania dźwięków u "GG w głowie", tzn. dźwięk będzie odtwarzany z jednakową głośnością w trybie stereo. Jest to wykorzystywane dla dźwięków GG, lektora SMS i ambientów. 
      • UWAGA: Nie róbcie Stereo dla dźwięków, które będą odtwarzane z przedmiotów w przestrzeni 3D. Jeśli dźwięk jest w Stereo, to jest tak, jakbyście go nie ustawiali - będzie on odtwarzany w głowie, a wy będzie mówić, że jest nie w porządku.

    Wszystko jest proste. Wybieramy typ dźwięku, dla naszych potrzeb i eksportujemy wybrany dźwięk w formacie *.wav. 
    UWAGA: Częstotliwość dźwięku powinna być 44100 Hz.

     

    PRACA W SDK:

    Spoiler

    Aby SDK zobaczył nasz dźwięk, trzeba go dodać do folderu "rawdata/sounds". Później uruchamiamy SDK i otwieramy zakładkę "Sounds/Sound Editor". To panel, który pomoże nam w ustawieniu dźwięku. 

    Poszczególne parametry oraz to, za co odpowiadają:

    • Quality - szerokość pasma częstotliwości, otaczająca centralną częstotliwość (dla bardziej płynnego zanikania dźwięku lub jego stabilności)
    • MinDis - odległość, od której głośność dźwięku będzie się obniżać (im niższa do MaxDist, tym płynniejsze przejście, ale Quality trzeba zwiększyć)
    • MaxDist - maksymalna odległość, z której dźwięk będzie słyszeć GG
    • MaxAIDist - maksymalna odległość, z której dźwięk będzie słyszeć NPC
    • BaseVolume - głośność
    • GameType - element wpływający na reakcję NPC.

    Parametry zostały wzięte z Wiki

     

    Dla dźwięku, który będzie odtwarzany w głowie GG, większości parametrów nie trzeba ustawiać. Można od razu z edytora audio eksportować do formatun *.ogg. A dla dźwięku mono, ustawiamy potrzebne parametry, naciskamy "ОК" i nasze dźwięki pojawiają się w folderze "gamedata/sounds" w formacie *.ogg. Czeka nas później praca z konfigami. 

     

    PRACA Z KONFIGAMI:

    Spoiler

    Aby gra widziała nasz dźwięk i nie było wylotu do pulpitu podczas próby odtworzenia, trzeba go dopisać w konfigu "script_sound_lokacja". Jeśli utworzysz ten plik specjalnie dla swojej lokacji, to trzeba dołączyć go do głównego konfigu "script_sound", pisząc w nim:

    #include "script_sound_lokacja.ltx"

    Również dołączamy listę:

    [list]: list_music_and_stories, list_script_sound_zaton, list_script_sound_jupiter, list_script_sound_pripyat, list_script_sound_underpass, list_script_sound_lokacja

    Następnie dopisujemy dźwięk w konfigu. Trzeba go dopisać do listy i stworzyć jego sekcję. Np. chcemy dodać muzykę dla radia. Dopisujemy w konfigu to:

    [list_script_sound_lokacja]
    nasz_dźwięk
    
    [nasz_dźwięk]
    type = 3d
    npc_prefix = false
    path = music\nasz_dźwięk
    shuffle = loop
    idle = 0,0,100

     

    Parametry z sekcji:

    • Type
      • Actor - określa dźwięk odtwarzany od strony aktora. To dźwięki z PDA, wszelkiego rodzaju wiadomości SMS-owe, rozmowy pilotów - wszystko, czego potrzebujesz, aby grać bez utraty głośności od usunięcia źródła. Za inicjalizację i odtworzenie dźwięku odpowiada skryptowa klasa actor_sound.
      • 3D - określa dźwięk odtwarzany przez obiekty. Skryptowa klasa object_sound odpowiada za inicjalizację i odtwarzanie dźwięku.
      • NPC - określa dźwięk odtwarzany przez NPC. Skryptowa klasa npc_sound odpowiada za inicjalizację i odtwarzanie dźwięku.
    • Path - ścieżka do dźwięku w folderze "sounds" 
    • npc_prefix - jeśli "true" i "type = aktor" lub "false" i "type = npc", to do wartości ścieżki do dźwięku zostanie dodane "characters_voice" na początku. Jeśli true i type = npc, to zostanie dodane coś w rodzaju "character_voice\human_01\bandit", to znaczy zawartość npc:sound_prefix(). Wartość domyślna to false.
    • Shuffle - wartością domyślną jest rnd.
      • rnd - wybiera losowy plik z tablicy dźwięków
      • seq - odtwarza w kolejności do końca stołu,
      • loop - tak samo jak seq, przeskakuje po końcu tablicy tylko do pierwszego dźwięku w tablicy dźwięków. Wartość domyślna to 3,5,100.
    • idle - trzy liczby oddzielone przecinkami. Parametry odtwarzania dźwięku
      • Pierwsza wartość - minimalny odstęp między dźwiękami.
      • Druga wartość - maksymalny interwał (w sekundach).
      • Trzecia wartość - prawdopodobieństwo, z jakim dźwięk zostanie odtworzony, gdy nadejdzie jego czas.

    Parametry z Wiki

     

    "I to wszystko. Następnie wykorzystujemy dźwięk do własnych celów, odtwarzamy go za pomocą logiki lub skryptów lub umieszczamy w SDK."

     

    ŹRÓDŁO:

    https://ap-pro.ru/forums/topic/245-добавляем-новый-звук/

    • Dodatnia 1
    • Ważne 1
  14. NAZWA: Utwory z klimatem Stalkera. Album "Postój samotników" ("Стоянка одиночек")
    TWÓRCA: Ckamapox

     

    OD TWÓRCY:

    Spoiler

    "Dla twórców MODów, jako autor tekstów utworów, wyrażam zgodę na wykorzystanie w modyfikacjach moich kompozycji w modyfikacjach do Stalkera.
    Wystarczy tylko umieścić informację o użyciu utworów. Cieszyłbym się, gdyby muzyka zabrzmiała nie tylko w live-action projektach opartych na Stalkerze, ale również w grze."

    Nowe utwory są najpierw publikowane na kanale YouTube https://www.youtube.com/@ckamapox, a następnie umieszczane w innych miejscach. 

    Przyjemnego słuchania.

    LISTA UTWORÓW:

    1. Три товарища

    2. Монолитовец

    3. Эх, бабу бы

    4. Припять

    5. Кровосос и контролёр

    6. Зови меня Сталкер

    7. Любовь

    8. Последний рассвет

    9. Чики-Брики

    10. Дядя Изя

    11. Помянем

    12. Кровосос

     

    Spoiler

     

     

     

    LINKI:

     

    ŹRÓDŁO:

    https://ap-pro.ru/forums/topic/4035-pesni-po-vselennoy-stalker-albom-stoyanka-odinochek/

  15. image.jpg

    NAZWA: Jak prawidłowo wstawić swoją muzykę do gry przy pomocy X-Ray SDK
    TWÓRCY PORADNIKA: AMK & Сяк, Сахаров
    POPRAWKA: loxotron

     

    Można to zrobić dowolnym edytorem muzycznym, np. Sound Forge 8.0. Wystarczy przygotować pliki audio, powinny być zapisane w następującym formacie - WAV (standard) 44100 Hz, Mono, 16 bit. Po zapisaniu wybranych utworów w postaci wcześniej podanej, należy przekonwertować je do formatu obsługiwanego przez grę. Aby to zrobić, potrzebujemy X-Ray SDK, oficjalnego pakietu moddera dla S.T.A.L.K.E.R.

    Uwaga: Zapytacie się, dlaczego od razu nie zapisywać utworów w formacie OGG 44100Hz, Mono? Odpowiedź jest prosta – w komentarzach do pliku OGG należy wpisać parametry dystrybucji dźwięku w całym świecie gry. Z tego powodu własne dźwięki w grze są prawie niesłyszalne z pewnych odległości i dlatego są komunikaty tego typu "! Invalid ogg-comment version, file:" itd.

     

    PEŁNA INSTRUKCJA:

    Spoiler

    Otwieramy Actor Editor lub Level Editor. Na pasku narzędzi w prawym górnym rogu szukamy elementu menu Sounds, klikamy go i wybieramy Sound Editor (edytor dźwięku). Otworzy się okno edytora dźwięku. Aby nasze pliki się tam pojawiły, należy je skopiować do folderu rawdata\sounds w katalogu głównym zainstalowanego Level Editor'a (na przykład c:\Program Files\X-Ray SDK\level_editor\rawdata\sounds). W tym folderze mogą znajdować się jakieś "zbędne" pliki - można je bezpiecznie usunąć.

    Uwaga: Ważne jest, aby kopiowane tam pliki były w formacie WAV! Po skopiowaniu plików do folderu SDK ich lista powinna pojawić się w oknie Sound Editor'a.

    Wybieramy utwór i zmieniamy następujące parametry:

    • Quality = 0.0 szerokość pasma częstotliwości, otaczająca centralną częstotliwość (dla bardziej płynnego zanikania dźwięku lub jego stabilności)
    • MinDist = 300.0 odległość, od której głośność dźwięku będzie się obniżać (im niższa do MaxDist, tym płynniejsze przejście, ale Quality trzeba zwiększyć)
    • MaxDist = 300.0 maksymalna odległość, z której dźwięk będzie słyszeć GG
    • MaxAIDist = 300.0 maksymalna odległość, z której dźwięk będzie słyszeć NPC
    • BaseVolume = 1.0 głośność

    Określa się również, do jakiego rodzaju dźwięków w grze należy: w naszym przypadku - undefined

    Opis Game Type:

    • undefined nieokreślony. Ustawiamy ten typ, aby NPC nie reagowali na muzykę i inne.
    • Item picking up podnoszenie przedmiotu
    • Item dropping wyrzucanie przedmiotu
    • Item taking wzięcie przedmiotu
    • Item hiding chowanie przedmiotu
    • Item using używanie przedmiotu
    • Weapon Shooting Wystrzały broni. Ustawiać na wszystkie rodzaje wystrzału broni, wybuchu, itd.

    Obowiązkowo ustawiać BaseVolume = 2.0 i Quality = 1.0 - to normalizuje głośność.

    • Weapon empty clicking pociągnięcie za spust broni przy braku amunicji
    • Weapon bullet hit dźwięk trafienia kuli w powierzchnię
    • Weapon recharging przeładowanie broni. Ustawiamy na wszystkie dźwięki związane z przeładowaniem broni.
    • NPC Injuring ranienie NPC. Ustawiać na wszystkie wołanie o pomoc w folderze help (..jestem ranny... lub ...daj apteczkę)
    • NPC Talking pogawędki NPC. Ustawiać na dialogi, historie, anegdoty/żarty i utwory wykonywane z pomocą gitary. To pozwoli NPC'om po żartach.
      Wstawić komentarz (typu ... dobry...komik, cholera jasna).
    • NPC Attaking ataki NPC. Ustawiać na krzyki podczas ataków. Pasuje do folderu fight.
      NPC zaczynają się zachowywać bardziej taktownie podczas ataków GG lub innych frakcji.
    • NPC dying śmierć NPC
    • NPC injuring ranienie NPC
    • NPC step kroki NPC
    • NPC eating jedzenie przez NPC
    • Anomaly idle Ciągły dźwięk anomalii. Tylko na ciągły dźwięk, na Hit... ustawiać IMHO...NPC Injuring, tzn. pozostałe
      NPC zaczną omijać daną anomalię w którą wlazł GG lub ktoś inny.
    • Object breaking zniszczenie obiektu
    • Object colliding zderzenie obiekt-u(-ów), uderzenie
    • Object exploading wybuch
    • World Ambient środowisko świata gry. Ustawiać na wszystkie dźwięki środowiska. Muzykę w tle lepiej przywiązać do undefined.

    Pozostałe parametry nie zostały jeszcze przetestowane. Klikamy OK, a następnie klikamy na pasek narzędzi i szukamy pozycji menu Sounds, klikamy w celu synchronizowania dźwięku z grą. Czekamy. Jeśli wszystko zostało wykonane poprawnie, w folderze gamedata\sounds w katalogu Level Editor'a (na przykład c:\Program Files\X-Ray SDK\level_editor\gamedata\sounds\) możesz zabrać gotowe pliki .ogg z poprawnymi komentarzami. Ale potem musimy usunąć folder Sounds, ponieważ wszystkie inne pliki OGG znajdą się w kategorii (Delete) i znowu będzie trzeba pobierać folder Sounds z oryginalnej gamedata. Następnie śmiało umieszczamy nasze dźwięki w folderach z grą, pamiętając o usunięciu starych, a nie ich wymianie.

    I jeszcze jeden niuans związany z głośnością muzyki: jeśli przy małej odległości MaxDist zrobimy wysoką głośność lub MinDist, to proces zanikania głośności będzie prawie niesłyszalny - gdy GG się poruszy, doprowadzi to zarówno do gwałtownego pojawienia się muzyki i do jej nagłego ustania, co jest bardzo szkodliwe dla ucha. Nie zapominamy zastosować Quality... to zawsze złagodzi przejście dźwięku od ostrego do miękkiego. Przykład: MinDist=10; MaxDist=150 wartość Quality=0,30 lub 0,40, co znacząco zmiękczy zanikanie dźwięku.

    Szablony dla początkujących

    Dla wszystkich ponownie udźwiękowionych tematów, mających wpływ na środowisko. Dotyczy to folderów ambient, nature: wiatru, ambientu, elektryczności, new_wind'ów (dowolnych) lub krzyków, echo, i innych typów np. rnd_outdoor.

    Quality = 1.00
    MinDist = 20.00   
    MaxDist = 150.00
    MaxAIDist = 50.00
    BaseVolume = 1.0
    Game Type: =World Ambient

    dla dźwięków deszczu i wiatru

    Quality = 1.00
    MinDist = 10.00   
    MaxDist = 300.00
    MaxAIDist = 300.00
    BaseVolume = 1.50
    Game Type: =World Ambient

    dla skryptów i małych efektów

    Quality = 1.00
    MinDist = 1.20   
    MaxDist = 50.00
    MaxAIDist = 20.00
    BaseVolume = 1.0
    Game Type: =World Ambient

    dla głosu NPC

    Quality = 1.00
    MinDist = 10.00   
    MaxDist = 300.00
    MaxAIDist = 300.00
    BaseVolume = 1.50   
    Game Type: ustawiamy w zależności od kategorii

    Ważna uwaga

    Po posortowaniu dźwięków i wrzuceniu do odpowiednich folderów nie zapomniajmy, że mowa NPC nie powinna znajdować się bezpośrednio w sounds\, ale w character_voice\, w przeciwnym razie będziesz szukał przez kilka dni, gdzie popełniłeś błąd i czy dźwięki są w ogóle poprawne. Testowanie, testowanie i jeszcze raz testowanie?

    Miłego modowania!

    Ten przewodnik został napisany przez zespół AMK & Сяк, Сахаров i może jeszcze kogoś innego. W każdym razie wielkie dzięki dla wszystkich uczestników tego tekstu, artykuł został uzupełniony i poprawiony przez loxotron.

     

    PEŁNE WIDEO ODNOŚNIE PRACY I FUNKCJI X-RAY SOUND EDITOR:

    Spoiler

     

     

    ŹRÓDŁO:

    https://ap-pro.ru/forums/topic/1170-kak-korrektno-vstavit-svoyu-muzyku-v-igru-ispolzuya-x-ray-sdk/

  16. NAZWA: Skrypt. Kurs tworzenia zadań na silniku X-Ray 1.6 (S.T.A.L.K.E.R. Zew Prypeci).
    TWÓRCA: Geonezis
    WERSJA WYDANIA: 1.0

     

    OD TWÓRCY:

    Spoiler

    "Witam. Przedstawiam jako pomoc dla początkujących (i nie tylko) quest'erom pierwsze wydanie mojego skryptu.

    Ten podręcznik będzie uogólnionym kursem teoretycznym na temat zasad tworzenia zadań w oparciu o S.T.A.L.K.E.R. Zew Prypeci. Ten kurs pozwoli twórcom modów zapoznać się z różnymi zasadami (technikami) budowania i pisania questów dla ich modyfikacji. Zostaną omówione różne metody tworzenia zarówno typowych, jak i niestandardowych zadań, ze szczegółowym opisem i ujawnieniem niektórych aspektów. Część teoretyczna tego kursu podzielona jest na 10 rozdziałów, a dokładniej 10 lekcji, z których każda szczegółowo omawia jeden konkretny quest, ze ściśle sformułowanym zadaniem. Lekcje są zbudowane w porządku rosnącym od prostych do bardziej złożonych.

    Pierwsza wersja publikacji obejmuje takie rzeczy, jak budowa złożonych, rozgałęzionych dialogów, elementarne metody logiki kombinatorycznej, liniowe zadania krok po kroku, dodatkowe potomne podzadania w ramach głównego. Poruszone zostały również aspekty pracy z logiką restryktorów, dodanie i funkcje korzystania z przedmiotów questowych różnych klas. Realizacja zadań bez użycia okien dialogowych.

    Do każdej lekcji (oprócz 6, dodam ją w następnym wydaniu) został osobno zaimplementowany wizualny przykład z gotowym zadaniem w celu przetestowania i demonstracji działania w grze. Niektóre podobne punkty w części lekcji nie zostały szczegółowo ujawnione, ze względu na ich podobną realizację we wcześniejszych przykładach. Mam nadzieję i jestem pewien, że napisany przeze mnie skrypt, da Ci wstępną wiedzę niezbędną do dalszego samodzielnego studiowania jednego z głównych obszarów modowania i zostania profesjonalnym questerem.

    Pamiętaj, że budowanie questów to połączenie zarówno praktycznej wiedzy i umiejętności, jak i kreatywnego podejścia w ich realizacji. Powodzenia na tym polu."

    Chętnie wysłucham życzeń, sugestii, komentarzy i tylko konstruktywnej krytyki (zwłaszcza ze strony profesjonalnych skrypterów, którzy znają te aspekty, w których prości questerzy nie są mocni), aby poprawić ewentualne błędy w kolejnych wersjach publikacji. Osobno wyrażam wdzięczność twórcom modów: GeJorge, KHOVAN i denis2000.

     

    PEŁNA ZAWARTOŚĆ PIERWSZEGO WYDANIA:

    Spoiler

    Notatka: Lekcje w archiwum są w języku rosyjskim.

     

    • Lekcja 1. Tworzenie zadania polegającego na jednoczesnym poszukiwaniu dwóch różnych przedmiotów.
    • Lekcja 2. Tworzenie zadania polegającego na znalezieniu dwóch różnych przedmiotów wraz z przyznaniem osiągnięcia. Cechy - alternatywny sposób napisania zadania, praca nad aktualizacją zadania poprzez infoportion, dodanie prostego osiągnięcia po ukończeniu zadania.
    • Lekcja 3. Tworzenie zadania polegającego na znalezieniu zdefiniowanej ilości różnych przedmiotów, określonych w losowej tablicy. Zdefiniowanie nowej funkcji warunkowej w pliku xr_conditions.script.
    • Lekcja 4. Tworzenie zadania polegającego na znalezieniu zdefiniowanej ilości wcześniej określonych różnych przedmiotów. Implementacja złożonej struktury dialogu. Obecność tymczasowych warunków.
    • Lekcja 5. Tworzenie wieloetapowego liniowego zadania na sekwencyjne znalezienie przedmiotów klasy device_pda.
    • Lekcja 6. Tworzenie zadania na wykonanie określonego działania poprzez logikę restryktora, praca z game_tutorials. Dodanie autorskich funkcji do pliku xr_effects.script. Sekwencja wykonywania zadania w kilku etapach.
    • Lekcja 7. Tworzenie zadania z dodaniem dodatkowych wewnątrz-etapowych/-częściowych zadań. Cechy - brak dialogów, stosowanie restryktorów, dodawanie questowych przedmiotów z oddzielnej klasy, praca z game_tutorials.
    • Lekcja 8. Tworzenie zadania z dodaniem dodatkowych wewnątrz-etapowych/-częściowych zadań. Cechy - brak dialogów, wykorzystanie obiektów fizycznych klasy physic_destroyable_object jako przedmiotów questowych.
    • Lekcja 9. Tworzenie zadania z dodaniem dodatkowych wewnątrz-etapowych/-częściowych zadań. Cechy - brak dialogów, dodanie schowków oddzielnej klasy jako przedmiotów questowych.
    • Lekcja 10. Tworzenie zadania z użyciem obiektu klasy inventory_box ze złożoną logiką. Cechy - brak dialogów, stosowanie restryktorów, wydanie schowka w nagrodę.


    LINK DO POBRANIA SKRYPTU:

     

    ŹRÓDŁO:

    https://ap-pro.ru/forums/topic/99-основы-квестостроения/

    • Ważne 1
  17. NPC.jpg

    NAZWA: Tworzenie zadania na zabójstwo NPC [SoC]
    TWÓRCA: LaRento

     

    WYMAGANE NASTĘPUJĄCE PLIKI:

    Spoiler

    - character_desc_escape.xml
    - npc_profile.xml
    - all.spawn
    - tasks_escape.xml
    - game_story_ids.ltx
    - dialogs_escape.xml
    - stable_dialogs_escape.xml
    - info_l01escape.xml
    - stable_bio_name.xml

     

    1. TWORZENIE POSTACI:

    Spoiler

    Korzystając z przykładu, postanowiono stworzyć postać, którą musimy zabić na lokacji Kordon. Otwieramy plik character_desc_escape.xml z folderu config/gameplay.

    Tworzymy tam naszą sekcję postaci, pisząc to:

    <visual>actors\novice\green_stalker_1</visual>
    <supplies>
    [spawn] \n
    wpn_mp5 \n
    ammo_9x19_fmj = 1 \n
    #include "gameplay\character_food.xml"
    </supplies>
    
    #include "gameplay\character_criticals_5.xml"
    #include "gameplay\character_dialogs.xml"
    <start_dialog>hello_dialog</start_dialog>
    </specific_character>

    Chyba wszystko jest tutaj jasne.

    Poza tym po wierszu <actor_dialog>tm_wolf_reward</actor_dialog> w sekcji profilu Wilka poniżej wpisz <actor_dialog>esc_kill_danila_dialog</actor_dialog>. W ten sposób dodaliśmy dialog Wilkowi, po którym zostanie wydane zadanie.

    Otwieramy npc_profile.xml z tego samego folderu i piszemy na końcu:

    <character id="esc_danila">
    <class>esc_danila</class> ; nazwa profilu
    <specific_character>esc_danila</specific_character> ;nazwa profilu
    </character>

     

     

    2. SPAWNUJEMY POSTAĆ NA LOKACJI:

    Spoiler

    Rozpakuj all.spawn z folderu spawns. Pobieramy ACDC dla Shadow of Chernobyl, wrzucamy pliki, które pobraliśmy do folderu spawns. Dekompilujemy all.spawn. Po tym będzie wiele plików. W naszym przypadku otwieramy plik alife_l01_escape.ltx i wklejamy następujące elementy:

    [20000] ; unikalny numer sekcji
    ; cse_abstract properties
    section_name = stalker
    name = esc_danila ; nazwa naszej postaci
    position = -81.8000030517578,-4.98000001907349,-72.7399978637695 ; координаты спавна нашего персонажа
    direction = 0.00115116173401475,-5.07207296323031e-005,0.0440320037305355
    
    ; cse_alife_trader_abstract properties
    money = 5000
    character_profile = esc_danila ; profil naszej postaci, stworzonej w character_desc_escape
    
    ; cse_alife_object properties
    game_vertex_id = 76
    distance = 9.09999942779541
    level_vertex_id = 186578
    object_flags = 0xffffffbb
    custom_data = <<END
    [spawner]
    cond = {+esc_kill_danila_quest_started} ; warunek spawnu NPC. Powinien zostać wydany ten infoportion.
    
    [logic]
    active = walker
    on_death = death ; pozwala na instalację schematu ustawienia śmierci NPC.
    
    [death]
    on_info = %+esc_danila_dead% ; wskazuje infoportion, który zostanie wydany po śmierci NPC i zakończy zadanie.
    [walker]
    path_walk = esc_danila_walk ; nazwa punktu ścieżki naszej postaci
    path_look = esc_danila_look ; nazwa punktu , gdzie nasza postać będzie patrzeć
    END
    story_id = 20000 ; story id, przyda sie dla zadania
    
    ; cse_visual properties
    visual_name = actors\soldier\soldier_beret_1
    
    ; cse_alife_creature_abstract properties
    g_team = 0
    g_squad = 1
    g_group = 1
    health = 1
    dynamic_out_restrictions =
    dynamic_in_restrictions =
    
    upd:health = 1
    upd:timestamp = 0x75646f6d
    upd:creature_flags = 0x6c
    upd:position = -81.8000030517578,-4.98000001907349,-72.7399978637695 ; koordynaty, obowiązkowo pisać je tutaj
    upd:o_model = 0
    upd:o_torso = -5.07207296323031e-005,0.00115116173401475,0
    upd:g_team = 0
    upd:g_squad = 1
    upd:g_group = 1
    
    ; cse_alife_monster_abstract properties
    
    upd:next_game_vertex_id = 65535
    upd:prev_game_vertex_id = 65535
    upd:distance_from_point = 0
    upd:distance_to_point = 0
    
    ; cse_alife_human_abstract properties
    predicate5 = 0,1,1,1,2
    predicate4 = 2,0,1,0
    
    ; cse_ph_skeleton properties
    
    upd:start_dialog =
    
    ; se_stalker properties

    Pozostaje przypisać ścieżkę do naszej postaci. Damy mu jeden punkt, aby nie odszedł daleko i abyśmy nie szukał go po lokacji. Aby to zrobić, otwieramy plik way_l01_escape.ltx w tym samym folderze.

    Piszemy tam na końcu:

    [esc_danila_walk]
    points = p0
    p0:name = wp00
    p0:flags = 0x1
    p0:position = -81.8000030517578,-4.98000001907349,-72.7399978637695
    p0:game_vertex_id = 76
    p0:level_vertex_id = 186578
    
    [esc_danila_look]
    points = p0
    p0:name = wp00
    p0:flags = 0x1
    p0:position = -79.6699981689453,-5.05999994277954,-72.8099975585938
    p0:game_vertex_id = 76
    p0:level_vertex_id = 188614

    Gotowe, tylko pamiętaj o skompilowaniu nowego all.spawn. Teraz nasza postać stanie w samochodzie, w którym leżał ranny Tolik.

     

     

    3. TWORZYMY SAMO ZADANIE:

    Spoiler

    Otwieramy plik task_escape.xml z config/gameplay i dodajemy naszą sekcję zadania:

    <game_task id="esc_kill_danila_quest"> ; ID-nazwa zadania
    <title>Zabić stalkera</title>
    <objective>
    <text>Zabić stalkera</text>
    <icon>ui_iconsTotal_esc_dinamit_to_volk</icon>
    <infoportion_complete>esc_danila_dead</infoportion_complete> ; wskazujemy infoportion, przy którym zadanie jest zaliczane jako wykonane.
    </objective>
    <objective>
    <text>Zabić Daniłę</text>
    <map_location_type hint="esc_danila">blue_location</map_location_type> ; nazwa znacznika naszego NPC na mapie
    <object_story_id>esc_danila</object_story_id> ; znacznik naszego NPC na mapie
    <infoportion_complete>esc_danila_dead</infoportion_complete> ; wskazujemy infoportion, przy którym zadanie jest zaliczane jako wykonane.
    </objective>
    </game_task>

     

     

     

    4. TWORZENIE DIALOGU:

    Spoiler

    Tworzymy dialog z Wilkiem, po którym zostanie wydane zadanie. Otwieramy dialogs_escape.xml z tego samego folderu i piszemy poniżej:

    <dialog id="esc_kill_danila_dialog"> ; ID-nazwa dialogu
    <dont_has_info>esc_kill_danila_quest_started</dont_has_info> ; wskazujemy infoportion, przy którego wydaniu dialog więcej się nie pojawi.
    <phrase_list>
    <phrase id="0">
    <text>esc_danila_dialog_1</text>
    <next>1</next>
    </phrase>
    <phrase id="1">
    <text>esc_danila_dialog_2</text>
    <next>2</next>
    </phrase>
    <phrase id="2">
    <text>esc_danila_dialog_3</text>
    <give_info>esc_kill_danila_quest_started</give_info> ; wydanie infoportion, zawierającego zadanie; również gra rolę, aby dialog więcej się nie powtórzył.
    </phrase>
    </phrase_list>
    </dialog>

     

     

    5. REJESTRACJA TEKSTU DIALOGU:

    Spoiler

    Otwieramy plik stable_dialogs_escape.xml i piszemy:

    <string id="esc_danila_dialog_1">
    <text>Jest dodatkowa praca?</text>
    </string>
    <string id="esc_danila_dialog_2">
    <text>Tak, pojawił się zdrajca, nazywa się Daniła. Zabij go, miejsce pobytu prześlę.</text>
    </string>
    <string id="esc_danila_dialog_3">
    <text>Dobrze.</text>
    </string>

    Gotowe, teraz dialog jest zakończony.

     

    6. TWORZYMY INFOPORTION:

    Spoiler

    Otwieramy plik info_l01_escape.xml w tym samym folderze i dodajemy następujące elementy:

    <info_portion id="esc_kill_danila_quest_started"> ; infoportion, odpowiadający za wydanie zadania.
                    <task>esc_kill_danila_quest</task> ; wskazujemy ID-nazwę zadania.
    </info_portion>            
    
    <info_portion id="esc_danila_dead"></info_portion> ; infoportion o śmierci naszego NPC.
    <info_portion id="esc_kill_danila_quest_complete"></info_portion> ; infoportion o wykonaniu zadania.

     

     

    7. TWORZYMY ZNACZEK NASZEGO NPC NA MAPIE:

    Spoiler

    Otwieramy plik stable_bio_name.xml z folderu config/text/rus i piszemy tam na końcu:

    <string id="esc_danila">
    <text>Daniła</text>
    </string>

    Utwórzmy Game Story ID. W tym celu otwieramy plik game_story_ids.ltx z folderu config i piszemy na końcu:

    20000 = "esc_danila"

    Idziemy więc do Wilka, rozmawiamy, dostajemy zadanie, zabijamy postać i git.

     

    ŹRÓDŁO:

    https://ap-pro.ru/forums/topic/1034-soc-sozdanie-kvesta-na-ubiystvo-npc/

    • Ważne 1
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

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